github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/libraries/golang/text/language/tables.go (about) 1 // This file was generated by go generate; DO NOT EDIT 2 3 package language 4 5 import "github.com/insionng/yougam/libraries/x/text/internal/tag" 6 7 // CLDRVersion is the CLDR version from which the tables in this package are derived. 8 const CLDRVersion = "28" 9 10 const numLanguages = 8632 11 12 const numScripts = 223 13 14 const numRegions = 354 15 16 type fromTo struct { 17 from uint16 18 to uint16 19 } 20 21 const nonCanonicalUnd = 646 22 const ( 23 _af = 10 24 _am = 17 25 _ar = 21 26 _az = 36 27 _bg = 56 28 _bn = 75 29 _ca = 97 30 _cs = 121 31 _da = 128 32 _de = 133 33 _el = 153 34 _en = 154 35 _es = 156 36 _et = 158 37 _fa = 163 38 _fi = 167 39 _fil = 169 40 _fr = 174 41 _gu = 210 42 _he = 223 43 _hi = 224 44 _hr = 237 45 _hu = 241 46 _hy = 242 47 _id = 247 48 _is = 257 49 _it = 258 50 _ja = 262 51 _ka = 272 52 _kk = 302 53 _km = 306 54 _kn = 308 55 _ko = 309 56 _ky = 332 57 _lo = 356 58 _lt = 360 59 _lv = 367 60 _mk = 395 61 _ml = 396 62 _mn = 398 63 _mo = 401 64 _mr = 405 65 _ms = 409 66 _mul = 413 67 _my = 420 68 _nb = 430 69 _ne = 435 70 _nl = 444 71 _no = 448 72 _pa = 469 73 _pl = 485 74 _pt = 493 75 _ro = 513 76 _ru = 517 77 _sh = 547 78 _si = 550 79 _sk = 552 80 _sl = 554 81 _sq = 568 82 _sr = 569 83 _sv = 581 84 _sw = 582 85 _ta = 591 86 _te = 598 87 _th = 603 88 _tl = 614 89 _tn = 617 90 _tr = 621 91 _uk = 643 92 _ur = 649 93 _uz = 650 94 _vi = 655 95 _zh = 704 96 _zu = 706 97 _jbo = 264 98 _ami = 1029 99 _bnn = 1736 100 _hak = 220 101 _tlh = 13846 102 _lb = 339 103 _nv = 457 104 _pwn = 11434 105 _tao = 13567 106 _tay = 13577 107 _tsu = 14041 108 _nn = 446 109 _sfb = 13008 110 _vgt = 15080 111 _sgg = 13039 112 _cmn = 2386 113 _nan = 427 114 _hsn = 239 115 ) 116 117 const langPrivateStart = 0x2d05 118 119 const langPrivateEnd = 0x2f0c 120 121 // lang holds an alphabetically sorted list of ISO-639 language identifiers. 122 // All entries are 4 bytes. The index of the identifier (divided by 4) is the language tag. 123 // For 2-byte language identifiers, the two successive bytes have the following meaning: 124 // - if the first letter of the 2- and 3-letter ISO codes are the same: 125 // the second and third letter of the 3-letter ISO code. 126 // - otherwise: a 0 and a by 2 bits right-shifted index into altLangISO3. 127 // For 3-byte language identifiers the 4th byte is 0. 128 var lang tag.Index = "" + // Size: 2840 bytes 129 "---\x00aaarabbkabr\x00ace\x00ach\x00ada\x00ady\x00aeveaeb\x00affragq\x00" + 130 "aho\x00akkaakk\x00aln\x00alt\x00ammhamo\x00anrgaoz\x00arraarc\x00arn\x00" + 131 "aro\x00arq\x00ary\x00arz\x00assmasa\x00ase\x00ast\x00atj\x00avvaawa\x00a" + 132 "yymazzebaakbal\x00ban\x00bap\x00bar\x00bas\x00bax\x00bbc\x00bbj\x00bci" + 133 "\x00beelbej\x00bem\x00bew\x00bez\x00bfd\x00bfq\x00bft\x00bfy\x00bgulbgc" + 134 "\x00bgn\x00bgx\x00bhihbhb\x00bhi\x00bhk\x00bho\x00biisbik\x00bin\x00bjj" + 135 "\x00bjn\x00bkm\x00bku\x00blt\x00bmambmq\x00bnenboodbpy\x00bqi\x00bqv\x00" + 136 "brrebra\x00brh\x00brx\x00bsosbsq\x00bss\x00bto\x00btv\x00bua\x00buc\x00b" + 137 "ug\x00bum\x00bvb\x00byn\x00byv\x00bze\x00caatcch\x00ccp\x00ceheceb\x00cg" + 138 "g\x00chhachk\x00chm\x00cho\x00chp\x00chr\x00cja\x00cjm\x00ckb\x00cooscop" + 139 "\x00cps\x00crrecrj\x00crk\x00crl\x00crm\x00crs\x00csescsb\x00csw\x00ctd" + 140 "\x00cuhucvhvcyymdaandak\x00dar\x00dav\x00dcc\x00deeuden\x00dgr\x00dje" + 141 "\x00dnj\x00doi\x00dsb\x00dtm\x00dtp\x00dua\x00dvivdyo\x00dyu\x00dzzoebu" + 142 "\x00eeweefi\x00egl\x00egy\x00eky\x00elllenngeopoes\x00\x05esu\x00etstett" + 143 "\x00euusewo\x00ext\x00faasfan\x00ffulffm\x00fiinfia\x00fil\x00fit\x00fji" + 144 "jfoaofon\x00frrafrc\x00frp\x00frr\x00frs\x00fud\x00fuq\x00fur\x00fuv\x00" + 145 "fvr\x00fyrygalegaa\x00gag\x00gan\x00gay\x00gbm\x00gbz\x00gcr\x00gdlagez" + 146 "\x00ggn\x00gil\x00gjk\x00gju\x00gllgglk\x00gnrngom\x00gon\x00gor\x00gos" + 147 "\x00got\x00grc\x00grt\x00gsw\x00guujgub\x00guc\x00gur\x00guw\x00guz\x00g" + 148 "vlvgvr\x00gwi\x00haauhak\x00haw\x00haz\x00heebhiinhif\x00hil\x00hlu\x00h" + 149 "md\x00hnd\x00hne\x00hnj\x00hnn\x00hno\x00homohoc\x00hoj\x00hrrvhsb\x00hs" + 150 "n\x00htathuunhyyehzerianaiba\x00ibb\x00idndieleigboiiiiikpkikt\x00ilo" + 151 "\x00inndinh\x00iodoisslittaiukuiw\x00\x03izh\x00japnjam\x00jbo\x00jgo" + 152 "\x00ji\x00\x06jmc\x00jml\x00jut\x00jvavjwavkaatkaa\x00kab\x00kac\x00kaj" + 153 "\x00kam\x00kao\x00kbd\x00kcg\x00kck\x00kde\x00kdt\x00kea\x00ken\x00kfo" + 154 "\x00kfr\x00kfy\x00kgonkge\x00kgp\x00kha\x00khb\x00khn\x00khq\x00kht\x00k" + 155 "hw\x00kiikkiu\x00kjuakjg\x00kkazkkj\x00klalkln\x00kmhmkmb\x00knankoorkoi" + 156 "\x00kok\x00kos\x00kpe\x00kraukrc\x00kri\x00krj\x00krl\x00kru\x00ksasksb" + 157 "\x00ksf\x00ksh\x00kuurkum\x00kvomkvr\x00kvx\x00kw\x00\x01kxm\x00kxp\x00k" + 158 "yirlaatlab\x00lad\x00lag\x00lah\x00laj\x00lbtzlbe\x00lbw\x00lcp\x00lep" + 159 "\x00lez\x00lgugliimlif\x00lij\x00lis\x00ljp\x00lki\x00lkt\x00lmn\x00lmo" + 160 "\x00lninloaolol\x00loz\x00lrc\x00ltitltg\x00luublua\x00luo\x00luy\x00luz" + 161 "\x00lvavlwl\x00lzh\x00lzz\x00mad\x00maf\x00mag\x00mai\x00mak\x00man\x00m" + 162 "as\x00maz\x00mdf\x00mdh\x00mdr\x00men\x00mer\x00mfa\x00mfe\x00mglgmgh" + 163 "\x00mgo\x00mgp\x00mgy\x00mhahmirimin\x00mis\x00mkkdmlalmls\x00mnonmni" + 164 "\x00mnw\x00moolmoe\x00moh\x00mos\x00mrarmrd\x00mrj\x00mru\x00mssamtltmtr" + 165 "\x00mua\x00mul\x00mus\x00mvy\x00mwk\x00mwr\x00mwv\x00mxc\x00myyamyv\x00m" + 166 "yx\x00myz\x00mzn\x00naaunah\x00nan\x00nap\x00naq\x00nbobnch\x00nddendc" + 167 "\x00nds\x00neepnew\x00ngdongl\x00nhe\x00nhw\x00nij\x00niu\x00njo\x00nlld" + 168 "nmg\x00nnnonnh\x00noornod\x00noe\x00non\x00nqo\x00nrblnsk\x00nso\x00nus" + 169 "\x00nvavnxq\x00nyyanym\x00nyn\x00nzi\x00occiojjiomrmorriosssotk\x00paanp" + 170 "ag\x00pal\x00pam\x00pap\x00pau\x00pcd\x00pcm\x00pdc\x00pdt\x00peo\x00pfl" + 171 "\x00phn\x00pilipka\x00pko\x00plolpms\x00pnt\x00pon\x00pra\x00prd\x00prg" + 172 "\x00psusptorpuu\x00quuequc\x00qug\x00raj\x00rcf\x00rej\x00rgn\x00ria\x00" + 173 "rif\x00rjs\x00rkt\x00rmohrmf\x00rmo\x00rmt\x00rmu\x00rnunrng\x00roonrob" + 174 "\x00rof\x00rtm\x00ruusrue\x00rug\x00rw\x00\x04rwk\x00ryu\x00saansaf\x00s" + 175 "ah\x00saq\x00sas\x00sat\x00saz\x00sbp\x00scrdsck\x00scn\x00sco\x00scs" + 176 "\x00sdndsdc\x00sdh\x00semesef\x00seh\x00sei\x00ses\x00sgagsga\x00sgs\x00" + 177 "sh\x00\x02shi\x00shn\x00siinsid\x00sklkskr\x00sllvsli\x00sly\x00smmosma" + 178 "\x00smi\x00smj\x00smn\x00smp\x00sms\x00snnasnk\x00soomsou\x00sqqisrrpsrb" + 179 "\x00srn\x00srr\x00srx\x00ssswssy\x00stotstq\x00suunsuk\x00sus\x00svwesww" + 180 "aswb\x00swc\x00swg\x00swv\x00sxn\x00syl\x00syr\x00szl\x00taamtaj\x00tbw" + 181 "\x00tcy\x00tdd\x00tdg\x00tdh\x00teeltem\x00teo\x00tet\x00tggkthhathl\x00" + 182 "thq\x00thr\x00tiirtig\x00tiv\x00tkuktkl\x00tkr\x00tkt\x00tlgltly\x00tmh" + 183 "\x00tnsntoontog\x00tpi\x00trurtru\x00trv\x00tssotsd\x00tsf\x00tsg\x00tsj" + 184 "\x00ttatttj\x00tts\x00ttt\x00tum\x00tvl\x00twwitwq\x00tyahtyv\x00tzm\x00" + 185 "udm\x00ugiguga\x00ukkruli\x00umb\x00und\x00unr\x00unx\x00urrduzzbvai\x00" + 186 "veenvec\x00vep\x00viievic\x00vls\x00vmf\x00vmw\x00voolvot\x00vro\x00vun" + 187 "\x00walnwae\x00wal\x00war\x00wbp\x00wbq\x00wbr\x00wls\x00wni\x00woolwtm" + 188 "\x00wuu\x00xav\x00xcr\x00xhhoxlc\x00xld\x00xmf\x00xmn\x00xmr\x00xna\x00x" + 189 "nr\x00xog\x00xpr\x00xsa\x00xsr\x00yao\x00yap\x00yav\x00ybb\x00yiidyooryr" + 190 "l\x00yua\x00zahazag\x00zbl\x00zdj\x00zea\x00zgh\x00zhhozmi\x00zuulzxx" + 191 "\x00zza\x00\xff\xff\xff\xff" 192 193 const langNoIndexOffset = 709 194 195 // langNoIndex is a bit vector of all 3-letter language codes that are not used as an index 196 // in lookup tables. The language ids for these language codes are derived directly 197 // from the letters and are not consecutive. 198 // Size: 2197 bytes, 2197 elements 199 var langNoIndex = [2197]uint8{ 200 // Entry 0 - 3F 201 0xff, 0xfd, 0xfd, 0xfe, 0xef, 0xf7, 0xbf, 0xd2, 202 0xfb, 0xbf, 0xfe, 0xfa, 0xb7, 0x1d, 0x3c, 0x57, 203 0x6f, 0x97, 0x73, 0xf8, 0xff, 0xef, 0xff, 0x70, 204 0xaf, 0x03, 0xff, 0xff, 0xcf, 0x05, 0x85, 0x62, 205 0xe9, 0xbf, 0xfd, 0xff, 0xff, 0xf7, 0xfd, 0x77, 206 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 207 0xc9, 0xff, 0xff, 0xff, 0x4d, 0xb8, 0x0a, 0x6a, 208 0x7e, 0xfa, 0xe3, 0xfe, 0x7e, 0xff, 0x77, 0xff, 209 // Entry 40 - 7F 210 0xff, 0xff, 0xff, 0xdf, 0x2b, 0xf4, 0xf1, 0xe0, 211 0x5d, 0xe7, 0x9f, 0x14, 0x07, 0x20, 0xdf, 0xed, 212 0x9f, 0x3f, 0xc9, 0x21, 0xf8, 0x3f, 0x94, 0xf7, 213 0x7e, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0xff, 0xff, 214 0xff, 0xff, 0x5f, 0xfc, 0xdb, 0xfd, 0xbf, 0xb5, 215 0x7b, 0xdf, 0x7f, 0xf7, 0xeb, 0xfe, 0xff, 0xa7, 216 0xbd, 0xff, 0x7f, 0xf7, 0xff, 0xef, 0xef, 0xef, 217 0xff, 0xff, 0x9f, 0xff, 0xff, 0xef, 0xff, 0xdf, 218 // Entry 80 - BF 219 0xff, 0xff, 0xf3, 0xff, 0xfb, 0x2f, 0xff, 0xff, 220 0xfb, 0xee, 0xff, 0xbd, 0xdb, 0xff, 0xdf, 0xf7, 221 0xff, 0xfa, 0xfd, 0xff, 0x7e, 0xaf, 0x7b, 0xfe, 222 0x7f, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xdf, 0xff, 223 0xff, 0xdf, 0xfb, 0xff, 0xfd, 0xfc, 0xfb, 0xff, 224 0xff, 0xff, 0xff, 0xf7, 0x7f, 0xbf, 0xfd, 0xd5, 225 0xa5, 0x77, 0x40, 0xff, 0x9c, 0xc1, 0x41, 0x2c, 226 0x08, 0x24, 0x41, 0x00, 0x50, 0x40, 0x00, 0x80, 227 // Entry C0 - FF 228 0xfb, 0x4a, 0xf2, 0x9f, 0xb4, 0x42, 0x41, 0x96, 229 0x9b, 0x14, 0x88, 0xf6, 0x7b, 0xe7, 0x17, 0x56, 230 0x55, 0x7d, 0x0e, 0x1c, 0x37, 0x71, 0xf3, 0xef, 231 0x97, 0xff, 0x5d, 0x38, 0x64, 0x08, 0x00, 0x10, 232 0xbc, 0x87, 0xaf, 0xdf, 0xff, 0xf7, 0x73, 0x35, 233 0x3e, 0x87, 0xc7, 0xdf, 0xff, 0x00, 0x81, 0x00, 234 0xb0, 0x05, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 235 0x40, 0x00, 0x40, 0x92, 0x21, 0xd0, 0xbf, 0x5d, 236 // Entry 100 - 13F 237 0xfd, 0xde, 0xfe, 0x5e, 0x00, 0x00, 0x02, 0x64, 238 0x8d, 0x19, 0xc1, 0xdf, 0x79, 0x22, 0x00, 0x00, 239 0x00, 0xdf, 0x6d, 0xdc, 0x26, 0xe5, 0xd9, 0xf3, 240 0xfe, 0xff, 0xfd, 0xcb, 0x9f, 0x14, 0x01, 0x0c, 241 0x86, 0x00, 0xd1, 0x00, 0xf0, 0xc5, 0x67, 0x5f, 242 0x56, 0x89, 0x5e, 0xb7, 0xec, 0xef, 0x03, 0x00, 243 0x02, 0x00, 0x00, 0x00, 0xc0, 0x77, 0xda, 0x57, 244 0x90, 0x69, 0x01, 0x2c, 0x16, 0x79, 0xe4, 0xff, 245 // Entry 140 - 17F 246 0xff, 0x7f, 0x00, 0x00, 0x00, 0x01, 0x08, 0x46, 247 0x00, 0x00, 0x00, 0xb0, 0x14, 0x03, 0x50, 0x16, 248 0x0a, 0x00, 0x01, 0x00, 0x00, 0x00, 0x11, 0x09, 249 0x00, 0x00, 0x60, 0x10, 0x00, 0x00, 0x00, 0x10, 250 0x00, 0x00, 0x44, 0x00, 0x00, 0x10, 0x00, 0x04, 251 0x08, 0x00, 0x00, 0x04, 0x00, 0x80, 0x28, 0x04, 252 0x00, 0x00, 0x50, 0xd5, 0x2d, 0x00, 0x64, 0x35, 253 0x24, 0x53, 0xf5, 0xd4, 0xbd, 0xe2, 0xcd, 0x03, 254 // Entry 180 - 1BF 255 0x00, 0x80, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 256 0x00, 0x04, 0x17, 0x39, 0x01, 0xd9, 0x57, 0x98, 257 0x21, 0x98, 0xa5, 0x00, 0x00, 0x01, 0x40, 0x82, 258 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 259 0x01, 0x40, 0x00, 0x44, 0x00, 0x00, 0xb0, 0xfe, 260 0xa9, 0x39, 0x00, 0x02, 0x00, 0x00, 0x00, 0x04, 261 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x40, 262 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 263 // Entry 1C0 - 1FF 264 0x00, 0x01, 0x28, 0x05, 0x00, 0x00, 0x00, 0x00, 265 0x04, 0x20, 0x04, 0xa6, 0x08, 0x04, 0x00, 0x08, 266 0x01, 0x50, 0x00, 0x00, 0x08, 0x11, 0x86, 0x40, 267 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x06, 0x55, 268 0x02, 0x10, 0x08, 0x04, 0x00, 0x00, 0x00, 0x60, 269 0x3b, 0x83, 0x11, 0x00, 0x00, 0x00, 0x11, 0x00, 270 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 271 0x00, 0x00, 0x00, 0xbe, 0xdf, 0xff, 0xfe, 0xbf, 272 // Entry 200 - 23F 273 0xdf, 0xc7, 0x83, 0x82, 0xc0, 0xff, 0xdf, 0x27, 274 0xcf, 0x5f, 0xe7, 0x01, 0x10, 0x20, 0xb2, 0xc5, 275 0xa4, 0x45, 0x25, 0x9b, 0x03, 0xcf, 0xf0, 0xdf, 276 0x03, 0xc4, 0x00, 0x10, 0x01, 0x0e, 0x01, 0xe3, 277 0x92, 0x54, 0xdb, 0x38, 0xf1, 0x7f, 0xf7, 0x6d, 278 0xf9, 0xff, 0x1c, 0x7d, 0x04, 0x08, 0x00, 0x01, 279 0x21, 0x12, 0x6c, 0x5f, 0xdd, 0x0f, 0x85, 0x4f, 280 0x40, 0x40, 0x00, 0x04, 0xf9, 0xfd, 0xbd, 0xd4, 281 // Entry 240 - 27F 282 0xe8, 0x13, 0xf4, 0x27, 0xa3, 0x0d, 0x00, 0x00, 283 0x20, 0x7b, 0x39, 0x02, 0x05, 0x84, 0x00, 0xf0, 284 0xbf, 0x7f, 0xda, 0x00, 0x18, 0x04, 0x81, 0x00, 285 0x00, 0x00, 0x80, 0x10, 0x94, 0x1c, 0x01, 0x00, 286 0x00, 0x00, 0x00, 0x00, 0x10, 0x40, 0x00, 0x04, 287 0x08, 0xb4, 0x7c, 0xa5, 0x0c, 0x40, 0x00, 0x00, 288 0x11, 0x04, 0x04, 0x6c, 0x00, 0x20, 0x70, 0xff, 289 0xfb, 0x7f, 0x60, 0x00, 0x05, 0x9b, 0xdd, 0x6e, 290 // Entry 280 - 2BF 291 0x03, 0x00, 0x11, 0x00, 0x00, 0x00, 0x40, 0x05, 292 0xb5, 0xb6, 0x80, 0x08, 0x04, 0x00, 0x04, 0x51, 293 0xe2, 0xff, 0xfd, 0x3f, 0x05, 0x09, 0x08, 0x05, 294 0x40, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 295 0x08, 0x00, 0x00, 0x00, 0x00, 0xa1, 0x02, 0x60, 296 0xe5, 0x48, 0x14, 0x89, 0x20, 0xc0, 0x47, 0x80, 297 0x07, 0x00, 0x00, 0x00, 0xcc, 0x50, 0x40, 0x24, 298 0x85, 0x47, 0x84, 0x40, 0x20, 0x10, 0x00, 0x20, 299 // Entry 2C0 - 2FF 300 0x02, 0x50, 0x88, 0x11, 0x00, 0xd1, 0x6c, 0xee, 301 0x50, 0x03, 0x1d, 0x11, 0x69, 0x06, 0x59, 0xe9, 302 0x33, 0x08, 0x00, 0x20, 0x05, 0x40, 0x10, 0x00, 303 0x00, 0x00, 0x50, 0x44, 0x96, 0x49, 0xd6, 0x5d, 304 0xa7, 0x81, 0x45, 0x97, 0xfb, 0x00, 0x10, 0x00, 305 0x08, 0x00, 0x80, 0x00, 0x40, 0x45, 0x00, 0x01, 306 0x02, 0x00, 0x01, 0x40, 0x80, 0x00, 0x04, 0x08, 307 0xf8, 0xeb, 0xf6, 0x39, 0xc4, 0x89, 0x16, 0x00, 308 // Entry 300 - 33F 309 0x00, 0x0c, 0x04, 0x01, 0x20, 0x20, 0xdd, 0xa2, 310 0x01, 0x00, 0x00, 0x00, 0x12, 0x04, 0x00, 0x00, 311 0x04, 0x10, 0xf0, 0x9d, 0x95, 0x13, 0x04, 0x80, 312 0x00, 0x00, 0xd0, 0x12, 0x40, 0x00, 0x10, 0xb0, 313 0x10, 0x62, 0x4c, 0xd2, 0x02, 0x01, 0x0a, 0x00, 314 0x46, 0x04, 0x00, 0x08, 0x02, 0x00, 0x20, 0xc0, 315 0x00, 0x80, 0x06, 0x00, 0x08, 0x00, 0x00, 0x00, 316 0x00, 0xf0, 0xd8, 0x6f, 0x15, 0x02, 0x08, 0x00, 317 // Entry 340 - 37F 318 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 319 0x00, 0x10, 0x00, 0x00, 0x00, 0xf8, 0x85, 0xe3, 320 0xdd, 0xff, 0xff, 0xff, 0xbb, 0xff, 0x7f, 0xfb, 321 0xff, 0xfc, 0xfe, 0xdf, 0xff, 0xff, 0xff, 0xf6, 322 0xfb, 0xfe, 0xf7, 0x1f, 0xff, 0xb3, 0xed, 0xff, 323 0xdb, 0xed, 0xff, 0xfe, 0xff, 0xfe, 0xdf, 0xff, 324 0xff, 0xff, 0xf7, 0xff, 0xfd, 0xff, 0xff, 0xff, 325 0xfd, 0xff, 0xdf, 0xaf, 0x9c, 0xff, 0xfb, 0xff, 326 // Entry 380 - 3BF 327 0xff, 0xff, 0xff, 0xff, 0xef, 0xd2, 0xbb, 0xdf, 328 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xef, 329 0xfd, 0xff, 0xff, 0xf7, 0xfd, 0xff, 0xff, 0xff, 330 0xef, 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 331 0xff, 0x5f, 0xd3, 0x7b, 0xfd, 0xd9, 0xdf, 0xef, 332 0xbc, 0x18, 0x05, 0x2c, 0xff, 0x07, 0xf0, 0xff, 333 0xf7, 0x5f, 0x00, 0x08, 0x00, 0xc3, 0x3d, 0x1b, 334 0x06, 0xe6, 0x72, 0xf0, 0xdd, 0x3c, 0x7f, 0x44, 335 // Entry 3C0 - 3FF 336 0x02, 0x30, 0x9f, 0x7a, 0x16, 0xfd, 0xff, 0x57, 337 0xf2, 0xff, 0x39, 0xff, 0xf2, 0x1e, 0x95, 0xf7, 338 0xf7, 0xff, 0x45, 0x80, 0x01, 0x02, 0x00, 0x00, 339 0x40, 0x54, 0x9f, 0x8a, 0xd9, 0xd9, 0x0e, 0x11, 340 0x84, 0x51, 0xc0, 0xf3, 0xfb, 0x47, 0x00, 0x01, 341 0x05, 0xd1, 0x50, 0x58, 0x00, 0x00, 0x00, 0x10, 342 0x04, 0x02, 0x00, 0x00, 0x0a, 0x00, 0x17, 0xd2, 343 0xf9, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 344 // Entry 400 - 43F 345 0xd7, 0x6f, 0xff, 0xff, 0xdf, 0x7d, 0xbb, 0xff, 346 0xff, 0xff, 0xf7, 0xf3, 0xef, 0xff, 0xff, 0xf7, 347 0xff, 0xdf, 0xdb, 0x77, 0xff, 0xff, 0x7f, 0xff, 348 0xff, 0xff, 0xef, 0xff, 0xbc, 0xff, 0xff, 0xfb, 349 0xff, 0xfb, 0xff, 0xde, 0x76, 0xbd, 0xff, 0xf7, 350 0xff, 0xff, 0xf7, 0xff, 0xff, 0xdf, 0xf3, 0xbf, 351 0xef, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xde, 352 0xf7, 0xbb, 0xef, 0xf7, 0xff, 0xfb, 0xbf, 0xdf, 353 // Entry 440 - 47F 354 0xfd, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0x5f, 0x7d, 355 0x7f, 0xff, 0xff, 0xf7, 0xe5, 0xfc, 0xff, 0xfd, 356 0x7f, 0x7f, 0xff, 0x9e, 0xae, 0xff, 0xee, 0xff, 357 0x7f, 0xf7, 0x7b, 0x02, 0x82, 0x04, 0xff, 0xf7, 358 0xff, 0xbf, 0xd7, 0xef, 0xfe, 0xdf, 0xf7, 0xfe, 359 0xe2, 0x8e, 0xe7, 0xff, 0xf7, 0xff, 0x56, 0xbd, 360 0xcd, 0xff, 0xfb, 0xff, 0xff, 0xdf, 0xef, 0xff, 361 0xe5, 0xdf, 0x7d, 0x0f, 0xa7, 0x51, 0x04, 0x44, 362 // Entry 480 - 4BF 363 0x13, 0xd0, 0x5d, 0xaf, 0xa6, 0xfd, 0xb9, 0xff, 364 0x43, 0x5d, 0x5b, 0xff, 0xff, 0xbf, 0x3f, 0x20, 365 0x14, 0x00, 0x57, 0x51, 0x82, 0x65, 0xf5, 0x49, 366 0xe2, 0xff, 0xfc, 0xdf, 0x00, 0x05, 0xc5, 0x05, 367 0x00, 0x22, 0x00, 0x74, 0x69, 0x10, 0x08, 0x04, 368 0x41, 0x00, 0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 369 0x00, 0x51, 0x60, 0x05, 0x04, 0x01, 0x00, 0x00, 370 0x06, 0x01, 0x20, 0x00, 0x18, 0x01, 0x92, 0xb1, 371 // Entry 4C0 - 4FF 372 0xfd, 0x67, 0x4b, 0x06, 0x95, 0x02, 0x57, 0xed, 373 0xfb, 0x4c, 0x9d, 0x7b, 0x83, 0x04, 0x62, 0x40, 374 0x00, 0x15, 0x42, 0x00, 0x00, 0x00, 0x54, 0x83, 375 0xf9, 0x5f, 0x10, 0x8c, 0xc9, 0x46, 0xde, 0xf7, 376 0x13, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 377 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x10, 0x00, 378 0x01, 0x40, 0x00, 0xf0, 0x5b, 0xf4, 0xbe, 0x7d, 379 0xba, 0xcf, 0xf7, 0xaf, 0x42, 0x04, 0x84, 0x41, 380 // Entry 500 - 53F 381 0xb0, 0xff, 0x79, 0x7a, 0x04, 0x00, 0x00, 0x49, 382 0x2d, 0x14, 0x25, 0x77, 0xed, 0xf1, 0xbf, 0xef, 383 0x3f, 0x00, 0x00, 0x02, 0xc6, 0xa0, 0x1e, 0xfc, 384 0xbb, 0xff, 0xfd, 0xfb, 0xb7, 0xfd, 0xf5, 0xff, 385 0xfd, 0xfc, 0xd5, 0xed, 0x47, 0xf4, 0x7f, 0x10, 386 0x01, 0x01, 0x84, 0x6d, 0xff, 0xf7, 0xdd, 0xf9, 387 0x5f, 0x05, 0x86, 0xef, 0xf5, 0x77, 0xbd, 0x3c, 388 0x00, 0x00, 0x00, 0x43, 0x71, 0x42, 0x00, 0x40, 389 // Entry 540 - 57F 390 0x00, 0x00, 0x01, 0x43, 0x19, 0x00, 0x08, 0x00, 391 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 392 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 393 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 394 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 395 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 396 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 397 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 398 // Entry 580 - 5BF 399 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 400 0xff, 0xab, 0xbd, 0xe7, 0x57, 0xee, 0x13, 0x5d, 401 0x09, 0xc1, 0x40, 0x21, 0xfa, 0x17, 0x01, 0x80, 402 0x00, 0x00, 0x00, 0x00, 0xf0, 0xde, 0xff, 0xbf, 403 0x00, 0x23, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 404 0x00, 0x30, 0x95, 0xe3, 0x10, 0x00, 0x00, 0x00, 405 0x11, 0x04, 0x16, 0x00, 0x01, 0x02, 0x00, 0x81, 406 0xa3, 0x01, 0x50, 0x00, 0x00, 0x83, 0x11, 0x40, 407 // Entry 5C0 - 5FF 408 0x00, 0x00, 0x00, 0xf0, 0xdd, 0x7b, 0x7e, 0x02, 409 0xaa, 0x10, 0x5d, 0xd8, 0x52, 0x00, 0x80, 0x20, 410 0x00, 0x00, 0x00, 0x00, 0x40, 0x10, 0x02, 0x02, 411 0x09, 0x00, 0x10, 0x02, 0x10, 0x61, 0x5a, 0x9d, 412 0x31, 0x00, 0x00, 0x00, 0x01, 0x50, 0x02, 0x20, 413 0x00, 0x00, 0x01, 0x00, 0x42, 0x00, 0x00, 0x00, 414 0x00, 0x1f, 0xdf, 0xf2, 0xfd, 0xff, 0xfd, 0x3f, 415 0x9f, 0x18, 0xcf, 0x9c, 0xbf, 0xaf, 0x5f, 0xfe, 416 // Entry 600 - 63F 417 0x7b, 0x4b, 0x40, 0x10, 0xe1, 0xfd, 0xaf, 0xfd, 418 0xb7, 0xf7, 0xff, 0xf3, 0xdf, 0xff, 0x6f, 0xf1, 419 0x7b, 0xf1, 0x7f, 0xdf, 0x7f, 0xbf, 0xfe, 0xb7, 420 0xee, 0x1c, 0xfb, 0xdb, 0xef, 0xdf, 0xff, 0xfd, 421 0x7e, 0xbe, 0x57, 0xff, 0x6f, 0x81, 0x76, 0x1f, 422 0xd4, 0x77, 0xf5, 0xfd, 0xff, 0xff, 0xeb, 0xfe, 423 0xbf, 0x5f, 0x57, 0x1b, 0xeb, 0x5f, 0x50, 0x18, 424 0x02, 0xfa, 0xff, 0x9d, 0x15, 0x97, 0x15, 0x0f, 425 // Entry 640 - 67F 426 0x75, 0xc4, 0x7d, 0x81, 0x82, 0xf1, 0xd7, 0x7e, 427 0xff, 0xff, 0xff, 0xef, 0xff, 0xfd, 0xdd, 0xde, 428 0xbc, 0xfd, 0xf6, 0x5f, 0x7a, 0x1f, 0x40, 0x98, 429 0x02, 0xff, 0xe3, 0xff, 0xf3, 0xd6, 0xf2, 0xff, 430 0xfb, 0xdf, 0x7d, 0x50, 0x1e, 0x15, 0x7b, 0xb4, 431 0xf5, 0xbe, 0xff, 0xff, 0xf3, 0xf7, 0xff, 0xf7, 432 0x7f, 0xff, 0xff, 0xbe, 0xdb, 0xf7, 0xd7, 0xf9, 433 0xef, 0x2f, 0x80, 0xbf, 0xc5, 0xff, 0xff, 0xf3, 434 // Entry 680 - 6BF 435 0x97, 0x9d, 0xff, 0xff, 0xf7, 0xcf, 0xfd, 0xbf, 436 0xde, 0x7f, 0x06, 0x1d, 0x57, 0xff, 0xf8, 0xda, 437 0x5d, 0xcf, 0x7d, 0x16, 0xb9, 0xea, 0x69, 0xa0, 438 0x1a, 0x20, 0x00, 0x30, 0x02, 0x04, 0x24, 0x48, 439 0x04, 0x00, 0x00, 0x40, 0xd4, 0x02, 0x04, 0x00, 440 0x00, 0x04, 0x00, 0x04, 0x00, 0x20, 0x01, 0x06, 441 0x50, 0x00, 0x08, 0x00, 0x00, 0x00, 0x24, 0x00, 442 0x04, 0x00, 0x10, 0x8c, 0x58, 0xd5, 0x0d, 0x0f, 443 // Entry 6C0 - 6FF 444 0x14, 0x4d, 0xf1, 0x16, 0x44, 0xd1, 0x42, 0x08, 445 0x40, 0x00, 0x00, 0x40, 0x00, 0x08, 0x00, 0x00, 446 0x00, 0xdc, 0xff, 0xeb, 0x1f, 0x58, 0x08, 0x41, 447 0x04, 0xa0, 0x04, 0x00, 0x30, 0x12, 0x40, 0x22, 448 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 449 0x01, 0x00, 0x00, 0x00, 0x80, 0x10, 0x10, 0xaf, 450 0x6f, 0x93, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 451 0x00, 0x00, 0x00, 0x80, 0x80, 0x25, 0x00, 0x00, 452 // Entry 700 - 73F 453 0x00, 0x00, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 454 0x80, 0x86, 0xc2, 0x02, 0x00, 0x00, 0x00, 0x01, 455 0xdf, 0x18, 0x00, 0x00, 0x02, 0xf0, 0xfd, 0x79, 456 0x3b, 0x00, 0x25, 0x00, 0x00, 0x00, 0x02, 0x00, 457 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 458 0x03, 0x00, 0x09, 0x20, 0x00, 0x00, 0x01, 0x00, 459 0x00, 0x81, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 460 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 461 // Entry 740 - 77F 462 0x00, 0x00, 0x00, 0xef, 0xf7, 0xfd, 0xcf, 0x7e, 463 0xa0, 0x11, 0x10, 0x00, 0x00, 0x92, 0x01, 0x44, 464 0xcd, 0xf9, 0x5e, 0x00, 0x01, 0x00, 0x30, 0x14, 465 0x04, 0x55, 0x10, 0x01, 0x04, 0xf6, 0x3f, 0x7a, 466 0x05, 0x04, 0x00, 0xb0, 0x80, 0x00, 0x55, 0x55, 467 0x97, 0x7c, 0x9f, 0x71, 0xcc, 0x78, 0xd1, 0x43, 468 0xf5, 0x57, 0x67, 0x14, 0x01, 0x00, 0x00, 0x00, 469 0x00, 0x00, 0x2c, 0xf7, 0xdb, 0x1f, 0x50, 0x60, 470 // Entry 780 - 7BF 471 0x03, 0x68, 0x01, 0x10, 0x8b, 0x38, 0xaa, 0x01, 472 0x00, 0x00, 0x30, 0x00, 0x24, 0x44, 0x00, 0x00, 473 0x10, 0x03, 0x11, 0x02, 0x01, 0x00, 0x00, 0xf0, 474 0xb5, 0xff, 0xd5, 0xd7, 0xbc, 0x70, 0xd6, 0x78, 475 0x78, 0x15, 0x50, 0x00, 0xa4, 0x84, 0xe9, 0x41, 476 0x00, 0x00, 0x00, 0x6b, 0x39, 0x52, 0x74, 0x00, 477 0xe8, 0x30, 0x90, 0x6a, 0x92, 0x00, 0x00, 0x02, 478 0xff, 0xef, 0xff, 0x4f, 0x85, 0x53, 0xf4, 0xed, 479 // Entry 7C0 - 7FF 480 0xdd, 0xbf, 0x72, 0x19, 0xc7, 0x0c, 0xf5, 0x42, 481 0x54, 0xdd, 0x77, 0x14, 0x00, 0x80, 0xc0, 0x56, 482 0xcc, 0x16, 0x9e, 0xfb, 0x35, 0x7d, 0xef, 0xff, 483 0xbd, 0xa4, 0xaf, 0x01, 0x44, 0x18, 0x01, 0x5d, 484 0x4e, 0x4a, 0x08, 0x50, 0x28, 0x30, 0xe0, 0x80, 485 0x10, 0x20, 0x24, 0x00, 0xff, 0x3f, 0xdf, 0x67, 486 0xfe, 0x01, 0x06, 0x88, 0x0a, 0x40, 0x16, 0x01, 487 0x01, 0x15, 0x2b, 0x3e, 0x01, 0x00, 0x00, 0x10, 488 // Entry 800 - 83F 489 0x90, 0x69, 0x45, 0x02, 0x02, 0x01, 0xe1, 0xbf, 490 0xbf, 0x03, 0x00, 0x00, 0x10, 0xd4, 0xa7, 0xd1, 491 0x54, 0x9e, 0x44, 0xdf, 0xfd, 0x8f, 0x66, 0xb3, 492 0x55, 0x20, 0xd4, 0xc3, 0xd8, 0x30, 0x3d, 0x80, 493 0x00, 0x00, 0x00, 0x4c, 0xd4, 0x10, 0xc5, 0x84, 494 0x6e, 0x50, 0x00, 0x22, 0x50, 0x7e, 0xbf, 0xdb, 495 0x07, 0x00, 0x20, 0x10, 0x84, 0xb2, 0x45, 0x10, 496 0x06, 0x44, 0x00, 0x00, 0x12, 0x02, 0x11, 0x00, 497 // Entry 840 - 87F 498 0xf0, 0xfb, 0xfd, 0x3f, 0x05, 0x00, 0x12, 0x81, 499 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 500 0x00, 0x00, 0x00, 0x00, 0x03, 0x30, 0x02, 0x28, 501 0x84, 0x00, 0x33, 0xc0, 0x23, 0x24, 0x00, 0x00, 502 0x00, 0xcb, 0xe4, 0x3a, 0x42, 0xc8, 0x14, 0xf1, 503 0xef, 0xff, 0x7f, 0x16, 0x01, 0x01, 0x84, 0x50, 504 0x07, 0xfc, 0xff, 0xff, 0x0f, 0x01, 0x00, 0x40, 505 0x10, 0x38, 0x01, 0x01, 0x1c, 0x12, 0x40, 0xe1, 506 // Entry 880 - 8BF 507 0x76, 0x16, 0x08, 0x03, 0x10, 0x00, 0x00, 0x00, 508 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x24, 509 0x0a, 0x00, 0x80, 0x00, 0x00, 510 } 511 512 // altLangISO3 holds an alphabetically sorted list of 3-letter language code alternatives 513 // to 2-letter language codes that cannot be derived using the method described above. 514 // Each 3-letter code is followed by its 1-byte langID. 515 var altLangISO3 tag.Index = "---\x00cor\x00hbs\x01heb\x02kin\x03spa\x04yid\x05\xff\xff\xff\xff" 516 517 // altLangIndex is used to convert indexes in altLangISO3 to langIDs. 518 // Size: 12 bytes, 6 elements 519 var altLangIndex = [6]uint16{ 520 0x0149, 0x0223, 0x0104, 0x0208, 0x009c, 0x010a, 521 } 522 523 // langAliasMap maps langIDs to their suggested replacements. 524 // Size: 556 bytes, 139 elements 525 var langAliasMap = [139]fromTo{ 526 0: {from: 0xfe, to: 0xf7}, 527 1: {from: 0x104, to: 0xdf}, 528 2: {from: 0x10a, to: 0x2b6}, 529 3: {from: 0x10f, to: 0x10e}, 530 4: {from: 0x191, to: 0x201}, 531 5: {from: 0x1ae, to: 0x1c0}, 532 6: {from: 0x223, to: 0x239}, 533 7: {from: 0x266, to: 0xa9}, 534 8: {from: 0x272, to: 0x250}, 535 9: {from: 0x27b, to: 0xd}, 536 10: {from: 0x2d1, to: 0x2d7}, 537 11: {from: 0x322, to: 0x92}, 538 12: {from: 0x3c3, to: 0x1c44}, 539 13: {from: 0x3e4, to: 0x238}, 540 14: {from: 0x3f5, to: 0x238}, 541 15: {from: 0x480, to: 0x15}, 542 16: {from: 0x48b, to: 0xf2}, 543 17: {from: 0x4d1, to: 0x1f34}, 544 18: {from: 0x546, to: 0x23}, 545 19: {from: 0x54c, to: 0x272e}, 546 20: {from: 0x558, to: 0x24}, 547 21: {from: 0x579, to: 0xa0}, 548 22: {from: 0x59f, to: 0x26}, 549 23: {from: 0x5a8, to: 0x42}, 550 24: {from: 0x656, to: 0xc76}, 551 25: {from: 0x782, to: 0x1a4}, 552 26: {from: 0x7c9, to: 0x16d}, 553 27: {from: 0x7d0, to: 0x59}, 554 28: {from: 0x851, to: 0x30b5}, 555 29: {from: 0x8cb, to: 0x2c0}, 556 30: {from: 0x908, to: 0x23ed}, 557 31: {from: 0x911, to: 0x956}, 558 32: {from: 0x92e, to: 0x24d}, 559 33: {from: 0x94f, to: 0x3fbc}, 560 34: {from: 0x952, to: 0x2c0}, 561 35: {from: 0xa4c, to: 0x73}, 562 36: {from: 0xa9b, to: 0x79}, 563 37: {from: 0xb5b, to: 0x8a}, 564 38: {from: 0xb6a, to: 0x1a1}, 565 39: {from: 0xb8b, to: 0xb8e}, 566 40: {from: 0xb91, to: 0x2c4}, 567 41: {from: 0xc72, to: 0x1ded}, 568 42: {from: 0xc81, to: 0x2c2d}, 569 43: {from: 0xccc, to: 0x1bc}, 570 44: {from: 0xe63, to: 0x9e}, 571 45: {from: 0xe97, to: 0x178}, 572 46: {from: 0xf33, to: 0xfb}, 573 47: {from: 0x100c, to: 0xd}, 574 48: {from: 0x11b7, to: 0xae}, 575 49: {from: 0x1203, to: 0xa5}, 576 50: {from: 0x12b2, to: 0xb2e}, 577 51: {from: 0x12b6, to: 0x1d1}, 578 52: {from: 0x12c5, to: 0x1458}, 579 53: {from: 0x1313, to: 0x110}, 580 54: {from: 0x1316, to: 0x85}, 581 55: {from: 0x1336, to: 0x3a42}, 582 56: {from: 0x13fd, to: 0xcb}, 583 57: {from: 0x145b, to: 0x99}, 584 58: {from: 0x1493, to: 0x278b}, 585 59: {from: 0x14ab, to: 0xc9}, 586 60: {from: 0x150d, to: 0x12b7}, 587 61: {from: 0x159c, to: 0x1549}, 588 62: {from: 0x15a9, to: 0x1686}, 589 63: {from: 0x161d, to: 0x23d}, 590 64: {from: 0x170c, to: 0x1a94}, 591 65: {from: 0x1807, to: 0x2943}, 592 66: {from: 0x181d, to: 0x101}, 593 67: {from: 0x18ed, to: 0x103}, 594 68: {from: 0x1919, to: 0x12a8}, 595 69: {from: 0x1dd0, to: 0x1e70}, 596 70: {from: 0x1ded, to: 0x18e}, 597 71: {from: 0x1e76, to: 0x144}, 598 72: {from: 0x1e81, to: 0x13a}, 599 73: {from: 0x1e85, to: 0x121}, 600 74: {from: 0x1e8c, to: 0x137}, 601 75: {from: 0x1ea2, to: 0x1f7e}, 602 76: {from: 0x1ec8, to: 0x146}, 603 77: {from: 0x1f79, to: 0x4231}, 604 78: {from: 0x1f87, to: 0x3716}, 605 79: {from: 0x1ff5, to: 0x6bd}, 606 80: {from: 0x20a9, to: 0x2fb9}, 607 81: {from: 0x2115, to: 0x30f8}, 608 82: {from: 0x2205, to: 0x16f}, 609 83: {from: 0x2277, to: 0x18b}, 610 84: {from: 0x2283, to: 0x188}, 611 85: {from: 0x228d, to: 0x199}, 612 86: {from: 0x22e3, to: 0x8ee}, 613 87: {from: 0x233c, to: 0x69}, 614 88: {from: 0x23d1, to: 0x178}, 615 89: {from: 0x245c, to: 0x2447}, 616 90: {from: 0x248c, to: 0x1f2}, 617 91: {from: 0x24ba, to: 0x3a42}, 618 92: {from: 0x24f8, to: 0x2447}, 619 93: {from: 0x2682, to: 0x25ca}, 620 94: {from: 0x26a7, to: 0x1b3}, 621 95: {from: 0x28ad, to: 0x1d0}, 622 96: {from: 0x298f, to: 0x1d2}, 623 97: {from: 0x29d2, to: 0x3a42}, 624 98: {from: 0x2a8f, to: 0x1ec}, 625 99: {from: 0x2aa6, to: 0x32a}, 626 100: {from: 0x2ada, to: 0xa3}, 627 101: {from: 0x2adb, to: 0xa3}, 628 102: {from: 0x2b92, to: 0x182}, 629 103: {from: 0x2bad, to: 0x2b28}, 630 104: {from: 0x2bb4, to: 0x151}, 631 105: {from: 0x2bf8, to: 0x2015}, 632 106: {from: 0x2c82, to: 0x2c6a}, 633 107: {from: 0x2f26, to: 0x1ef}, 634 108: {from: 0x30f9, to: 0x3121}, 635 109: {from: 0x31bd, to: 0x201}, 636 110: {from: 0x3281, to: 0x1663}, 637 111: {from: 0x3379, to: 0x228}, 638 112: {from: 0x33eb, to: 0x131}, 639 113: {from: 0x3409, to: 0x213}, 640 114: {from: 0x3490, to: 0x246}, 641 115: {from: 0x35be, to: 0x2a2e}, 642 116: {from: 0x35c2, to: 0x4c}, 643 117: {from: 0x35c5, to: 0x2fbb}, 644 118: {from: 0x35ff, to: 0x3739}, 645 119: {from: 0x3625, to: 0x3d53}, 646 120: {from: 0x3648, to: 0x2c2d}, 647 121: {from: 0x36ef, to: 0x268}, 648 122: {from: 0x38e1, to: 0xb24}, 649 123: {from: 0x390b, to: 0xe8d}, 650 124: {from: 0x3a2c, to: 0x28a}, 651 125: {from: 0x3d50, to: 0x7f}, 652 126: {from: 0x4051, to: 0x306}, 653 127: {from: 0x410b, to: 0x139}, 654 128: {from: 0x415e, to: 0x345e}, 655 129: {from: 0x4160, to: 0x86}, 656 130: {from: 0x4242, to: 0x30b5}, 657 131: {from: 0x4276, to: 0x2b6}, 658 132: {from: 0x435d, to: 0x219c}, 659 133: {from: 0x4370, to: 0x246f}, 660 134: {from: 0x43a3, to: 0x4641}, 661 135: {from: 0x4441, to: 0x4433}, 662 136: {from: 0x44d1, to: 0x44d8}, 663 137: {from: 0x46a9, to: 0x199}, 664 138: {from: 0x473a, to: 0x2ba}, 665 } 666 667 // Size: 139 bytes, 139 elements 668 var langAliasTypes = [139]langAliasType{ 669 // Entry 0 - 3F 670 0, 0, 0, 0, 0, 1, 2, 2, 0, 1, 0, 0, 1, 2, 1, 1, 671 2, 0, 1, 0, 1, 2, 1, 1, 0, 2, 1, 1, 0, 2, 0, 0, 672 1, 0, 1, 1, 2, 1, 1, 1, 1, 0, 0, 2, 1, 1, 1, 1, 673 2, 1, 0, 1, 1, 2, 2, 0, 1, 2, 0, 1, 1, 1, 1, 1, 674 // Entry 40 - 7F 675 0, 0, 2, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1, 676 0, 0, 1, 2, 2, 2, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1, 677 1, 0, 1, 0, 2, 1, 1, 0, 1, 0, 0, 1, 1, 2, 0, 2, 678 1, 1, 1, 0, 2, 0, 0, 0, 0, 1, 1, 0, 1, 2, 0, 1, 679 // Entry 80 - BF 680 0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1, 681 } 682 683 const ( 684 _Latn = 79 685 _Hani = 48 686 _Hans = 50 687 _Hant = 51 688 _Qaaa = 125 689 _Qaai = 133 690 _Qabx = 174 691 _Zinh = 218 692 _Zyyy = 222 693 _Zzzz = 223 694 ) 695 696 // script is an alphabetically sorted list of ISO 15924 codes. The index 697 // of the script in the string, divided by 4, is the internal scriptID. 698 var script tag.Index = "" + // Size: 900 bytes 699 "----AdlmAfakAghbAhomArabAranArmiArmnAvstBaliBamuBassBatkBengBlisBopoBrah" + 700 "BraiBugiBuhdCakmCansCariChamCherCirtCoptCprtCyrlCyrsDevaDsrtDuplEgydEgyh" + 701 "EgypElbaEthiGeokGeorGlagGothGranGrekGujrGuruHangHaniHanoHansHantHatrHebr" + 702 "HiraHluwHmngHrktHungIndsItalJavaJpanJurcKaliKanaKharKhmrKhojKitlKitsKnda" + 703 "KoreKpelKthiLanaLaooLatfLatgLatnLepcLimbLinaLinbLisuLomaLyciLydiMahjMand" + 704 "ManiMarcMayaMendMercMeroMlymModiMongMoonMrooMteiMultMymrNarbNbatNkgbNkoo" + 705 "NshuOgamOlckOrkhOryaOsgeOsmaPalmPaucPermPhagPhliPhlpPhlvPhnxPlrdPrtiQaaa" + 706 "QaabQaacQaadQaaeQaafQaagQaahQaaiQaajQaakQaalQaamQaanQaaoQaapQaaqQaarQaas" + 707 "QaatQaauQaavQaawQaaxQaayQaazQabaQabbQabcQabdQabeQabfQabgQabhQabiQabjQabk" + 708 "QablQabmQabnQaboQabpQabqQabrQabsQabtQabuQabvQabwQabxRjngRoroRunrSamrSara" + 709 "SarbSaurSgnwShawShrdSiddSindSinhSoraSundSyloSyrcSyreSyrjSyrnTagbTakrTale" + 710 "TaluTamlTangTavtTeluTengTfngTglgThaaThaiTibtTirhUgarVaiiVispWaraWoleXpeo" + 711 "XsuxYiiiZinhZmthZsymZxxxZyyyZzzz\xff\xff\xff\xff" 712 713 // suppressScript is an index from langID to the dominant script for that language, 714 // if it exists. If a script is given, it should be suppressed from the language tag. 715 // Size: 709 bytes, 709 elements 716 var suppressScript = [709]uint8{ 717 // Entry 0 - 3F 718 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 719 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 720 0x00, 0x26, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 721 0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 722 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 723 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 724 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 725 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 726 // Entry 40 - 7F 727 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 728 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00, 729 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 730 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 731 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 732 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 733 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 734 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 735 // Entry 80 - BF 736 0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 737 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0xce, 738 0x00, 0x00, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 739 0x00, 0x2c, 0x4f, 0x4f, 0x4f, 0x00, 0x4f, 0x00, 740 0x4f, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x4f, 741 0x00, 0x00, 0x00, 0x4f, 0x4f, 0x00, 0x4f, 0x00, 742 0x00, 0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 743 0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 744 // Entry C0 - FF 745 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 746 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 747 0x00, 0x4f, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x00, 748 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x35, 749 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 750 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x4f, 0x00, 751 0x4f, 0x4f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x4f, 752 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 753 // Entry 100 - 13F 754 0x00, 0x4f, 0x4f, 0x00, 0x35, 0x00, 0x3e, 0x00, 755 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 756 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 757 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 758 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 759 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x00, 760 0x4f, 0x00, 0x43, 0x00, 0x47, 0x48, 0x00, 0x1f, 761 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 762 // Entry 140 - 17F 763 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 764 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 765 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 766 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 767 0x00, 0x00, 0x00, 0x4f, 0x4c, 0x00, 0x00, 0x00, 768 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 769 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 770 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 771 // Entry 180 - 1BF 772 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 773 0x00, 0x00, 0x00, 0x1d, 0x60, 0x00, 0x00, 0x00, 774 0x00, 0x4f, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 775 0x00, 0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 776 0x00, 0x00, 0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 777 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 778 0x4f, 0x00, 0x4f, 0x1f, 0x00, 0x00, 0x00, 0x00, 779 0x00, 0x00, 0x4f, 0x00, 0x4f, 0x00, 0x4f, 0x00, 780 // Entry 1C0 - 1FF 781 0x4f, 0x00, 0x00, 0x00, 0x6b, 0x4f, 0x00, 0x4f, 782 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 783 0x00, 0x4f, 0x70, 0x00, 0x00, 0x2e, 0x00, 0x00, 784 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 785 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 786 0x00, 0x00, 0x00, 0x00, 0x05, 0x4f, 0x00, 0x4f, 787 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 788 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 789 // Entry 200 - 23F 790 0x00, 0x4f, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 791 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 792 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 793 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 794 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbb, 0x00, 795 0x4f, 0x00, 0x4f, 0x00, 0x00, 0x4f, 0x00, 0x00, 796 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 797 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 798 // Entry 240 - 27F 799 0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x4f, 0x00, 800 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc7, 801 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xca, 0x4f, 802 0x00, 0x00, 0x00, 0xcf, 0x00, 0x00, 0x00, 0x26, 803 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x4f, 0x00, 804 0x4f, 0x4f, 0x4f, 0x00, 0x4f, 0x4f, 0x00, 0x00, 805 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 806 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 807 // Entry 280 - 2BF 808 0x00, 0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x00, 809 0x00, 0x05, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x4f, 810 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 811 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 812 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 813 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 814 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x35, 0x00, 815 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 816 // Entry 2C0 - 2FF 817 0x00, 0x00, 0x4f, 0x00, 0x00, 818 } 819 820 const ( 821 _001 = 1 822 _419 = 30 823 _BR = 64 824 _CA = 72 825 _ES = 109 826 _GB = 121 827 _MD = 186 828 _PT = 236 829 _UK = 304 830 _US = 306 831 _ZZ = 354 832 _XA = 320 833 _XC = 322 834 _XK = 330 835 ) 836 837 // isoRegionOffset needs to be added to the index of regionISO to obtain the regionID 838 // for 2-letter ISO codes. (The first isoRegionOffset regionIDs are reserved for 839 // the UN.M49 codes used for groups.) 840 const isoRegionOffset = 31 841 842 // regionTypes defines the status of a region for various standards. 843 // Size: 355 bytes, 355 elements 844 var regionTypes = [355]uint8{ 845 // Entry 0 - 3F 846 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 847 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 848 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 849 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 850 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 851 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 852 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 853 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 854 // Entry 40 - 7F 855 0x06, 0x06, 0x06, 0x04, 0x06, 0x06, 0x06, 0x06, 856 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 857 0x06, 0x06, 0x06, 0x06, 0x04, 0x06, 0x04, 0x00, 858 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x04, 0x06, 859 0x04, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x04, 860 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 861 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x04, 862 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 863 // Entry 80 - BF 864 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 865 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 866 0x06, 0x00, 0x04, 0x06, 0x06, 0x06, 0x06, 0x06, 867 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 868 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 869 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 870 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 871 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 872 // Entry C0 - FF 873 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 874 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 875 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 876 0x06, 0x06, 0x00, 0x06, 0x04, 0x06, 0x06, 0x06, 877 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 878 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06, 879 0x00, 0x06, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 880 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 881 // Entry 100 - 13F 882 0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 883 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 884 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 885 0x06, 0x06, 0x06, 0x06, 0x04, 0x06, 0x06, 0x06, 886 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 887 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 888 0x02, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 889 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 890 // Entry 140 - 17F 891 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 892 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 893 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 894 0x05, 0x05, 0x04, 0x06, 0x06, 0x04, 0x06, 0x06, 895 0x04, 0x06, 0x05, 896 } 897 898 // regionISO holds a list of alphabetically sorted 2-letter ISO region codes. 899 // Each 2-letter codes is followed by two bytes with the following meaning: 900 // - [A-Z}{2}: the first letter of the 2-letter code plus these two 901 // letters form the 3-letter ISO code. 902 // - 0, n: index into altRegionISO3. 903 var regionISO tag.Index = "" + // Size: 1300 bytes 904 "AAAAACSCADNDAEREAFFGAGTGAIIAALLBAMRMANNTAOGOAQTAARRGASSMATUTAUUSAWBWAXLA" + 905 "AZZEBAIHBBRBBDGDBEELBFFABGGRBHHRBIDIBJENBLLMBMMUBNRNBOOLBQESBRRABSHSBTTN" + 906 "BUURBVVTBWWABYLRBZLZCAANCCCKCDODCFAFCGOGCHHECIIVCKOKCLHLCMMRCNHNCOOLCPPT" + 907 "CRRICS\x00\x00CTTECUUBCVPVCWUWCXXRCYYPCZZEDDDRDEEUDGGADJJIDKNKDMMADOOMDY" + 908 "HYDZZAEA ECCUEESTEGGYEHSHERRIESSPETTHEU\x00\x03FIINFJJIFKLKFMSMFOROFQ" + 909 "\x00\x18FRRAFXXXGAABGBBRGDRDGEEOGFUFGGGYGHHAGIIBGLRLGMMBGNINGPLPGQNQGRRC" + 910 "GS\x00\x06GTTMGUUMGWNBGYUYHKKGHMMDHNNDHRRVHTTIHUUNHVVOIC IDDNIERLILSRIM" + 911 "MNINNDIOOTIQRQIRRNISSLITTAJEEYJMAMJOORJPPNJTTNKEENKGGZKHHMKIIRKM\x00\x09" + 912 "KNNAKP\x00\x0cKRORKWWTKY\x00\x0fKZAZLAAOLBBNLCCALIIELKKALRBRLSSOLTTULUUX" + 913 "LVVALYBYMAARMCCOMDDAMENEMFAFMGDGMHHLMIIDMKKDMLLIMMMRMNNGMOACMPNPMQTQMRRT" + 914 "MSSRMTLTMUUSMVDVMWWIMXEXMYYSMZOZNAAMNCCLNEERNFFKNGGANHHBNIICNLLDNOORNPPL" + 915 "NQ\x00\x1eNRRUNTTZNUIUNZZLOMMNPAANPCCIPEERPFYFPGNGPHHLPKAKPLOLPM\x00\x12" + 916 "PNCNPRRIPSSEPTRTPUUSPWLWPYRYPZCZQAATQMMMQNNNQOOOQPPPQQQQQRRRQSSSQTTTQU" + 917 "\x00\x03QVVVQWWWQXXXQYYYQZZZREEURHHOROOURS\x00\x15RUUSRWWASAAUSBLBSCYCSD" + 918 "DNSEWESGGPSHHNSIVNSJJMSKVKSLLESMMRSNENSOOMSRURSSSDSTTPSUUNSVLVSXXMSYYRSZ" + 919 "WZTAAATCCATDCDTF\x00\x18TGGOTHHATJJKTKKLTLLSTMKMTNUNTOONTPMPTRURTTTOTVUV" + 920 "TWWNTZZAUAKRUGGAUK UMMIUSSAUYRYUZZBVAATVCCTVDDRVEENVGGBVIIRVNNMVUUTWFLF" + 921 "WKAKWSSMXAAAXBBBXCCCXDDDXEEEXFFFXGGGXHHHXIIIXJJJXKKKXLLLXMMMXNNNXOOOXPPP" + 922 "XQQQXRRRXSSSXTTTXUUUXVVVXWWWXXXXXYYYXZZZYDMDYEEMYT\x00\x1bYUUGZAAFZMMBZR" + 923 "ARZWWEZZZZ\xff\xff\xff\xff" 924 925 // altRegionISO3 holds a list of 3-letter region codes that cannot be 926 // mapped to 2-letter codes using the default algorithm. This is a short list. 927 var altRegionISO3 string = "SCGQUUSGSCOMPRKCYMSPMSRBATFMYTATN" 928 929 // altRegionIDs holds a list of regionIDs the positions of which match those 930 // of the 3-letter ISO codes in altRegionISO3. 931 // Size: 22 bytes, 11 elements 932 var altRegionIDs = [11]uint16{ 933 0x0056, 0x006f, 0x0086, 0x00a6, 0x00a8, 0x00ab, 0x00e8, 0x0103, 934 0x011f, 0x015c, 0x00da, 935 } 936 937 // Size: 80 bytes, 20 elements 938 var regionOldMap = [20]fromTo{ 939 0: {from: 0x43, to: 0xc2}, 940 1: {from: 0x57, to: 0xa5}, 941 2: {from: 0x5e, to: 0x5f}, 942 3: {from: 0x65, to: 0x3a}, 943 4: {from: 0x77, to: 0x76}, 944 5: {from: 0x91, to: 0x36}, 945 6: {from: 0xa1, to: 0x131}, 946 7: {from: 0xbf, to: 0x131}, 947 8: {from: 0xd5, to: 0x13c}, 948 9: {from: 0xda, to: 0x2a}, 949 10: {from: 0xed, to: 0x131}, 950 11: {from: 0xf0, to: 0xe0}, 951 12: {from: 0xfa, to: 0x6f}, 952 13: {from: 0x101, to: 0x161}, 953 14: {from: 0x128, to: 0x124}, 954 15: {from: 0x130, to: 0x79}, 955 16: {from: 0x137, to: 0x13b}, 956 17: {from: 0x13e, to: 0x131}, 957 18: {from: 0x15a, to: 0x15b}, 958 19: {from: 0x160, to: 0x4a}, 959 } 960 961 // m49 maps regionIDs to UN.M49 codes. The first isoRegionOffset entries are 962 // codes indicating collections of regions. 963 // Size: 710 bytes, 355 elements 964 var m49 = [355]int16{ 965 // Entry 0 - 3F 966 0, 1, 2, 3, 5, 9, 11, 13, 967 14, 15, 17, 18, 19, 21, 29, 30, 968 34, 35, 39, 53, 54, 57, 61, 142, 969 143, 145, 150, 151, 154, 155, 419, 958, 970 0, 20, 784, 4, 28, 660, 8, 51, 971 530, 24, 10, 32, 16, 40, 36, 533, 972 248, 31, 70, 52, 50, 56, 854, 100, 973 48, 108, 204, 652, 60, 96, 68, 535, 974 // Entry 40 - 7F 975 76, 44, 64, 104, 74, 72, 112, 84, 976 124, 166, 180, 140, 178, 756, 384, 184, 977 152, 120, 156, 170, 0, 188, 891, 296, 978 192, 132, 531, 162, 196, 203, 278, 276, 979 0, 262, 208, 212, 214, 204, 12, 0, 980 218, 233, 818, 732, 232, 724, 231, 967, 981 246, 242, 238, 583, 234, 0, 250, 249, 982 266, 826, 308, 268, 254, 831, 288, 292, 983 // Entry 80 - BF 984 304, 270, 324, 312, 226, 300, 239, 320, 985 316, 624, 328, 344, 334, 340, 191, 332, 986 348, 854, 0, 360, 372, 376, 833, 356, 987 86, 368, 364, 352, 380, 832, 388, 400, 988 392, 581, 404, 417, 116, 296, 174, 659, 989 408, 410, 414, 136, 398, 418, 422, 662, 990 438, 144, 430, 426, 440, 442, 428, 434, 991 504, 492, 498, 499, 663, 450, 584, 581, 992 // Entry C0 - FF 993 807, 466, 104, 496, 446, 580, 474, 478, 994 500, 470, 480, 462, 454, 484, 458, 508, 995 516, 540, 562, 574, 566, 548, 558, 528, 996 578, 524, 10, 520, 536, 570, 554, 512, 997 591, 0, 604, 258, 598, 608, 586, 616, 998 666, 612, 630, 275, 620, 581, 585, 600, 999 591, 634, 959, 960, 961, 962, 963, 964, 1000 965, 966, 967, 968, 969, 970, 971, 972, 1001 // Entry 100 - 13F 1002 638, 716, 642, 688, 643, 646, 682, 90, 1003 690, 729, 752, 702, 654, 705, 744, 703, 1004 694, 674, 686, 706, 740, 728, 678, 810, 1005 222, 534, 760, 748, 0, 796, 148, 260, 1006 768, 764, 762, 772, 626, 795, 788, 776, 1007 626, 792, 780, 798, 158, 834, 804, 800, 1008 826, 581, 840, 858, 860, 336, 670, 704, 1009 862, 92, 850, 704, 548, 876, 581, 882, 1010 // Entry 140 - 17F 1011 973, 974, 975, 976, 977, 978, 979, 980, 1012 981, 982, 983, 984, 985, 986, 987, 988, 1013 989, 990, 991, 992, 993, 994, 995, 996, 1014 997, 998, 720, 887, 175, 891, 710, 894, 1015 180, 716, 999, 1016 } 1017 1018 // m49Index gives indexes into fromM49 based on the three most significant bits 1019 // of a 10-bit UN.M49 code. To search an UN.M49 code in fromM49, search in 1020 // fromM49[m49Index[msb39(code)]:m49Index[msb3(code)+1]] 1021 // for an entry where the first 7 bits match the 7 lsb of the UN.M49 code. 1022 // The region code is stored in the 9 lsb of the indexed value. 1023 // Size: 18 bytes, 9 elements 1024 var m49Index = [9]int16{ 1025 0, 59, 107, 142, 180, 219, 258, 290, 1026 332, 1027 } 1028 1029 // fromM49 contains entries to map UN.M49 codes to regions. See m49Index for details. 1030 // Size: 664 bytes, 332 elements 1031 var fromM49 = [332]uint16{ 1032 // Entry 0 - 3F 1033 0x0201, 0x0402, 0x0603, 0x0823, 0x0a04, 0x1026, 0x1205, 0x142a, 1034 0x1606, 0x1866, 0x1a07, 0x1c08, 0x1e09, 0x202c, 0x220a, 0x240b, 1035 0x260c, 0x2821, 0x2a0d, 0x3029, 0x3824, 0x3a0e, 0x3c0f, 0x3e31, 1036 0x402b, 0x4410, 0x4611, 0x482e, 0x4e12, 0x502d, 0x5841, 0x6038, 1037 0x6434, 0x6627, 0x6833, 0x6a13, 0x6c14, 0x7035, 0x7215, 0x783c, 1038 0x7a16, 0x8042, 0x883e, 0x8c32, 0x9045, 0x9444, 0x9840, 0xa847, 1039 0xac98, 0xb507, 0xb939, 0xc03d, 0xc837, 0xd0c2, 0xd839, 0xe046, 1040 0xe8a4, 0xf051, 0xf848, 0x0859, 0x10ab, 0x184b, 0x1c17, 0x1e18, 1041 // Entry 40 - 7F 1042 0x20b1, 0x2219, 0x291e, 0x2c1a, 0x2e1b, 0x3050, 0x341c, 0x361d, 1043 0x3852, 0x3d2c, 0x445b, 0x4c49, 0x5453, 0x5ca6, 0x5f5c, 0x644c, 1044 0x684a, 0x704f, 0x7855, 0x7e8e, 0x8058, 0x885c, 0x965d, 0x983a, 1045 0xa062, 0xa863, 0xac64, 0xb468, 0xbd18, 0xc484, 0xcc6e, 0xce6e, 1046 0xd06c, 0xd269, 0xd474, 0xdc72, 0xde86, 0xe471, 0xec70, 0xf030, 1047 0xf277, 0xf476, 0xfc7c, 0x04e3, 0x091f, 0x0c61, 0x1478, 0x187b, 1048 0x1c81, 0x26eb, 0x285f, 0x2c5e, 0x305f, 0x407e, 0x487f, 0x50a5, 1049 0x5885, 0x6080, 0x687a, 0x7083, 0x7888, 0x8087, 0x8882, 0x908a, 1050 // Entry 80 - BF 1051 0x988f, 0x9c8c, 0xa135, 0xa88d, 0xb08b, 0xb890, 0xc09b, 0xc897, 1052 0xd093, 0xd89a, 0xe099, 0xe894, 0xf095, 0xf89c, 0x004e, 0x089e, 1053 0x10a0, 0x1cac, 0x209f, 0x28a2, 0x30a8, 0x34a9, 0x3caa, 0x42a3, 1054 0x44ad, 0x461e, 0x4cae, 0x54b3, 0x58b6, 0x5cb2, 0x64b7, 0x6cb0, 1055 0x70b4, 0x74b5, 0x7cc4, 0x84bd, 0x8ccc, 0x94ce, 0x9ccb, 0xa4c1, 1056 0xacc9, 0xb4c6, 0xbcc7, 0xc0ca, 0xc8cd, 0xd8b9, 0xe0c3, 0xe4ba, 1057 0xe6bb, 0xe8c8, 0xf0b8, 0xf8cf, 0x00df, 0x08d0, 0x10db, 0x18d9, 1058 0x20d7, 0x2428, 0x265a, 0x2a2f, 0x2d19, 0x2e3f, 0x30dc, 0x38d1, 1059 // Entry C0 - FF 1060 0x493c, 0x54de, 0x5cd6, 0x64d2, 0x6cd4, 0x74dd, 0x7cd3, 0x84d8, 1061 0x88c5, 0x8b31, 0x8e73, 0x90be, 0x92ee, 0x94e6, 0x9ee0, 0xace4, 1062 0xb0ef, 0xb8e2, 0xc0e5, 0xc8e9, 0xd0e7, 0xd8ec, 0xe089, 0xe524, 1063 0xecea, 0xf4f1, 0xfd00, 0x0502, 0x0704, 0x0d05, 0x183b, 0x1d0c, 1064 0x26a7, 0x2825, 0x2caf, 0x2ebc, 0x34e8, 0x3d36, 0x4511, 0x4d16, 1065 0x5506, 0x5d12, 0x6103, 0x6508, 0x6d10, 0x7d0b, 0x7f0f, 0x813b, 1066 0x830d, 0x8513, 0x8d5e, 0x9961, 0xa15a, 0xa86d, 0xb115, 0xb309, 1067 0xb86b, 0xc109, 0xc914, 0xd10e, 0xd91b, 0xe10a, 0xe84d, 0xf11a, 1068 // Entry 100 - 13F 1069 0xf522, 0xf921, 0x0120, 0x0923, 0x1127, 0x192a, 0x2022, 0x2926, 1070 0x3129, 0x3725, 0x391d, 0x3d2b, 0x412f, 0x492e, 0x4ec0, 0x5517, 1071 0x646a, 0x7479, 0x7e7d, 0x809d, 0x8296, 0x852d, 0x9132, 0xa53a, 1072 0xac36, 0xb533, 0xb934, 0xbd38, 0xd93d, 0xe53f, 0xed5b, 0xef5b, 1073 0xf656, 0xfd5f, 0x7c1f, 0x7ef2, 0x80f3, 0x82f4, 0x84f5, 0x86f6, 1074 0x88f7, 0x8af8, 0x8cf9, 0x8e6f, 0x90fb, 0x92fc, 0x94fd, 0x96fe, 1075 0x98ff, 0x9b40, 0x9d41, 0x9f42, 0xa143, 0xa344, 0xa545, 0xa746, 1076 0xa947, 0xab48, 0xad49, 0xaf4a, 0xb14b, 0xb34c, 0xb54d, 0xb74e, 1077 // Entry 140 - 17F 1078 0xb94f, 0xbb50, 0xbd51, 0xbf52, 0xc153, 0xc354, 0xc555, 0xc756, 1079 0xc957, 0xcb58, 0xcd59, 0xcf62, 1080 } 1081 1082 // Size: 1311 bytes 1083 var variantIndex = map[string]uint8{ 1084 "1606nict": 0x0, 1085 "1694acad": 0x1, 1086 "1901": 0x2, 1087 "1959acad": 0x3, 1088 "1994": 0x3f, 1089 "1996": 0x4, 1090 "alalc97": 0x41, 1091 "aluku": 0x5, 1092 "arevela": 0x6, 1093 "arevmda": 0x7, 1094 "baku1926": 0x8, 1095 "balanka": 0x9, 1096 "barla": 0xa, 1097 "bauddha": 0xb, 1098 "biscayan": 0xc, 1099 "biske": 0x3a, 1100 "bohoric": 0xd, 1101 "boont": 0xe, 1102 "dajnko": 0xf, 1103 "ekavsk": 0x10, 1104 "emodeng": 0x11, 1105 "fonipa": 0x42, 1106 "fonupa": 0x43, 1107 "fonxsamp": 0x44, 1108 "hepburn": 0x12, 1109 "heploc": 0x40, 1110 "hognorsk": 0x13, 1111 "ijekavsk": 0x14, 1112 "itihasa": 0x15, 1113 "jauer": 0x16, 1114 "jyutping": 0x17, 1115 "kkcor": 0x18, 1116 "kociewie": 0x19, 1117 "kscor": 0x1a, 1118 "laukika": 0x1b, 1119 "lipaw": 0x3b, 1120 "luna1918": 0x1c, 1121 "metelko": 0x1d, 1122 "monoton": 0x1e, 1123 "ndyuka": 0x1f, 1124 "nedis": 0x20, 1125 "njiva": 0x3c, 1126 "nulik": 0x21, 1127 "osojs": 0x3d, 1128 "oxendict": 0x22, 1129 "pamaka": 0x23, 1130 "petr1708": 0x24, 1131 "pinyin": 0x25, 1132 "polyton": 0x26, 1133 "puter": 0x27, 1134 "rigik": 0x28, 1135 "rozaj": 0x29, 1136 "rumgr": 0x2a, 1137 "scotland": 0x2b, 1138 "scouse": 0x2c, 1139 "solba": 0x3e, 1140 "sotav": 0x2d, 1141 "surmiran": 0x2e, 1142 "sursilv": 0x2f, 1143 "sutsilv": 0x30, 1144 "tarask": 0x31, 1145 "uccor": 0x32, 1146 "ucrcor": 0x33, 1147 "ulster": 0x34, 1148 "unifon": 0x35, 1149 "vaidika": 0x36, 1150 "valencia": 0x37, 1151 "vallader": 0x38, 1152 "wadegile": 0x39, 1153 } 1154 1155 // variantNumSpecialized is the number of specialized variants in variants. 1156 const variantNumSpecialized = 65 1157 1158 // nRegionGroups is the number of region groups. 1159 const nRegionGroups = 32 1160 1161 type likelyLangRegion struct { 1162 lang uint16 1163 region uint16 1164 } 1165 1166 // likelyScript is a lookup table, indexed by scriptID, for the most likely 1167 // languages and regions given a script. 1168 // Size: 900 bytes, 225 elements 1169 var likelyScript = [225]likelyLangRegion{ 1170 3: {lang: 0x158, region: 0x104}, 1171 4: {lang: 0xc, region: 0x97}, 1172 5: {lang: 0x15, region: 0x6a}, 1173 7: {lang: 0x16, region: 0x9a}, 1174 8: {lang: 0xf2, region: 0x27}, 1175 9: {lang: 0x8, region: 0x9a}, 1176 10: {lang: 0x27, region: 0x93}, 1177 11: {lang: 0x2b, region: 0x51}, 1178 12: {lang: 0x55, region: 0xb2}, 1179 13: {lang: 0x2c, region: 0x93}, 1180 14: {lang: 0x4b, region: 0x34}, 1181 16: {lang: 0x2c0, region: 0x12c}, 1182 17: {lang: 0x1e3, region: 0x97}, 1183 18: {lang: 0xae, region: 0x76}, 1184 19: {lang: 0x5b, region: 0x93}, 1185 20: {lang: 0x47, region: 0xe5}, 1186 21: {lang: 0x63, region: 0x34}, 1187 22: {lang: 0x73, region: 0x48}, 1188 23: {lang: 0x2a5, region: 0x129}, 1189 24: {lang: 0x6e, region: 0x13b}, 1190 25: {lang: 0x6c, region: 0x132}, 1191 27: {lang: 0x71, region: 0x6a}, 1192 28: {lang: 0xcf, region: 0x5c}, 1193 29: {lang: 0x205, region: 0x104}, 1194 31: {lang: 0xe0, region: 0x97}, 1195 33: {lang: 0xae, region: 0x76}, 1196 36: {lang: 0x97, region: 0x6a}, 1197 37: {lang: 0x238, region: 0x26}, 1198 38: {lang: 0x11, region: 0x6e}, 1199 40: {lang: 0x110, region: 0x7b}, 1200 41: {lang: 0x7d, region: 0x37}, 1201 42: {lang: 0xce, region: 0x12e}, 1202 43: {lang: 0x20b, region: 0x97}, 1203 44: {lang: 0x99, region: 0x85}, 1204 45: {lang: 0xd2, region: 0x97}, 1205 46: {lang: 0x1d5, region: 0x97}, 1206 47: {lang: 0x135, region: 0xa9}, 1207 48: {lang: 0x2c0, region: 0x52}, 1208 49: {lang: 0xe8, region: 0xe5}, 1209 50: {lang: 0x2c0, region: 0x52}, 1210 51: {lang: 0x2c0, region: 0x12c}, 1211 52: {lang: 0x18a, region: 0x99}, 1212 53: {lang: 0xdf, region: 0x95}, 1213 54: {lang: 0x106, region: 0xa0}, 1214 55: {lang: 0xe3, region: 0x129}, 1215 56: {lang: 0xe7, region: 0xad}, 1216 58: {lang: 0xf1, region: 0x90}, 1217 60: {lang: 0x9f, region: 0x9c}, 1218 61: {lang: 0x10e, region: 0x93}, 1219 62: {lang: 0x106, region: 0xa0}, 1220 64: {lang: 0x98, region: 0xc2}, 1221 65: {lang: 0x106, region: 0xa0}, 1222 66: {lang: 0x1e9, region: 0xe6}, 1223 67: {lang: 0x132, region: 0xa4}, 1224 68: {lang: 0x218, region: 0x97}, 1225 71: {lang: 0x134, region: 0x97}, 1226 72: {lang: 0x135, region: 0xa9}, 1227 74: {lang: 0x3c, region: 0x97}, 1228 75: {lang: 0x1c1, region: 0x121}, 1229 76: {lang: 0x164, region: 0xad}, 1230 80: {lang: 0x157, region: 0x97}, 1231 81: {lang: 0x15b, region: 0x97}, 1232 82: {lang: 0x14e, region: 0x85}, 1233 83: {lang: 0xcf, region: 0x85}, 1234 84: {lang: 0x15d, region: 0x52}, 1235 86: {lang: 0x2a7, region: 0x129}, 1236 87: {lang: 0x2a8, region: 0x129}, 1237 88: {lang: 0xe0, region: 0x97}, 1238 89: {lang: 0x1a7, region: 0x9a}, 1239 90: {lang: 0x2aa, region: 0x52}, 1240 93: {lang: 0x17e, region: 0x110}, 1241 94: {lang: 0x2ab, region: 0x109}, 1242 95: {lang: 0x2ab, region: 0x109}, 1243 96: {lang: 0x18c, region: 0x97}, 1244 97: {lang: 0x195, region: 0x97}, 1245 98: {lang: 0x18e, region: 0x52}, 1246 100: {lang: 0x198, region: 0x34}, 1247 101: {lang: 0x18f, region: 0x97}, 1248 102: {lang: 0x229, region: 0xe6}, 1249 103: {lang: 0x1a4, region: 0xc2}, 1250 104: {lang: 0x2ac, region: 0x106}, 1251 105: {lang: 0x16, region: 0x9f}, 1252 107: {lang: 0x178, region: 0x82}, 1253 109: {lang: 0x221, region: 0x94}, 1254 110: {lang: 0x210, region: 0x97}, 1255 111: {lang: 0x1d4, region: 0xc3}, 1256 112: {lang: 0x1d2, region: 0x97}, 1257 114: {lang: 0x236, region: 0x113}, 1258 115: {lang: 0x16, region: 0x11a}, 1259 116: {lang: 0x7c, region: 0xc2}, 1260 117: {lang: 0x146, region: 0x104}, 1261 118: {lang: 0x171, region: 0x52}, 1262 119: {lang: 0x1d7, region: 0x9a}, 1263 120: {lang: 0x1d7, region: 0x52}, 1264 122: {lang: 0x1e1, region: 0xae}, 1265 123: {lang: 0xe4, region: 0x52}, 1266 124: {lang: 0x2af, region: 0x9a}, 1267 175: {lang: 0x1f4, region: 0x93}, 1268 177: {lang: 0x1c3, region: 0x10a}, 1269 178: {lang: 0x232, region: 0x95}, 1270 180: {lang: 0x2b0, region: 0x15b}, 1271 181: {lang: 0x211, region: 0x97}, 1272 182: {lang: 0x1e, region: 0x132}, 1273 183: {lang: 0x9a, region: 0x79}, 1274 184: {lang: 0x20b, region: 0x97}, 1275 185: {lang: 0x20b, region: 0x97}, 1276 186: {lang: 0x218, region: 0x97}, 1277 187: {lang: 0x226, region: 0xb1}, 1278 188: {lang: 0x23a, region: 0x97}, 1279 189: {lang: 0x242, region: 0x93}, 1280 190: {lang: 0x24c, region: 0x34}, 1281 191: {lang: 0x24d, region: 0x99}, 1282 195: {lang: 0x251, region: 0xe5}, 1283 196: {lang: 0x8a, region: 0x97}, 1284 197: {lang: 0x253, region: 0x52}, 1285 198: {lang: 0x125, region: 0x52}, 1286 199: {lang: 0x24f, region: 0x97}, 1287 201: {lang: 0x48, region: 0x13b}, 1288 202: {lang: 0x256, region: 0x97}, 1289 204: {lang: 0x2bf, region: 0xb8}, 1290 205: {lang: 0xa9, region: 0xe5}, 1291 206: {lang: 0x8f, region: 0xcb}, 1292 207: {lang: 0x25b, region: 0x121}, 1293 208: {lang: 0x4c, region: 0x52}, 1294 209: {lang: 0x176, region: 0x97}, 1295 210: {lang: 0x282, region: 0x11a}, 1296 211: {lang: 0x28b, region: 0xb2}, 1297 213: {lang: 0xeb, region: 0x97}, 1298 215: {lang: 0x1df, region: 0x9a}, 1299 216: {lang: 0xe, region: 0x99}, 1300 217: {lang: 0xfa, region: 0x52}, 1301 } 1302 1303 type likelyScriptRegion struct { 1304 region uint16 1305 script uint8 1306 flags uint8 1307 } 1308 1309 // likelyLang is a lookup table, indexed by langID, for the most likely 1310 // scripts and regions given incomplete information. If more entries exist for a 1311 // given language, region and script are the index and size respectively 1312 // of the list in likelyLangList. 1313 // Size: 2836 bytes, 709 elements 1314 var likelyLang = [709]likelyScriptRegion{ 1315 0: {region: 0x132, script: 0x4f, flags: 0x0}, 1316 1: {region: 0x6e, script: 0x4f, flags: 0x0}, 1317 2: {region: 0x7b, script: 0x1d, flags: 0x0}, 1318 3: {region: 0x7e, script: 0x4f, flags: 0x0}, 1319 4: {region: 0x93, script: 0x4f, flags: 0x0}, 1320 5: {region: 0x12f, script: 0x4f, flags: 0x0}, 1321 6: {region: 0x7e, script: 0x4f, flags: 0x0}, 1322 7: {region: 0x104, script: 0x1d, flags: 0x0}, 1323 8: {region: 0x9a, script: 0x9, flags: 0x0}, 1324 9: {region: 0x126, script: 0x5, flags: 0x0}, 1325 10: {region: 0x15e, script: 0x4f, flags: 0x0}, 1326 11: {region: 0x51, script: 0x4f, flags: 0x0}, 1327 12: {region: 0x97, script: 0x4, flags: 0x0}, 1328 13: {region: 0x7e, script: 0x4f, flags: 0x0}, 1329 14: {region: 0x99, script: 0xd8, flags: 0x0}, 1330 15: {region: 0x14a, script: 0x4f, flags: 0x0}, 1331 16: {region: 0x104, script: 0x1d, flags: 0x0}, 1332 17: {region: 0x6e, script: 0x26, flags: 0x0}, 1333 18: {region: 0xd4, script: 0x4f, flags: 0x0}, 1334 20: {region: 0x93, script: 0x4f, flags: 0x0}, 1335 21: {region: 0x6a, script: 0x5, flags: 0x0}, 1336 22: {region: 0x0, script: 0x3, flags: 0x1}, 1337 23: {region: 0x50, script: 0x4f, flags: 0x0}, 1338 24: {region: 0x3e, script: 0x4f, flags: 0x0}, 1339 25: {region: 0x66, script: 0x5, flags: 0x0}, 1340 26: {region: 0xb8, script: 0x5, flags: 0x0}, 1341 27: {region: 0x6a, script: 0x5, flags: 0x0}, 1342 28: {region: 0x97, script: 0xe, flags: 0x0}, 1343 29: {region: 0x12d, script: 0x4f, flags: 0x0}, 1344 30: {region: 0x132, script: 0xb6, flags: 0x0}, 1345 31: {region: 0x6d, script: 0x4f, flags: 0x0}, 1346 32: {region: 0x48, script: 0x4f, flags: 0x0}, 1347 33: {region: 0x104, script: 0x1d, flags: 0x0}, 1348 34: {region: 0x97, script: 0x1f, flags: 0x0}, 1349 35: {region: 0x3e, script: 0x4f, flags: 0x0}, 1350 36: {region: 0x3, script: 0x5, flags: 0x1}, 1351 37: {region: 0x104, script: 0x1d, flags: 0x0}, 1352 38: {region: 0xe6, script: 0x5, flags: 0x0}, 1353 39: {region: 0x93, script: 0x4f, flags: 0x0}, 1354 40: {region: 0xd9, script: 0x1f, flags: 0x0}, 1355 41: {region: 0x2d, script: 0x4f, flags: 0x0}, 1356 42: {region: 0x51, script: 0x4f, flags: 0x0}, 1357 43: {region: 0x51, script: 0xb, flags: 0x0}, 1358 44: {region: 0x93, script: 0x4f, flags: 0x0}, 1359 45: {region: 0x51, script: 0x4f, flags: 0x0}, 1360 46: {region: 0x4e, script: 0x4f, flags: 0x0}, 1361 47: {region: 0x46, script: 0x1d, flags: 0x0}, 1362 48: {region: 0x109, script: 0x5, flags: 0x0}, 1363 49: {region: 0x15f, script: 0x4f, flags: 0x0}, 1364 50: {region: 0x93, script: 0x4f, flags: 0x0}, 1365 51: {region: 0x12d, script: 0x4f, flags: 0x0}, 1366 52: {region: 0x51, script: 0x4f, flags: 0x0}, 1367 53: {region: 0x97, script: 0xc7, flags: 0x0}, 1368 54: {region: 0xe6, script: 0x5, flags: 0x0}, 1369 55: {region: 0x97, script: 0x1f, flags: 0x0}, 1370 56: {region: 0x37, script: 0x1d, flags: 0x0}, 1371 57: {region: 0x97, script: 0x1f, flags: 0x0}, 1372 58: {region: 0xe6, script: 0x5, flags: 0x0}, 1373 59: {region: 0x129, script: 0x2c, flags: 0x0}, 1374 60: {region: 0x97, script: 0x4a, flags: 0x0}, 1375 61: {region: 0x97, script: 0x1f, flags: 0x0}, 1376 62: {region: 0x97, script: 0x1f, flags: 0x0}, 1377 63: {region: 0xe5, script: 0x4f, flags: 0x0}, 1378 64: {region: 0x97, script: 0x1f, flags: 0x0}, 1379 65: {region: 0x13c, script: 0x4f, flags: 0x0}, 1380 66: {region: 0xe5, script: 0x4f, flags: 0x0}, 1381 67: {region: 0xd4, script: 0x4f, flags: 0x0}, 1382 68: {region: 0x97, script: 0x1f, flags: 0x0}, 1383 69: {region: 0x93, script: 0x4f, flags: 0x0}, 1384 70: {region: 0x51, script: 0x4f, flags: 0x0}, 1385 71: {region: 0xe5, script: 0x4f, flags: 0x0}, 1386 72: {region: 0x13b, script: 0xc9, flags: 0x0}, 1387 73: {region: 0xc1, script: 0x4f, flags: 0x0}, 1388 74: {region: 0xc1, script: 0x4f, flags: 0x0}, 1389 75: {region: 0x34, script: 0xe, flags: 0x0}, 1390 76: {region: 0x52, script: 0xd0, flags: 0x0}, 1391 77: {region: 0x97, script: 0xe, flags: 0x0}, 1392 78: {region: 0x9a, script: 0x5, flags: 0x0}, 1393 79: {region: 0x4e, script: 0x4f, flags: 0x0}, 1394 80: {region: 0x76, script: 0x4f, flags: 0x0}, 1395 81: {region: 0x97, script: 0x1f, flags: 0x0}, 1396 82: {region: 0xe6, script: 0x5, flags: 0x0}, 1397 83: {region: 0x97, script: 0x1f, flags: 0x0}, 1398 84: {region: 0x32, script: 0x4f, flags: 0x0}, 1399 85: {region: 0xb2, script: 0xc, flags: 0x0}, 1400 86: {region: 0x51, script: 0x4f, flags: 0x0}, 1401 87: {region: 0xe5, script: 0x4f, flags: 0x0}, 1402 88: {region: 0xe6, script: 0x1f, flags: 0x0}, 1403 89: {region: 0x104, script: 0x1d, flags: 0x0}, 1404 90: {region: 0x15c, script: 0x4f, flags: 0x0}, 1405 91: {region: 0x93, script: 0x4f, flags: 0x0}, 1406 92: {region: 0x51, script: 0x4f, flags: 0x0}, 1407 93: {region: 0x84, script: 0x4f, flags: 0x0}, 1408 94: {region: 0x6c, script: 0x26, flags: 0x0}, 1409 95: {region: 0x51, script: 0x4f, flags: 0x0}, 1410 96: {region: 0xc1, script: 0x4f, flags: 0x0}, 1411 97: {region: 0x6d, script: 0x4f, flags: 0x0}, 1412 98: {region: 0xd4, script: 0x4f, flags: 0x0}, 1413 99: {region: 0x8, script: 0x2, flags: 0x1}, 1414 100: {region: 0x104, script: 0x1d, flags: 0x0}, 1415 101: {region: 0xe5, script: 0x4f, flags: 0x0}, 1416 102: {region: 0x12f, script: 0x4f, flags: 0x0}, 1417 103: {region: 0x88, script: 0x4f, flags: 0x0}, 1418 104: {region: 0x73, script: 0x4f, flags: 0x0}, 1419 105: {region: 0x104, script: 0x1d, flags: 0x0}, 1420 106: {region: 0x132, script: 0x4f, flags: 0x0}, 1421 107: {region: 0x48, script: 0x4f, flags: 0x0}, 1422 108: {region: 0x132, script: 0x19, flags: 0x0}, 1423 109: {region: 0xa4, script: 0x5, flags: 0x0}, 1424 110: {region: 0x13b, script: 0x18, flags: 0x0}, 1425 111: {region: 0x99, script: 0x5, flags: 0x0}, 1426 112: {region: 0x76, script: 0x4f, flags: 0x0}, 1427 113: {region: 0x6a, script: 0x1b, flags: 0x0}, 1428 114: {region: 0xe5, script: 0x4f, flags: 0x0}, 1429 115: {region: 0x48, script: 0x16, flags: 0x0}, 1430 116: {region: 0x48, script: 0x16, flags: 0x0}, 1431 117: {region: 0x48, script: 0x16, flags: 0x0}, 1432 118: {region: 0x48, script: 0x16, flags: 0x0}, 1433 119: {region: 0x48, script: 0x16, flags: 0x0}, 1434 120: {region: 0x108, script: 0x4f, flags: 0x0}, 1435 121: {region: 0x5d, script: 0x4f, flags: 0x0}, 1436 122: {region: 0xe7, script: 0x4f, flags: 0x0}, 1437 123: {region: 0x48, script: 0x16, flags: 0x0}, 1438 124: {region: 0xc2, script: 0x74, flags: 0x0}, 1439 125: {region: 0xa, script: 0x2, flags: 0x1}, 1440 126: {region: 0x104, script: 0x1d, flags: 0x0}, 1441 127: {region: 0x79, script: 0x4f, flags: 0x0}, 1442 128: {region: 0x62, script: 0x4f, flags: 0x0}, 1443 129: {region: 0x132, script: 0x4f, flags: 0x0}, 1444 130: {region: 0x104, script: 0x1d, flags: 0x0}, 1445 131: {region: 0xa2, script: 0x4f, flags: 0x0}, 1446 132: {region: 0x97, script: 0x5, flags: 0x0}, 1447 133: {region: 0x5f, script: 0x4f, flags: 0x0}, 1448 134: {region: 0x48, script: 0x4f, flags: 0x0}, 1449 135: {region: 0x48, script: 0x4f, flags: 0x0}, 1450 136: {region: 0xd2, script: 0x4f, flags: 0x0}, 1451 137: {region: 0x4e, script: 0x4f, flags: 0x0}, 1452 138: {region: 0x97, script: 0x5, flags: 0x0}, 1453 139: {region: 0x5f, script: 0x4f, flags: 0x0}, 1454 140: {region: 0xc1, script: 0x4f, flags: 0x0}, 1455 141: {region: 0xce, script: 0x4f, flags: 0x0}, 1456 142: {region: 0x51, script: 0x4f, flags: 0x0}, 1457 143: {region: 0xcb, script: 0xce, flags: 0x0}, 1458 144: {region: 0x112, script: 0x4f, flags: 0x0}, 1459 145: {region: 0x36, script: 0x4f, flags: 0x0}, 1460 146: {region: 0x42, script: 0xd0, flags: 0x0}, 1461 147: {region: 0xa2, script: 0x4f, flags: 0x0}, 1462 148: {region: 0x7e, script: 0x4f, flags: 0x0}, 1463 149: {region: 0xd4, script: 0x4f, flags: 0x0}, 1464 150: {region: 0x9c, script: 0x4f, flags: 0x0}, 1465 151: {region: 0x6a, script: 0x24, flags: 0x0}, 1466 152: {region: 0xc2, script: 0x40, flags: 0x0}, 1467 153: {region: 0x85, script: 0x2c, flags: 0x0}, 1468 154: {region: 0xc, script: 0x2, flags: 0x1}, 1469 155: {region: 0x1, script: 0x4f, flags: 0x0}, 1470 156: {region: 0x6d, script: 0x4f, flags: 0x0}, 1471 157: {region: 0x132, script: 0x4f, flags: 0x0}, 1472 158: {region: 0x69, script: 0x4f, flags: 0x0}, 1473 159: {region: 0x9c, script: 0x3c, flags: 0x0}, 1474 160: {region: 0x6d, script: 0x4f, flags: 0x0}, 1475 161: {region: 0x51, script: 0x4f, flags: 0x0}, 1476 162: {region: 0x6d, script: 0x4f, flags: 0x0}, 1477 163: {region: 0x9a, script: 0x5, flags: 0x0}, 1478 164: {region: 0x84, script: 0x4f, flags: 0x0}, 1479 165: {region: 0x112, script: 0x4f, flags: 0x0}, 1480 166: {region: 0xc1, script: 0x4f, flags: 0x0}, 1481 167: {region: 0x70, script: 0x4f, flags: 0x0}, 1482 168: {region: 0x109, script: 0x5, flags: 0x0}, 1483 169: {region: 0xe5, script: 0x4f, flags: 0x0}, 1484 170: {region: 0x10a, script: 0x4f, flags: 0x0}, 1485 171: {region: 0x71, script: 0x4f, flags: 0x0}, 1486 172: {region: 0x74, script: 0x4f, flags: 0x0}, 1487 173: {region: 0x3a, script: 0x4f, flags: 0x0}, 1488 174: {region: 0x76, script: 0x4f, flags: 0x0}, 1489 175: {region: 0x132, script: 0x4f, flags: 0x0}, 1490 176: {region: 0x76, script: 0x4f, flags: 0x0}, 1491 177: {region: 0x5f, script: 0x4f, flags: 0x0}, 1492 178: {region: 0x5f, script: 0x4f, flags: 0x0}, 1493 179: {region: 0x13d, script: 0x4f, flags: 0x0}, 1494 180: {region: 0xd2, script: 0x4f, flags: 0x0}, 1495 181: {region: 0x9c, script: 0x4f, flags: 0x0}, 1496 182: {region: 0xd4, script: 0x4f, flags: 0x0}, 1497 183: {region: 0x109, script: 0x4f, flags: 0x0}, 1498 184: {region: 0xd7, script: 0x4f, flags: 0x0}, 1499 185: {region: 0x94, script: 0x4f, flags: 0x0}, 1500 186: {region: 0x7e, script: 0x4f, flags: 0x0}, 1501 187: {region: 0xba, script: 0x4f, flags: 0x0}, 1502 188: {region: 0x52, script: 0x32, flags: 0x0}, 1503 189: {region: 0x93, script: 0x4f, flags: 0x0}, 1504 190: {region: 0x97, script: 0x1f, flags: 0x0}, 1505 191: {region: 0x9a, script: 0x5, flags: 0x0}, 1506 192: {region: 0x7c, script: 0x4f, flags: 0x0}, 1507 193: {region: 0x79, script: 0x4f, flags: 0x0}, 1508 194: {region: 0x6e, script: 0x26, flags: 0x0}, 1509 195: {region: 0xd9, script: 0x1f, flags: 0x0}, 1510 196: {region: 0xa5, script: 0x4f, flags: 0x0}, 1511 197: {region: 0xe6, script: 0x5, flags: 0x0}, 1512 198: {region: 0xe6, script: 0x5, flags: 0x0}, 1513 199: {region: 0x6d, script: 0x4f, flags: 0x0}, 1514 200: {region: 0x9a, script: 0x5, flags: 0x0}, 1515 201: {region: 0xef, script: 0x4f, flags: 0x0}, 1516 202: {region: 0x97, script: 0x1f, flags: 0x0}, 1517 203: {region: 0x97, script: 0xca, flags: 0x0}, 1518 204: {region: 0x93, script: 0x4f, flags: 0x0}, 1519 205: {region: 0xd7, script: 0x4f, flags: 0x0}, 1520 206: {region: 0x12e, script: 0x2a, flags: 0x0}, 1521 207: {region: 0xe, script: 0x2, flags: 0x1}, 1522 208: {region: 0x97, script: 0xe, flags: 0x0}, 1523 209: {region: 0x4d, script: 0x4f, flags: 0x0}, 1524 210: {region: 0x97, script: 0x2d, flags: 0x0}, 1525 211: {region: 0x40, script: 0x4f, flags: 0x0}, 1526 212: {region: 0x53, script: 0x4f, flags: 0x0}, 1527 213: {region: 0x7e, script: 0x4f, flags: 0x0}, 1528 215: {region: 0xa2, script: 0x4f, flags: 0x0}, 1529 216: {region: 0x96, script: 0x4f, flags: 0x0}, 1530 217: {region: 0xd9, script: 0x1f, flags: 0x0}, 1531 218: {region: 0x48, script: 0x4f, flags: 0x0}, 1532 219: {region: 0x10, script: 0x3, flags: 0x1}, 1533 220: {region: 0x52, script: 0x32, flags: 0x0}, 1534 221: {region: 0x132, script: 0x4f, flags: 0x0}, 1535 222: {region: 0x23, script: 0x5, flags: 0x0}, 1536 223: {region: 0x95, script: 0x35, flags: 0x0}, 1537 224: {region: 0x97, script: 0x1f, flags: 0x0}, 1538 225: {region: 0x71, script: 0x4f, flags: 0x0}, 1539 226: {region: 0xe5, script: 0x4f, flags: 0x0}, 1540 227: {region: 0x129, script: 0x37, flags: 0x0}, 1541 228: {region: 0x52, script: 0x7b, flags: 0x0}, 1542 229: {region: 0xe6, script: 0x5, flags: 0x0}, 1543 230: {region: 0x97, script: 0x1f, flags: 0x0}, 1544 231: {region: 0xad, script: 0x38, flags: 0x0}, 1545 232: {region: 0xe5, script: 0x4f, flags: 0x0}, 1546 233: {region: 0xe6, script: 0x5, flags: 0x0}, 1547 234: {region: 0xe4, script: 0x4f, flags: 0x0}, 1548 235: {region: 0x97, script: 0x1f, flags: 0x0}, 1549 236: {region: 0x97, script: 0x1f, flags: 0x0}, 1550 237: {region: 0x8e, script: 0x4f, flags: 0x0}, 1551 238: {region: 0x5f, script: 0x4f, flags: 0x0}, 1552 239: {region: 0x52, script: 0x32, flags: 0x0}, 1553 240: {region: 0x8f, script: 0x4f, flags: 0x0}, 1554 241: {region: 0x90, script: 0x4f, flags: 0x0}, 1555 242: {region: 0x27, script: 0x8, flags: 0x0}, 1556 243: {region: 0xd0, script: 0x4f, flags: 0x0}, 1557 244: {region: 0x76, script: 0x4f, flags: 0x0}, 1558 245: {region: 0xce, script: 0x4f, flags: 0x0}, 1559 246: {region: 0xd4, script: 0x4f, flags: 0x0}, 1560 247: {region: 0x93, script: 0x4f, flags: 0x0}, 1561 249: {region: 0xd4, script: 0x4f, flags: 0x0}, 1562 250: {region: 0x52, script: 0xd9, flags: 0x0}, 1563 251: {region: 0x132, script: 0x4f, flags: 0x0}, 1564 252: {region: 0x48, script: 0x4f, flags: 0x0}, 1565 253: {region: 0xe5, script: 0x4f, flags: 0x0}, 1566 254: {region: 0x93, script: 0x4f, flags: 0x0}, 1567 255: {region: 0x104, script: 0x1d, flags: 0x0}, 1568 257: {region: 0x9b, script: 0x4f, flags: 0x0}, 1569 258: {region: 0x9c, script: 0x4f, flags: 0x0}, 1570 259: {region: 0x48, script: 0x16, flags: 0x0}, 1571 260: {region: 0x95, script: 0x35, flags: 0x0}, 1572 261: {region: 0x104, script: 0x4f, flags: 0x0}, 1573 262: {region: 0xa0, script: 0x3e, flags: 0x0}, 1574 263: {region: 0x9e, script: 0x4f, flags: 0x0}, 1575 265: {region: 0x51, script: 0x4f, flags: 0x0}, 1576 266: {region: 0x12e, script: 0x35, flags: 0x0}, 1577 267: {region: 0x12d, script: 0x4f, flags: 0x0}, 1578 268: {region: 0xd9, script: 0x1f, flags: 0x0}, 1579 269: {region: 0x62, script: 0x4f, flags: 0x0}, 1580 270: {region: 0x93, script: 0x4f, flags: 0x0}, 1581 271: {region: 0x93, script: 0x4f, flags: 0x0}, 1582 272: {region: 0x7b, script: 0x28, flags: 0x0}, 1583 273: {region: 0x134, script: 0x1d, flags: 0x0}, 1584 274: {region: 0x66, script: 0x4f, flags: 0x0}, 1585 275: {region: 0xc2, script: 0x4f, flags: 0x0}, 1586 276: {region: 0xd4, script: 0x4f, flags: 0x0}, 1587 277: {region: 0xa2, script: 0x4f, flags: 0x0}, 1588 278: {region: 0xc1, script: 0x4f, flags: 0x0}, 1589 279: {region: 0x104, script: 0x1d, flags: 0x0}, 1590 280: {region: 0xd4, script: 0x4f, flags: 0x0}, 1591 281: {region: 0x161, script: 0x4f, flags: 0x0}, 1592 282: {region: 0x12d, script: 0x4f, flags: 0x0}, 1593 283: {region: 0x121, script: 0xcf, flags: 0x0}, 1594 284: {region: 0x59, script: 0x4f, flags: 0x0}, 1595 285: {region: 0x51, script: 0x4f, flags: 0x0}, 1596 286: {region: 0x4e, script: 0x4f, flags: 0x0}, 1597 287: {region: 0x97, script: 0x1f, flags: 0x0}, 1598 288: {region: 0x97, script: 0x1f, flags: 0x0}, 1599 289: {region: 0x4a, script: 0x4f, flags: 0x0}, 1600 290: {region: 0x93, script: 0x4f, flags: 0x0}, 1601 291: {region: 0x40, script: 0x4f, flags: 0x0}, 1602 292: {region: 0x97, script: 0x4f, flags: 0x0}, 1603 293: {region: 0x52, script: 0xc6, flags: 0x0}, 1604 294: {region: 0x97, script: 0x1f, flags: 0x0}, 1605 295: {region: 0xc1, script: 0x4f, flags: 0x0}, 1606 296: {region: 0x97, script: 0x67, flags: 0x0}, 1607 297: {region: 0xe6, script: 0x5, flags: 0x0}, 1608 298: {region: 0xa2, script: 0x4f, flags: 0x0}, 1609 299: {region: 0x129, script: 0x4f, flags: 0x0}, 1610 300: {region: 0xd0, script: 0x4f, flags: 0x0}, 1611 301: {region: 0xad, script: 0x4c, flags: 0x0}, 1612 302: {region: 0x13, script: 0x6, flags: 0x1}, 1613 303: {region: 0x51, script: 0x4f, flags: 0x0}, 1614 304: {region: 0x80, script: 0x4f, flags: 0x0}, 1615 305: {region: 0xa2, script: 0x4f, flags: 0x0}, 1616 306: {region: 0xa4, script: 0x43, flags: 0x0}, 1617 307: {region: 0x29, script: 0x4f, flags: 0x0}, 1618 308: {region: 0x97, script: 0x47, flags: 0x0}, 1619 309: {region: 0xa9, script: 0x48, flags: 0x0}, 1620 310: {region: 0x104, script: 0x1d, flags: 0x0}, 1621 311: {region: 0x97, script: 0x1f, flags: 0x0}, 1622 312: {region: 0x73, script: 0x4f, flags: 0x0}, 1623 313: {region: 0xb2, script: 0x4f, flags: 0x0}, 1624 315: {region: 0x104, script: 0x1d, flags: 0x0}, 1625 316: {region: 0x110, script: 0x4f, flags: 0x0}, 1626 317: {region: 0xe5, script: 0x4f, flags: 0x0}, 1627 318: {region: 0x104, script: 0x4f, flags: 0x0}, 1628 319: {region: 0x97, script: 0x1f, flags: 0x0}, 1629 320: {region: 0x97, script: 0x5, flags: 0x0}, 1630 321: {region: 0x12d, script: 0x4f, flags: 0x0}, 1631 322: {region: 0x51, script: 0x4f, flags: 0x0}, 1632 323: {region: 0x5f, script: 0x4f, flags: 0x0}, 1633 324: {region: 0x19, script: 0x3, flags: 0x1}, 1634 325: {region: 0x104, script: 0x1d, flags: 0x0}, 1635 326: {region: 0x104, script: 0x1d, flags: 0x0}, 1636 327: {region: 0x93, script: 0x4f, flags: 0x0}, 1637 328: {region: 0xe6, script: 0x5, flags: 0x0}, 1638 329: {region: 0x79, script: 0x4f, flags: 0x0}, 1639 330: {region: 0x121, script: 0xcf, flags: 0x0}, 1640 331: {region: 0xe6, script: 0x5, flags: 0x0}, 1641 332: {region: 0x1c, script: 0x5, flags: 0x1}, 1642 333: {region: 0x135, script: 0x4f, flags: 0x0}, 1643 334: {region: 0x85, script: 0x52, flags: 0x0}, 1644 335: {region: 0x95, script: 0x35, flags: 0x0}, 1645 336: {region: 0x12d, script: 0x4f, flags: 0x0}, 1646 337: {region: 0xe6, script: 0x5, flags: 0x0}, 1647 338: {region: 0x12f, script: 0x4f, flags: 0x0}, 1648 339: {region: 0xb5, script: 0x4f, flags: 0x0}, 1649 340: {region: 0x104, script: 0x1d, flags: 0x0}, 1650 341: {region: 0x93, script: 0x4f, flags: 0x0}, 1651 342: {region: 0x52, script: 0xcf, flags: 0x0}, 1652 343: {region: 0x97, script: 0x50, flags: 0x0}, 1653 344: {region: 0x104, script: 0x1d, flags: 0x0}, 1654 345: {region: 0x12f, script: 0x4f, flags: 0x0}, 1655 346: {region: 0xd7, script: 0x4f, flags: 0x0}, 1656 347: {region: 0x21, script: 0x2, flags: 0x1}, 1657 348: {region: 0x9c, script: 0x4f, flags: 0x0}, 1658 349: {region: 0x52, script: 0x54, flags: 0x0}, 1659 350: {region: 0x93, script: 0x4f, flags: 0x0}, 1660 351: {region: 0x9a, script: 0x5, flags: 0x0}, 1661 352: {region: 0x132, script: 0x4f, flags: 0x0}, 1662 353: {region: 0x97, script: 0xca, flags: 0x0}, 1663 354: {region: 0x9c, script: 0x4f, flags: 0x0}, 1664 355: {region: 0x4a, script: 0x4f, flags: 0x0}, 1665 356: {region: 0xad, script: 0x4c, flags: 0x0}, 1666 357: {region: 0x4a, script: 0x4f, flags: 0x0}, 1667 358: {region: 0x15f, script: 0x4f, flags: 0x0}, 1668 359: {region: 0x9a, script: 0x5, flags: 0x0}, 1669 360: {region: 0xb4, script: 0x4f, flags: 0x0}, 1670 361: {region: 0xb6, script: 0x4f, flags: 0x0}, 1671 362: {region: 0x4a, script: 0x4f, flags: 0x0}, 1672 363: {region: 0x4a, script: 0x4f, flags: 0x0}, 1673 364: {region: 0xa2, script: 0x4f, flags: 0x0}, 1674 365: {region: 0xa2, script: 0x4f, flags: 0x0}, 1675 366: {region: 0x9a, script: 0x5, flags: 0x0}, 1676 367: {region: 0xb6, script: 0x4f, flags: 0x0}, 1677 368: {region: 0x121, script: 0xcf, flags: 0x0}, 1678 369: {region: 0x52, script: 0x32, flags: 0x0}, 1679 370: {region: 0x129, script: 0x4f, flags: 0x0}, 1680 371: {region: 0x93, script: 0x4f, flags: 0x0}, 1681 372: {region: 0x51, script: 0x4f, flags: 0x0}, 1682 373: {region: 0x97, script: 0x1f, flags: 0x0}, 1683 374: {region: 0x97, script: 0x1f, flags: 0x0}, 1684 375: {region: 0x93, script: 0x4f, flags: 0x0}, 1685 376: {region: 0x23, script: 0x3, flags: 0x1}, 1686 377: {region: 0xa2, script: 0x4f, flags: 0x0}, 1687 378: {region: 0xcd, script: 0x4f, flags: 0x0}, 1688 379: {region: 0x104, script: 0x1d, flags: 0x0}, 1689 380: {region: 0xe5, script: 0x4f, flags: 0x0}, 1690 381: {region: 0x93, script: 0x4f, flags: 0x0}, 1691 382: {region: 0x110, script: 0x4f, flags: 0x0}, 1692 383: {region: 0xa2, script: 0x4f, flags: 0x0}, 1693 384: {region: 0x121, script: 0x5, flags: 0x0}, 1694 385: {region: 0xca, script: 0x4f, flags: 0x0}, 1695 386: {region: 0xbd, script: 0x4f, flags: 0x0}, 1696 387: {region: 0xcf, script: 0x4f, flags: 0x0}, 1697 388: {region: 0x51, script: 0x4f, flags: 0x0}, 1698 389: {region: 0xd9, script: 0x1f, flags: 0x0}, 1699 390: {region: 0x12d, script: 0x4f, flags: 0x0}, 1700 391: {region: 0xbe, script: 0x4f, flags: 0x0}, 1701 392: {region: 0xde, script: 0x4f, flags: 0x0}, 1702 393: {region: 0x93, script: 0x4f, flags: 0x0}, 1703 394: {region: 0x99, script: 0x34, flags: 0x0}, 1704 395: {region: 0xc0, script: 0x1d, flags: 0x0}, 1705 396: {region: 0x97, script: 0x60, flags: 0x0}, 1706 397: {region: 0x109, script: 0x4f, flags: 0x0}, 1707 398: {region: 0x26, script: 0x3, flags: 0x1}, 1708 399: {region: 0x97, script: 0xe, flags: 0x0}, 1709 400: {region: 0xc2, script: 0x67, flags: 0x0}, 1710 402: {region: 0x48, script: 0x4f, flags: 0x0}, 1711 403: {region: 0x48, script: 0x4f, flags: 0x0}, 1712 404: {region: 0x36, script: 0x4f, flags: 0x0}, 1713 405: {region: 0x97, script: 0x1f, flags: 0x0}, 1714 406: {region: 0xd9, script: 0x1f, flags: 0x0}, 1715 407: {region: 0x104, script: 0x1d, flags: 0x0}, 1716 408: {region: 0x34, script: 0x64, flags: 0x0}, 1717 409: {region: 0x29, script: 0x3, flags: 0x1}, 1718 410: {region: 0xc9, script: 0x4f, flags: 0x0}, 1719 411: {region: 0x97, script: 0x1f, flags: 0x0}, 1720 412: {region: 0x51, script: 0x4f, flags: 0x0}, 1721 414: {region: 0x132, script: 0x4f, flags: 0x0}, 1722 415: {region: 0xe6, script: 0x5, flags: 0x0}, 1723 416: {region: 0xc1, script: 0x4f, flags: 0x0}, 1724 417: {region: 0x97, script: 0x1f, flags: 0x0}, 1725 418: {region: 0x93, script: 0x4f, flags: 0x0}, 1726 419: {region: 0x161, script: 0x4f, flags: 0x0}, 1727 420: {region: 0xc2, script: 0x67, flags: 0x0}, 1728 421: {region: 0x104, script: 0x1d, flags: 0x0}, 1729 422: {region: 0x12f, script: 0x4f, flags: 0x0}, 1730 423: {region: 0x9a, script: 0x59, flags: 0x0}, 1731 424: {region: 0x9a, script: 0x5, flags: 0x0}, 1732 425: {region: 0xdb, script: 0x4f, flags: 0x0}, 1733 427: {region: 0x52, script: 0x32, flags: 0x0}, 1734 428: {region: 0x9c, script: 0x4f, flags: 0x0}, 1735 429: {region: 0xd0, script: 0x4f, flags: 0x0}, 1736 430: {region: 0xd8, script: 0x4f, flags: 0x0}, 1737 431: {region: 0xcd, script: 0x4f, flags: 0x0}, 1738 432: {region: 0x161, script: 0x4f, flags: 0x0}, 1739 433: {region: 0xcf, script: 0x4f, flags: 0x0}, 1740 434: {region: 0x5f, script: 0x4f, flags: 0x0}, 1741 435: {region: 0xd9, script: 0x1f, flags: 0x0}, 1742 436: {region: 0xd9, script: 0x1f, flags: 0x0}, 1743 437: {region: 0xd0, script: 0x4f, flags: 0x0}, 1744 438: {region: 0xcf, script: 0x4f, flags: 0x0}, 1745 439: {region: 0xcd, script: 0x4f, flags: 0x0}, 1746 440: {region: 0xcd, script: 0x4f, flags: 0x0}, 1747 441: {region: 0x93, script: 0x4f, flags: 0x0}, 1748 442: {region: 0xdd, script: 0x4f, flags: 0x0}, 1749 443: {region: 0x97, script: 0x4f, flags: 0x0}, 1750 444: {region: 0xd7, script: 0x4f, flags: 0x0}, 1751 445: {region: 0x51, script: 0x4f, flags: 0x0}, 1752 446: {region: 0xd8, script: 0x4f, flags: 0x0}, 1753 447: {region: 0x51, script: 0x4f, flags: 0x0}, 1754 448: {region: 0xd8, script: 0x4f, flags: 0x0}, 1755 449: {region: 0x121, script: 0x4b, flags: 0x0}, 1756 450: {region: 0x97, script: 0x1f, flags: 0x0}, 1757 451: {region: 0x10a, script: 0xb1, flags: 0x0}, 1758 452: {region: 0x82, script: 0x6b, flags: 0x0}, 1759 453: {region: 0x15e, script: 0x4f, flags: 0x0}, 1760 454: {region: 0x48, script: 0x16, flags: 0x0}, 1761 455: {region: 0x15e, script: 0x4f, flags: 0x0}, 1762 456: {region: 0x115, script: 0x4f, flags: 0x0}, 1763 457: {region: 0x132, script: 0x4f, flags: 0x0}, 1764 458: {region: 0x52, script: 0x4f, flags: 0x0}, 1765 459: {region: 0xcc, script: 0x4f, flags: 0x0}, 1766 460: {region: 0x12d, script: 0x4f, flags: 0x0}, 1767 461: {region: 0x12f, script: 0x4f, flags: 0x0}, 1768 462: {region: 0x7e, script: 0x4f, flags: 0x0}, 1769 463: {region: 0x76, script: 0x4f, flags: 0x0}, 1770 465: {region: 0x6e, script: 0x4f, flags: 0x0}, 1771 466: {region: 0x97, script: 0x70, flags: 0x0}, 1772 467: {region: 0x7b, script: 0x1d, flags: 0x0}, 1773 468: {region: 0xc3, script: 0x6f, flags: 0x0}, 1774 469: {region: 0x2c, script: 0x3, flags: 0x1}, 1775 470: {region: 0xe5, script: 0x4f, flags: 0x0}, 1776 471: {region: 0x2f, script: 0x2, flags: 0x1}, 1777 472: {region: 0xe5, script: 0x4f, flags: 0x0}, 1778 473: {region: 0x2f, script: 0x4f, flags: 0x0}, 1779 474: {region: 0xee, script: 0x4f, flags: 0x0}, 1780 475: {region: 0x76, script: 0x4f, flags: 0x0}, 1781 476: {region: 0xd4, script: 0x4f, flags: 0x0}, 1782 477: {region: 0x132, script: 0x4f, flags: 0x0}, 1783 478: {region: 0x48, script: 0x4f, flags: 0x0}, 1784 479: {region: 0x9a, script: 0xd7, flags: 0x0}, 1785 480: {region: 0x5f, script: 0x4f, flags: 0x0}, 1786 481: {region: 0xae, script: 0x7a, flags: 0x0}, 1787 483: {region: 0x97, script: 0x11, flags: 0x0}, 1788 484: {region: 0xa2, script: 0x4f, flags: 0x0}, 1789 485: {region: 0xe7, script: 0x4f, flags: 0x0}, 1790 486: {region: 0x9c, script: 0x4f, flags: 0x0}, 1791 487: {region: 0x85, script: 0x2c, flags: 0x0}, 1792 488: {region: 0x73, script: 0x4f, flags: 0x0}, 1793 489: {region: 0xe6, script: 0x42, flags: 0x0}, 1794 490: {region: 0x9a, script: 0x5, flags: 0x0}, 1795 491: {region: 0x1, script: 0x4f, flags: 0x0}, 1796 492: {region: 0x23, script: 0x5, flags: 0x0}, 1797 493: {region: 0x40, script: 0x4f, flags: 0x0}, 1798 494: {region: 0x78, script: 0x4f, flags: 0x0}, 1799 495: {region: 0xe2, script: 0x4f, flags: 0x0}, 1800 496: {region: 0x87, script: 0x4f, flags: 0x0}, 1801 497: {region: 0x68, script: 0x4f, flags: 0x0}, 1802 498: {region: 0x97, script: 0x1f, flags: 0x0}, 1803 499: {region: 0x100, script: 0x4f, flags: 0x0}, 1804 500: {region: 0x93, script: 0x4f, flags: 0x0}, 1805 501: {region: 0x9c, script: 0x4f, flags: 0x0}, 1806 502: {region: 0x97, script: 0x4f, flags: 0x0}, 1807 503: {region: 0x31, script: 0x2, flags: 0x1}, 1808 504: {region: 0xd9, script: 0x1f, flags: 0x0}, 1809 505: {region: 0x34, script: 0xe, flags: 0x0}, 1810 506: {region: 0x4d, script: 0x4f, flags: 0x0}, 1811 507: {region: 0x70, script: 0x4f, flags: 0x0}, 1812 508: {region: 0x4d, script: 0x4f, flags: 0x0}, 1813 509: {region: 0x9a, script: 0x5, flags: 0x0}, 1814 510: {region: 0x10a, script: 0x4f, flags: 0x0}, 1815 511: {region: 0x39, script: 0x4f, flags: 0x0}, 1816 512: {region: 0xcf, script: 0x4f, flags: 0x0}, 1817 513: {region: 0x102, script: 0x4f, flags: 0x0}, 1818 514: {region: 0x93, script: 0x4f, flags: 0x0}, 1819 515: {region: 0x12d, script: 0x4f, flags: 0x0}, 1820 516: {region: 0x71, script: 0x4f, flags: 0x0}, 1821 517: {region: 0x104, script: 0x1d, flags: 0x0}, 1822 518: {region: 0x12e, script: 0x1d, flags: 0x0}, 1823 519: {region: 0x107, script: 0x4f, flags: 0x0}, 1824 520: {region: 0x105, script: 0x4f, flags: 0x0}, 1825 521: {region: 0x12d, script: 0x4f, flags: 0x0}, 1826 522: {region: 0xa0, script: 0x41, flags: 0x0}, 1827 523: {region: 0x97, script: 0x1f, flags: 0x0}, 1828 524: {region: 0x7e, script: 0x4f, flags: 0x0}, 1829 525: {region: 0x104, script: 0x1d, flags: 0x0}, 1830 526: {region: 0xa2, script: 0x4f, flags: 0x0}, 1831 527: {region: 0x93, script: 0x4f, flags: 0x0}, 1832 528: {region: 0x97, script: 0x4f, flags: 0x0}, 1833 529: {region: 0x97, script: 0xb5, flags: 0x0}, 1834 530: {region: 0x12d, script: 0x4f, flags: 0x0}, 1835 531: {region: 0x9c, script: 0x4f, flags: 0x0}, 1836 532: {region: 0x97, script: 0x1f, flags: 0x0}, 1837 533: {region: 0x9c, script: 0x4f, flags: 0x0}, 1838 534: {region: 0x79, script: 0x4f, flags: 0x0}, 1839 535: {region: 0x48, script: 0x4f, flags: 0x0}, 1840 536: {region: 0x33, script: 0x4, flags: 0x1}, 1841 537: {region: 0x9c, script: 0x4f, flags: 0x0}, 1842 538: {region: 0x9a, script: 0x5, flags: 0x0}, 1843 539: {region: 0xd8, script: 0x4f, flags: 0x0}, 1844 540: {region: 0x4e, script: 0x4f, flags: 0x0}, 1845 541: {region: 0xcf, script: 0x4f, flags: 0x0}, 1846 542: {region: 0xcd, script: 0x4f, flags: 0x0}, 1847 543: {region: 0xc1, script: 0x4f, flags: 0x0}, 1848 544: {region: 0x4b, script: 0x4f, flags: 0x0}, 1849 545: {region: 0x94, script: 0x6d, flags: 0x0}, 1850 546: {region: 0xb4, script: 0x4f, flags: 0x0}, 1851 548: {region: 0xb8, script: 0xcc, flags: 0x0}, 1852 549: {region: 0xc2, script: 0x67, flags: 0x0}, 1853 550: {region: 0xb1, script: 0xbb, flags: 0x0}, 1854 551: {region: 0x6e, script: 0x4f, flags: 0x0}, 1855 552: {region: 0x10f, script: 0x4f, flags: 0x0}, 1856 553: {region: 0xe6, script: 0x5, flags: 0x0}, 1857 554: {region: 0x10d, script: 0x4f, flags: 0x0}, 1858 555: {region: 0xe7, script: 0x4f, flags: 0x0}, 1859 556: {region: 0x93, script: 0x4f, flags: 0x0}, 1860 557: {region: 0x13f, script: 0x4f, flags: 0x0}, 1861 558: {region: 0x10a, script: 0x4f, flags: 0x0}, 1862 560: {region: 0x10a, script: 0x4f, flags: 0x0}, 1863 561: {region: 0x70, script: 0x4f, flags: 0x0}, 1864 562: {region: 0x95, script: 0xb2, flags: 0x0}, 1865 563: {region: 0x70, script: 0x4f, flags: 0x0}, 1866 564: {region: 0x161, script: 0x4f, flags: 0x0}, 1867 565: {region: 0xc1, script: 0x4f, flags: 0x0}, 1868 566: {region: 0x113, script: 0x4f, flags: 0x0}, 1869 567: {region: 0x121, script: 0xcf, flags: 0x0}, 1870 568: {region: 0x26, script: 0x4f, flags: 0x0}, 1871 569: {region: 0x37, script: 0x5, flags: 0x1}, 1872 570: {region: 0x97, script: 0xbc, flags: 0x0}, 1873 571: {region: 0x114, script: 0x4f, flags: 0x0}, 1874 572: {region: 0x112, script: 0x4f, flags: 0x0}, 1875 573: {region: 0x97, script: 0x1f, flags: 0x0}, 1876 574: {region: 0x15e, script: 0x4f, flags: 0x0}, 1877 575: {region: 0x6c, script: 0x4f, flags: 0x0}, 1878 576: {region: 0x15e, script: 0x4f, flags: 0x0}, 1879 577: {region: 0x5f, script: 0x4f, flags: 0x0}, 1880 578: {region: 0x93, script: 0x4f, flags: 0x0}, 1881 579: {region: 0x12d, script: 0x4f, flags: 0x0}, 1882 580: {region: 0x82, script: 0x4f, flags: 0x0}, 1883 581: {region: 0x10a, script: 0x4f, flags: 0x0}, 1884 582: {region: 0x12d, script: 0x4f, flags: 0x0}, 1885 583: {region: 0x15c, script: 0x5, flags: 0x0}, 1886 584: {region: 0x4a, script: 0x4f, flags: 0x0}, 1887 585: {region: 0x5f, script: 0x4f, flags: 0x0}, 1888 586: {region: 0x97, script: 0x1f, flags: 0x0}, 1889 587: {region: 0x93, script: 0x4f, flags: 0x0}, 1890 588: {region: 0x34, script: 0xe, flags: 0x0}, 1891 589: {region: 0x99, script: 0xbf, flags: 0x0}, 1892 590: {region: 0xe7, script: 0x4f, flags: 0x0}, 1893 591: {region: 0x97, script: 0xc7, flags: 0x0}, 1894 592: {region: 0xd9, script: 0x1f, flags: 0x0}, 1895 593: {region: 0xe5, script: 0x4f, flags: 0x0}, 1896 594: {region: 0x97, script: 0x47, flags: 0x0}, 1897 595: {region: 0x52, script: 0xc5, flags: 0x0}, 1898 596: {region: 0xd9, script: 0x1f, flags: 0x0}, 1899 597: {region: 0xd9, script: 0x1f, flags: 0x0}, 1900 598: {region: 0x97, script: 0xca, flags: 0x0}, 1901 599: {region: 0x110, script: 0x4f, flags: 0x0}, 1902 600: {region: 0x12f, script: 0x4f, flags: 0x0}, 1903 601: {region: 0x124, script: 0x4f, flags: 0x0}, 1904 602: {region: 0x3c, script: 0x3, flags: 0x1}, 1905 603: {region: 0x121, script: 0xcf, flags: 0x0}, 1906 604: {region: 0xd9, script: 0x1f, flags: 0x0}, 1907 605: {region: 0xd9, script: 0x1f, flags: 0x0}, 1908 606: {region: 0xd9, script: 0x1f, flags: 0x0}, 1909 607: {region: 0x6e, script: 0x26, flags: 0x0}, 1910 608: {region: 0x6c, script: 0x26, flags: 0x0}, 1911 609: {region: 0xd4, script: 0x4f, flags: 0x0}, 1912 610: {region: 0x125, script: 0x4f, flags: 0x0}, 1913 611: {region: 0x123, script: 0x4f, flags: 0x0}, 1914 612: {region: 0x31, script: 0x4f, flags: 0x0}, 1915 613: {region: 0xd9, script: 0x1f, flags: 0x0}, 1916 614: {region: 0xe5, script: 0x4f, flags: 0x0}, 1917 615: {region: 0x31, script: 0x4f, flags: 0x0}, 1918 616: {region: 0xd2, script: 0x4f, flags: 0x0}, 1919 617: {region: 0x15e, script: 0x4f, flags: 0x0}, 1920 618: {region: 0x127, script: 0x4f, flags: 0x0}, 1921 619: {region: 0xcc, script: 0x4f, flags: 0x0}, 1922 620: {region: 0xe4, script: 0x4f, flags: 0x0}, 1923 621: {region: 0x129, script: 0x4f, flags: 0x0}, 1924 622: {region: 0x129, script: 0x4f, flags: 0x0}, 1925 623: {region: 0x12c, script: 0x4f, flags: 0x0}, 1926 624: {region: 0x15e, script: 0x4f, flags: 0x0}, 1927 625: {region: 0x85, script: 0x2c, flags: 0x0}, 1928 626: {region: 0xd9, script: 0x1f, flags: 0x0}, 1929 627: {region: 0xe5, script: 0x4f, flags: 0x0}, 1930 628: {region: 0x42, script: 0xd0, flags: 0x0}, 1931 629: {region: 0x104, script: 0x1d, flags: 0x0}, 1932 630: {region: 0x12f, script: 0x4f, flags: 0x0}, 1933 631: {region: 0x121, script: 0xcf, flags: 0x0}, 1934 632: {region: 0x31, script: 0x4f, flags: 0x0}, 1935 633: {region: 0xcc, script: 0x4f, flags: 0x0}, 1936 634: {region: 0x12b, script: 0x4f, flags: 0x0}, 1937 636: {region: 0xd2, script: 0x4f, flags: 0x0}, 1938 637: {region: 0xe3, script: 0x4f, flags: 0x0}, 1939 638: {region: 0x104, script: 0x1d, flags: 0x0}, 1940 639: {region: 0xb8, script: 0x4f, flags: 0x0}, 1941 640: {region: 0x104, script: 0x1d, flags: 0x0}, 1942 641: {region: 0x3f, script: 0x4, flags: 0x1}, 1943 642: {region: 0x11a, script: 0xd2, flags: 0x0}, 1944 643: {region: 0x12e, script: 0x1d, flags: 0x0}, 1945 644: {region: 0x73, script: 0x4f, flags: 0x0}, 1946 645: {region: 0x29, script: 0x4f, flags: 0x0}, 1947 647: {region: 0x43, script: 0x3, flags: 0x1}, 1948 648: {region: 0x97, script: 0xe, flags: 0x0}, 1949 649: {region: 0xe6, script: 0x5, flags: 0x0}, 1950 650: {region: 0x46, script: 0x4, flags: 0x1}, 1951 651: {region: 0xb2, script: 0xd3, flags: 0x0}, 1952 652: {region: 0x15e, script: 0x4f, flags: 0x0}, 1953 653: {region: 0x9c, script: 0x4f, flags: 0x0}, 1954 654: {region: 0x104, script: 0x4f, flags: 0x0}, 1955 655: {region: 0x13b, script: 0x4f, flags: 0x0}, 1956 656: {region: 0x119, script: 0x4f, flags: 0x0}, 1957 657: {region: 0x35, script: 0x4f, flags: 0x0}, 1958 658: {region: 0x5f, script: 0x4f, flags: 0x0}, 1959 659: {region: 0xcf, script: 0x4f, flags: 0x0}, 1960 660: {region: 0x1, script: 0x4f, flags: 0x0}, 1961 661: {region: 0x104, script: 0x4f, flags: 0x0}, 1962 662: {region: 0x69, script: 0x4f, flags: 0x0}, 1963 663: {region: 0x12d, script: 0x4f, flags: 0x0}, 1964 664: {region: 0x35, script: 0x4f, flags: 0x0}, 1965 665: {region: 0x4d, script: 0x4f, flags: 0x0}, 1966 666: {region: 0x6e, script: 0x26, flags: 0x0}, 1967 667: {region: 0xe5, script: 0x4f, flags: 0x0}, 1968 668: {region: 0x2e, script: 0x4f, flags: 0x0}, 1969 669: {region: 0x97, script: 0xca, flags: 0x0}, 1970 670: {region: 0x97, script: 0x1f, flags: 0x0}, 1971 671: {region: 0x13d, script: 0x4f, flags: 0x0}, 1972 672: {region: 0xa6, script: 0x5, flags: 0x0}, 1973 673: {region: 0x112, script: 0x4f, flags: 0x0}, 1974 674: {region: 0x97, script: 0x1f, flags: 0x0}, 1975 675: {region: 0x52, script: 0x32, flags: 0x0}, 1976 676: {region: 0x40, script: 0x4f, flags: 0x0}, 1977 677: {region: 0x129, script: 0x17, flags: 0x0}, 1978 678: {region: 0x15e, script: 0x4f, flags: 0x0}, 1979 679: {region: 0x129, script: 0x56, flags: 0x0}, 1980 680: {region: 0x129, script: 0x57, flags: 0x0}, 1981 681: {region: 0x7b, script: 0x28, flags: 0x0}, 1982 682: {region: 0x52, script: 0x5a, flags: 0x0}, 1983 683: {region: 0x109, script: 0x5e, flags: 0x0}, 1984 684: {region: 0x106, script: 0x68, flags: 0x0}, 1985 685: {region: 0x97, script: 0x1f, flags: 0x0}, 1986 686: {region: 0x12f, script: 0x4f, flags: 0x0}, 1987 687: {region: 0x9a, script: 0x7c, flags: 0x0}, 1988 688: {region: 0x15b, script: 0xb4, flags: 0x0}, 1989 689: {region: 0xd9, script: 0x1f, flags: 0x0}, 1990 690: {region: 0xcf, script: 0x4f, flags: 0x0}, 1991 691: {region: 0x73, script: 0x4f, flags: 0x0}, 1992 692: {region: 0x51, script: 0x4f, flags: 0x0}, 1993 693: {region: 0x51, script: 0x4f, flags: 0x0}, 1994 694: {region: 0x1, script: 0x35, flags: 0x0}, 1995 695: {region: 0xd4, script: 0x4f, flags: 0x0}, 1996 696: {region: 0x40, script: 0x4f, flags: 0x0}, 1997 697: {region: 0xcd, script: 0x4f, flags: 0x0}, 1998 698: {region: 0x52, script: 0x4f, flags: 0x0}, 1999 699: {region: 0x109, script: 0x4f, flags: 0x0}, 2000 701: {region: 0xa6, script: 0x5, flags: 0x0}, 2001 702: {region: 0xd7, script: 0x4f, flags: 0x0}, 2002 703: {region: 0xb8, script: 0xcc, flags: 0x0}, 2003 704: {region: 0x4a, script: 0x13, flags: 0x1}, 2004 705: {region: 0xce, script: 0x4f, flags: 0x0}, 2005 706: {region: 0x15e, script: 0x4f, flags: 0x0}, 2006 708: {region: 0x129, script: 0x4f, flags: 0x0}, 2007 } 2008 2009 // likelyLangList holds lists info associated with likelyLang. 2010 // Size: 372 bytes, 93 elements 2011 var likelyLangList = [93]likelyScriptRegion{ 2012 0: {region: 0x9a, script: 0x7, flags: 0x0}, 2013 1: {region: 0x9f, script: 0x69, flags: 0x2}, 2014 2: {region: 0x11a, script: 0x73, flags: 0x2}, 2015 3: {region: 0x31, script: 0x4f, flags: 0x0}, 2016 4: {region: 0x99, script: 0x5, flags: 0x4}, 2017 5: {region: 0x9a, script: 0x5, flags: 0x4}, 2018 6: {region: 0x104, script: 0x1d, flags: 0x4}, 2019 7: {region: 0x9a, script: 0x5, flags: 0x2}, 2020 8: {region: 0x97, script: 0xe, flags: 0x0}, 2021 9: {region: 0x34, script: 0x15, flags: 0x2}, 2022 10: {region: 0x104, script: 0x1d, flags: 0x0}, 2023 11: {region: 0x37, script: 0x29, flags: 0x2}, 2024 12: {region: 0x132, script: 0x4f, flags: 0x0}, 2025 13: {region: 0x79, script: 0xb7, flags: 0x2}, 2026 14: {region: 0x5c, script: 0x1c, flags: 0x0}, 2027 15: {region: 0x85, script: 0x53, flags: 0x2}, 2028 16: {region: 0xd4, script: 0x4f, flags: 0x0}, 2029 17: {region: 0x51, script: 0x5, flags: 0x4}, 2030 18: {region: 0x109, script: 0x5, flags: 0x4}, 2031 19: {region: 0xac, script: 0x1d, flags: 0x0}, 2032 20: {region: 0x23, script: 0x5, flags: 0x4}, 2033 21: {region: 0x52, script: 0x5, flags: 0x4}, 2034 22: {region: 0x9a, script: 0x5, flags: 0x4}, 2035 23: {region: 0xc3, script: 0x5, flags: 0x4}, 2036 24: {region: 0x52, script: 0x5, flags: 0x2}, 2037 25: {region: 0x129, script: 0x4f, flags: 0x0}, 2038 26: {region: 0xae, script: 0x5, flags: 0x4}, 2039 27: {region: 0x99, script: 0x5, flags: 0x2}, 2040 28: {region: 0xa3, script: 0x1d, flags: 0x0}, 2041 29: {region: 0x52, script: 0x5, flags: 0x4}, 2042 30: {region: 0x129, script: 0x4f, flags: 0x4}, 2043 31: {region: 0x52, script: 0x5, flags: 0x2}, 2044 32: {region: 0x129, script: 0x4f, flags: 0x2}, 2045 33: {region: 0xd9, script: 0x1f, flags: 0x0}, 2046 34: {region: 0x97, script: 0x51, flags: 0x2}, 2047 35: {region: 0x81, script: 0x4f, flags: 0x0}, 2048 36: {region: 0x82, script: 0x6b, flags: 0x4}, 2049 37: {region: 0x82, script: 0x6b, flags: 0x2}, 2050 38: {region: 0xc3, script: 0x1d, flags: 0x0}, 2051 39: {region: 0x52, script: 0x62, flags: 0x4}, 2052 40: {region: 0x52, script: 0x62, flags: 0x2}, 2053 41: {region: 0xce, script: 0x4f, flags: 0x0}, 2054 42: {region: 0x49, script: 0x5, flags: 0x4}, 2055 43: {region: 0x93, script: 0x5, flags: 0x4}, 2056 44: {region: 0x97, script: 0x2e, flags: 0x0}, 2057 45: {region: 0xe6, script: 0x5, flags: 0x4}, 2058 46: {region: 0xe6, script: 0x5, flags: 0x2}, 2059 47: {region: 0x9a, script: 0x77, flags: 0x0}, 2060 48: {region: 0x52, script: 0x78, flags: 0x2}, 2061 49: {region: 0xb8, script: 0xcc, flags: 0x0}, 2062 50: {region: 0xd7, script: 0x4f, flags: 0x4}, 2063 51: {region: 0xe6, script: 0x5, flags: 0x0}, 2064 52: {region: 0x97, script: 0x1f, flags: 0x2}, 2065 53: {region: 0x97, script: 0x44, flags: 0x2}, 2066 54: {region: 0x97, script: 0xba, flags: 0x2}, 2067 55: {region: 0x103, script: 0x1d, flags: 0x0}, 2068 56: {region: 0xbb, script: 0x4f, flags: 0x4}, 2069 57: {region: 0x102, script: 0x4f, flags: 0x4}, 2070 58: {region: 0x104, script: 0x4f, flags: 0x4}, 2071 59: {region: 0x129, script: 0x4f, flags: 0x4}, 2072 60: {region: 0x122, script: 0x1d, flags: 0x0}, 2073 61: {region: 0xe6, script: 0x5, flags: 0x4}, 2074 62: {region: 0xe6, script: 0x5, flags: 0x2}, 2075 63: {region: 0x52, script: 0x5, flags: 0x0}, 2076 64: {region: 0xac, script: 0x1d, flags: 0x4}, 2077 65: {region: 0xc3, script: 0x1d, flags: 0x4}, 2078 66: {region: 0xac, script: 0x1d, flags: 0x2}, 2079 67: {region: 0x97, script: 0xe, flags: 0x0}, 2080 68: {region: 0xd9, script: 0x1f, flags: 0x4}, 2081 69: {region: 0xd9, script: 0x1f, flags: 0x2}, 2082 70: {region: 0x134, script: 0x4f, flags: 0x0}, 2083 71: {region: 0x23, script: 0x5, flags: 0x4}, 2084 72: {region: 0x52, script: 0x1d, flags: 0x4}, 2085 73: {region: 0x23, script: 0x5, flags: 0x2}, 2086 74: {region: 0x52, script: 0x32, flags: 0x0}, 2087 75: {region: 0x2e, script: 0x33, flags: 0x4}, 2088 76: {region: 0x3d, script: 0x33, flags: 0x4}, 2089 77: {region: 0x79, script: 0x33, flags: 0x4}, 2090 78: {region: 0x7c, script: 0x33, flags: 0x4}, 2091 79: {region: 0x8b, script: 0x33, flags: 0x4}, 2092 80: {region: 0x93, script: 0x33, flags: 0x4}, 2093 81: {region: 0xc4, script: 0x33, flags: 0x4}, 2094 82: {region: 0xce, script: 0x33, flags: 0x4}, 2095 83: {region: 0xe0, script: 0x33, flags: 0x4}, 2096 84: {region: 0xe3, script: 0x33, flags: 0x4}, 2097 85: {region: 0xe5, script: 0x33, flags: 0x4}, 2098 86: {region: 0x114, script: 0x33, flags: 0x4}, 2099 87: {region: 0x121, script: 0x33, flags: 0x4}, 2100 88: {region: 0x12c, script: 0x33, flags: 0x4}, 2101 89: {region: 0x132, script: 0x33, flags: 0x4}, 2102 90: {region: 0x13b, script: 0x33, flags: 0x4}, 2103 91: {region: 0x12c, script: 0x10, flags: 0x2}, 2104 92: {region: 0x12c, script: 0x33, flags: 0x2}, 2105 } 2106 2107 type likelyLangScript struct { 2108 lang uint16 2109 script uint8 2110 flags uint8 2111 } 2112 2113 // likelyRegion is a lookup table, indexed by regionID, for the most likely 2114 // languages and scripts given incomplete information. If more entries exist 2115 // for a given regionID, lang and script are the index and size respectively 2116 // of the list in likelyRegionList. 2117 // TODO: exclude containers and user-definable regions from the list. 2118 // Size: 1420 bytes, 355 elements 2119 var likelyRegion = [355]likelyLangScript{ 2120 33: {lang: 0x61, script: 0x4f, flags: 0x0}, 2121 34: {lang: 0x15, script: 0x5, flags: 0x0}, 2122 35: {lang: 0x0, script: 0x2, flags: 0x1}, 2123 38: {lang: 0x2, script: 0x2, flags: 0x1}, 2124 39: {lang: 0x4, script: 0x2, flags: 0x1}, 2125 41: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2126 42: {lang: 0x0, script: 0x4f, flags: 0x0}, 2127 43: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2128 44: {lang: 0x22d, script: 0x4f, flags: 0x0}, 2129 45: {lang: 0x85, script: 0x4f, flags: 0x0}, 2130 47: {lang: 0x1bc, script: 0x4f, flags: 0x0}, 2131 48: {lang: 0x245, script: 0x4f, flags: 0x0}, 2132 49: {lang: 0x24, script: 0x4f, flags: 0x0}, 2133 50: {lang: 0x6, script: 0x2, flags: 0x1}, 2134 52: {lang: 0x4b, script: 0xe, flags: 0x0}, 2135 53: {lang: 0x1bc, script: 0x4f, flags: 0x0}, 2136 54: {lang: 0xae, script: 0x4f, flags: 0x0}, 2137 55: {lang: 0x38, script: 0x1d, flags: 0x0}, 2138 56: {lang: 0x15, script: 0x5, flags: 0x0}, 2139 57: {lang: 0x1ff, script: 0x4f, flags: 0x0}, 2140 58: {lang: 0xae, script: 0x4f, flags: 0x0}, 2141 59: {lang: 0xae, script: 0x4f, flags: 0x0}, 2142 61: {lang: 0x199, script: 0x4f, flags: 0x0}, 2143 62: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2144 63: {lang: 0x1d9, script: 0x4f, flags: 0x0}, 2145 64: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2146 66: {lang: 0x8, script: 0x2, flags: 0x1}, 2147 68: {lang: 0x0, script: 0x4f, flags: 0x0}, 2148 70: {lang: 0x2f, script: 0x1d, flags: 0x0}, 2149 72: {lang: 0x2b6, script: 0x35, flags: 0x2}, 2150 73: {lang: 0x199, script: 0x5, flags: 0x2}, 2151 74: {lang: 0x246, script: 0x4f, flags: 0x0}, 2152 75: {lang: 0xae, script: 0x4f, flags: 0x0}, 2153 76: {lang: 0xae, script: 0x4f, flags: 0x0}, 2154 77: {lang: 0x85, script: 0x4f, flags: 0x0}, 2155 78: {lang: 0xae, script: 0x4f, flags: 0x0}, 2156 80: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2157 81: {lang: 0xae, script: 0x4f, flags: 0x0}, 2158 82: {lang: 0xa, script: 0x4, flags: 0x1}, 2159 83: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2160 84: {lang: 0x0, script: 0x4f, flags: 0x0}, 2161 85: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2162 88: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2163 89: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2164 90: {lang: 0x1d9, script: 0x4f, flags: 0x0}, 2165 92: {lang: 0xe, script: 0x2, flags: 0x1}, 2166 93: {lang: 0x79, script: 0x4f, flags: 0x0}, 2167 95: {lang: 0x85, script: 0x4f, flags: 0x0}, 2168 97: {lang: 0x1, script: 0x4f, flags: 0x0}, 2169 98: {lang: 0x80, script: 0x4f, flags: 0x0}, 2170 100: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2171 102: {lang: 0x10, script: 0x2, flags: 0x1}, 2172 103: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2173 104: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2174 105: {lang: 0x9e, script: 0x4f, flags: 0x0}, 2175 106: {lang: 0x15, script: 0x5, flags: 0x0}, 2176 107: {lang: 0x15, script: 0x5, flags: 0x0}, 2177 108: {lang: 0x25f, script: 0x26, flags: 0x0}, 2178 109: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2179 110: {lang: 0x12, script: 0x2, flags: 0x1}, 2180 112: {lang: 0xa7, script: 0x4f, flags: 0x0}, 2181 113: {lang: 0xe1, script: 0x1f, flags: 0x2}, 2182 116: {lang: 0xac, script: 0x4f, flags: 0x0}, 2183 118: {lang: 0xae, script: 0x4f, flags: 0x0}, 2184 120: {lang: 0xae, script: 0x4f, flags: 0x0}, 2185 121: {lang: 0x14, script: 0x2, flags: 0x1}, 2186 123: {lang: 0x16, script: 0x3, flags: 0x1}, 2187 124: {lang: 0xae, script: 0x4f, flags: 0x0}, 2188 126: {lang: 0xd, script: 0x4f, flags: 0x0}, 2189 128: {lang: 0x130, script: 0x4f, flags: 0x0}, 2190 130: {lang: 0xae, script: 0x4f, flags: 0x0}, 2191 131: {lang: 0xae, script: 0x4f, flags: 0x0}, 2192 132: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2193 133: {lang: 0x19, script: 0x2, flags: 0x1}, 2194 134: {lang: 0x0, script: 0x4f, flags: 0x0}, 2195 135: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2196 137: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2197 139: {lang: 0x2c0, script: 0x33, flags: 0x0}, 2198 140: {lang: 0x0, script: 0x4f, flags: 0x0}, 2199 141: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2200 142: {lang: 0xed, script: 0x4f, flags: 0x0}, 2201 143: {lang: 0xf0, script: 0x4f, flags: 0x0}, 2202 144: {lang: 0xf1, script: 0x4f, flags: 0x0}, 2203 146: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2204 147: {lang: 0x1b, script: 0x2, flags: 0x1}, 2205 149: {lang: 0xdf, script: 0x35, flags: 0x0}, 2206 151: {lang: 0x1d, script: 0x3, flags: 0x1}, 2207 153: {lang: 0x15, script: 0x5, flags: 0x0}, 2208 154: {lang: 0x20, script: 0x2, flags: 0x1}, 2209 155: {lang: 0x101, script: 0x4f, flags: 0x0}, 2210 156: {lang: 0x102, script: 0x4f, flags: 0x0}, 2211 159: {lang: 0x15, script: 0x5, flags: 0x0}, 2212 160: {lang: 0x106, script: 0x3e, flags: 0x0}, 2213 162: {lang: 0x246, script: 0x4f, flags: 0x0}, 2214 163: {lang: 0x14c, script: 0x1d, flags: 0x0}, 2215 164: {lang: 0x22, script: 0x3, flags: 0x1}, 2216 166: {lang: 0x25, script: 0x2, flags: 0x1}, 2217 168: {lang: 0x135, script: 0x48, flags: 0x0}, 2218 169: {lang: 0x135, script: 0x48, flags: 0x0}, 2219 170: {lang: 0x15, script: 0x5, flags: 0x0}, 2220 172: {lang: 0x205, script: 0x1d, flags: 0x0}, 2221 173: {lang: 0x27, script: 0x2, flags: 0x1}, 2222 174: {lang: 0x15, script: 0x5, flags: 0x0}, 2223 176: {lang: 0x85, script: 0x4f, flags: 0x0}, 2224 177: {lang: 0x226, script: 0xbb, flags: 0x0}, 2225 179: {lang: 0x240, script: 0x4f, flags: 0x0}, 2226 180: {lang: 0x168, script: 0x4f, flags: 0x0}, 2227 181: {lang: 0xae, script: 0x4f, flags: 0x0}, 2228 182: {lang: 0x16f, script: 0x4f, flags: 0x0}, 2229 183: {lang: 0x15, script: 0x5, flags: 0x0}, 2230 184: {lang: 0x29, script: 0x2, flags: 0x1}, 2231 185: {lang: 0xae, script: 0x4f, flags: 0x0}, 2232 186: {lang: 0x2b, script: 0x2, flags: 0x1}, 2233 187: {lang: 0x239, script: 0x4f, flags: 0x0}, 2234 188: {lang: 0xae, script: 0x4f, flags: 0x0}, 2235 189: {lang: 0x182, script: 0x4f, flags: 0x0}, 2236 192: {lang: 0x2d, script: 0x2, flags: 0x1}, 2237 193: {lang: 0x49, script: 0x4f, flags: 0x0}, 2238 194: {lang: 0x2f, script: 0x2, flags: 0x1}, 2239 195: {lang: 0x31, script: 0x2, flags: 0x1}, 2240 196: {lang: 0x33, script: 0x2, flags: 0x1}, 2241 198: {lang: 0xae, script: 0x4f, flags: 0x0}, 2242 199: {lang: 0x35, script: 0x2, flags: 0x1}, 2243 201: {lang: 0x19a, script: 0x4f, flags: 0x0}, 2244 202: {lang: 0x37, script: 0x3, flags: 0x1}, 2245 203: {lang: 0x8f, script: 0xce, flags: 0x0}, 2246 205: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2247 206: {lang: 0x199, script: 0x4f, flags: 0x0}, 2248 207: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2249 208: {lang: 0xa, script: 0x4f, flags: 0x0}, 2250 209: {lang: 0xae, script: 0x4f, flags: 0x0}, 2251 210: {lang: 0xdb, script: 0x4f, flags: 0x0}, 2252 212: {lang: 0xdb, script: 0x5, flags: 0x2}, 2253 214: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2254 215: {lang: 0x1bc, script: 0x4f, flags: 0x0}, 2255 216: {lang: 0x1ae, script: 0x4f, flags: 0x0}, 2256 217: {lang: 0x1b3, script: 0x1f, flags: 0x0}, 2257 223: {lang: 0x15, script: 0x5, flags: 0x0}, 2258 224: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2259 226: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2260 227: {lang: 0xae, script: 0x4f, flags: 0x0}, 2261 228: {lang: 0x26c, script: 0x4f, flags: 0x0}, 2262 229: {lang: 0xa9, script: 0x4f, flags: 0x0}, 2263 230: {lang: 0x3a, script: 0x3, flags: 0x1}, 2264 231: {lang: 0x3d, script: 0x2, flags: 0x1}, 2265 232: {lang: 0xae, script: 0x4f, flags: 0x0}, 2266 234: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2267 235: {lang: 0x15, script: 0x5, flags: 0x0}, 2268 236: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2269 238: {lang: 0x1da, script: 0x4f, flags: 0x0}, 2270 239: {lang: 0xc9, script: 0x4f, flags: 0x0}, 2271 241: {lang: 0x15, script: 0x5, flags: 0x0}, 2272 256: {lang: 0xae, script: 0x4f, flags: 0x0}, 2273 258: {lang: 0x3f, script: 0x2, flags: 0x1}, 2274 259: {lang: 0x239, script: 0x1d, flags: 0x0}, 2275 260: {lang: 0x41, script: 0x2, flags: 0x1}, 2276 261: {lang: 0x208, script: 0x4f, flags: 0x0}, 2277 262: {lang: 0x15, script: 0x5, flags: 0x0}, 2278 264: {lang: 0xae, script: 0x4f, flags: 0x0}, 2279 265: {lang: 0x15, script: 0x5, flags: 0x0}, 2280 266: {lang: 0x43, script: 0x2, flags: 0x1}, 2281 269: {lang: 0x22a, script: 0x4f, flags: 0x0}, 2282 270: {lang: 0x1ae, script: 0x4f, flags: 0x0}, 2283 271: {lang: 0x45, script: 0x2, flags: 0x1}, 2284 273: {lang: 0x102, script: 0x4f, flags: 0x0}, 2285 274: {lang: 0xae, script: 0x4f, flags: 0x0}, 2286 275: {lang: 0x236, script: 0x4f, flags: 0x0}, 2287 276: {lang: 0x1bc, script: 0x4f, flags: 0x0}, 2288 278: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2289 280: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2290 282: {lang: 0x47, script: 0x2, flags: 0x1}, 2291 286: {lang: 0xae, script: 0x4f, flags: 0x0}, 2292 287: {lang: 0xae, script: 0x4f, flags: 0x0}, 2293 288: {lang: 0xae, script: 0x4f, flags: 0x0}, 2294 289: {lang: 0x49, script: 0x3, flags: 0x1}, 2295 290: {lang: 0x4c, script: 0x2, flags: 0x1}, 2296 291: {lang: 0x263, script: 0x4f, flags: 0x0}, 2297 292: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2298 293: {lang: 0x262, script: 0x4f, flags: 0x0}, 2299 294: {lang: 0x4e, script: 0x2, flags: 0x1}, 2300 295: {lang: 0x26a, script: 0x4f, flags: 0x0}, 2301 297: {lang: 0x50, script: 0x4, flags: 0x1}, 2302 299: {lang: 0x27a, script: 0x4f, flags: 0x0}, 2303 300: {lang: 0x54, script: 0x2, flags: 0x1}, 2304 301: {lang: 0x246, script: 0x4f, flags: 0x0}, 2305 302: {lang: 0x56, script: 0x3, flags: 0x1}, 2306 303: {lang: 0x246, script: 0x4f, flags: 0x0}, 2307 306: {lang: 0x2b6, script: 0x35, flags: 0x2}, 2308 307: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2309 308: {lang: 0x28a, script: 0x4f, flags: 0x0}, 2310 309: {lang: 0x102, script: 0x4f, flags: 0x0}, 2311 312: {lang: 0x9c, script: 0x4f, flags: 0x0}, 2312 315: {lang: 0x28f, script: 0x4f, flags: 0x0}, 2313 316: {lang: 0x41, script: 0x4f, flags: 0x0}, 2314 317: {lang: 0xae, script: 0x4f, flags: 0x0}, 2315 319: {lang: 0x22d, script: 0x4f, flags: 0x0}, 2316 330: {lang: 0x59, script: 0x2, flags: 0x1}, 2317 347: {lang: 0x15, script: 0x5, flags: 0x0}, 2318 348: {lang: 0x5b, script: 0x2, flags: 0x1}, 2319 353: {lang: 0x234, script: 0x4f, flags: 0x0}, 2320 } 2321 2322 // likelyRegionList holds lists info associated with likelyRegion. 2323 // Size: 372 bytes, 93 elements 2324 var likelyRegionList = [93]likelyLangScript{ 2325 0: {lang: 0xa3, script: 0x5, flags: 0x0}, 2326 1: {lang: 0x262, script: 0x4f, flags: 0x0}, 2327 2: {lang: 0x238, script: 0x4f, flags: 0x0}, 2328 3: {lang: 0x18b, script: 0x1d, flags: 0x0}, 2329 4: {lang: 0xf2, script: 0x8, flags: 0x0}, 2330 5: {lang: 0x144, script: 0x4f, flags: 0x0}, 2331 6: {lang: 0x54, script: 0x4f, flags: 0x0}, 2332 7: {lang: 0x239, script: 0x1d, flags: 0x0}, 2333 8: {lang: 0x92, script: 0xd0, flags: 0x0}, 2334 9: {lang: 0x1b3, script: 0x1f, flags: 0x0}, 2335 10: {lang: 0x2c0, script: 0x32, flags: 0x0}, 2336 11: {lang: 0x281, script: 0x5, flags: 0x0}, 2337 12: {lang: 0x2ba, script: 0x4f, flags: 0x0}, 2338 13: {lang: 0x156, script: 0xcf, flags: 0x0}, 2339 14: {lang: 0x99, script: 0x2c, flags: 0x0}, 2340 15: {lang: 0x26d, script: 0x4f, flags: 0x0}, 2341 16: {lang: 0x15, script: 0x5, flags: 0x0}, 2342 17: {lang: 0xae, script: 0x4f, flags: 0x0}, 2343 18: {lang: 0x11, script: 0x26, flags: 0x0}, 2344 19: {lang: 0x9a, script: 0x4f, flags: 0x0}, 2345 20: {lang: 0x140, script: 0x5, flags: 0x2}, 2346 21: {lang: 0x2b6, script: 0x35, flags: 0x2}, 2347 22: {lang: 0x110, script: 0x28, flags: 0x0}, 2348 23: {lang: 0x2, script: 0x1d, flags: 0x0}, 2349 24: {lang: 0x144, script: 0x4f, flags: 0x0}, 2350 25: {lang: 0x99, script: 0x2c, flags: 0x0}, 2351 26: {lang: 0x18b, script: 0x1d, flags: 0x0}, 2352 27: {lang: 0xf7, script: 0x4f, flags: 0x0}, 2353 28: {lang: 0x199, script: 0x5, flags: 0x0}, 2354 29: {lang: 0xe0, script: 0x1f, flags: 0x0}, 2355 30: {lang: 0x289, script: 0x5, flags: 0x0}, 2356 31: {lang: 0x128, script: 0x67, flags: 0x0}, 2357 32: {lang: 0xa3, script: 0x5, flags: 0x0}, 2358 33: {lang: 0x262, script: 0x4f, flags: 0x0}, 2359 34: {lang: 0x132, script: 0x43, flags: 0x0}, 2360 35: {lang: 0x6d, script: 0x5, flags: 0x0}, 2361 36: {lang: 0x11b, script: 0xcf, flags: 0x0}, 2362 37: {lang: 0x15, script: 0x5, flags: 0x0}, 2363 38: {lang: 0xae, script: 0x4f, flags: 0x0}, 2364 39: {lang: 0x164, script: 0x4c, flags: 0x0}, 2365 40: {lang: 0x11b, script: 0xcf, flags: 0x0}, 2366 41: {lang: 0x15, script: 0x5, flags: 0x0}, 2367 42: {lang: 0xae, script: 0x4f, flags: 0x0}, 2368 43: {lang: 0x201, script: 0x4f, flags: 0x0}, 2369 44: {lang: 0x283, script: 0x1d, flags: 0x0}, 2370 45: {lang: 0x18b, script: 0x1d, flags: 0x0}, 2371 46: {lang: 0x238, script: 0x4f, flags: 0x0}, 2372 47: {lang: 0x1a4, script: 0x67, flags: 0x0}, 2373 48: {lang: 0x113, script: 0x4f, flags: 0x0}, 2374 49: {lang: 0x18e, script: 0x1d, flags: 0x0}, 2375 50: {lang: 0x12e, script: 0x5, flags: 0x0}, 2376 51: {lang: 0x2c0, script: 0x33, flags: 0x0}, 2377 52: {lang: 0x1ed, script: 0x4f, flags: 0x0}, 2378 53: {lang: 0x15, script: 0x5, flags: 0x0}, 2379 54: {lang: 0xae, script: 0x4f, flags: 0x0}, 2380 55: {lang: 0x181, script: 0x4f, flags: 0x0}, 2381 56: {lang: 0x289, script: 0x5, flags: 0x0}, 2382 57: {lang: 0x40, script: 0x1f, flags: 0x0}, 2383 58: {lang: 0x289, script: 0x5, flags: 0x0}, 2384 59: {lang: 0x289, script: 0x5, flags: 0x0}, 2385 60: {lang: 0x58, script: 0x1f, flags: 0x0}, 2386 61: {lang: 0x1e5, script: 0x4f, flags: 0x0}, 2387 62: {lang: 0x2f, script: 0x1d, flags: 0x0}, 2388 63: {lang: 0x201, script: 0x4f, flags: 0x0}, 2389 64: {lang: 0x38, script: 0x1d, flags: 0x0}, 2390 65: {lang: 0x205, script: 0x1d, flags: 0x0}, 2391 66: {lang: 0x13e, script: 0x4f, flags: 0x0}, 2392 67: {lang: 0x245, script: 0x4f, flags: 0x0}, 2393 68: {lang: 0x2b6, script: 0x35, flags: 0x0}, 2394 69: {lang: 0x228, script: 0x4f, flags: 0x0}, 2395 70: {lang: 0x283, script: 0x1d, flags: 0x0}, 2396 71: {lang: 0x15, script: 0x5, flags: 0x0}, 2397 72: {lang: 0xae, script: 0x4f, flags: 0x0}, 2398 73: {lang: 0x25b, script: 0xcf, flags: 0x0}, 2399 74: {lang: 0x180, script: 0x5, flags: 0x0}, 2400 75: {lang: 0x190, script: 0x67, flags: 0x0}, 2401 76: {lang: 0x25a, script: 0x1d, flags: 0x0}, 2402 77: {lang: 0xa3, script: 0x5, flags: 0x0}, 2403 78: {lang: 0x15, script: 0x5, flags: 0x0}, 2404 79: {lang: 0xae, script: 0x4f, flags: 0x0}, 2405 80: {lang: 0x26d, script: 0x4f, flags: 0x0}, 2406 81: {lang: 0x24, script: 0x5, flags: 0x0}, 2407 82: {lang: 0x117, script: 0x1d, flags: 0x0}, 2408 83: {lang: 0x3b, script: 0x2c, flags: 0x0}, 2409 84: {lang: 0x2c0, script: 0x33, flags: 0x0}, 2410 85: {lang: 0x26f, script: 0x4f, flags: 0x0}, 2411 86: {lang: 0x283, script: 0x1d, flags: 0x0}, 2412 87: {lang: 0x2b6, script: 0x35, flags: 0x0}, 2413 88: {lang: 0x1e5, script: 0x4f, flags: 0x0}, 2414 89: {lang: 0x238, script: 0x4f, flags: 0x0}, 2415 90: {lang: 0x239, script: 0x1d, flags: 0x0}, 2416 91: {lang: 0xae, script: 0x4f, flags: 0x0}, 2417 92: {lang: 0x247, script: 0x5, flags: 0x0}, 2418 } 2419 2420 type likelyTag struct { 2421 lang uint16 2422 region uint16 2423 script uint8 2424 } 2425 2426 // Size: 192 bytes, 32 elements 2427 var likelyRegionGroup = [32]likelyTag{ 2428 1: {lang: 0x9a, region: 0xd4, script: 0x4f}, 2429 2: {lang: 0x9a, region: 0x132, script: 0x4f}, 2430 3: {lang: 0x1ed, region: 0x40, script: 0x4f}, 2431 4: {lang: 0x9a, region: 0x2e, script: 0x4f}, 2432 5: {lang: 0x9a, region: 0xd4, script: 0x4f}, 2433 6: {lang: 0x9c, region: 0xcd, script: 0x4f}, 2434 7: {lang: 0x246, region: 0x12d, script: 0x4f}, 2435 8: {lang: 0x15, region: 0x6a, script: 0x5}, 2436 9: {lang: 0x246, region: 0x4a, script: 0x4f}, 2437 10: {lang: 0x9a, region: 0x15e, script: 0x4f}, 2438 11: {lang: 0x9a, region: 0x132, script: 0x4f}, 2439 12: {lang: 0x9a, region: 0x132, script: 0x4f}, 2440 13: {lang: 0x9c, region: 0x58, script: 0x4f}, 2441 14: {lang: 0x2c0, region: 0x52, script: 0x32}, 2442 15: {lang: 0xe0, region: 0x97, script: 0x1f}, 2443 16: {lang: 0xf7, region: 0x93, script: 0x4f}, 2444 17: {lang: 0x102, region: 0x9c, script: 0x4f}, 2445 18: {lang: 0x9a, region: 0x2e, script: 0x4f}, 2446 19: {lang: 0x9a, region: 0xe4, script: 0x4f}, 2447 20: {lang: 0x9a, region: 0x88, script: 0x4f}, 2448 21: {lang: 0x22d, region: 0x13f, script: 0x4f}, 2449 22: {lang: 0x2c0, region: 0x52, script: 0x32}, 2450 23: {lang: 0x28a, region: 0x134, script: 0x4f}, 2451 24: {lang: 0x15, region: 0x106, script: 0x5}, 2452 25: {lang: 0x205, region: 0x104, script: 0x1d}, 2453 26: {lang: 0x205, region: 0x104, script: 0x1d}, 2454 27: {lang: 0x9a, region: 0x79, script: 0x4f}, 2455 28: {lang: 0x85, region: 0x5f, script: 0x4f}, 2456 29: {lang: 0x9c, region: 0x1e, script: 0x4f}, 2457 30: {lang: 0x9a, region: 0x98, script: 0x4f}, 2458 31: {lang: 0x9a, region: 0x79, script: 0x4f}, 2459 } 2460 2461 type mutualIntelligibility struct { 2462 want uint16 2463 have uint16 2464 conf uint8 2465 oneway bool 2466 } 2467 2468 type scriptIntelligibility struct { 2469 lang uint16 2470 want uint8 2471 have uint8 2472 conf uint8 2473 } 2474 2475 // matchLang holds pairs of langIDs of base languages that are typically 2476 // mutually intelligible. Each pair is associated with a confidence and 2477 // whether the intelligibility goes one or both ways. 2478 // Size: 708 bytes, 118 elements 2479 var matchLang = [118]mutualIntelligibility{ 2480 0: {want: 0x1c0, have: 0x1ae, conf: 0x2, oneway: false}, 2481 1: {want: 0x144, have: 0x6f, conf: 0x2, oneway: false}, 2482 2: {want: 0xed, have: 0x54, conf: 0x2, oneway: false}, 2483 3: {want: 0x223, have: 0x54, conf: 0x2, oneway: false}, 2484 4: {want: 0x239, have: 0x54, conf: 0x2, oneway: false}, 2485 5: {want: 0x223, have: 0xed, conf: 0x2, oneway: false}, 2486 6: {want: 0x239, have: 0xed, conf: 0x2, oneway: false}, 2487 7: {want: 0x223, have: 0x239, conf: 0x2, oneway: false}, 2488 8: {want: 0x23f, have: 0x1, conf: 0x2, oneway: false}, 2489 9: {want: 0xd1, have: 0x85, conf: 0x2, oneway: true}, 2490 10: {want: 0x153, have: 0x85, conf: 0x2, oneway: true}, 2491 11: {want: 0x80, have: 0x1c0, conf: 0x2, oneway: false}, 2492 12: {want: 0x80, have: 0x1ae, conf: 0x2, oneway: false}, 2493 13: {want: 0x6f, have: 0x144, conf: 0x2, oneway: false}, 2494 14: {want: 0x2, have: 0x205, conf: 0x2, oneway: true}, 2495 15: {want: 0x5, have: 0x9a, conf: 0x2, oneway: true}, 2496 16: {want: 0xa, have: 0x1bc, conf: 0x2, oneway: true}, 2497 17: {want: 0xd, have: 0x9a, conf: 0x2, oneway: true}, 2498 18: {want: 0x23, have: 0x9c, conf: 0x2, oneway: true}, 2499 19: {want: 0x24, have: 0x205, conf: 0x2, oneway: true}, 2500 20: {want: 0x2f, have: 0x205, conf: 0x2, oneway: true}, 2501 21: {want: 0x31, have: 0x9a, conf: 0x2, oneway: true}, 2502 22: {want: 0x3c, have: 0xe0, conf: 0x2, oneway: true}, 2503 23: {want: 0x4b, have: 0x9a, conf: 0x2, oneway: true}, 2504 24: {want: 0x50, have: 0xae, conf: 0x2, oneway: true}, 2505 25: {want: 0x65, have: 0xa9, conf: 0x2, oneway: true}, 2506 26: {want: 0x6c, have: 0x9a, conf: 0x2, oneway: true}, 2507 27: {want: 0x6f, have: 0x15, conf: 0x2, oneway: true}, 2508 28: {want: 0x70, have: 0xae, conf: 0x2, oneway: true}, 2509 29: {want: 0x78, have: 0xae, conf: 0x2, oneway: true}, 2510 30: {want: 0x7f, have: 0x9a, conf: 0x2, oneway: true}, 2511 31: {want: 0x94, have: 0x9a, conf: 0x2, oneway: true}, 2512 32: {want: 0x9b, have: 0x9a, conf: 0x2, oneway: true}, 2513 33: {want: 0x9e, have: 0xa7, conf: 0x2, oneway: true}, 2514 34: {want: 0xa0, have: 0x9c, conf: 0x2, oneway: true}, 2515 35: {want: 0xac, have: 0x80, conf: 0x2, oneway: true}, 2516 36: {want: 0xb8, have: 0x1bc, conf: 0x2, oneway: true}, 2517 37: {want: 0xb9, have: 0x9a, conf: 0x2, oneway: true}, 2518 38: {want: 0xba, have: 0x9a, conf: 0x2, oneway: true}, 2519 39: {want: 0xc1, have: 0x9a, conf: 0x2, oneway: true}, 2520 40: {want: 0xc7, have: 0x9c, conf: 0x2, oneway: true}, 2521 41: {want: 0xc9, have: 0x9c, conf: 0x2, oneway: true}, 2522 42: {want: 0xd2, have: 0xe0, conf: 0x2, oneway: true}, 2523 43: {want: 0xdb, have: 0x9a, conf: 0x2, oneway: true}, 2524 44: {want: 0xdd, have: 0x9a, conf: 0x2, oneway: true}, 2525 45: {want: 0xf0, have: 0xae, conf: 0x2, oneway: true}, 2526 46: {want: 0xf2, have: 0x205, conf: 0x2, oneway: true}, 2527 47: {want: 0xf4, have: 0x9a, conf: 0x2, oneway: true}, 2528 48: {want: 0xf9, have: 0x9a, conf: 0x2, oneway: true}, 2529 49: {want: 0x101, have: 0x9a, conf: 0x2, oneway: true}, 2530 50: {want: 0x10e, have: 0xf7, conf: 0x2, oneway: true}, 2531 51: {want: 0x110, have: 0x9a, conf: 0x2, oneway: true}, 2532 52: {want: 0x121, have: 0xae, conf: 0x2, oneway: true}, 2533 53: {want: 0x12e, have: 0x205, conf: 0x2, oneway: true}, 2534 54: {want: 0x132, have: 0x9a, conf: 0x2, oneway: true}, 2535 55: {want: 0x134, have: 0x9a, conf: 0x2, oneway: true}, 2536 56: {want: 0x13c, have: 0x9a, conf: 0x2, oneway: true}, 2537 57: {want: 0x144, have: 0x26d, conf: 0x2, oneway: true}, 2538 58: {want: 0x14c, have: 0x205, conf: 0x2, oneway: true}, 2539 59: {want: 0x14d, have: 0x102, conf: 0x2, oneway: true}, 2540 60: {want: 0x159, have: 0x9a, conf: 0x2, oneway: true}, 2541 61: {want: 0x163, have: 0xae, conf: 0x2, oneway: true}, 2542 62: {want: 0x164, have: 0x9a, conf: 0x2, oneway: true}, 2543 63: {want: 0x166, have: 0x9a, conf: 0x2, oneway: true}, 2544 64: {want: 0x16b, have: 0xae, conf: 0x2, oneway: true}, 2545 65: {want: 0x181, have: 0x9a, conf: 0x2, oneway: true}, 2546 66: {want: 0x182, have: 0xae, conf: 0x2, oneway: true}, 2547 67: {want: 0x188, have: 0x9a, conf: 0x2, oneway: true}, 2548 68: {want: 0x18b, have: 0x38, conf: 0x2, oneway: true}, 2549 69: {want: 0x18c, have: 0x9a, conf: 0x2, oneway: true}, 2550 70: {want: 0x18e, have: 0x205, conf: 0x2, oneway: true}, 2551 71: {want: 0x195, have: 0xe0, conf: 0x2, oneway: true}, 2552 72: {want: 0x199, have: 0xf7, conf: 0x2, oneway: true}, 2553 73: {want: 0x19a, have: 0x9a, conf: 0x2, oneway: true}, 2554 74: {want: 0x1a4, have: 0x9a, conf: 0x2, oneway: true}, 2555 75: {want: 0x1b3, have: 0x9a, conf: 0x2, oneway: true}, 2556 76: {want: 0x1be, have: 0x1ae, conf: 0x2, oneway: false}, 2557 77: {want: 0x1be, have: 0x1c0, conf: 0x2, oneway: true}, 2558 78: {want: 0x1c7, have: 0x9a, conf: 0x2, oneway: true}, 2559 79: {want: 0x1cb, have: 0x9a, conf: 0x2, oneway: true}, 2560 80: {want: 0x1cd, have: 0x9a, conf: 0x2, oneway: true}, 2561 81: {want: 0x1cf, have: 0xae, conf: 0x2, oneway: true}, 2562 82: {want: 0x1d1, have: 0x9a, conf: 0x2, oneway: true}, 2563 83: {want: 0x1d2, have: 0x9a, conf: 0x2, oneway: true}, 2564 84: {want: 0x1d5, have: 0x9a, conf: 0x2, oneway: true}, 2565 85: {want: 0x1dc, have: 0x9a, conf: 0x2, oneway: true}, 2566 86: {want: 0x1ec, have: 0x9a, conf: 0x2, oneway: true}, 2567 87: {want: 0x1ef, have: 0x9c, conf: 0x2, oneway: true}, 2568 88: {want: 0x1fa, have: 0x85, conf: 0x2, oneway: true}, 2569 89: {want: 0x1ff, have: 0x9a, conf: 0x2, oneway: true}, 2570 90: {want: 0x208, have: 0xae, conf: 0x2, oneway: true}, 2571 91: {want: 0x20b, have: 0xe0, conf: 0x2, oneway: true}, 2572 92: {want: 0x218, have: 0x9a, conf: 0x2, oneway: true}, 2573 93: {want: 0x226, have: 0x9a, conf: 0x2, oneway: true}, 2574 94: {want: 0x234, have: 0x9a, conf: 0x2, oneway: true}, 2575 95: {want: 0x236, have: 0x9a, conf: 0x2, oneway: true}, 2576 96: {want: 0x238, have: 0x9a, conf: 0x2, oneway: true}, 2577 97: {want: 0x240, have: 0x9a, conf: 0x2, oneway: true}, 2578 98: {want: 0x242, have: 0xf7, conf: 0x2, oneway: true}, 2579 99: {want: 0x246, have: 0x9a, conf: 0x2, oneway: true}, 2580 100: {want: 0x24f, have: 0x9a, conf: 0x2, oneway: true}, 2581 101: {want: 0x256, have: 0x9a, conf: 0x2, oneway: true}, 2582 102: {want: 0x25a, have: 0x205, conf: 0x2, oneway: true}, 2583 103: {want: 0x25f, have: 0x9a, conf: 0x2, oneway: true}, 2584 104: {want: 0x262, have: 0x205, conf: 0x2, oneway: true}, 2585 105: {want: 0x3616, have: 0x9a, conf: 0x2, oneway: true}, 2586 106: {want: 0x269, have: 0x9a, conf: 0x2, oneway: true}, 2587 107: {want: 0x26a, have: 0x9a, conf: 0x2, oneway: true}, 2588 108: {want: 0x275, have: 0x205, conf: 0x2, oneway: true}, 2589 109: {want: 0x279, have: 0x9a, conf: 0x2, oneway: true}, 2590 110: {want: 0x281, have: 0x2c0, conf: 0x2, oneway: true}, 2591 111: {want: 0x289, have: 0x9a, conf: 0x2, oneway: true}, 2592 112: {want: 0x28a, have: 0x205, conf: 0x2, oneway: true}, 2593 113: {want: 0x2a1, have: 0xae, conf: 0x2, oneway: true}, 2594 114: {want: 0x2a6, have: 0x9a, conf: 0x2, oneway: true}, 2595 115: {want: 0x2b6, have: 0x9a, conf: 0x2, oneway: true}, 2596 116: {want: 0x2b7, have: 0x9a, conf: 0x2, oneway: true}, 2597 117: {want: 0x2c2, have: 0x9a, conf: 0x2, oneway: true}, 2598 } 2599 2600 // matchScript holds pairs of scriptIDs where readers of one script 2601 // can typically also read the other. Each is associated with a confidence. 2602 // Size: 24 bytes, 4 elements 2603 var matchScript = [4]scriptIntelligibility{ 2604 0: {lang: 0x239, want: 0x4f, have: 0x1d, conf: 0x2}, 2605 1: {lang: 0x239, want: 0x1d, have: 0x4f, conf: 0x2}, 2606 2: {lang: 0x0, want: 0x32, have: 0x33, conf: 0x1}, 2607 3: {lang: 0x0, want: 0x33, have: 0x32, conf: 0x1}, 2608 } 2609 2610 // Size: 128 bytes, 32 elements 2611 var regionContainment = [32]uint32{ 2612 0xffffffff, 0x000007a2, 0x00003044, 0x00000008, 2613 0x403c0010, 0x00000020, 0x00000040, 0x00000080, 2614 0x00000100, 0x00000200, 0x00000400, 0x2000384c, 2615 0x00001000, 0x00002000, 0x00004000, 0x00008000, 2616 0x00010000, 0x00020000, 0x00040000, 0x00080000, 2617 0x00100000, 0x00200000, 0x01c1c000, 0x00800000, 2618 0x01000000, 0x1e020000, 0x04000000, 0x08000000, 2619 0x10000000, 0x20002048, 0x40000000, 0x80000000, 2620 } 2621 2622 // regionInclusion maps region identifiers to sets of regions in regionInclusionBits, 2623 // where each set holds all groupings that are directly connected in a region 2624 // containment graph. 2625 // Size: 355 bytes, 355 elements 2626 var regionInclusion = [355]uint8{ 2627 // Entry 0 - 3F 2628 0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 2629 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e, 2630 0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16, 2631 0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x20, 2632 0x21, 0x22, 0x23, 0x24, 0x25, 0x25, 0x22, 0x23, 2633 0x25, 0x26, 0x21, 0x27, 0x28, 0x29, 0x2a, 0x25, 2634 0x2b, 0x23, 0x22, 0x25, 0x24, 0x29, 0x2c, 0x2d, 2635 0x23, 0x2e, 0x2c, 0x25, 0x2f, 0x30, 0x27, 0x25, 2636 // Entry 40 - 7F 2637 0x27, 0x25, 0x24, 0x30, 0x21, 0x31, 0x32, 0x33, 2638 0x2f, 0x21, 0x26, 0x26, 0x26, 0x34, 0x2c, 0x28, 2639 0x27, 0x26, 0x35, 0x27, 0x21, 0x33, 0x22, 0x20, 2640 0x25, 0x2c, 0x25, 0x21, 0x36, 0x2d, 0x34, 0x29, 2641 0x21, 0x2e, 0x37, 0x25, 0x25, 0x20, 0x38, 0x38, 2642 0x27, 0x37, 0x38, 0x38, 0x2e, 0x39, 0x2e, 0x1f, 2643 0x37, 0x3a, 0x27, 0x3b, 0x2b, 0x20, 0x29, 0x34, 2644 0x26, 0x37, 0x25, 0x23, 0x27, 0x2b, 0x2c, 0x22, 2645 // Entry 80 - BF 2646 0x2f, 0x2c, 0x2c, 0x25, 0x26, 0x39, 0x21, 0x33, 2647 0x3b, 0x2c, 0x27, 0x35, 0x21, 0x33, 0x39, 0x25, 2648 0x2d, 0x20, 0x38, 0x30, 0x37, 0x23, 0x2b, 0x24, 2649 0x21, 0x23, 0x24, 0x2b, 0x39, 0x2b, 0x25, 0x23, 2650 0x35, 0x20, 0x2e, 0x3c, 0x30, 0x3b, 0x2e, 0x25, 2651 0x35, 0x35, 0x23, 0x25, 0x3c, 0x30, 0x23, 0x25, 2652 0x34, 0x24, 0x2c, 0x31, 0x37, 0x29, 0x37, 0x38, 2653 0x38, 0x34, 0x32, 0x22, 0x25, 0x2e, 0x3b, 0x20, 2654 // Entry C0 - FF 2655 0x22, 0x2c, 0x30, 0x35, 0x35, 0x3b, 0x25, 0x2c, 2656 0x25, 0x39, 0x2e, 0x24, 0x2e, 0x33, 0x30, 0x2e, 2657 0x31, 0x3a, 0x2c, 0x2a, 0x2c, 0x20, 0x33, 0x29, 2658 0x2b, 0x24, 0x20, 0x3b, 0x23, 0x28, 0x2a, 0x23, 2659 0x33, 0x20, 0x27, 0x28, 0x3a, 0x30, 0x24, 0x2d, 2660 0x2f, 0x28, 0x25, 0x23, 0x39, 0x20, 0x3b, 0x27, 2661 0x20, 0x23, 0x20, 0x20, 0x1e, 0x20, 0x20, 0x20, 2662 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 2663 // Entry 100 - 13F 2664 0x2e, 0x20, 0x2d, 0x22, 0x32, 0x2e, 0x23, 0x3a, 2665 0x2e, 0x38, 0x37, 0x30, 0x2c, 0x39, 0x2b, 0x2d, 2666 0x2c, 0x22, 0x2c, 0x2e, 0x27, 0x38, 0x26, 0x32, 2667 0x33, 0x25, 0x23, 0x31, 0x21, 0x25, 0x26, 0x21, 2668 0x2c, 0x30, 0x3c, 0x28, 0x30, 0x3c, 0x38, 0x28, 2669 0x30, 0x23, 0x25, 0x28, 0x35, 0x2e, 0x32, 0x2e, 2670 0x20, 0x21, 0x2f, 0x27, 0x3c, 0x22, 0x25, 0x20, 2671 0x27, 0x25, 0x25, 0x30, 0x3a, 0x28, 0x20, 0x28, 2672 // Entry 140 - 17F 2673 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 2674 0x20, 0x20, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20, 2675 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 2676 0x20, 0x20, 0x23, 0x23, 0x2e, 0x22, 0x31, 0x2e, 2677 0x26, 0x2e, 0x20, 2678 } 2679 2680 // regionInclusionBits is an array of bit vectors where every vector represents 2681 // a set of region groupings. These sets are used to compute the distance 2682 // between two regions for the purpose of language matching. 2683 // Size: 288 bytes, 72 elements 2684 var regionInclusionBits = [72]uint32{ 2685 // Entry 0 - 1F 2686 0x82400813, 0x000007a3, 0x00003844, 0x20000808, 2687 0x403c0011, 0x00000022, 0x20000844, 0x00000082, 2688 0x00000102, 0x00000202, 0x00000402, 0x2000384d, 2689 0x00001804, 0x20002804, 0x00404000, 0x00408000, 2690 0x00410000, 0x02020000, 0x00040010, 0x00080010, 2691 0x00100010, 0x00200010, 0x01c1c001, 0x00c00000, 2692 0x01400000, 0x1e020001, 0x06000000, 0x0a000000, 2693 0x12000000, 0x20002848, 0x40000010, 0x80000001, 2694 // Entry 20 - 3F 2695 0x00000001, 0x40000000, 0x00020000, 0x01000000, 2696 0x00008000, 0x00002000, 0x00000200, 0x00000008, 2697 0x00200000, 0x90000000, 0x00040000, 0x08000000, 2698 0x00000020, 0x84000000, 0x00000080, 0x00001000, 2699 0x00010000, 0x00000400, 0x04000000, 0x00000040, 2700 0x10000000, 0x00004000, 0x81000000, 0x88000000, 2701 0x00000100, 0x80020000, 0x00080000, 0x00100000, 2702 0x00800000, 0xffffffff, 0x82400fb3, 0xc27c0813, 2703 // Entry 40 - 5F 2704 0xa240385f, 0x83c1c813, 0x9e420813, 0x92000001, 2705 0x86000001, 0x81400001, 0x8a000001, 0x82020001, 2706 } 2707 2708 // regionInclusionNext marks, for each entry in regionInclusionBits, the set of 2709 // all groups that are reachable from the groups set in the respective entry. 2710 // Size: 72 bytes, 72 elements 2711 var regionInclusionNext = [72]uint8{ 2712 // Entry 0 - 3F 2713 0x3d, 0x3e, 0x0b, 0x0b, 0x3f, 0x01, 0x0b, 0x01, 2714 0x01, 0x01, 0x01, 0x40, 0x0b, 0x0b, 0x16, 0x16, 2715 0x16, 0x19, 0x04, 0x04, 0x04, 0x04, 0x41, 0x16, 2716 0x16, 0x42, 0x19, 0x19, 0x19, 0x0b, 0x04, 0x00, 2717 0x00, 0x1e, 0x11, 0x18, 0x0f, 0x0d, 0x09, 0x03, 2718 0x15, 0x43, 0x12, 0x1b, 0x05, 0x44, 0x07, 0x0c, 2719 0x10, 0x0a, 0x1a, 0x06, 0x1c, 0x0e, 0x45, 0x46, 2720 0x08, 0x47, 0x13, 0x14, 0x17, 0x3d, 0x3d, 0x3d, 2721 // Entry 40 - 7F 2722 0x3d, 0x3d, 0x3d, 0x42, 0x42, 0x41, 0x42, 0x42, 2723 } 2724 2725 type parentRel struct { 2726 lang uint16 2727 script uint8 2728 maxScript uint8 2729 toRegion uint16 2730 fromRegion []uint16 2731 } 2732 2733 // Size: 404 bytes, 5 elements 2734 var parents = [5]parentRel{ 2735 0: {lang: 0x9a, script: 0x0, maxScript: 0x4f, toRegion: 0x1, fromRegion: []uint16{0x1a, 0x24, 0x25, 0x2e, 0x33, 0x35, 0x3c, 0x41, 0x45, 0x47, 0x48, 0x49, 0x4f, 0x51, 0x5b, 0x5c, 0x60, 0x63, 0x6c, 0x71, 0x72, 0x73, 0x79, 0x7a, 0x7d, 0x7e, 0x7f, 0x81, 0x8a, 0x8b, 0x94, 0x95, 0x96, 0x97, 0x98, 0x9d, 0x9e, 0xa2, 0xa5, 0xa7, 0xab, 0xaf, 0xb2, 0xb3, 0xbd, 0xc4, 0xc8, 0xc9, 0xca, 0xcc, 0xce, 0xd0, 0xd3, 0xd4, 0xdb, 0xdd, 0xde, 0xe4, 0xe5, 0xe6, 0xe9, 0xee, 0x105, 0x107, 0x108, 0x109, 0x10b, 0x10c, 0x110, 0x115, 0x119, 0x11b, 0x11d, 0x123, 0x127, 0x12a, 0x12b, 0x12d, 0x12f, 0x136, 0x139, 0x13c, 0x13f, 0x15e, 0x15f, 0x161}}, 2736 1: {lang: 0x9a, script: 0x0, maxScript: 0x4f, toRegion: 0x1a, fromRegion: []uint16{0x2d, 0x4d, 0x5f, 0x62, 0x70, 0xd7, 0x10a, 0x10d}}, 2737 2: {lang: 0x9c, script: 0x0, maxScript: 0x4f, toRegion: 0x1e, fromRegion: []uint16{0x2b, 0x3e, 0x50, 0x53, 0x55, 0x58, 0x64, 0x68, 0x87, 0x8d, 0xcd, 0xd6, 0xe0, 0xe2, 0xea, 0xef, 0x118, 0x132, 0x133, 0x138}}, 2738 3: {lang: 0x1ed, script: 0x0, maxScript: 0x4f, toRegion: 0xec, fromRegion: []uint16{0x29, 0x59, 0x89, 0xc4, 0xcf, 0x116, 0x124}}, 2739 4: {lang: 0x2c0, script: 0x33, maxScript: 0x33, toRegion: 0x8b, fromRegion: []uint16{0xc4}}, 2740 } 2741 2742 // Total table size 19949 bytes (19KiB); checksum: 13F4A4EF