github.com/graybobo/golang.org-package-offline-cache@v0.0.0-20200626051047-6608995c132f/x/text/language/tables.go (about)

     1  // This file was generated by go generate; DO NOT EDIT
     2  
     3  package language
     4  
     5  import "golang.org/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 = 642
    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  = 222
    43  	_hi  = 223
    44  	_hr  = 236
    45  	_hu  = 240
    46  	_hy  = 241
    47  	_id  = 246
    48  	_is  = 256
    49  	_it  = 257
    50  	_ja  = 261
    51  	_ka  = 270
    52  	_kk  = 300
    53  	_km  = 304
    54  	_kn  = 306
    55  	_ko  = 307
    56  	_ky  = 330
    57  	_lo  = 354
    58  	_lt  = 358
    59  	_lv  = 365
    60  	_mk  = 393
    61  	_ml  = 394
    62  	_mn  = 396
    63  	_mo  = 399
    64  	_mr  = 403
    65  	_ms  = 407
    66  	_mul = 411
    67  	_my  = 418
    68  	_nb  = 427
    69  	_ne  = 432
    70  	_nl  = 441
    71  	_no  = 445
    72  	_pa  = 466
    73  	_pl  = 482
    74  	_pt  = 490
    75  	_ro  = 510
    76  	_ru  = 514
    77  	_sh  = 544
    78  	_si  = 547
    79  	_sk  = 549
    80  	_sl  = 551
    81  	_sq  = 564
    82  	_sr  = 565
    83  	_sv  = 577
    84  	_sw  = 578
    85  	_ta  = 587
    86  	_te  = 594
    87  	_th  = 599
    88  	_tl  = 610
    89  	_tn  = 613
    90  	_tr  = 617
    91  	_uk  = 639
    92  	_ur  = 645
    93  	_uz  = 646
    94  	_vi  = 651
    95  	_zh  = 700
    96  	_zu  = 702
    97  	_jbo = 6829
    98  	_ami = 1025
    99  	_bnn = 1732
   100  	_hak = 219
   101  	_tlh = 13842
   102  	_lb  = 337
   103  	_nv  = 454
   104  	_pwn = 11430
   105  	_tao = 13563
   106  	_tay = 13573
   107  	_tsu = 14037
   108  	_nn  = 443
   109  	_sfb = 13004
   110  	_vgt = 15076
   111  	_sgg = 13035
   112  	_cmn = 2382
   113  	_nan = 424
   114  	_hsn = 238
   115  )
   116  
   117  const langPrivateStart = 0x2d01
   118  
   119  const langPrivateEnd = 0x2f08
   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  // Size: 2824 bytes
   129  var lang tag.Index = "" +
   130  	"---\x00aaarabbkabr\x00ace\x00ach\x00ada\x00ady\x00aeveaeb\x00affragq\x00" +
   131  	"aho\x00akkaakk\x00aln\x00alt\x00ammhamo\x00anrgaoz\x00arraarc\x00arn\x00" +
   132  	"aro\x00arq\x00ary\x00arz\x00assmasa\x00ase\x00ast\x00atj\x00avvaawa\x00a" +
   133  	"yymazzebaakbal\x00ban\x00bap\x00bar\x00bas\x00bax\x00bbc\x00bbj\x00bci" +
   134  	"\x00beelbej\x00bem\x00bew\x00bez\x00bfd\x00bfq\x00bft\x00bfy\x00bgulbgc" +
   135  	"\x00bgn\x00bgx\x00bhihbhb\x00bhi\x00bhk\x00bho\x00biisbik\x00bin\x00bjj" +
   136  	"\x00bjn\x00bkm\x00bku\x00blt\x00bmambmq\x00bnenboodbpy\x00bqi\x00bqv\x00" +
   137  	"brrebra\x00brh\x00brx\x00bsosbsq\x00bss\x00bto\x00btv\x00bua\x00buc\x00b" +
   138  	"ug\x00bum\x00bvb\x00byn\x00byv\x00bze\x00caatcch\x00ccp\x00ceheceb\x00cg" +
   139  	"g\x00chhachk\x00chm\x00cho\x00chp\x00chr\x00cja\x00cjm\x00ckb\x00cooscop" +
   140  	"\x00cps\x00crrecrj\x00crk\x00crl\x00crm\x00crs\x00csescsb\x00csw\x00ctd" +
   141  	"\x00cuhucvhvcyymdaandak\x00dar\x00dav\x00dcc\x00deeuden\x00dgr\x00dje" +
   142  	"\x00dnj\x00doi\x00dsb\x00dtm\x00dtp\x00dua\x00dvivdyo\x00dyu\x00dzzoebu" +
   143  	"\x00eeweefi\x00egl\x00egy\x00eky\x00elllenngeopoes\x00\x05esu\x00etstett" +
   144  	"\x00euusewo\x00ext\x00faasfan\x00ffulffm\x00fiinfia\x00fil\x00fit\x00fji" +
   145  	"jfoaofon\x00frrafrc\x00frp\x00frr\x00frs\x00fud\x00fuq\x00fur\x00fuv\x00" +
   146  	"fvr\x00fyrygalegaa\x00gag\x00gan\x00gay\x00gbm\x00gbz\x00gcr\x00gdlagez" +
   147  	"\x00ggn\x00gil\x00gjk\x00gju\x00gllgglk\x00gnrngom\x00gon\x00gor\x00gos" +
   148  	"\x00got\x00grc\x00grt\x00gsw\x00guujgub\x00guc\x00gur\x00guz\x00gvlvgvr" +
   149  	"\x00gwi\x00haauhak\x00haw\x00haz\x00heebhiinhif\x00hil\x00hlu\x00hmd\x00" +
   150  	"hnd\x00hne\x00hnj\x00hnn\x00hno\x00homohoc\x00hoj\x00hrrvhsb\x00hsn\x00h" +
   151  	"tathuunhyyehzerianaiba\x00ibb\x00idndieleigboiiiiikpkikt\x00ilo\x00inndi" +
   152  	"nh\x00iodoisslittaiukuiw\x00\x03izh\x00japnjam\x00jgo\x00ji\x00\x06jmc" +
   153  	"\x00jml\x00jut\x00jvavjwavkaatkaa\x00kab\x00kac\x00kaj\x00kam\x00kao\x00" +
   154  	"kbd\x00kcg\x00kck\x00kde\x00kdt\x00kea\x00ken\x00kfo\x00kfr\x00kfy\x00kg" +
   155  	"onkge\x00kgp\x00kha\x00khb\x00khn\x00khq\x00kht\x00khw\x00kiikkiu\x00kju" +
   156  	"akjg\x00kkazkkj\x00klalkln\x00kmhmkmb\x00knankoorkoi\x00kok\x00kos\x00kp" +
   157  	"e\x00kraukrc\x00kri\x00krj\x00krl\x00kru\x00ksasksb\x00ksf\x00ksh\x00kuu" +
   158  	"rkum\x00kvomkvr\x00kvx\x00kw\x00\x01kxm\x00kxp\x00kyirlaatlab\x00lad\x00" +
   159  	"lag\x00lah\x00laj\x00lbtzlbe\x00lbw\x00lcp\x00lep\x00lez\x00lgugliimlif" +
   160  	"\x00lij\x00lis\x00ljp\x00lki\x00lkt\x00lmn\x00lmo\x00lninloaolol\x00loz" +
   161  	"\x00lrc\x00ltitltg\x00luublua\x00luo\x00luy\x00luz\x00lvavlwl\x00lzh\x00" +
   162  	"lzz\x00mad\x00maf\x00mag\x00mai\x00mak\x00man\x00mas\x00maz\x00mdf\x00md" +
   163  	"h\x00mdr\x00men\x00mer\x00mfa\x00mfe\x00mglgmgh\x00mgo\x00mgp\x00mgy\x00" +
   164  	"mhahmirimin\x00mis\x00mkkdmlalmls\x00mnonmni\x00mnw\x00moolmoe\x00moh" +
   165  	"\x00mos\x00mrarmrd\x00mrj\x00mru\x00mssamtltmtr\x00mua\x00mul\x00mus\x00" +
   166  	"mvy\x00mwk\x00mwr\x00mwv\x00mxc\x00myyamyv\x00myx\x00myz\x00mzn\x00naaun" +
   167  	"an\x00nap\x00naq\x00nbobnch\x00nddendc\x00nds\x00neepnew\x00ngdongl\x00n" +
   168  	"he\x00nhw\x00nij\x00niu\x00njo\x00nlldnmg\x00nnnonnh\x00noornod\x00noe" +
   169  	"\x00non\x00nqo\x00nrblnsk\x00nso\x00nus\x00nvavnxq\x00nyyanym\x00nyn\x00" +
   170  	"nzi\x00occiojjiomrmorriosssotk\x00paanpag\x00pal\x00pam\x00pap\x00pau" +
   171  	"\x00pcd\x00pcm\x00pdc\x00pdt\x00peo\x00pfl\x00phn\x00pilipka\x00pko\x00p" +
   172  	"lolpms\x00pnt\x00pon\x00pra\x00prd\x00prg\x00psusptorpuu\x00quuequc\x00q" +
   173  	"ug\x00raj\x00rcf\x00rej\x00rgn\x00ria\x00rif\x00rjs\x00rkt\x00rmohrmf" +
   174  	"\x00rmo\x00rmt\x00rmu\x00rnunrng\x00roonrob\x00rof\x00rtm\x00ruusrue\x00" +
   175  	"rug\x00rw\x00\x04rwk\x00ryu\x00saansaf\x00sah\x00saq\x00sas\x00sat\x00sa" +
   176  	"z\x00sbp\x00scrdsck\x00scn\x00sco\x00scs\x00sdndsdc\x00sdh\x00semesef" +
   177  	"\x00seh\x00sei\x00ses\x00sgagsga\x00sgs\x00sh\x00\x02shi\x00shn\x00siins" +
   178  	"id\x00sklkskr\x00sllvsli\x00sly\x00smmosma\x00smj\x00smn\x00smp\x00sms" +
   179  	"\x00snnasnk\x00soomsou\x00sqqisrrpsrb\x00srn\x00srr\x00srx\x00ssswssy" +
   180  	"\x00stotstq\x00suunsuk\x00sus\x00svweswwaswb\x00swc\x00swg\x00swv\x00sxn" +
   181  	"\x00syl\x00syr\x00szl\x00taamtaj\x00tbw\x00tcy\x00tdd\x00tdg\x00tdh\x00t" +
   182  	"eeltem\x00teo\x00tet\x00tggkthhathl\x00thq\x00thr\x00tiirtig\x00tiv\x00t" +
   183  	"kuktkl\x00tkr\x00tkt\x00tlgltly\x00tmh\x00tnsntoontog\x00tpi\x00trurtru" +
   184  	"\x00trv\x00tssotsd\x00tsf\x00tsg\x00tsj\x00ttatttj\x00tts\x00ttt\x00tum" +
   185  	"\x00tvl\x00twwitwq\x00tyahtyv\x00tzm\x00udm\x00ugiguga\x00ukkruli\x00umb" +
   186  	"\x00und\x00unr\x00unx\x00urrduzzbvai\x00veenvec\x00vep\x00viievic\x00vls" +
   187  	"\x00vmf\x00vmw\x00voolvot\x00vro\x00vun\x00walnwae\x00wal\x00war\x00wbp" +
   188  	"\x00wbq\x00wbr\x00wls\x00wni\x00woolwtm\x00wuu\x00xav\x00xcr\x00xhhoxlc" +
   189  	"\x00xld\x00xmf\x00xmn\x00xmr\x00xna\x00xnr\x00xog\x00xpr\x00xsa\x00xsr" +
   190  	"\x00yao\x00yap\x00yav\x00ybb\x00yiidyooryrl\x00yua\x00zahazag\x00zbl\x00" +
   191  	"zdj\x00zea\x00zgh\x00zhhozmi\x00zuulzxx\x00zza\x00\xff\xff\xff\xff"
   192  
   193  const langNoIndexOffset = 705
   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, 0xfd, 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, 0x99, 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, 0xff, 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, 0x1d, 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  // Size: 32 bytes
   516  var altLangISO3 tag.Index = "---\x00cor\x00hbs\x01heb\x02kin\x03spa\x04yid\x05\xff\xff\xff\xff"
   517  
   518  // altLangIndex is used to convert indexes in altLangISO3 to langIDs.
   519  // Size: 12 bytes, 6 elements
   520  var altLangIndex = [6]uint16{
   521  	0x0147, 0x0220, 0x0103, 0x0205, 0x009c, 0x0108,
   522  }
   523  
   524  // langAliasMap maps langIDs to their suggested replacements.
   525  // Size: 556 bytes, 139 elements
   526  var langAliasMap = [139]fromTo{
   527  	{from: 0xfd, to: 0xf6},
   528  	{from: 0x103, to: 0xde},
   529  	{from: 0x108, to: 0x2b2},
   530  	{from: 0x10d, to: 0x10c},
   531  	{from: 0x18f, to: 0x1fe},
   532  	{from: 0x1ab, to: 0x1bd},
   533  	{from: 0x220, to: 0x235},
   534  	{from: 0x262, to: 0xa9},
   535  	{from: 0x26e, to: 0x24c},
   536  	{from: 0x277, to: 0xd},
   537  	{from: 0x2cd, to: 0x2d3},
   538  	{from: 0x31e, to: 0x92},
   539  	{from: 0x3bf, to: 0x1c40},
   540  	{from: 0x3e0, to: 0x234},
   541  	{from: 0x3f1, to: 0x234},
   542  	{from: 0x47c, to: 0x15},
   543  	{from: 0x487, to: 0xf1},
   544  	{from: 0x4cd, to: 0x1f30},
   545  	{from: 0x542, to: 0x23},
   546  	{from: 0x548, to: 0x272a},
   547  	{from: 0x554, to: 0x24},
   548  	{from: 0x575, to: 0xa0},
   549  	{from: 0x59b, to: 0x26},
   550  	{from: 0x5a4, to: 0x42},
   551  	{from: 0x652, to: 0xc72},
   552  	{from: 0x77e, to: 0x1a2},
   553  	{from: 0x7c5, to: 0x16b},
   554  	{from: 0x7cc, to: 0x59},
   555  	{from: 0x84d, to: 0x30b1},
   556  	{from: 0x8c7, to: 0x2bc},
   557  	{from: 0x904, to: 0x23e9},
   558  	{from: 0x90d, to: 0x952},
   559  	{from: 0x92a, to: 0x249},
   560  	{from: 0x94b, to: 0x3fb8},
   561  	{from: 0x94e, to: 0x2bc},
   562  	{from: 0xa48, to: 0x73},
   563  	{from: 0xa97, to: 0x79},
   564  	{from: 0xb57, to: 0x8a},
   565  	{from: 0xb66, to: 0x19f},
   566  	{from: 0xb87, to: 0xb8a},
   567  	{from: 0xb8d, to: 0x2c0},
   568  	{from: 0xc6e, to: 0x1de9},
   569  	{from: 0xc7d, to: 0x2c29},
   570  	{from: 0xcc8, to: 0x1b9},
   571  	{from: 0xe5f, to: 0x9e},
   572  	{from: 0xe93, to: 0x176},
   573  	{from: 0xf2f, to: 0xfa},
   574  	{from: 0x1008, to: 0xd},
   575  	{from: 0x11b3, to: 0xae},
   576  	{from: 0x11ff, to: 0xa5},
   577  	{from: 0x12ae, to: 0xb2a},
   578  	{from: 0x12b2, to: 0x1ce},
   579  	{from: 0x12c1, to: 0x1454},
   580  	{from: 0x130f, to: 0x10e},
   581  	{from: 0x1312, to: 0x85},
   582  	{from: 0x1332, to: 0x3a3e},
   583  	{from: 0x13f9, to: 0xcb},
   584  	{from: 0x1457, to: 0x99},
   585  	{from: 0x148f, to: 0x2787},
   586  	{from: 0x14a7, to: 0xc9},
   587  	{from: 0x1509, to: 0x12b3},
   588  	{from: 0x1598, to: 0x1545},
   589  	{from: 0x15a5, to: 0x1682},
   590  	{from: 0x1619, to: 0x239},
   591  	{from: 0x1708, to: 0x1a90},
   592  	{from: 0x1803, to: 0x293f},
   593  	{from: 0x1819, to: 0x100},
   594  	{from: 0x18e9, to: 0x102},
   595  	{from: 0x1915, to: 0x12a4},
   596  	{from: 0x1dcc, to: 0x1e6c},
   597  	{from: 0x1de9, to: 0x18c},
   598  	{from: 0x1e72, to: 0x142},
   599  	{from: 0x1e7d, to: 0x138},
   600  	{from: 0x1e81, to: 0x11f},
   601  	{from: 0x1e88, to: 0x135},
   602  	{from: 0x1e9e, to: 0x1f7a},
   603  	{from: 0x1ec4, to: 0x144},
   604  	{from: 0x1f75, to: 0x422d},
   605  	{from: 0x1f83, to: 0x3712},
   606  	{from: 0x1ff1, to: 0x6b9},
   607  	{from: 0x20a5, to: 0x2fb5},
   608  	{from: 0x2111, to: 0x30f4},
   609  	{from: 0x2201, to: 0x16d},
   610  	{from: 0x2273, to: 0x189},
   611  	{from: 0x227f, to: 0x186},
   612  	{from: 0x2289, to: 0x197},
   613  	{from: 0x22df, to: 0x8ea},
   614  	{from: 0x2338, to: 0x69},
   615  	{from: 0x23cd, to: 0x176},
   616  	{from: 0x2458, to: 0x2443},
   617  	{from: 0x2488, to: 0x1ef},
   618  	{from: 0x24b6, to: 0x3a3e},
   619  	{from: 0x24f4, to: 0x2443},
   620  	{from: 0x267e, to: 0x25c6},
   621  	{from: 0x26a3, to: 0x1b0},
   622  	{from: 0x28a9, to: 0x1cd},
   623  	{from: 0x298b, to: 0x1cf},
   624  	{from: 0x29ce, to: 0x3a3e},
   625  	{from: 0x2a8b, to: 0x1e9},
   626  	{from: 0x2aa2, to: 0x326},
   627  	{from: 0x2ad6, to: 0xa3},
   628  	{from: 0x2ad7, to: 0xa3},
   629  	{from: 0x2b8e, to: 0x180},
   630  	{from: 0x2ba9, to: 0x2b24},
   631  	{from: 0x2bb0, to: 0x14f},
   632  	{from: 0x2bf4, to: 0x2011},
   633  	{from: 0x2c7e, to: 0x2c66},
   634  	{from: 0x2f22, to: 0x1ec},
   635  	{from: 0x30f5, to: 0x311d},
   636  	{from: 0x31b9, to: 0x1fe},
   637  	{from: 0x327d, to: 0x165f},
   638  	{from: 0x3375, to: 0x225},
   639  	{from: 0x33e7, to: 0x12f},
   640  	{from: 0x3405, to: 0x210},
   641  	{from: 0x348c, to: 0x242},
   642  	{from: 0x35ba, to: 0x2a2a},
   643  	{from: 0x35be, to: 0x4c},
   644  	{from: 0x35c1, to: 0x2fb7},
   645  	{from: 0x35fb, to: 0x3735},
   646  	{from: 0x3621, to: 0x3d4f},
   647  	{from: 0x3644, to: 0x2c29},
   648  	{from: 0x36eb, to: 0x264},
   649  	{from: 0x38dd, to: 0xb20},
   650  	{from: 0x3907, to: 0xe89},
   651  	{from: 0x3a28, to: 0x286},
   652  	{from: 0x3d4c, to: 0x7f},
   653  	{from: 0x404d, to: 0x302},
   654  	{from: 0x4107, to: 0x137},
   655  	{from: 0x415a, to: 0x345a},
   656  	{from: 0x415c, to: 0x86},
   657  	{from: 0x423e, to: 0x30b1},
   658  	{from: 0x4272, to: 0x2b2},
   659  	{from: 0x4359, to: 0x2198},
   660  	{from: 0x436c, to: 0x246b},
   661  	{from: 0x439f, to: 0x463d},
   662  	{from: 0x443d, to: 0x442f},
   663  	{from: 0x44cd, to: 0x44d4},
   664  	{from: 0x46a5, to: 0x197},
   665  	{from: 0x4736, to: 0x2b6},
   666  }
   667  
   668  // Size: 139 bytes, 139 elements
   669  var langAliasTypes = [139]langAliasType{
   670  	// Entry 0 - 3F
   671  	0, 0, 0, 0, 0, 1, 2, 2, 0, 1, 0, 0, 1, 2, 1, 1,
   672  	2, 0, 1, 0, 1, 2, 1, 1, 0, 2, 1, 1, 0, 2, 0, 0,
   673  	1, 0, 1, 1, 2, 1, 1, 1, 1, 0, 0, 2, 1, 1, 1, 1,
   674  	2, 1, 0, 1, 1, 2, 2, 0, 1, 2, 0, 1, 1, 1, 1, 1,
   675  	// Entry 40 - 7F
   676  	0, 0, 2, 1, 0, 0, 1, 1, 1, 1, 1, 0, 1, 0, 0, 1,
   677  	0, 0, 1, 2, 2, 2, 0, 1, 1, 0, 1, 0, 0, 0, 1, 1,
   678  	1, 0, 1, 0, 2, 1, 1, 0, 1, 0, 0, 1, 1, 2, 0, 2,
   679  	1, 1, 1, 0, 2, 0, 0, 0, 0, 1, 1, 0, 1, 2, 0, 1,
   680  	// Entry 80 - BF
   681  	0, 1, 0, 1, 0, 0, 0, 0, 1, 1, 1,
   682  }
   683  
   684  const (
   685  	_Latn = 79
   686  	_Hani = 48
   687  	_Hans = 50
   688  	_Hant = 51
   689  	_Qaaa = 125
   690  	_Qaai = 133
   691  	_Qabx = 174
   692  	_Zinh = 218
   693  	_Zyyy = 222
   694  	_Zzzz = 223
   695  )
   696  
   697  // script is an alphabetically sorted list of ISO 15924 codes. The index
   698  // of the script in the string, divided by 4, is the internal scriptID.
   699  // Size: 900 bytes
   700  var script tag.Index = "" +
   701  	"----AdlmAfakAghbAhomArabAranArmiArmnAvstBaliBamuBassBatkBengBlisBopoBrah" +
   702  	"BraiBugiBuhdCakmCansCariChamCherCirtCoptCprtCyrlCyrsDevaDsrtDuplEgydEgyh" +
   703  	"EgypElbaEthiGeokGeorGlagGothGranGrekGujrGuruHangHaniHanoHansHantHatrHebr" +
   704  	"HiraHluwHmngHrktHungIndsItalJavaJpanJurcKaliKanaKharKhmrKhojKitlKitsKnda" +
   705  	"KoreKpelKthiLanaLaooLatfLatgLatnLepcLimbLinaLinbLisuLomaLyciLydiMahjMand" +
   706  	"ManiMarcMayaMendMercMeroMlymModiMongMoonMrooMteiMultMymrNarbNbatNkgbNkoo" +
   707  	"NshuOgamOlckOrkhOryaOsgeOsmaPalmPaucPermPhagPhliPhlpPhlvPhnxPlrdPrtiQaaa" +
   708  	"QaabQaacQaadQaaeQaafQaagQaahQaaiQaajQaakQaalQaamQaanQaaoQaapQaaqQaarQaas" +
   709  	"QaatQaauQaavQaawQaaxQaayQaazQabaQabbQabcQabdQabeQabfQabgQabhQabiQabjQabk" +
   710  	"QablQabmQabnQaboQabpQabqQabrQabsQabtQabuQabvQabwQabxRjngRoroRunrSamrSara" +
   711  	"SarbSaurSgnwShawShrdSiddSindSinhSoraSundSyloSyrcSyreSyrjSyrnTagbTakrTale" +
   712  	"TaluTamlTangTavtTeluTengTfngTglgThaaThaiTibtTirhUgarVaiiVispWaraWoleXpeo" +
   713  	"XsuxYiiiZinhZmthZsymZxxxZyyyZzzz\xff\xff\xff\xff"
   714  
   715  // suppressScript is an index from langID to the dominant script for that language,
   716  // if it exists.  If a script is given, it should be suppressed from the language tag.
   717  // Size: 705 bytes, 705 elements
   718  var suppressScript = [705]uint8{
   719  	// Entry 0 - 3F
   720  	0x00, 0x00, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00,
   721  	0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   722  	0x00, 0x26, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
   723  	0x00, 0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00,
   724  	0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00,
   725  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d,
   726  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   727  	0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   728  	// Entry 40 - 7F
   729  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   730  	0x00, 0x00, 0x00, 0x0e, 0x00, 0x00, 0x00, 0x00,
   731  	0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00,
   732  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   733  	0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
   734  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   735  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   736  	0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
   737  	// Entry 80 - BF
   738  	0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00,
   739  	0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0xce,
   740  	0x00, 0x00, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00,
   741  	0x00, 0x2c, 0x4f, 0x4f, 0x4f, 0x00, 0x4f, 0x00,
   742  	0x4f, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x4f,
   743  	0x00, 0x00, 0x00, 0x4f, 0x4f, 0x00, 0x4f, 0x00,
   744  	0x00, 0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   745  	0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   746  	// Entry C0 - FF
   747  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
   748  	0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   749  	0x00, 0x4f, 0x2d, 0x00, 0x00, 0x00, 0x00, 0x4f,
   750  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x35, 0x1f,
   751  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   752  	0x00, 0x00, 0x00, 0x00, 0x4f, 0x4f, 0x00, 0x4f,
   753  	0x4f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00,
   754  	0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00,
   755  	// Entry 100 - 13F
   756  	0x4f, 0x4f, 0x00, 0x35, 0x00, 0x3e, 0x00, 0x00,
   757  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x00,
   758  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   759  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   760  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   761  	0x00, 0x00, 0x00, 0x00, 0x1d, 0x00, 0x4f, 0x00,
   762  	0x43, 0x00, 0x47, 0x48, 0x00, 0x1f, 0x00, 0x00,
   763  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   764  	// Entry 140 - 17F
   765  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   766  	0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00,
   767  	0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   768  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   769  	0x00, 0x4f, 0x4c, 0x00, 0x00, 0x00, 0x4f, 0x00,
   770  	0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00,
   771  	0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00,
   772  	0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00,
   773  	// Entry 180 - 1BF
   774  	0x4f, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00,
   775  	0x00, 0x1d, 0x60, 0x00, 0x00, 0x00, 0x00, 0x4f,
   776  	0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x4f,
   777  	0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   778  	0x00, 0x00, 0x67, 0x00, 0x00, 0x00, 0x00, 0x4f,
   779  	0x00, 0x00, 0x00, 0x4f, 0x00, 0x4f, 0x00, 0x4f,
   780  	0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
   781  	0x00, 0x4f, 0x00, 0x4f, 0x00, 0x4f, 0x00, 0x00,
   782  	// Entry 1C0 - 1FF
   783  	0x00, 0x6b, 0x4f, 0x00, 0x4f, 0x00, 0x00, 0x00,
   784  	0x4f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x70,
   785  	0x00, 0x00, 0x2e, 0x00, 0x00, 0x00, 0x00, 0x00,
   786  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   787  	0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   788  	0x00, 0x05, 0x4f, 0x00, 0x4f, 0x00, 0x00, 0x00,
   789  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f,
   790  	0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x4f, 0x00,
   791  	// Entry 200 - 23F
   792  	0x00, 0x00, 0x1d, 0x00, 0x00, 0x4f, 0x00, 0x00,
   793  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   794  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   795  	0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00, 0x00,
   796  	0x00, 0x00, 0x00, 0xbb, 0x00, 0x4f, 0x00, 0x4f,
   797  	0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   798  	0x00, 0x00, 0x4f, 0x00, 0x4f, 0x00, 0x00, 0x00,
   799  	0x00, 0x00, 0x4f, 0x00, 0x4f, 0x00, 0x00, 0x00,
   800  	// Entry 240 - 27F
   801  	0x00, 0x4f, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   802  	0x00, 0x00, 0x00, 0xc7, 0x00, 0x00, 0x00, 0x00,
   803  	0x00, 0x00, 0xca, 0x4f, 0x00, 0x00, 0x00, 0xcf,
   804  	0x00, 0x00, 0x00, 0x26, 0x00, 0x00, 0x00, 0x4f,
   805  	0x00, 0x00, 0x4f, 0x00, 0x4f, 0x4f, 0x4f, 0x00,
   806  	0x4f, 0x4f, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00,
   807  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00,
   808  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d,
   809  	// Entry 280 - 2BF
   810  	0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00,
   811  	0x4f, 0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00,
   812  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   813  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   814  	0x00, 0x00, 0x4f, 0x00, 0x00, 0x00, 0x00, 0x00,
   815  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   816  	0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x00, 0x00,
   817  	0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4f, 0x00,
   818  	// Entry 2C0 - 2FF
   819  	0x00,
   820  }
   821  
   822  const (
   823  	_001 = 1
   824  	_419 = 30
   825  	_BR  = 64
   826  	_CA  = 72
   827  	_ES  = 109
   828  	_GB  = 121
   829  	_MD  = 186
   830  	_PT  = 236
   831  	_UK  = 304
   832  	_US  = 306
   833  	_ZZ  = 354
   834  	_XA  = 320
   835  	_XC  = 322
   836  	_XK  = 330
   837  )
   838  
   839  // isoRegionOffset needs to be added to the index of regionISO to obtain the regionID
   840  // for 2-letter ISO codes. (The first isoRegionOffset regionIDs are reserved for
   841  // the UN.M49 codes used for groups.)
   842  const isoRegionOffset = 31
   843  
   844  // regionTypes defines the status of a region for various standards.
   845  // Size: 355 bytes, 355 elements
   846  var regionTypes = [355]uint8{
   847  	// Entry 0 - 3F
   848  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   849  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   850  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
   851  	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05,
   852  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   853  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   854  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   855  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   856  	// Entry 40 - 7F
   857  	0x06, 0x06, 0x06, 0x04, 0x06, 0x06, 0x06, 0x06,
   858  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   859  	0x06, 0x06, 0x06, 0x06, 0x04, 0x06, 0x04, 0x00,
   860  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x04, 0x06,
   861  	0x04, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x04,
   862  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   863  	0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x04,
   864  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   865  	// Entry 80 - BF
   866  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   867  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   868  	0x06, 0x00, 0x04, 0x06, 0x06, 0x06, 0x06, 0x06,
   869  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   870  	0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   871  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   872  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   873  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00,
   874  	// Entry C0 - FF
   875  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   876  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   877  	0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06,
   878  	0x06, 0x06, 0x00, 0x06, 0x04, 0x06, 0x06, 0x06,
   879  	0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   880  	0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06, 0x06,
   881  	0x00, 0x06, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
   882  	0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
   883  	// Entry 100 - 13F
   884  	0x06, 0x00, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   885  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   886  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   887  	0x06, 0x06, 0x06, 0x06, 0x04, 0x06, 0x06, 0x06,
   888  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   889  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06,
   890  	0x02, 0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00,
   891  	0x06, 0x06, 0x06, 0x06, 0x06, 0x06, 0x00, 0x06,
   892  	// Entry 140 - 17F
   893  	0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
   894  	0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
   895  	0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05, 0x05,
   896  	0x05, 0x05, 0x04, 0x06, 0x06, 0x04, 0x06, 0x06,
   897  	0x04, 0x06, 0x05,
   898  }
   899  
   900  // regionISO holds a list of alphabetically sorted 2-letter ISO region codes.
   901  // Each 2-letter codes is followed by two bytes with the following meaning:
   902  //     - [A-Z}{2}: the first letter of the 2-letter code plus these two
   903  //                 letters form the 3-letter ISO code.
   904  //     - 0, n:     index into altRegionISO3.
   905  // Size: 1300 bytes
   906  var regionISO tag.Index = "" +
   907  	"AAAAACSCADNDAEREAFFGAGTGAIIAALLBAMRMANNTAOGOAQTAARRGASSMATUTAUUSAWBWAXLA" +
   908  	"AZZEBAIHBBRBBDGDBEELBFFABGGRBHHRBIDIBJENBLLMBMMUBNRNBOOLBQESBRRABSHSBTTN" +
   909  	"BUURBVVTBWWABYLRBZLZCAANCCCKCDODCFAFCGOGCHHECIIVCKOKCLHLCMMRCNHNCOOLCPPT" +
   910  	"CRRICS\x00\x00CTTECUUBCVPVCWUWCXXRCYYPCZZEDDDRDEEUDGGADJJIDKNKDMMADOOMDY" +
   911  	"HYDZZAEA  ECCUEESTEGGYEHSHERRIESSPETTHEU\x00\x03FIINFJJIFKLKFMSMFOROFQ" +
   912  	"\x00\x18FRRAFXXXGAABGBBRGDRDGEEOGFUFGGGYGHHAGIIBGLRLGMMBGNINGPLPGQNQGRRC" +
   913  	"GS\x00\x06GTTMGUUMGWNBGYUYHKKGHMMDHNNDHRRVHTTIHUUNHVVOIC  IDDNIERLILSRIM" +
   914  	"MNINNDIOOTIQRQIRRNISSLITTAJEEYJMAMJOORJPPNJTTNKEENKGGZKHHMKIIRKM\x00\x09" +
   915  	"KNNAKP\x00\x0cKRORKWWTKY\x00\x0fKZAZLAAOLBBNLCCALIIELKKALRBRLSSOLTTULUUX" +
   916  	"LVVALYBYMAARMCCOMDDAMENEMFAFMGDGMHHLMIIDMKKDMLLIMMMRMNNGMOACMPNPMQTQMRRT" +
   917  	"MSSRMTLTMUUSMVDVMWWIMXEXMYYSMZOZNAAMNCCLNEERNFFKNGGANHHBNIICNLLDNOORNPPL" +
   918  	"NQ\x00\x1eNRRUNTTZNUIUNZZLOMMNPAANPCCIPEERPFYFPGNGPHHLPKAKPLOLPM\x00\x12" +
   919  	"PNCNPRRIPSSEPTRTPUUSPWLWPYRYPZCZQAATQMMMQNNNQOOOQPPPQQQQQRRRQSSSQTTTQU" +
   920  	"\x00\x03QVVVQWWWQXXXQYYYQZZZREEURHHOROOURS\x00\x15RUUSRWWASAAUSBLBSCYCSD" +
   921  	"DNSEWESGGPSHHNSIVNSJJMSKVKSLLESMMRSNENSOOMSRURSSSDSTTPSUUNSVLVSXXMSYYRSZ" +
   922  	"WZTAAATCCATDCDTF\x00\x18TGGOTHHATJJKTKKLTLLSTMKMTNUNTOONTPMPTRURTTTOTVUV" +
   923  	"TWWNTZZAUAKRUGGAUK  UMMIUSSAUYRYUZZBVAATVCCTVDDRVEENVGGBVIIRVNNMVUUTWFLF" +
   924  	"WKAKWSSMXAAAXBBBXCCCXDDDXEEEXFFFXGGGXHHHXIIIXJJJXKKKXLLLXMMMXNNNXOOOXPPP" +
   925  	"XQQQXRRRXSSSXTTTXUUUXVVVXWWWXXXXXYYYXZZZYDMDYEEMYT\x00\x1bYUUGZAAFZMMBZR" +
   926  	"ARZWWEZZZZ\xff\xff\xff\xff"
   927  
   928  // altRegionISO3 holds a list of 3-letter region codes that cannot be
   929  // mapped to 2-letter codes using the default algorithm. This is a short list.
   930  // Size: 33 bytes
   931  var altRegionISO3 string = "SCGQUUSGSCOMPRKCYMSPMSRBATFMYTATN"
   932  
   933  // altRegionIDs holds a list of regionIDs the positions of which match those
   934  // of the 3-letter ISO codes in altRegionISO3.
   935  // Size: 22 bytes, 11 elements
   936  var altRegionIDs = [11]uint16{
   937  	0x0056, 0x006f, 0x0086, 0x00a6, 0x00a8, 0x00ab, 0x00e8, 0x0103,
   938  	0x011f, 0x015c, 0x00da,
   939  }
   940  
   941  // Size: 80 bytes, 20 elements
   942  var regionOldMap = [20]fromTo{
   943  	{from: 0x43, to: 0xc2},
   944  	{from: 0x57, to: 0xa5},
   945  	{from: 0x5e, to: 0x5f},
   946  	{from: 0x65, to: 0x3a},
   947  	{from: 0x77, to: 0x76},
   948  	{from: 0x91, to: 0x36},
   949  	{from: 0xa1, to: 0x131},
   950  	{from: 0xbf, to: 0x131},
   951  	{from: 0xd5, to: 0x13c},
   952  	{from: 0xda, to: 0x2a},
   953  	{from: 0xed, to: 0x131},
   954  	{from: 0xf0, to: 0xe0},
   955  	{from: 0xfa, to: 0x6f},
   956  	{from: 0x101, to: 0x161},
   957  	{from: 0x128, to: 0x124},
   958  	{from: 0x130, to: 0x79},
   959  	{from: 0x137, to: 0x13b},
   960  	{from: 0x13e, to: 0x131},
   961  	{from: 0x15a, to: 0x15b},
   962  	{from: 0x160, to: 0x4a},
   963  }
   964  
   965  // m49 maps regionIDs to UN.M49 codes. The first isoRegionOffset entries are
   966  // codes indicating collections of regions.
   967  // Size: 710 bytes, 355 elements
   968  var m49 = [355]int16{
   969  	// Entry 0 - 3F
   970  	0, 1, 2, 3, 5, 9, 11, 13,
   971  	14, 15, 17, 18, 19, 21, 29, 30,
   972  	34, 35, 39, 53, 54, 57, 61, 142,
   973  	143, 145, 150, 151, 154, 155, 419, 958,
   974  	0, 20, 784, 4, 28, 660, 8, 51,
   975  	530, 24, 10, 32, 16, 40, 36, 533,
   976  	248, 31, 70, 52, 50, 56, 854, 100,
   977  	48, 108, 204, 652, 60, 96, 68, 535,
   978  	// Entry 40 - 7F
   979  	76, 44, 64, 104, 74, 72, 112, 84,
   980  	124, 166, 180, 140, 178, 756, 384, 184,
   981  	152, 120, 156, 170, 0, 188, 891, 296,
   982  	192, 132, 531, 162, 196, 203, 278, 276,
   983  	0, 262, 208, 212, 214, 204, 12, 0,
   984  	218, 233, 818, 732, 232, 724, 231, 967,
   985  	246, 242, 238, 583, 234, 0, 250, 249,
   986  	266, 826, 308, 268, 254, 831, 288, 292,
   987  	// Entry 80 - BF
   988  	304, 270, 324, 312, 226, 300, 239, 320,
   989  	316, 624, 328, 344, 334, 340, 191, 332,
   990  	348, 854, 0, 360, 372, 376, 833, 356,
   991  	86, 368, 364, 352, 380, 832, 388, 400,
   992  	392, 581, 404, 417, 116, 296, 174, 659,
   993  	408, 410, 414, 136, 398, 418, 422, 662,
   994  	438, 144, 430, 426, 440, 442, 428, 434,
   995  	504, 492, 498, 499, 663, 450, 584, 581,
   996  	// Entry C0 - FF
   997  	807, 466, 104, 496, 446, 580, 474, 478,
   998  	500, 470, 480, 462, 454, 484, 458, 508,
   999  	516, 540, 562, 574, 566, 548, 558, 528,
  1000  	578, 524, 10, 520, 536, 570, 554, 512,
  1001  	591, 0, 604, 258, 598, 608, 586, 616,
  1002  	666, 612, 630, 275, 620, 581, 585, 600,
  1003  	591, 634, 959, 960, 961, 962, 963, 964,
  1004  	965, 966, 967, 968, 969, 970, 971, 972,
  1005  	// Entry 100 - 13F
  1006  	638, 716, 642, 688, 643, 646, 682, 90,
  1007  	690, 729, 752, 702, 654, 705, 744, 703,
  1008  	694, 674, 686, 706, 740, 728, 678, 810,
  1009  	222, 534, 760, 748, 0, 796, 148, 260,
  1010  	768, 764, 762, 772, 626, 795, 788, 776,
  1011  	626, 792, 780, 798, 158, 834, 804, 800,
  1012  	826, 581, 840, 858, 860, 336, 670, 704,
  1013  	862, 92, 850, 704, 548, 876, 581, 882,
  1014  	// Entry 140 - 17F
  1015  	973, 974, 975, 976, 977, 978, 979, 980,
  1016  	981, 982, 983, 984, 985, 986, 987, 988,
  1017  	989, 990, 991, 992, 993, 994, 995, 996,
  1018  	997, 998, 720, 887, 175, 891, 710, 894,
  1019  	180, 716, 999,
  1020  }
  1021  
  1022  // m49Index gives indexes into fromM49 based on the three most significant bits
  1023  // of a 10-bit UN.M49 code. To search an UN.M49 code in fromM49, search in
  1024  //    fromM49[m49Index[msb39(code)]:m49Index[msb3(code)+1]]
  1025  // for an entry where the first 7 bits match the 7 lsb of the UN.M49 code.
  1026  // The region code is stored in the 9 lsb of the indexed value.
  1027  // Size: 18 bytes, 9 elements
  1028  var m49Index = [9]int16{
  1029  	0, 59, 107, 142, 180, 219, 258, 290,
  1030  	332,
  1031  }
  1032  
  1033  // fromM49 contains entries to map UN.M49 codes to regions. See m49Index for details.
  1034  // Size: 664 bytes, 332 elements
  1035  var fromM49 = [332]uint16{
  1036  	// Entry 0 - 3F
  1037  	0x0201, 0x0402, 0x0603, 0x0823, 0x0a04, 0x1026, 0x1205, 0x142a,
  1038  	0x1606, 0x1866, 0x1a07, 0x1c08, 0x1e09, 0x202c, 0x220a, 0x240b,
  1039  	0x260c, 0x2821, 0x2a0d, 0x3029, 0x3824, 0x3a0e, 0x3c0f, 0x3e31,
  1040  	0x402b, 0x4410, 0x4611, 0x482e, 0x4e12, 0x502d, 0x5841, 0x6038,
  1041  	0x6434, 0x6627, 0x6833, 0x6a13, 0x6c14, 0x7035, 0x7215, 0x783c,
  1042  	0x7a16, 0x8042, 0x883e, 0x8c32, 0x9045, 0x9444, 0x9840, 0xa847,
  1043  	0xac98, 0xb507, 0xb939, 0xc03d, 0xc837, 0xd0c2, 0xd839, 0xe046,
  1044  	0xe8a4, 0xf051, 0xf848, 0x0859, 0x10ab, 0x184b, 0x1c17, 0x1e18,
  1045  	// Entry 40 - 7F
  1046  	0x20b1, 0x2219, 0x291e, 0x2c1a, 0x2e1b, 0x3050, 0x341c, 0x361d,
  1047  	0x3852, 0x3d2c, 0x445b, 0x4c49, 0x5453, 0x5ca6, 0x5f5c, 0x644c,
  1048  	0x684a, 0x704f, 0x7855, 0x7e8e, 0x8058, 0x885c, 0x965d, 0x983a,
  1049  	0xa062, 0xa863, 0xac64, 0xb468, 0xbd18, 0xc484, 0xcc6e, 0xce6e,
  1050  	0xd06c, 0xd269, 0xd474, 0xdc72, 0xde86, 0xe471, 0xec70, 0xf030,
  1051  	0xf277, 0xf476, 0xfc7c, 0x04e3, 0x091f, 0x0c61, 0x1478, 0x187b,
  1052  	0x1c81, 0x26eb, 0x285f, 0x2c5e, 0x305f, 0x407e, 0x487f, 0x50a5,
  1053  	0x5885, 0x6080, 0x687a, 0x7083, 0x7888, 0x8087, 0x8882, 0x908a,
  1054  	// Entry 80 - BF
  1055  	0x988f, 0x9c8c, 0xa135, 0xa88d, 0xb08b, 0xb890, 0xc09b, 0xc897,
  1056  	0xd093, 0xd89a, 0xe099, 0xe894, 0xf095, 0xf89c, 0x004e, 0x089e,
  1057  	0x10a0, 0x1cac, 0x209f, 0x28a2, 0x30a8, 0x34a9, 0x3caa, 0x42a3,
  1058  	0x44ad, 0x461e, 0x4cae, 0x54b3, 0x58b6, 0x5cb2, 0x64b7, 0x6cb0,
  1059  	0x70b4, 0x74b5, 0x7cc4, 0x84bd, 0x8ccc, 0x94ce, 0x9ccb, 0xa4c1,
  1060  	0xacc9, 0xb4c6, 0xbcc7, 0xc0ca, 0xc8cd, 0xd8b9, 0xe0c3, 0xe4ba,
  1061  	0xe6bb, 0xe8c8, 0xf0b8, 0xf8cf, 0x00df, 0x08d0, 0x10db, 0x18d9,
  1062  	0x20d7, 0x2428, 0x265a, 0x2a2f, 0x2d19, 0x2e3f, 0x30dc, 0x38d1,
  1063  	// Entry C0 - FF
  1064  	0x493c, 0x54de, 0x5cd6, 0x64d2, 0x6cd4, 0x74dd, 0x7cd3, 0x84d8,
  1065  	0x88c5, 0x8b31, 0x8e73, 0x90be, 0x92ee, 0x94e6, 0x9ee0, 0xace4,
  1066  	0xb0ef, 0xb8e2, 0xc0e5, 0xc8e9, 0xd0e7, 0xd8ec, 0xe089, 0xe524,
  1067  	0xecea, 0xf4f1, 0xfd00, 0x0502, 0x0704, 0x0d05, 0x183b, 0x1d0c,
  1068  	0x26a7, 0x2825, 0x2caf, 0x2ebc, 0x34e8, 0x3d36, 0x4511, 0x4d16,
  1069  	0x5506, 0x5d12, 0x6103, 0x6508, 0x6d10, 0x7d0b, 0x7f0f, 0x813b,
  1070  	0x830d, 0x8513, 0x8d5e, 0x9961, 0xa15a, 0xa86d, 0xb115, 0xb309,
  1071  	0xb86b, 0xc109, 0xc914, 0xd10e, 0xd91b, 0xe10a, 0xe84d, 0xf11a,
  1072  	// Entry 100 - 13F
  1073  	0xf522, 0xf921, 0x0120, 0x0923, 0x1127, 0x192a, 0x2022, 0x2926,
  1074  	0x3129, 0x3725, 0x391d, 0x3d2b, 0x412f, 0x492e, 0x4ec0, 0x5517,
  1075  	0x646a, 0x7479, 0x7e7d, 0x809d, 0x8296, 0x852d, 0x9132, 0xa53a,
  1076  	0xac36, 0xb533, 0xb934, 0xbd38, 0xd93d, 0xe53f, 0xed5b, 0xef5b,
  1077  	0xf656, 0xfd5f, 0x7c1f, 0x7ef2, 0x80f3, 0x82f4, 0x84f5, 0x86f6,
  1078  	0x88f7, 0x8af8, 0x8cf9, 0x8e6f, 0x90fb, 0x92fc, 0x94fd, 0x96fe,
  1079  	0x98ff, 0x9b40, 0x9d41, 0x9f42, 0xa143, 0xa344, 0xa545, 0xa746,
  1080  	0xa947, 0xab48, 0xad49, 0xaf4a, 0xb14b, 0xb34c, 0xb54d, 0xb74e,
  1081  	// Entry 140 - 17F
  1082  	0xb94f, 0xbb50, 0xbd51, 0xbf52, 0xc153, 0xc354, 0xc555, 0xc756,
  1083  	0xc957, 0xcb58, 0xcd59, 0xcf62,
  1084  }
  1085  
  1086  // Size: 1311 bytes
  1087  var variantIndex = map[string]uint8{
  1088  	"1606nict": 0x0,
  1089  	"1694acad": 0x1,
  1090  	"1901":     0x2,
  1091  	"1959acad": 0x3,
  1092  	"1994":     0x3f,
  1093  	"1996":     0x4,
  1094  	"alalc97":  0x41,
  1095  	"aluku":    0x5,
  1096  	"arevela":  0x6,
  1097  	"arevmda":  0x7,
  1098  	"baku1926": 0x8,
  1099  	"balanka":  0x9,
  1100  	"barla":    0xa,
  1101  	"bauddha":  0xb,
  1102  	"biscayan": 0xc,
  1103  	"biske":    0x3a,
  1104  	"bohoric":  0xd,
  1105  	"boont":    0xe,
  1106  	"dajnko":   0xf,
  1107  	"ekavsk":   0x10,
  1108  	"emodeng":  0x11,
  1109  	"fonipa":   0x42,
  1110  	"fonupa":   0x43,
  1111  	"fonxsamp": 0x44,
  1112  	"hepburn":  0x12,
  1113  	"heploc":   0x40,
  1114  	"hognorsk": 0x13,
  1115  	"ijekavsk": 0x14,
  1116  	"itihasa":  0x15,
  1117  	"jauer":    0x16,
  1118  	"jyutping": 0x17,
  1119  	"kkcor":    0x18,
  1120  	"kociewie": 0x19,
  1121  	"kscor":    0x1a,
  1122  	"laukika":  0x1b,
  1123  	"lipaw":    0x3b,
  1124  	"luna1918": 0x1c,
  1125  	"metelko":  0x1d,
  1126  	"monoton":  0x1e,
  1127  	"ndyuka":   0x1f,
  1128  	"nedis":    0x20,
  1129  	"njiva":    0x3c,
  1130  	"nulik":    0x21,
  1131  	"osojs":    0x3d,
  1132  	"oxendict": 0x22,
  1133  	"pamaka":   0x23,
  1134  	"petr1708": 0x24,
  1135  	"pinyin":   0x25,
  1136  	"polyton":  0x26,
  1137  	"puter":    0x27,
  1138  	"rigik":    0x28,
  1139  	"rozaj":    0x29,
  1140  	"rumgr":    0x2a,
  1141  	"scotland": 0x2b,
  1142  	"scouse":   0x2c,
  1143  	"solba":    0x3e,
  1144  	"sotav":    0x2d,
  1145  	"surmiran": 0x2e,
  1146  	"sursilv":  0x2f,
  1147  	"sutsilv":  0x30,
  1148  	"tarask":   0x31,
  1149  	"uccor":    0x32,
  1150  	"ucrcor":   0x33,
  1151  	"ulster":   0x34,
  1152  	"unifon":   0x35,
  1153  	"vaidika":  0x36,
  1154  	"valencia": 0x37,
  1155  	"vallader": 0x38,
  1156  	"wadegile": 0x39,
  1157  }
  1158  
  1159  // variantNumSpecialized is the number of specialized variants in variants.
  1160  const variantNumSpecialized = 65
  1161  
  1162  // nRegionGroups is the number of region groups.
  1163  const nRegionGroups = 32
  1164  
  1165  type likelyLangRegion struct {
  1166  	lang   uint16
  1167  	region uint16
  1168  }
  1169  
  1170  // likelyScript is a lookup table, indexed by scriptID, for the most likely
  1171  // languages and regions given a script.
  1172  // Size: 900 bytes, 225 elements
  1173  var likelyScript = [225]likelyLangRegion{
  1174  	{lang: 0x0, region: 0x0},
  1175  	{lang: 0x0, region: 0x0},
  1176  	{lang: 0x0, region: 0x0},
  1177  	{lang: 0x156, region: 0x104},
  1178  	{lang: 0xc, region: 0x97},
  1179  	{lang: 0x15, region: 0x6a},
  1180  	{lang: 0x0, region: 0x0},
  1181  	{lang: 0x16, region: 0x9a},
  1182  	{lang: 0xf1, region: 0x27},
  1183  	{lang: 0x8, region: 0x9a},
  1184  	{lang: 0x27, region: 0x93},
  1185  	{lang: 0x2b, region: 0x51},
  1186  	{lang: 0x55, region: 0xb2},
  1187  	{lang: 0x2c, region: 0x93},
  1188  	{lang: 0x4b, region: 0x34},
  1189  	{lang: 0x0, region: 0x0},
  1190  	{lang: 0x2bc, region: 0x12c},
  1191  	{lang: 0x1e0, region: 0x97},
  1192  	{lang: 0xae, region: 0x76},
  1193  	{lang: 0x5b, region: 0x93},
  1194  	{lang: 0x47, region: 0xe5},
  1195  	{lang: 0x63, region: 0x34},
  1196  	{lang: 0x73, region: 0x48},
  1197  	{lang: 0x2a1, region: 0x129},
  1198  	{lang: 0x6e, region: 0x13b},
  1199  	{lang: 0x6c, region: 0x132},
  1200  	{lang: 0x0, region: 0x0},
  1201  	{lang: 0x71, region: 0x6a},
  1202  	{lang: 0xcf, region: 0x5c},
  1203  	{lang: 0x202, region: 0x104},
  1204  	{lang: 0x0, region: 0x0},
  1205  	{lang: 0xdf, region: 0x97},
  1206  	{lang: 0x0, region: 0x0},
  1207  	{lang: 0xae, region: 0x76},
  1208  	{lang: 0x0, region: 0x0},
  1209  	{lang: 0x0, region: 0x0},
  1210  	{lang: 0x97, region: 0x6a},
  1211  	{lang: 0x234, region: 0x26},
  1212  	{lang: 0x11, region: 0x6e},
  1213  	{lang: 0x0, region: 0x0},
  1214  	{lang: 0x10e, region: 0x7b},
  1215  	{lang: 0x7d, region: 0x37},
  1216  	{lang: 0xce, region: 0x12e},
  1217  	{lang: 0x208, region: 0x97},
  1218  	{lang: 0x99, region: 0x85},
  1219  	{lang: 0xd2, region: 0x97},
  1220  	{lang: 0x1d2, region: 0x97},
  1221  	{lang: 0x133, region: 0xa9},
  1222  	{lang: 0x2bc, region: 0x52},
  1223  	{lang: 0xe7, region: 0xe5},
  1224  	{lang: 0x2bc, region: 0x52},
  1225  	{lang: 0x2bc, region: 0x12c},
  1226  	{lang: 0x188, region: 0x99},
  1227  	{lang: 0xde, region: 0x95},
  1228  	{lang: 0x105, region: 0xa0},
  1229  	{lang: 0xe2, region: 0x129},
  1230  	{lang: 0xe6, region: 0xad},
  1231  	{lang: 0x0, region: 0x0},
  1232  	{lang: 0xf0, region: 0x90},
  1233  	{lang: 0x0, region: 0x0},
  1234  	{lang: 0x9f, region: 0x9c},
  1235  	{lang: 0x10c, region: 0x93},
  1236  	{lang: 0x105, region: 0xa0},
  1237  	{lang: 0x0, region: 0x0},
  1238  	{lang: 0x98, region: 0xc2},
  1239  	{lang: 0x105, region: 0xa0},
  1240  	{lang: 0x1e6, region: 0xe6},
  1241  	{lang: 0x130, region: 0xa4},
  1242  	{lang: 0x215, region: 0x97},
  1243  	{lang: 0x0, region: 0x0},
  1244  	{lang: 0x0, region: 0x0},
  1245  	{lang: 0x132, region: 0x97},
  1246  	{lang: 0x133, region: 0xa9},
  1247  	{lang: 0x0, region: 0x0},
  1248  	{lang: 0x3c, region: 0x97},
  1249  	{lang: 0x1be, region: 0x121},
  1250  	{lang: 0x162, region: 0xad},
  1251  	{lang: 0x0, region: 0x0},
  1252  	{lang: 0x0, region: 0x0},
  1253  	{lang: 0x0, region: 0x0},
  1254  	{lang: 0x155, region: 0x97},
  1255  	{lang: 0x159, region: 0x97},
  1256  	{lang: 0x14c, region: 0x85},
  1257  	{lang: 0xcf, region: 0x85},
  1258  	{lang: 0x15b, region: 0x52},
  1259  	{lang: 0x0, region: 0x0},
  1260  	{lang: 0x2a3, region: 0x129},
  1261  	{lang: 0x2a4, region: 0x129},
  1262  	{lang: 0xdf, region: 0x97},
  1263  	{lang: 0x1a5, region: 0x9a},
  1264  	{lang: 0x2a6, region: 0x52},
  1265  	{lang: 0x0, region: 0x0},
  1266  	{lang: 0x0, region: 0x0},
  1267  	{lang: 0x17c, region: 0x110},
  1268  	{lang: 0x2a7, region: 0x109},
  1269  	{lang: 0x2a7, region: 0x109},
  1270  	{lang: 0x18a, region: 0x97},
  1271  	{lang: 0x193, region: 0x97},
  1272  	{lang: 0x18c, region: 0x52},
  1273  	{lang: 0x0, region: 0x0},
  1274  	{lang: 0x196, region: 0x34},
  1275  	{lang: 0x18d, region: 0x97},
  1276  	{lang: 0x226, region: 0xe6},
  1277  	{lang: 0x1a2, region: 0xc2},
  1278  	{lang: 0x2a8, region: 0x106},
  1279  	{lang: 0x16, region: 0x9f},
  1280  	{lang: 0x0, region: 0x0},
  1281  	{lang: 0x176, region: 0x82},
  1282  	{lang: 0x0, region: 0x0},
  1283  	{lang: 0x21e, region: 0x94},
  1284  	{lang: 0x20d, region: 0x97},
  1285  	{lang: 0x1d1, region: 0xc3},
  1286  	{lang: 0x1cf, region: 0x97},
  1287  	{lang: 0x0, region: 0x0},
  1288  	{lang: 0x232, region: 0x113},
  1289  	{lang: 0x16, region: 0x11a},
  1290  	{lang: 0x7c, region: 0xc2},
  1291  	{lang: 0x144, region: 0x104},
  1292  	{lang: 0x16f, region: 0x52},
  1293  	{lang: 0x1d4, region: 0x9a},
  1294  	{lang: 0x1d4, region: 0x52},
  1295  	{lang: 0x0, region: 0x0},
  1296  	{lang: 0x1de, region: 0xae},
  1297  	{lang: 0xe3, region: 0x52},
  1298  	{lang: 0x2ab, region: 0x9a},
  1299  	{lang: 0x0, region: 0x0},
  1300  	{lang: 0x0, region: 0x0},
  1301  	{lang: 0x0, region: 0x0},
  1302  	{lang: 0x0, region: 0x0},
  1303  	{lang: 0x0, region: 0x0},
  1304  	{lang: 0x0, region: 0x0},
  1305  	{lang: 0x0, region: 0x0},
  1306  	{lang: 0x0, region: 0x0},
  1307  	{lang: 0x0, region: 0x0},
  1308  	{lang: 0x0, region: 0x0},
  1309  	{lang: 0x0, region: 0x0},
  1310  	{lang: 0x0, region: 0x0},
  1311  	{lang: 0x0, region: 0x0},
  1312  	{lang: 0x0, region: 0x0},
  1313  	{lang: 0x0, region: 0x0},
  1314  	{lang: 0x0, region: 0x0},
  1315  	{lang: 0x0, region: 0x0},
  1316  	{lang: 0x0, region: 0x0},
  1317  	{lang: 0x0, region: 0x0},
  1318  	{lang: 0x0, region: 0x0},
  1319  	{lang: 0x0, region: 0x0},
  1320  	{lang: 0x0, region: 0x0},
  1321  	{lang: 0x0, region: 0x0},
  1322  	{lang: 0x0, region: 0x0},
  1323  	{lang: 0x0, region: 0x0},
  1324  	{lang: 0x0, region: 0x0},
  1325  	{lang: 0x0, region: 0x0},
  1326  	{lang: 0x0, region: 0x0},
  1327  	{lang: 0x0, region: 0x0},
  1328  	{lang: 0x0, region: 0x0},
  1329  	{lang: 0x0, region: 0x0},
  1330  	{lang: 0x0, region: 0x0},
  1331  	{lang: 0x0, region: 0x0},
  1332  	{lang: 0x0, region: 0x0},
  1333  	{lang: 0x0, region: 0x0},
  1334  	{lang: 0x0, region: 0x0},
  1335  	{lang: 0x0, region: 0x0},
  1336  	{lang: 0x0, region: 0x0},
  1337  	{lang: 0x0, region: 0x0},
  1338  	{lang: 0x0, region: 0x0},
  1339  	{lang: 0x0, region: 0x0},
  1340  	{lang: 0x0, region: 0x0},
  1341  	{lang: 0x0, region: 0x0},
  1342  	{lang: 0x0, region: 0x0},
  1343  	{lang: 0x0, region: 0x0},
  1344  	{lang: 0x0, region: 0x0},
  1345  	{lang: 0x0, region: 0x0},
  1346  	{lang: 0x0, region: 0x0},
  1347  	{lang: 0x0, region: 0x0},
  1348  	{lang: 0x0, region: 0x0},
  1349  	{lang: 0x1f1, region: 0x93},
  1350  	{lang: 0x0, region: 0x0},
  1351  	{lang: 0x1c0, region: 0x10a},
  1352  	{lang: 0x22e, region: 0x95},
  1353  	{lang: 0x0, region: 0x0},
  1354  	{lang: 0x2ac, region: 0x15b},
  1355  	{lang: 0x20e, region: 0x97},
  1356  	{lang: 0x1e, region: 0x132},
  1357  	{lang: 0x9a, region: 0x79},
  1358  	{lang: 0x208, region: 0x97},
  1359  	{lang: 0x208, region: 0x97},
  1360  	{lang: 0x215, region: 0x97},
  1361  	{lang: 0x223, region: 0xb1},
  1362  	{lang: 0x236, region: 0x97},
  1363  	{lang: 0x23e, region: 0x93},
  1364  	{lang: 0x248, region: 0x34},
  1365  	{lang: 0x249, region: 0x99},
  1366  	{lang: 0x0, region: 0x0},
  1367  	{lang: 0x0, region: 0x0},
  1368  	{lang: 0x0, region: 0x0},
  1369  	{lang: 0x24d, region: 0xe5},
  1370  	{lang: 0x8a, region: 0x97},
  1371  	{lang: 0x24f, region: 0x52},
  1372  	{lang: 0x123, region: 0x52},
  1373  	{lang: 0x24b, region: 0x97},
  1374  	{lang: 0x0, region: 0x0},
  1375  	{lang: 0x48, region: 0x13b},
  1376  	{lang: 0x252, region: 0x97},
  1377  	{lang: 0x0, region: 0x0},
  1378  	{lang: 0x2bb, region: 0xb8},
  1379  	{lang: 0xa9, region: 0xe5},
  1380  	{lang: 0x8f, region: 0xcb},
  1381  	{lang: 0x257, region: 0x121},
  1382  	{lang: 0x4c, region: 0x52},
  1383  	{lang: 0x174, region: 0x97},
  1384  	{lang: 0x27e, region: 0x11a},
  1385  	{lang: 0x287, region: 0xb2},
  1386  	{lang: 0x0, region: 0x0},
  1387  	{lang: 0xea, region: 0x97},
  1388  	{lang: 0x0, region: 0x0},
  1389  	{lang: 0x1dc, region: 0x9a},
  1390  	{lang: 0xe, region: 0x99},
  1391  	{lang: 0xf9, region: 0x52},
  1392  	{lang: 0x0, region: 0x0},
  1393  	{lang: 0x0, region: 0x0},
  1394  	{lang: 0x0, region: 0x0},
  1395  	{lang: 0x0, region: 0x0},
  1396  	{lang: 0x0, region: 0x0},
  1397  	{lang: 0x0, region: 0x0},
  1398  	{lang: 0x0, region: 0x0},
  1399  }
  1400  
  1401  type likelyScriptRegion struct {
  1402  	region uint16
  1403  	script uint8
  1404  	flags  uint8
  1405  }
  1406  
  1407  // likelyLang is a lookup table, indexed by langID, for the most likely
  1408  // scripts and regions given incomplete information. If more entries exist for a
  1409  // given language, region and script are the index and size respectively
  1410  // of the list in likelyLangList.
  1411  // Size: 2820 bytes, 705 elements
  1412  var likelyLang = [705]likelyScriptRegion{
  1413  	{region: 0x132, script: 0x4f, flags: 0x0},
  1414  	{region: 0x6e, script: 0x4f, flags: 0x0},
  1415  	{region: 0x7b, script: 0x1d, flags: 0x0},
  1416  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1417  	{region: 0x93, script: 0x4f, flags: 0x0},
  1418  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1419  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1420  	{region: 0x104, script: 0x1d, flags: 0x0},
  1421  	{region: 0x9a, script: 0x9, flags: 0x0},
  1422  	{region: 0x126, script: 0x5, flags: 0x0},
  1423  	{region: 0x15e, script: 0x4f, flags: 0x0},
  1424  	{region: 0x51, script: 0x4f, flags: 0x0},
  1425  	{region: 0x97, script: 0x4, flags: 0x0},
  1426  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1427  	{region: 0x99, script: 0xd8, flags: 0x0},
  1428  	{region: 0x14a, script: 0x4f, flags: 0x0},
  1429  	{region: 0x104, script: 0x1d, flags: 0x0},
  1430  	{region: 0x6e, script: 0x26, flags: 0x0},
  1431  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1432  	{region: 0x0, script: 0x0, flags: 0x0},
  1433  	{region: 0x93, script: 0x4f, flags: 0x0},
  1434  	{region: 0x6a, script: 0x5, flags: 0x0},
  1435  	{region: 0x0, script: 0x3, flags: 0x1},
  1436  	{region: 0x50, script: 0x4f, flags: 0x0},
  1437  	{region: 0x3e, script: 0x4f, flags: 0x0},
  1438  	{region: 0x66, script: 0x5, flags: 0x0},
  1439  	{region: 0xb8, script: 0x5, flags: 0x0},
  1440  	{region: 0x6a, script: 0x5, flags: 0x0},
  1441  	{region: 0x97, script: 0xe, flags: 0x0},
  1442  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1443  	{region: 0x132, script: 0xb6, flags: 0x0},
  1444  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1445  	{region: 0x48, script: 0x4f, flags: 0x0},
  1446  	{region: 0x104, script: 0x1d, flags: 0x0},
  1447  	{region: 0x97, script: 0x1f, flags: 0x0},
  1448  	{region: 0x3e, script: 0x4f, flags: 0x0},
  1449  	{region: 0x3, script: 0x5, flags: 0x1},
  1450  	{region: 0x104, script: 0x1d, flags: 0x0},
  1451  	{region: 0xe6, script: 0x5, flags: 0x0},
  1452  	{region: 0x93, script: 0x4f, flags: 0x0},
  1453  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1454  	{region: 0x2d, script: 0x4f, flags: 0x0},
  1455  	{region: 0x51, script: 0x4f, flags: 0x0},
  1456  	{region: 0x51, script: 0xb, flags: 0x0},
  1457  	{region: 0x93, script: 0x4f, flags: 0x0},
  1458  	{region: 0x51, script: 0x4f, flags: 0x0},
  1459  	{region: 0x4e, script: 0x4f, flags: 0x0},
  1460  	{region: 0x46, script: 0x1d, flags: 0x0},
  1461  	{region: 0x109, script: 0x5, flags: 0x0},
  1462  	{region: 0x15f, script: 0x4f, flags: 0x0},
  1463  	{region: 0x93, script: 0x4f, flags: 0x0},
  1464  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1465  	{region: 0x51, script: 0x4f, flags: 0x0},
  1466  	{region: 0x97, script: 0xc7, flags: 0x0},
  1467  	{region: 0xe6, script: 0x5, flags: 0x0},
  1468  	{region: 0x97, script: 0x1f, flags: 0x0},
  1469  	{region: 0x37, script: 0x1d, flags: 0x0},
  1470  	{region: 0x97, script: 0x1f, flags: 0x0},
  1471  	{region: 0xe6, script: 0x5, flags: 0x0},
  1472  	{region: 0x129, script: 0x2c, flags: 0x0},
  1473  	{region: 0x97, script: 0x4a, flags: 0x0},
  1474  	{region: 0x97, script: 0x1f, flags: 0x0},
  1475  	{region: 0x97, script: 0x1f, flags: 0x0},
  1476  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1477  	{region: 0x97, script: 0x1f, flags: 0x0},
  1478  	{region: 0x13c, script: 0x4f, flags: 0x0},
  1479  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1480  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1481  	{region: 0x97, script: 0x1f, flags: 0x0},
  1482  	{region: 0x93, script: 0x4f, flags: 0x0},
  1483  	{region: 0x51, script: 0x4f, flags: 0x0},
  1484  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1485  	{region: 0x13b, script: 0xc9, flags: 0x0},
  1486  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1487  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1488  	{region: 0x34, script: 0xe, flags: 0x0},
  1489  	{region: 0x52, script: 0xd0, flags: 0x0},
  1490  	{region: 0x97, script: 0xe, flags: 0x0},
  1491  	{region: 0x9a, script: 0x5, flags: 0x0},
  1492  	{region: 0x4e, script: 0x4f, flags: 0x0},
  1493  	{region: 0x76, script: 0x4f, flags: 0x0},
  1494  	{region: 0x97, script: 0x1f, flags: 0x0},
  1495  	{region: 0xe6, script: 0x5, flags: 0x0},
  1496  	{region: 0x97, script: 0x1f, flags: 0x0},
  1497  	{region: 0x32, script: 0x4f, flags: 0x0},
  1498  	{region: 0xb2, script: 0xc, flags: 0x0},
  1499  	{region: 0x51, script: 0x4f, flags: 0x0},
  1500  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1501  	{region: 0xe6, script: 0x1f, flags: 0x0},
  1502  	{region: 0x104, script: 0x1d, flags: 0x0},
  1503  	{region: 0x15c, script: 0x4f, flags: 0x0},
  1504  	{region: 0x93, script: 0x4f, flags: 0x0},
  1505  	{region: 0x51, script: 0x4f, flags: 0x0},
  1506  	{region: 0x84, script: 0x4f, flags: 0x0},
  1507  	{region: 0x6c, script: 0x26, flags: 0x0},
  1508  	{region: 0x51, script: 0x4f, flags: 0x0},
  1509  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1510  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1511  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1512  	{region: 0x8, script: 0x2, flags: 0x1},
  1513  	{region: 0x104, script: 0x1d, flags: 0x0},
  1514  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1515  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1516  	{region: 0x88, script: 0x4f, flags: 0x0},
  1517  	{region: 0x73, script: 0x4f, flags: 0x0},
  1518  	{region: 0x104, script: 0x1d, flags: 0x0},
  1519  	{region: 0x132, script: 0x4f, flags: 0x0},
  1520  	{region: 0x48, script: 0x4f, flags: 0x0},
  1521  	{region: 0x132, script: 0x19, flags: 0x0},
  1522  	{region: 0xa4, script: 0x5, flags: 0x0},
  1523  	{region: 0x13b, script: 0x18, flags: 0x0},
  1524  	{region: 0x99, script: 0x5, flags: 0x0},
  1525  	{region: 0x76, script: 0x4f, flags: 0x0},
  1526  	{region: 0x6a, script: 0x1b, flags: 0x0},
  1527  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1528  	{region: 0x48, script: 0x16, flags: 0x0},
  1529  	{region: 0x48, script: 0x16, flags: 0x0},
  1530  	{region: 0x48, script: 0x16, flags: 0x0},
  1531  	{region: 0x48, script: 0x16, flags: 0x0},
  1532  	{region: 0x48, script: 0x16, flags: 0x0},
  1533  	{region: 0x108, script: 0x4f, flags: 0x0},
  1534  	{region: 0x5d, script: 0x4f, flags: 0x0},
  1535  	{region: 0xe7, script: 0x4f, flags: 0x0},
  1536  	{region: 0x48, script: 0x16, flags: 0x0},
  1537  	{region: 0xc2, script: 0x74, flags: 0x0},
  1538  	{region: 0xa, script: 0x2, flags: 0x1},
  1539  	{region: 0x104, script: 0x1d, flags: 0x0},
  1540  	{region: 0x79, script: 0x4f, flags: 0x0},
  1541  	{region: 0x62, script: 0x4f, flags: 0x0},
  1542  	{region: 0x132, script: 0x4f, flags: 0x0},
  1543  	{region: 0x104, script: 0x1d, flags: 0x0},
  1544  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1545  	{region: 0x97, script: 0x5, flags: 0x0},
  1546  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1547  	{region: 0x48, script: 0x4f, flags: 0x0},
  1548  	{region: 0x48, script: 0x4f, flags: 0x0},
  1549  	{region: 0xd2, script: 0x4f, flags: 0x0},
  1550  	{region: 0x4e, script: 0x4f, flags: 0x0},
  1551  	{region: 0x97, script: 0x5, flags: 0x0},
  1552  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1553  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1554  	{region: 0xce, script: 0x4f, flags: 0x0},
  1555  	{region: 0x51, script: 0x4f, flags: 0x0},
  1556  	{region: 0xcb, script: 0xce, flags: 0x0},
  1557  	{region: 0x112, script: 0x4f, flags: 0x0},
  1558  	{region: 0x36, script: 0x4f, flags: 0x0},
  1559  	{region: 0x42, script: 0xd0, flags: 0x0},
  1560  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1561  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1562  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1563  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1564  	{region: 0x6a, script: 0x24, flags: 0x0},
  1565  	{region: 0xc2, script: 0x40, flags: 0x0},
  1566  	{region: 0x85, script: 0x2c, flags: 0x0},
  1567  	{region: 0xc, script: 0x2, flags: 0x1},
  1568  	{region: 0x1, script: 0x4f, flags: 0x0},
  1569  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1570  	{region: 0x132, script: 0x4f, flags: 0x0},
  1571  	{region: 0x69, script: 0x4f, flags: 0x0},
  1572  	{region: 0x9c, script: 0x3c, flags: 0x0},
  1573  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1574  	{region: 0x51, script: 0x4f, flags: 0x0},
  1575  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1576  	{region: 0x9a, script: 0x5, flags: 0x0},
  1577  	{region: 0x84, script: 0x4f, flags: 0x0},
  1578  	{region: 0x112, script: 0x4f, flags: 0x0},
  1579  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1580  	{region: 0x70, script: 0x4f, flags: 0x0},
  1581  	{region: 0x109, script: 0x5, flags: 0x0},
  1582  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1583  	{region: 0x10a, script: 0x4f, flags: 0x0},
  1584  	{region: 0x71, script: 0x4f, flags: 0x0},
  1585  	{region: 0x74, script: 0x4f, flags: 0x0},
  1586  	{region: 0x3a, script: 0x4f, flags: 0x0},
  1587  	{region: 0x76, script: 0x4f, flags: 0x0},
  1588  	{region: 0x132, script: 0x4f, flags: 0x0},
  1589  	{region: 0x76, script: 0x4f, flags: 0x0},
  1590  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1591  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1592  	{region: 0x13d, script: 0x4f, flags: 0x0},
  1593  	{region: 0xd2, script: 0x4f, flags: 0x0},
  1594  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1595  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1596  	{region: 0x109, script: 0x4f, flags: 0x0},
  1597  	{region: 0xd7, script: 0x4f, flags: 0x0},
  1598  	{region: 0x94, script: 0x4f, flags: 0x0},
  1599  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1600  	{region: 0xba, script: 0x4f, flags: 0x0},
  1601  	{region: 0x52, script: 0x32, flags: 0x0},
  1602  	{region: 0x93, script: 0x4f, flags: 0x0},
  1603  	{region: 0x97, script: 0x1f, flags: 0x0},
  1604  	{region: 0x9a, script: 0x5, flags: 0x0},
  1605  	{region: 0x7c, script: 0x4f, flags: 0x0},
  1606  	{region: 0x79, script: 0x4f, flags: 0x0},
  1607  	{region: 0x6e, script: 0x26, flags: 0x0},
  1608  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1609  	{region: 0xa5, script: 0x4f, flags: 0x0},
  1610  	{region: 0xe6, script: 0x5, flags: 0x0},
  1611  	{region: 0xe6, script: 0x5, flags: 0x0},
  1612  	{region: 0x6d, script: 0x4f, flags: 0x0},
  1613  	{region: 0x9a, script: 0x5, flags: 0x0},
  1614  	{region: 0xef, script: 0x4f, flags: 0x0},
  1615  	{region: 0x97, script: 0x1f, flags: 0x0},
  1616  	{region: 0x97, script: 0xca, flags: 0x0},
  1617  	{region: 0x93, script: 0x4f, flags: 0x0},
  1618  	{region: 0xd7, script: 0x4f, flags: 0x0},
  1619  	{region: 0x12e, script: 0x2a, flags: 0x0},
  1620  	{region: 0xe, script: 0x2, flags: 0x1},
  1621  	{region: 0x97, script: 0xe, flags: 0x0},
  1622  	{region: 0x4d, script: 0x4f, flags: 0x0},
  1623  	{region: 0x97, script: 0x2d, flags: 0x0},
  1624  	{region: 0x40, script: 0x4f, flags: 0x0},
  1625  	{region: 0x53, script: 0x4f, flags: 0x0},
  1626  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1627  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1628  	{region: 0x96, script: 0x4f, flags: 0x0},
  1629  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1630  	{region: 0x48, script: 0x4f, flags: 0x0},
  1631  	{region: 0x10, script: 0x3, flags: 0x1},
  1632  	{region: 0x52, script: 0x32, flags: 0x0},
  1633  	{region: 0x132, script: 0x4f, flags: 0x0},
  1634  	{region: 0x23, script: 0x5, flags: 0x0},
  1635  	{region: 0x95, script: 0x35, flags: 0x0},
  1636  	{region: 0x97, script: 0x1f, flags: 0x0},
  1637  	{region: 0x71, script: 0x4f, flags: 0x0},
  1638  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1639  	{region: 0x129, script: 0x37, flags: 0x0},
  1640  	{region: 0x52, script: 0x7b, flags: 0x0},
  1641  	{region: 0xe6, script: 0x5, flags: 0x0},
  1642  	{region: 0x97, script: 0x1f, flags: 0x0},
  1643  	{region: 0xad, script: 0x38, flags: 0x0},
  1644  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1645  	{region: 0xe6, script: 0x5, flags: 0x0},
  1646  	{region: 0xe4, script: 0x4f, flags: 0x0},
  1647  	{region: 0x97, script: 0x1f, flags: 0x0},
  1648  	{region: 0x97, script: 0x1f, flags: 0x0},
  1649  	{region: 0x8e, script: 0x4f, flags: 0x0},
  1650  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1651  	{region: 0x52, script: 0x32, flags: 0x0},
  1652  	{region: 0x8f, script: 0x4f, flags: 0x0},
  1653  	{region: 0x90, script: 0x4f, flags: 0x0},
  1654  	{region: 0x27, script: 0x8, flags: 0x0},
  1655  	{region: 0xd0, script: 0x4f, flags: 0x0},
  1656  	{region: 0x76, script: 0x4f, flags: 0x0},
  1657  	{region: 0xce, script: 0x4f, flags: 0x0},
  1658  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1659  	{region: 0x93, script: 0x4f, flags: 0x0},
  1660  	{region: 0x0, script: 0x0, flags: 0x0},
  1661  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1662  	{region: 0x52, script: 0xd9, flags: 0x0},
  1663  	{region: 0x132, script: 0x4f, flags: 0x0},
  1664  	{region: 0x48, script: 0x4f, flags: 0x0},
  1665  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1666  	{region: 0x93, script: 0x4f, flags: 0x0},
  1667  	{region: 0x104, script: 0x1d, flags: 0x0},
  1668  	{region: 0x0, script: 0x0, flags: 0x0},
  1669  	{region: 0x9b, script: 0x4f, flags: 0x0},
  1670  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1671  	{region: 0x48, script: 0x16, flags: 0x0},
  1672  	{region: 0x95, script: 0x35, flags: 0x0},
  1673  	{region: 0x104, script: 0x4f, flags: 0x0},
  1674  	{region: 0xa0, script: 0x3e, flags: 0x0},
  1675  	{region: 0x9e, script: 0x4f, flags: 0x0},
  1676  	{region: 0x51, script: 0x4f, flags: 0x0},
  1677  	{region: 0x12e, script: 0x35, flags: 0x0},
  1678  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1679  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1680  	{region: 0x62, script: 0x4f, flags: 0x0},
  1681  	{region: 0x93, script: 0x4f, flags: 0x0},
  1682  	{region: 0x93, script: 0x4f, flags: 0x0},
  1683  	{region: 0x7b, script: 0x28, flags: 0x0},
  1684  	{region: 0x134, script: 0x1d, flags: 0x0},
  1685  	{region: 0x66, script: 0x4f, flags: 0x0},
  1686  	{region: 0xc2, script: 0x4f, flags: 0x0},
  1687  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1688  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1689  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1690  	{region: 0x104, script: 0x1d, flags: 0x0},
  1691  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1692  	{region: 0x161, script: 0x4f, flags: 0x0},
  1693  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1694  	{region: 0x121, script: 0xcf, flags: 0x0},
  1695  	{region: 0x59, script: 0x4f, flags: 0x0},
  1696  	{region: 0x51, script: 0x4f, flags: 0x0},
  1697  	{region: 0x4e, script: 0x4f, flags: 0x0},
  1698  	{region: 0x97, script: 0x1f, flags: 0x0},
  1699  	{region: 0x97, script: 0x1f, flags: 0x0},
  1700  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1701  	{region: 0x93, script: 0x4f, flags: 0x0},
  1702  	{region: 0x40, script: 0x4f, flags: 0x0},
  1703  	{region: 0x97, script: 0x4f, flags: 0x0},
  1704  	{region: 0x52, script: 0xc6, flags: 0x0},
  1705  	{region: 0x97, script: 0x1f, flags: 0x0},
  1706  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1707  	{region: 0x97, script: 0x67, flags: 0x0},
  1708  	{region: 0xe6, script: 0x5, flags: 0x0},
  1709  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1710  	{region: 0x129, script: 0x4f, flags: 0x0},
  1711  	{region: 0xd0, script: 0x4f, flags: 0x0},
  1712  	{region: 0xad, script: 0x4c, flags: 0x0},
  1713  	{region: 0x13, script: 0x6, flags: 0x1},
  1714  	{region: 0x51, script: 0x4f, flags: 0x0},
  1715  	{region: 0x80, script: 0x4f, flags: 0x0},
  1716  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1717  	{region: 0xa4, script: 0x43, flags: 0x0},
  1718  	{region: 0x29, script: 0x4f, flags: 0x0},
  1719  	{region: 0x97, script: 0x47, flags: 0x0},
  1720  	{region: 0xa9, script: 0x48, flags: 0x0},
  1721  	{region: 0x104, script: 0x1d, flags: 0x0},
  1722  	{region: 0x97, script: 0x1f, flags: 0x0},
  1723  	{region: 0x73, script: 0x4f, flags: 0x0},
  1724  	{region: 0xb2, script: 0x4f, flags: 0x0},
  1725  	{region: 0x0, script: 0x0, flags: 0x0},
  1726  	{region: 0x104, script: 0x1d, flags: 0x0},
  1727  	{region: 0x110, script: 0x4f, flags: 0x0},
  1728  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1729  	{region: 0x104, script: 0x4f, flags: 0x0},
  1730  	{region: 0x97, script: 0x1f, flags: 0x0},
  1731  	{region: 0x97, script: 0x5, flags: 0x0},
  1732  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1733  	{region: 0x51, script: 0x4f, flags: 0x0},
  1734  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1735  	{region: 0x19, script: 0x3, flags: 0x1},
  1736  	{region: 0x104, script: 0x1d, flags: 0x0},
  1737  	{region: 0x104, script: 0x1d, flags: 0x0},
  1738  	{region: 0x93, script: 0x4f, flags: 0x0},
  1739  	{region: 0xe6, script: 0x5, flags: 0x0},
  1740  	{region: 0x79, script: 0x4f, flags: 0x0},
  1741  	{region: 0x121, script: 0xcf, flags: 0x0},
  1742  	{region: 0xe6, script: 0x5, flags: 0x0},
  1743  	{region: 0x1c, script: 0x5, flags: 0x1},
  1744  	{region: 0x135, script: 0x4f, flags: 0x0},
  1745  	{region: 0x85, script: 0x52, flags: 0x0},
  1746  	{region: 0x95, script: 0x35, flags: 0x0},
  1747  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1748  	{region: 0xe6, script: 0x5, flags: 0x0},
  1749  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1750  	{region: 0xb5, script: 0x4f, flags: 0x0},
  1751  	{region: 0x104, script: 0x1d, flags: 0x0},
  1752  	{region: 0x93, script: 0x4f, flags: 0x0},
  1753  	{region: 0x52, script: 0xcf, flags: 0x0},
  1754  	{region: 0x97, script: 0x50, flags: 0x0},
  1755  	{region: 0x104, script: 0x1d, flags: 0x0},
  1756  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1757  	{region: 0xd7, script: 0x4f, flags: 0x0},
  1758  	{region: 0x21, script: 0x2, flags: 0x1},
  1759  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1760  	{region: 0x52, script: 0x54, flags: 0x0},
  1761  	{region: 0x93, script: 0x4f, flags: 0x0},
  1762  	{region: 0x9a, script: 0x5, flags: 0x0},
  1763  	{region: 0x132, script: 0x4f, flags: 0x0},
  1764  	{region: 0x97, script: 0xca, flags: 0x0},
  1765  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1766  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1767  	{region: 0xad, script: 0x4c, flags: 0x0},
  1768  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1769  	{region: 0x15f, script: 0x4f, flags: 0x0},
  1770  	{region: 0x9a, script: 0x5, flags: 0x0},
  1771  	{region: 0xb4, script: 0x4f, flags: 0x0},
  1772  	{region: 0xb6, script: 0x4f, flags: 0x0},
  1773  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1774  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1775  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1776  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1777  	{region: 0x9a, script: 0x5, flags: 0x0},
  1778  	{region: 0xb6, script: 0x4f, flags: 0x0},
  1779  	{region: 0x121, script: 0xcf, flags: 0x0},
  1780  	{region: 0x52, script: 0x32, flags: 0x0},
  1781  	{region: 0x129, script: 0x4f, flags: 0x0},
  1782  	{region: 0x93, script: 0x4f, flags: 0x0},
  1783  	{region: 0x51, script: 0x4f, flags: 0x0},
  1784  	{region: 0x97, script: 0x1f, flags: 0x0},
  1785  	{region: 0x97, script: 0x1f, flags: 0x0},
  1786  	{region: 0x93, script: 0x4f, flags: 0x0},
  1787  	{region: 0x23, script: 0x3, flags: 0x1},
  1788  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1789  	{region: 0xcd, script: 0x4f, flags: 0x0},
  1790  	{region: 0x104, script: 0x1d, flags: 0x0},
  1791  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1792  	{region: 0x93, script: 0x4f, flags: 0x0},
  1793  	{region: 0x110, script: 0x4f, flags: 0x0},
  1794  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1795  	{region: 0x121, script: 0x5, flags: 0x0},
  1796  	{region: 0xca, script: 0x4f, flags: 0x0},
  1797  	{region: 0xbd, script: 0x4f, flags: 0x0},
  1798  	{region: 0xcf, script: 0x4f, flags: 0x0},
  1799  	{region: 0x51, script: 0x4f, flags: 0x0},
  1800  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1801  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1802  	{region: 0xbe, script: 0x4f, flags: 0x0},
  1803  	{region: 0xde, script: 0x4f, flags: 0x0},
  1804  	{region: 0x93, script: 0x4f, flags: 0x0},
  1805  	{region: 0x99, script: 0x34, flags: 0x0},
  1806  	{region: 0xc0, script: 0x1d, flags: 0x0},
  1807  	{region: 0x97, script: 0x60, flags: 0x0},
  1808  	{region: 0x109, script: 0x4f, flags: 0x0},
  1809  	{region: 0x26, script: 0x3, flags: 0x1},
  1810  	{region: 0x97, script: 0xe, flags: 0x0},
  1811  	{region: 0xc2, script: 0x67, flags: 0x0},
  1812  	{region: 0x0, script: 0x0, flags: 0x0},
  1813  	{region: 0x48, script: 0x4f, flags: 0x0},
  1814  	{region: 0x48, script: 0x4f, flags: 0x0},
  1815  	{region: 0x36, script: 0x4f, flags: 0x0},
  1816  	{region: 0x97, script: 0x1f, flags: 0x0},
  1817  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1818  	{region: 0x104, script: 0x1d, flags: 0x0},
  1819  	{region: 0x34, script: 0x64, flags: 0x0},
  1820  	{region: 0x29, script: 0x3, flags: 0x1},
  1821  	{region: 0xc9, script: 0x4f, flags: 0x0},
  1822  	{region: 0x97, script: 0x1f, flags: 0x0},
  1823  	{region: 0x51, script: 0x4f, flags: 0x0},
  1824  	{region: 0x0, script: 0x0, flags: 0x0},
  1825  	{region: 0x132, script: 0x4f, flags: 0x0},
  1826  	{region: 0xe6, script: 0x5, flags: 0x0},
  1827  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1828  	{region: 0x97, script: 0x1f, flags: 0x0},
  1829  	{region: 0x93, script: 0x4f, flags: 0x0},
  1830  	{region: 0x161, script: 0x4f, flags: 0x0},
  1831  	{region: 0xc2, script: 0x67, flags: 0x0},
  1832  	{region: 0x104, script: 0x1d, flags: 0x0},
  1833  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1834  	{region: 0x9a, script: 0x59, flags: 0x0},
  1835  	{region: 0x9a, script: 0x5, flags: 0x0},
  1836  	{region: 0xdb, script: 0x4f, flags: 0x0},
  1837  	{region: 0x52, script: 0x32, flags: 0x0},
  1838  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1839  	{region: 0xd0, script: 0x4f, flags: 0x0},
  1840  	{region: 0xd8, script: 0x4f, flags: 0x0},
  1841  	{region: 0xcd, script: 0x4f, flags: 0x0},
  1842  	{region: 0x161, script: 0x4f, flags: 0x0},
  1843  	{region: 0xcf, script: 0x4f, flags: 0x0},
  1844  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1845  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1846  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1847  	{region: 0xd0, script: 0x4f, flags: 0x0},
  1848  	{region: 0xcf, script: 0x4f, flags: 0x0},
  1849  	{region: 0xcd, script: 0x4f, flags: 0x0},
  1850  	{region: 0xcd, script: 0x4f, flags: 0x0},
  1851  	{region: 0x93, script: 0x4f, flags: 0x0},
  1852  	{region: 0xdd, script: 0x4f, flags: 0x0},
  1853  	{region: 0x97, script: 0x4f, flags: 0x0},
  1854  	{region: 0xd7, script: 0x4f, flags: 0x0},
  1855  	{region: 0x51, script: 0x4f, flags: 0x0},
  1856  	{region: 0xd8, script: 0x4f, flags: 0x0},
  1857  	{region: 0x51, script: 0x4f, flags: 0x0},
  1858  	{region: 0xd8, script: 0x4f, flags: 0x0},
  1859  	{region: 0x121, script: 0x4b, flags: 0x0},
  1860  	{region: 0x97, script: 0x1f, flags: 0x0},
  1861  	{region: 0x10a, script: 0xb1, flags: 0x0},
  1862  	{region: 0x82, script: 0x6b, flags: 0x0},
  1863  	{region: 0x15e, script: 0x4f, flags: 0x0},
  1864  	{region: 0x48, script: 0x16, flags: 0x0},
  1865  	{region: 0x15e, script: 0x4f, flags: 0x0},
  1866  	{region: 0x115, script: 0x4f, flags: 0x0},
  1867  	{region: 0x132, script: 0x4f, flags: 0x0},
  1868  	{region: 0x52, script: 0x4f, flags: 0x0},
  1869  	{region: 0xcc, script: 0x4f, flags: 0x0},
  1870  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1871  	{region: 0x12f, script: 0x4f, flags: 0x0},
  1872  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1873  	{region: 0x76, script: 0x4f, flags: 0x0},
  1874  	{region: 0x0, script: 0x0, flags: 0x0},
  1875  	{region: 0x6e, script: 0x4f, flags: 0x0},
  1876  	{region: 0x97, script: 0x70, flags: 0x0},
  1877  	{region: 0x7b, script: 0x1d, flags: 0x0},
  1878  	{region: 0xc3, script: 0x6f, flags: 0x0},
  1879  	{region: 0x2c, script: 0x3, flags: 0x1},
  1880  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1881  	{region: 0x2f, script: 0x2, flags: 0x1},
  1882  	{region: 0xe5, script: 0x4f, flags: 0x0},
  1883  	{region: 0x2f, script: 0x4f, flags: 0x0},
  1884  	{region: 0xee, script: 0x4f, flags: 0x0},
  1885  	{region: 0x76, script: 0x4f, flags: 0x0},
  1886  	{region: 0xd4, script: 0x4f, flags: 0x0},
  1887  	{region: 0x132, script: 0x4f, flags: 0x0},
  1888  	{region: 0x48, script: 0x4f, flags: 0x0},
  1889  	{region: 0x9a, script: 0xd7, flags: 0x0},
  1890  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1891  	{region: 0xae, script: 0x7a, flags: 0x0},
  1892  	{region: 0x0, script: 0x0, flags: 0x0},
  1893  	{region: 0x97, script: 0x11, flags: 0x0},
  1894  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1895  	{region: 0xe7, script: 0x4f, flags: 0x0},
  1896  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1897  	{region: 0x85, script: 0x2c, flags: 0x0},
  1898  	{region: 0x73, script: 0x4f, flags: 0x0},
  1899  	{region: 0xe6, script: 0x42, flags: 0x0},
  1900  	{region: 0x9a, script: 0x5, flags: 0x0},
  1901  	{region: 0x1, script: 0x4f, flags: 0x0},
  1902  	{region: 0x23, script: 0x5, flags: 0x0},
  1903  	{region: 0x40, script: 0x4f, flags: 0x0},
  1904  	{region: 0x78, script: 0x4f, flags: 0x0},
  1905  	{region: 0xe2, script: 0x4f, flags: 0x0},
  1906  	{region: 0x87, script: 0x4f, flags: 0x0},
  1907  	{region: 0x68, script: 0x4f, flags: 0x0},
  1908  	{region: 0x97, script: 0x1f, flags: 0x0},
  1909  	{region: 0x100, script: 0x4f, flags: 0x0},
  1910  	{region: 0x93, script: 0x4f, flags: 0x0},
  1911  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1912  	{region: 0x97, script: 0x4f, flags: 0x0},
  1913  	{region: 0x31, script: 0x2, flags: 0x1},
  1914  	{region: 0xd9, script: 0x1f, flags: 0x0},
  1915  	{region: 0x34, script: 0xe, flags: 0x0},
  1916  	{region: 0x4d, script: 0x4f, flags: 0x0},
  1917  	{region: 0x70, script: 0x4f, flags: 0x0},
  1918  	{region: 0x4d, script: 0x4f, flags: 0x0},
  1919  	{region: 0x9a, script: 0x5, flags: 0x0},
  1920  	{region: 0x10a, script: 0x4f, flags: 0x0},
  1921  	{region: 0x39, script: 0x4f, flags: 0x0},
  1922  	{region: 0xcf, script: 0x4f, flags: 0x0},
  1923  	{region: 0x102, script: 0x4f, flags: 0x0},
  1924  	{region: 0x93, script: 0x4f, flags: 0x0},
  1925  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1926  	{region: 0x71, script: 0x4f, flags: 0x0},
  1927  	{region: 0x104, script: 0x1d, flags: 0x0},
  1928  	{region: 0x12e, script: 0x1d, flags: 0x0},
  1929  	{region: 0x107, script: 0x4f, flags: 0x0},
  1930  	{region: 0x105, script: 0x4f, flags: 0x0},
  1931  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1932  	{region: 0xa0, script: 0x41, flags: 0x0},
  1933  	{region: 0x97, script: 0x1f, flags: 0x0},
  1934  	{region: 0x7e, script: 0x4f, flags: 0x0},
  1935  	{region: 0x104, script: 0x1d, flags: 0x0},
  1936  	{region: 0xa2, script: 0x4f, flags: 0x0},
  1937  	{region: 0x93, script: 0x4f, flags: 0x0},
  1938  	{region: 0x97, script: 0x4f, flags: 0x0},
  1939  	{region: 0x97, script: 0xb5, flags: 0x0},
  1940  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1941  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1942  	{region: 0x97, script: 0x1f, flags: 0x0},
  1943  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1944  	{region: 0x79, script: 0x4f, flags: 0x0},
  1945  	{region: 0x48, script: 0x4f, flags: 0x0},
  1946  	{region: 0x33, script: 0x4, flags: 0x1},
  1947  	{region: 0x9c, script: 0x4f, flags: 0x0},
  1948  	{region: 0x9a, script: 0x5, flags: 0x0},
  1949  	{region: 0xd8, script: 0x4f, flags: 0x0},
  1950  	{region: 0x4e, script: 0x4f, flags: 0x0},
  1951  	{region: 0xcf, script: 0x4f, flags: 0x0},
  1952  	{region: 0xcd, script: 0x4f, flags: 0x0},
  1953  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1954  	{region: 0x4b, script: 0x4f, flags: 0x0},
  1955  	{region: 0x94, script: 0x6d, flags: 0x0},
  1956  	{region: 0xb4, script: 0x4f, flags: 0x0},
  1957  	{region: 0x0, script: 0x0, flags: 0x0},
  1958  	{region: 0xb8, script: 0xcc, flags: 0x0},
  1959  	{region: 0xc2, script: 0x67, flags: 0x0},
  1960  	{region: 0xb1, script: 0xbb, flags: 0x0},
  1961  	{region: 0x6e, script: 0x4f, flags: 0x0},
  1962  	{region: 0x10f, script: 0x4f, flags: 0x0},
  1963  	{region: 0xe6, script: 0x5, flags: 0x0},
  1964  	{region: 0x10d, script: 0x4f, flags: 0x0},
  1965  	{region: 0xe7, script: 0x4f, flags: 0x0},
  1966  	{region: 0x93, script: 0x4f, flags: 0x0},
  1967  	{region: 0x13f, script: 0x4f, flags: 0x0},
  1968  	{region: 0x10a, script: 0x4f, flags: 0x0},
  1969  	{region: 0x10a, script: 0x4f, flags: 0x0},
  1970  	{region: 0x70, script: 0x4f, flags: 0x0},
  1971  	{region: 0x95, script: 0xb2, flags: 0x0},
  1972  	{region: 0x70, script: 0x4f, flags: 0x0},
  1973  	{region: 0x161, script: 0x4f, flags: 0x0},
  1974  	{region: 0xc1, script: 0x4f, flags: 0x0},
  1975  	{region: 0x113, script: 0x4f, flags: 0x0},
  1976  	{region: 0x121, script: 0xcf, flags: 0x0},
  1977  	{region: 0x26, script: 0x4f, flags: 0x0},
  1978  	{region: 0x37, script: 0x5, flags: 0x1},
  1979  	{region: 0x97, script: 0xbc, flags: 0x0},
  1980  	{region: 0x114, script: 0x4f, flags: 0x0},
  1981  	{region: 0x112, script: 0x4f, flags: 0x0},
  1982  	{region: 0x97, script: 0x1f, flags: 0x0},
  1983  	{region: 0x15e, script: 0x4f, flags: 0x0},
  1984  	{region: 0x6c, script: 0x4f, flags: 0x0},
  1985  	{region: 0x15e, script: 0x4f, flags: 0x0},
  1986  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1987  	{region: 0x93, script: 0x4f, flags: 0x0},
  1988  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1989  	{region: 0x82, script: 0x4f, flags: 0x0},
  1990  	{region: 0x10a, script: 0x4f, flags: 0x0},
  1991  	{region: 0x12d, script: 0x4f, flags: 0x0},
  1992  	{region: 0x15c, script: 0x5, flags: 0x0},
  1993  	{region: 0x4a, script: 0x4f, flags: 0x0},
  1994  	{region: 0x5f, script: 0x4f, flags: 0x0},
  1995  	{region: 0x97, script: 0x1f, flags: 0x0},
  1996  	{region: 0x93, script: 0x4f, flags: 0x0},
  1997  	{region: 0x34, script: 0xe, flags: 0x0},
  1998  	{region: 0x99, script: 0xbf, flags: 0x0},
  1999  	{region: 0xe7, script: 0x4f, flags: 0x0},
  2000  	{region: 0x97, script: 0xc7, flags: 0x0},
  2001  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2002  	{region: 0xe5, script: 0x4f, flags: 0x0},
  2003  	{region: 0x97, script: 0x47, flags: 0x0},
  2004  	{region: 0x52, script: 0xc5, flags: 0x0},
  2005  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2006  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2007  	{region: 0x97, script: 0xca, flags: 0x0},
  2008  	{region: 0x110, script: 0x4f, flags: 0x0},
  2009  	{region: 0x12f, script: 0x4f, flags: 0x0},
  2010  	{region: 0x124, script: 0x4f, flags: 0x0},
  2011  	{region: 0x3c, script: 0x3, flags: 0x1},
  2012  	{region: 0x121, script: 0xcf, flags: 0x0},
  2013  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2014  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2015  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2016  	{region: 0x6e, script: 0x26, flags: 0x0},
  2017  	{region: 0x6c, script: 0x26, flags: 0x0},
  2018  	{region: 0xd4, script: 0x4f, flags: 0x0},
  2019  	{region: 0x125, script: 0x4f, flags: 0x0},
  2020  	{region: 0x123, script: 0x4f, flags: 0x0},
  2021  	{region: 0x31, script: 0x4f, flags: 0x0},
  2022  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2023  	{region: 0xe5, script: 0x4f, flags: 0x0},
  2024  	{region: 0x31, script: 0x4f, flags: 0x0},
  2025  	{region: 0xd2, script: 0x4f, flags: 0x0},
  2026  	{region: 0x15e, script: 0x4f, flags: 0x0},
  2027  	{region: 0x127, script: 0x4f, flags: 0x0},
  2028  	{region: 0xcc, script: 0x4f, flags: 0x0},
  2029  	{region: 0xe4, script: 0x4f, flags: 0x0},
  2030  	{region: 0x129, script: 0x4f, flags: 0x0},
  2031  	{region: 0x129, script: 0x4f, flags: 0x0},
  2032  	{region: 0x12c, script: 0x4f, flags: 0x0},
  2033  	{region: 0x15e, script: 0x4f, flags: 0x0},
  2034  	{region: 0x85, script: 0x2c, flags: 0x0},
  2035  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2036  	{region: 0xe5, script: 0x4f, flags: 0x0},
  2037  	{region: 0x42, script: 0xd0, flags: 0x0},
  2038  	{region: 0x104, script: 0x1d, flags: 0x0},
  2039  	{region: 0x12f, script: 0x4f, flags: 0x0},
  2040  	{region: 0x121, script: 0xcf, flags: 0x0},
  2041  	{region: 0x31, script: 0x4f, flags: 0x0},
  2042  	{region: 0xcc, script: 0x4f, flags: 0x0},
  2043  	{region: 0x12b, script: 0x4f, flags: 0x0},
  2044  	{region: 0x0, script: 0x0, flags: 0x0},
  2045  	{region: 0xd2, script: 0x4f, flags: 0x0},
  2046  	{region: 0xe3, script: 0x4f, flags: 0x0},
  2047  	{region: 0x104, script: 0x1d, flags: 0x0},
  2048  	{region: 0xb8, script: 0x4f, flags: 0x0},
  2049  	{region: 0x104, script: 0x1d, flags: 0x0},
  2050  	{region: 0x3f, script: 0x4, flags: 0x1},
  2051  	{region: 0x11a, script: 0xd2, flags: 0x0},
  2052  	{region: 0x12e, script: 0x1d, flags: 0x0},
  2053  	{region: 0x73, script: 0x4f, flags: 0x0},
  2054  	{region: 0x29, script: 0x4f, flags: 0x0},
  2055  	{region: 0x0, script: 0x0, flags: 0x0},
  2056  	{region: 0x43, script: 0x3, flags: 0x1},
  2057  	{region: 0x97, script: 0xe, flags: 0x0},
  2058  	{region: 0xe6, script: 0x5, flags: 0x0},
  2059  	{region: 0x46, script: 0x4, flags: 0x1},
  2060  	{region: 0xb2, script: 0xd3, flags: 0x0},
  2061  	{region: 0x15e, script: 0x4f, flags: 0x0},
  2062  	{region: 0x9c, script: 0x4f, flags: 0x0},
  2063  	{region: 0x104, script: 0x4f, flags: 0x0},
  2064  	{region: 0x13b, script: 0x4f, flags: 0x0},
  2065  	{region: 0x119, script: 0x4f, flags: 0x0},
  2066  	{region: 0x35, script: 0x4f, flags: 0x0},
  2067  	{region: 0x5f, script: 0x4f, flags: 0x0},
  2068  	{region: 0xcf, script: 0x4f, flags: 0x0},
  2069  	{region: 0x1, script: 0x4f, flags: 0x0},
  2070  	{region: 0x104, script: 0x4f, flags: 0x0},
  2071  	{region: 0x69, script: 0x4f, flags: 0x0},
  2072  	{region: 0x12d, script: 0x4f, flags: 0x0},
  2073  	{region: 0x35, script: 0x4f, flags: 0x0},
  2074  	{region: 0x4d, script: 0x4f, flags: 0x0},
  2075  	{region: 0x6e, script: 0x26, flags: 0x0},
  2076  	{region: 0xe5, script: 0x4f, flags: 0x0},
  2077  	{region: 0x2e, script: 0x4f, flags: 0x0},
  2078  	{region: 0x97, script: 0xca, flags: 0x0},
  2079  	{region: 0x97, script: 0x1f, flags: 0x0},
  2080  	{region: 0x13d, script: 0x4f, flags: 0x0},
  2081  	{region: 0xa6, script: 0x5, flags: 0x0},
  2082  	{region: 0x112, script: 0x4f, flags: 0x0},
  2083  	{region: 0x97, script: 0x1f, flags: 0x0},
  2084  	{region: 0x52, script: 0x32, flags: 0x0},
  2085  	{region: 0x40, script: 0x4f, flags: 0x0},
  2086  	{region: 0x129, script: 0x17, flags: 0x0},
  2087  	{region: 0x15e, script: 0x4f, flags: 0x0},
  2088  	{region: 0x129, script: 0x56, flags: 0x0},
  2089  	{region: 0x129, script: 0x57, flags: 0x0},
  2090  	{region: 0x7b, script: 0x28, flags: 0x0},
  2091  	{region: 0x52, script: 0x5a, flags: 0x0},
  2092  	{region: 0x109, script: 0x5e, flags: 0x0},
  2093  	{region: 0x106, script: 0x68, flags: 0x0},
  2094  	{region: 0x97, script: 0x1f, flags: 0x0},
  2095  	{region: 0x12f, script: 0x4f, flags: 0x0},
  2096  	{region: 0x9a, script: 0x7c, flags: 0x0},
  2097  	{region: 0x15b, script: 0xb4, flags: 0x0},
  2098  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2099  	{region: 0xcf, script: 0x4f, flags: 0x0},
  2100  	{region: 0x73, script: 0x4f, flags: 0x0},
  2101  	{region: 0x51, script: 0x4f, flags: 0x0},
  2102  	{region: 0x51, script: 0x4f, flags: 0x0},
  2103  	{region: 0x1, script: 0x35, flags: 0x0},
  2104  	{region: 0xd4, script: 0x4f, flags: 0x0},
  2105  	{region: 0x40, script: 0x4f, flags: 0x0},
  2106  	{region: 0xcd, script: 0x4f, flags: 0x0},
  2107  	{region: 0x52, script: 0x4f, flags: 0x0},
  2108  	{region: 0x109, script: 0x4f, flags: 0x0},
  2109  	{region: 0x0, script: 0x0, flags: 0x0},
  2110  	{region: 0xa6, script: 0x5, flags: 0x0},
  2111  	{region: 0xd7, script: 0x4f, flags: 0x0},
  2112  	{region: 0xb8, script: 0xcc, flags: 0x0},
  2113  	{region: 0x4a, script: 0x13, flags: 0x1},
  2114  	{region: 0xce, script: 0x4f, flags: 0x0},
  2115  	{region: 0x15e, script: 0x4f, flags: 0x0},
  2116  	{region: 0x0, script: 0x0, flags: 0x0},
  2117  	{region: 0x129, script: 0x4f, flags: 0x0},
  2118  }
  2119  
  2120  // likelyLangList holds lists info associated with likelyLang.
  2121  // Size: 372 bytes, 93 elements
  2122  var likelyLangList = [93]likelyScriptRegion{
  2123  	{region: 0x9a, script: 0x7, flags: 0x0},
  2124  	{region: 0x9f, script: 0x69, flags: 0x2},
  2125  	{region: 0x11a, script: 0x73, flags: 0x2},
  2126  	{region: 0x31, script: 0x4f, flags: 0x0},
  2127  	{region: 0x99, script: 0x5, flags: 0x4},
  2128  	{region: 0x9a, script: 0x5, flags: 0x4},
  2129  	{region: 0x104, script: 0x1d, flags: 0x4},
  2130  	{region: 0x9a, script: 0x5, flags: 0x2},
  2131  	{region: 0x97, script: 0xe, flags: 0x0},
  2132  	{region: 0x34, script: 0x15, flags: 0x2},
  2133  	{region: 0x104, script: 0x1d, flags: 0x0},
  2134  	{region: 0x37, script: 0x29, flags: 0x2},
  2135  	{region: 0x132, script: 0x4f, flags: 0x0},
  2136  	{region: 0x79, script: 0xb7, flags: 0x2},
  2137  	{region: 0x5c, script: 0x1c, flags: 0x0},
  2138  	{region: 0x85, script: 0x53, flags: 0x2},
  2139  	{region: 0xd4, script: 0x4f, flags: 0x0},
  2140  	{region: 0x51, script: 0x5, flags: 0x4},
  2141  	{region: 0x109, script: 0x5, flags: 0x4},
  2142  	{region: 0xac, script: 0x1d, flags: 0x0},
  2143  	{region: 0x23, script: 0x5, flags: 0x4},
  2144  	{region: 0x52, script: 0x5, flags: 0x4},
  2145  	{region: 0x9a, script: 0x5, flags: 0x4},
  2146  	{region: 0xc3, script: 0x5, flags: 0x4},
  2147  	{region: 0x52, script: 0x5, flags: 0x2},
  2148  	{region: 0x129, script: 0x4f, flags: 0x0},
  2149  	{region: 0xae, script: 0x5, flags: 0x4},
  2150  	{region: 0x99, script: 0x5, flags: 0x2},
  2151  	{region: 0xa3, script: 0x1d, flags: 0x0},
  2152  	{region: 0x52, script: 0x5, flags: 0x4},
  2153  	{region: 0x129, script: 0x4f, flags: 0x4},
  2154  	{region: 0x52, script: 0x5, flags: 0x2},
  2155  	{region: 0x129, script: 0x4f, flags: 0x2},
  2156  	{region: 0xd9, script: 0x1f, flags: 0x0},
  2157  	{region: 0x97, script: 0x51, flags: 0x2},
  2158  	{region: 0x81, script: 0x4f, flags: 0x0},
  2159  	{region: 0x82, script: 0x6b, flags: 0x4},
  2160  	{region: 0x82, script: 0x6b, flags: 0x2},
  2161  	{region: 0xc3, script: 0x1d, flags: 0x0},
  2162  	{region: 0x52, script: 0x62, flags: 0x4},
  2163  	{region: 0x52, script: 0x62, flags: 0x2},
  2164  	{region: 0xce, script: 0x4f, flags: 0x0},
  2165  	{region: 0x49, script: 0x5, flags: 0x4},
  2166  	{region: 0x93, script: 0x5, flags: 0x4},
  2167  	{region: 0x97, script: 0x2e, flags: 0x0},
  2168  	{region: 0xe6, script: 0x5, flags: 0x4},
  2169  	{region: 0xe6, script: 0x5, flags: 0x2},
  2170  	{region: 0x9a, script: 0x77, flags: 0x0},
  2171  	{region: 0x52, script: 0x78, flags: 0x2},
  2172  	{region: 0xb8, script: 0xcc, flags: 0x0},
  2173  	{region: 0xd7, script: 0x4f, flags: 0x4},
  2174  	{region: 0xe6, script: 0x5, flags: 0x0},
  2175  	{region: 0x97, script: 0x1f, flags: 0x2},
  2176  	{region: 0x97, script: 0x44, flags: 0x2},
  2177  	{region: 0x97, script: 0xba, flags: 0x2},
  2178  	{region: 0x103, script: 0x1d, flags: 0x0},
  2179  	{region: 0xbb, script: 0x4f, flags: 0x4},
  2180  	{region: 0x102, script: 0x4f, flags: 0x4},
  2181  	{region: 0x104, script: 0x4f, flags: 0x4},
  2182  	{region: 0x129, script: 0x4f, flags: 0x4},
  2183  	{region: 0x122, script: 0x1d, flags: 0x0},
  2184  	{region: 0xe6, script: 0x5, flags: 0x4},
  2185  	{region: 0xe6, script: 0x5, flags: 0x2},
  2186  	{region: 0x52, script: 0x5, flags: 0x0},
  2187  	{region: 0xac, script: 0x1d, flags: 0x4},
  2188  	{region: 0xc3, script: 0x1d, flags: 0x4},
  2189  	{region: 0xac, script: 0x1d, flags: 0x2},
  2190  	{region: 0x97, script: 0xe, flags: 0x0},
  2191  	{region: 0xd9, script: 0x1f, flags: 0x4},
  2192  	{region: 0xd9, script: 0x1f, flags: 0x2},
  2193  	{region: 0x134, script: 0x4f, flags: 0x0},
  2194  	{region: 0x23, script: 0x5, flags: 0x4},
  2195  	{region: 0x52, script: 0x1d, flags: 0x4},
  2196  	{region: 0x23, script: 0x5, flags: 0x2},
  2197  	{region: 0x52, script: 0x32, flags: 0x0},
  2198  	{region: 0x2e, script: 0x33, flags: 0x4},
  2199  	{region: 0x3d, script: 0x33, flags: 0x4},
  2200  	{region: 0x79, script: 0x33, flags: 0x4},
  2201  	{region: 0x7c, script: 0x33, flags: 0x4},
  2202  	{region: 0x8b, script: 0x33, flags: 0x4},
  2203  	{region: 0x93, script: 0x33, flags: 0x4},
  2204  	{region: 0xc4, script: 0x33, flags: 0x4},
  2205  	{region: 0xce, script: 0x33, flags: 0x4},
  2206  	{region: 0xe0, script: 0x33, flags: 0x4},
  2207  	{region: 0xe3, script: 0x33, flags: 0x4},
  2208  	{region: 0xe5, script: 0x33, flags: 0x4},
  2209  	{region: 0x114, script: 0x33, flags: 0x4},
  2210  	{region: 0x121, script: 0x33, flags: 0x4},
  2211  	{region: 0x12c, script: 0x33, flags: 0x4},
  2212  	{region: 0x132, script: 0x33, flags: 0x4},
  2213  	{region: 0x13b, script: 0x33, flags: 0x4},
  2214  	{region: 0x12c, script: 0x10, flags: 0x2},
  2215  	{region: 0x12c, script: 0x33, flags: 0x2},
  2216  }
  2217  
  2218  type likelyLangScript struct {
  2219  	lang   uint16
  2220  	script uint8
  2221  	flags  uint8
  2222  }
  2223  
  2224  // likelyRegion is a lookup table, indexed by regionID, for the most likely
  2225  // languages and scripts given incomplete information. If more entries exist
  2226  // for a given regionID, lang and script are the index and size respectively
  2227  // of the list in likelyRegionList.
  2228  // TODO: exclude containers and user-definable regions from the list.
  2229  // Size: 1420 bytes, 355 elements
  2230  var likelyRegion = [355]likelyLangScript{
  2231  	{lang: 0x0, script: 0x0, flags: 0x0},
  2232  	{lang: 0x0, script: 0x0, flags: 0x0},
  2233  	{lang: 0x0, script: 0x0, flags: 0x0},
  2234  	{lang: 0x0, script: 0x0, flags: 0x0},
  2235  	{lang: 0x0, script: 0x0, flags: 0x0},
  2236  	{lang: 0x0, script: 0x0, flags: 0x0},
  2237  	{lang: 0x0, script: 0x0, flags: 0x0},
  2238  	{lang: 0x0, script: 0x0, flags: 0x0},
  2239  	{lang: 0x0, script: 0x0, flags: 0x0},
  2240  	{lang: 0x0, script: 0x0, flags: 0x0},
  2241  	{lang: 0x0, script: 0x0, flags: 0x0},
  2242  	{lang: 0x0, script: 0x0, flags: 0x0},
  2243  	{lang: 0x0, script: 0x0, flags: 0x0},
  2244  	{lang: 0x0, script: 0x0, flags: 0x0},
  2245  	{lang: 0x0, script: 0x0, flags: 0x0},
  2246  	{lang: 0x0, script: 0x0, flags: 0x0},
  2247  	{lang: 0x0, script: 0x0, flags: 0x0},
  2248  	{lang: 0x0, script: 0x0, flags: 0x0},
  2249  	{lang: 0x0, script: 0x0, flags: 0x0},
  2250  	{lang: 0x0, script: 0x0, flags: 0x0},
  2251  	{lang: 0x0, script: 0x0, flags: 0x0},
  2252  	{lang: 0x0, script: 0x0, flags: 0x0},
  2253  	{lang: 0x0, script: 0x0, flags: 0x0},
  2254  	{lang: 0x0, script: 0x0, flags: 0x0},
  2255  	{lang: 0x0, script: 0x0, flags: 0x0},
  2256  	{lang: 0x0, script: 0x0, flags: 0x0},
  2257  	{lang: 0x0, script: 0x0, flags: 0x0},
  2258  	{lang: 0x0, script: 0x0, flags: 0x0},
  2259  	{lang: 0x0, script: 0x0, flags: 0x0},
  2260  	{lang: 0x0, script: 0x0, flags: 0x0},
  2261  	{lang: 0x0, script: 0x0, flags: 0x0},
  2262  	{lang: 0x0, script: 0x0, flags: 0x0},
  2263  	{lang: 0x0, script: 0x0, flags: 0x0},
  2264  	{lang: 0x61, script: 0x4f, flags: 0x0},
  2265  	{lang: 0x15, script: 0x5, flags: 0x0},
  2266  	{lang: 0x0, script: 0x2, flags: 0x1},
  2267  	{lang: 0x0, script: 0x0, flags: 0x0},
  2268  	{lang: 0x0, script: 0x0, flags: 0x0},
  2269  	{lang: 0x2, script: 0x2, flags: 0x1},
  2270  	{lang: 0x4, script: 0x2, flags: 0x1},
  2271  	{lang: 0x0, script: 0x0, flags: 0x0},
  2272  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2273  	{lang: 0x0, script: 0x4f, flags: 0x0},
  2274  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2275  	{lang: 0x22a, script: 0x4f, flags: 0x0},
  2276  	{lang: 0x85, script: 0x4f, flags: 0x0},
  2277  	{lang: 0x0, script: 0x0, flags: 0x0},
  2278  	{lang: 0x1b9, script: 0x4f, flags: 0x0},
  2279  	{lang: 0x241, script: 0x4f, flags: 0x0},
  2280  	{lang: 0x24, script: 0x4f, flags: 0x0},
  2281  	{lang: 0x6, script: 0x2, flags: 0x1},
  2282  	{lang: 0x0, script: 0x0, flags: 0x0},
  2283  	{lang: 0x4b, script: 0xe, flags: 0x0},
  2284  	{lang: 0x1b9, script: 0x4f, flags: 0x0},
  2285  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2286  	{lang: 0x38, script: 0x1d, flags: 0x0},
  2287  	{lang: 0x15, script: 0x5, flags: 0x0},
  2288  	{lang: 0x1fc, script: 0x4f, flags: 0x0},
  2289  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2290  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2291  	{lang: 0x0, script: 0x0, flags: 0x0},
  2292  	{lang: 0x197, script: 0x4f, flags: 0x0},
  2293  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2294  	{lang: 0x1d6, script: 0x4f, flags: 0x0},
  2295  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2296  	{lang: 0x0, script: 0x0, flags: 0x0},
  2297  	{lang: 0x8, script: 0x2, flags: 0x1},
  2298  	{lang: 0x0, script: 0x0, flags: 0x0},
  2299  	{lang: 0x0, script: 0x4f, flags: 0x0},
  2300  	{lang: 0x0, script: 0x0, flags: 0x0},
  2301  	{lang: 0x2f, script: 0x1d, flags: 0x0},
  2302  	{lang: 0x0, script: 0x0, flags: 0x0},
  2303  	{lang: 0x2b2, script: 0x35, flags: 0x2},
  2304  	{lang: 0x197, script: 0x5, flags: 0x2},
  2305  	{lang: 0x242, script: 0x4f, flags: 0x0},
  2306  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2307  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2308  	{lang: 0x85, script: 0x4f, flags: 0x0},
  2309  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2310  	{lang: 0x0, script: 0x0, flags: 0x0},
  2311  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2312  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2313  	{lang: 0xa, script: 0x4, flags: 0x1},
  2314  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2315  	{lang: 0x0, script: 0x4f, flags: 0x0},
  2316  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2317  	{lang: 0x0, script: 0x0, flags: 0x0},
  2318  	{lang: 0x0, script: 0x0, flags: 0x0},
  2319  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2320  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2321  	{lang: 0x1d6, script: 0x4f, flags: 0x0},
  2322  	{lang: 0x0, script: 0x0, flags: 0x0},
  2323  	{lang: 0xe, script: 0x2, flags: 0x1},
  2324  	{lang: 0x79, script: 0x4f, flags: 0x0},
  2325  	{lang: 0x0, script: 0x0, flags: 0x0},
  2326  	{lang: 0x85, script: 0x4f, flags: 0x0},
  2327  	{lang: 0x0, script: 0x0, flags: 0x0},
  2328  	{lang: 0x1, script: 0x4f, flags: 0x0},
  2329  	{lang: 0x80, script: 0x4f, flags: 0x0},
  2330  	{lang: 0x0, script: 0x0, flags: 0x0},
  2331  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2332  	{lang: 0x0, script: 0x0, flags: 0x0},
  2333  	{lang: 0x10, script: 0x2, flags: 0x1},
  2334  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2335  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2336  	{lang: 0x9e, script: 0x4f, flags: 0x0},
  2337  	{lang: 0x15, script: 0x5, flags: 0x0},
  2338  	{lang: 0x15, script: 0x5, flags: 0x0},
  2339  	{lang: 0x25b, script: 0x26, flags: 0x0},
  2340  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2341  	{lang: 0x12, script: 0x2, flags: 0x1},
  2342  	{lang: 0x0, script: 0x0, flags: 0x0},
  2343  	{lang: 0xa7, script: 0x4f, flags: 0x0},
  2344  	{lang: 0xe0, script: 0x1f, flags: 0x2},
  2345  	{lang: 0x0, script: 0x0, flags: 0x0},
  2346  	{lang: 0x0, script: 0x0, flags: 0x0},
  2347  	{lang: 0xac, script: 0x4f, flags: 0x0},
  2348  	{lang: 0x0, script: 0x0, flags: 0x0},
  2349  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2350  	{lang: 0x0, script: 0x0, flags: 0x0},
  2351  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2352  	{lang: 0x14, script: 0x2, flags: 0x1},
  2353  	{lang: 0x0, script: 0x0, flags: 0x0},
  2354  	{lang: 0x16, script: 0x3, flags: 0x1},
  2355  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2356  	{lang: 0x0, script: 0x0, flags: 0x0},
  2357  	{lang: 0xd, script: 0x4f, flags: 0x0},
  2358  	{lang: 0x0, script: 0x0, flags: 0x0},
  2359  	{lang: 0x12e, script: 0x4f, flags: 0x0},
  2360  	{lang: 0x0, script: 0x0, flags: 0x0},
  2361  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2362  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2363  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2364  	{lang: 0x19, script: 0x2, flags: 0x1},
  2365  	{lang: 0x0, script: 0x4f, flags: 0x0},
  2366  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2367  	{lang: 0x0, script: 0x0, flags: 0x0},
  2368  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2369  	{lang: 0x0, script: 0x0, flags: 0x0},
  2370  	{lang: 0x2bc, script: 0x33, flags: 0x0},
  2371  	{lang: 0x0, script: 0x4f, flags: 0x0},
  2372  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2373  	{lang: 0xec, script: 0x4f, flags: 0x0},
  2374  	{lang: 0xef, script: 0x4f, flags: 0x0},
  2375  	{lang: 0xf0, script: 0x4f, flags: 0x0},
  2376  	{lang: 0x0, script: 0x0, flags: 0x0},
  2377  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2378  	{lang: 0x1b, script: 0x2, flags: 0x1},
  2379  	{lang: 0x0, script: 0x0, flags: 0x0},
  2380  	{lang: 0xde, script: 0x35, flags: 0x0},
  2381  	{lang: 0x0, script: 0x0, flags: 0x0},
  2382  	{lang: 0x1d, script: 0x3, flags: 0x1},
  2383  	{lang: 0x0, script: 0x0, flags: 0x0},
  2384  	{lang: 0x15, script: 0x5, flags: 0x0},
  2385  	{lang: 0x20, script: 0x2, flags: 0x1},
  2386  	{lang: 0x100, script: 0x4f, flags: 0x0},
  2387  	{lang: 0x101, script: 0x4f, flags: 0x0},
  2388  	{lang: 0x0, script: 0x0, flags: 0x0},
  2389  	{lang: 0x0, script: 0x0, flags: 0x0},
  2390  	{lang: 0x15, script: 0x5, flags: 0x0},
  2391  	{lang: 0x105, script: 0x3e, flags: 0x0},
  2392  	{lang: 0x0, script: 0x0, flags: 0x0},
  2393  	{lang: 0x242, script: 0x4f, flags: 0x0},
  2394  	{lang: 0x14a, script: 0x1d, flags: 0x0},
  2395  	{lang: 0x22, script: 0x3, flags: 0x1},
  2396  	{lang: 0x0, script: 0x0, flags: 0x0},
  2397  	{lang: 0x25, script: 0x2, flags: 0x1},
  2398  	{lang: 0x0, script: 0x0, flags: 0x0},
  2399  	{lang: 0x133, script: 0x48, flags: 0x0},
  2400  	{lang: 0x133, script: 0x48, flags: 0x0},
  2401  	{lang: 0x15, script: 0x5, flags: 0x0},
  2402  	{lang: 0x0, script: 0x0, flags: 0x0},
  2403  	{lang: 0x202, script: 0x1d, flags: 0x0},
  2404  	{lang: 0x27, script: 0x2, flags: 0x1},
  2405  	{lang: 0x15, script: 0x5, flags: 0x0},
  2406  	{lang: 0x0, script: 0x0, flags: 0x0},
  2407  	{lang: 0x85, script: 0x4f, flags: 0x0},
  2408  	{lang: 0x223, script: 0xbb, flags: 0x0},
  2409  	{lang: 0x0, script: 0x0, flags: 0x0},
  2410  	{lang: 0x23c, script: 0x4f, flags: 0x0},
  2411  	{lang: 0x166, script: 0x4f, flags: 0x0},
  2412  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2413  	{lang: 0x16d, script: 0x4f, flags: 0x0},
  2414  	{lang: 0x15, script: 0x5, flags: 0x0},
  2415  	{lang: 0x29, script: 0x2, flags: 0x1},
  2416  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2417  	{lang: 0x2b, script: 0x2, flags: 0x1},
  2418  	{lang: 0x235, script: 0x4f, flags: 0x0},
  2419  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2420  	{lang: 0x180, script: 0x4f, flags: 0x0},
  2421  	{lang: 0x0, script: 0x0, flags: 0x0},
  2422  	{lang: 0x0, script: 0x0, flags: 0x0},
  2423  	{lang: 0x2d, script: 0x2, flags: 0x1},
  2424  	{lang: 0x49, script: 0x4f, flags: 0x0},
  2425  	{lang: 0x2f, script: 0x2, flags: 0x1},
  2426  	{lang: 0x31, script: 0x2, flags: 0x1},
  2427  	{lang: 0x33, script: 0x2, flags: 0x1},
  2428  	{lang: 0x0, script: 0x0, flags: 0x0},
  2429  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2430  	{lang: 0x35, script: 0x2, flags: 0x1},
  2431  	{lang: 0x0, script: 0x0, flags: 0x0},
  2432  	{lang: 0x198, script: 0x4f, flags: 0x0},
  2433  	{lang: 0x37, script: 0x3, flags: 0x1},
  2434  	{lang: 0x8f, script: 0xce, flags: 0x0},
  2435  	{lang: 0x0, script: 0x0, flags: 0x0},
  2436  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2437  	{lang: 0x197, script: 0x4f, flags: 0x0},
  2438  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2439  	{lang: 0xa, script: 0x4f, flags: 0x0},
  2440  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2441  	{lang: 0xda, script: 0x4f, flags: 0x0},
  2442  	{lang: 0x0, script: 0x0, flags: 0x0},
  2443  	{lang: 0xda, script: 0x5, flags: 0x2},
  2444  	{lang: 0x0, script: 0x0, flags: 0x0},
  2445  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2446  	{lang: 0x1b9, script: 0x4f, flags: 0x0},
  2447  	{lang: 0x1ab, script: 0x4f, flags: 0x0},
  2448  	{lang: 0x1b0, script: 0x1f, flags: 0x0},
  2449  	{lang: 0x0, script: 0x0, flags: 0x0},
  2450  	{lang: 0x0, script: 0x0, flags: 0x0},
  2451  	{lang: 0x0, script: 0x0, flags: 0x0},
  2452  	{lang: 0x0, script: 0x0, flags: 0x0},
  2453  	{lang: 0x0, script: 0x0, flags: 0x0},
  2454  	{lang: 0x15, script: 0x5, flags: 0x0},
  2455  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2456  	{lang: 0x0, script: 0x0, flags: 0x0},
  2457  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2458  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2459  	{lang: 0x268, script: 0x4f, flags: 0x0},
  2460  	{lang: 0xa9, script: 0x4f, flags: 0x0},
  2461  	{lang: 0x3a, script: 0x3, flags: 0x1},
  2462  	{lang: 0x3d, script: 0x2, flags: 0x1},
  2463  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2464  	{lang: 0x0, script: 0x0, flags: 0x0},
  2465  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2466  	{lang: 0x15, script: 0x5, flags: 0x0},
  2467  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2468  	{lang: 0x0, script: 0x0, flags: 0x0},
  2469  	{lang: 0x1d7, script: 0x4f, flags: 0x0},
  2470  	{lang: 0xc9, script: 0x4f, flags: 0x0},
  2471  	{lang: 0x0, script: 0x0, flags: 0x0},
  2472  	{lang: 0x15, script: 0x5, flags: 0x0},
  2473  	{lang: 0x0, script: 0x0, flags: 0x0},
  2474  	{lang: 0x0, script: 0x0, flags: 0x0},
  2475  	{lang: 0x0, script: 0x0, flags: 0x0},
  2476  	{lang: 0x0, script: 0x0, flags: 0x0},
  2477  	{lang: 0x0, script: 0x0, flags: 0x0},
  2478  	{lang: 0x0, script: 0x0, flags: 0x0},
  2479  	{lang: 0x0, script: 0x0, flags: 0x0},
  2480  	{lang: 0x0, script: 0x0, flags: 0x0},
  2481  	{lang: 0x0, script: 0x0, flags: 0x0},
  2482  	{lang: 0x0, script: 0x0, flags: 0x0},
  2483  	{lang: 0x0, script: 0x0, flags: 0x0},
  2484  	{lang: 0x0, script: 0x0, flags: 0x0},
  2485  	{lang: 0x0, script: 0x0, flags: 0x0},
  2486  	{lang: 0x0, script: 0x0, flags: 0x0},
  2487  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2488  	{lang: 0x0, script: 0x0, flags: 0x0},
  2489  	{lang: 0x3f, script: 0x2, flags: 0x1},
  2490  	{lang: 0x235, script: 0x1d, flags: 0x0},
  2491  	{lang: 0x41, script: 0x2, flags: 0x1},
  2492  	{lang: 0x205, script: 0x4f, flags: 0x0},
  2493  	{lang: 0x15, script: 0x5, flags: 0x0},
  2494  	{lang: 0x0, script: 0x0, flags: 0x0},
  2495  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2496  	{lang: 0x15, script: 0x5, flags: 0x0},
  2497  	{lang: 0x43, script: 0x2, flags: 0x1},
  2498  	{lang: 0x0, script: 0x0, flags: 0x0},
  2499  	{lang: 0x0, script: 0x0, flags: 0x0},
  2500  	{lang: 0x227, script: 0x4f, flags: 0x0},
  2501  	{lang: 0x1ab, script: 0x4f, flags: 0x0},
  2502  	{lang: 0x45, script: 0x2, flags: 0x1},
  2503  	{lang: 0x0, script: 0x0, flags: 0x0},
  2504  	{lang: 0x101, script: 0x4f, flags: 0x0},
  2505  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2506  	{lang: 0x232, script: 0x4f, flags: 0x0},
  2507  	{lang: 0x1b9, script: 0x4f, flags: 0x0},
  2508  	{lang: 0x0, script: 0x0, flags: 0x0},
  2509  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2510  	{lang: 0x0, script: 0x0, flags: 0x0},
  2511  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2512  	{lang: 0x0, script: 0x0, flags: 0x0},
  2513  	{lang: 0x47, script: 0x2, flags: 0x1},
  2514  	{lang: 0x0, script: 0x0, flags: 0x0},
  2515  	{lang: 0x0, script: 0x0, flags: 0x0},
  2516  	{lang: 0x0, script: 0x0, flags: 0x0},
  2517  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2518  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2519  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2520  	{lang: 0x49, script: 0x3, flags: 0x1},
  2521  	{lang: 0x4c, script: 0x2, flags: 0x1},
  2522  	{lang: 0x25f, script: 0x4f, flags: 0x0},
  2523  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2524  	{lang: 0x25e, script: 0x4f, flags: 0x0},
  2525  	{lang: 0x4e, script: 0x2, flags: 0x1},
  2526  	{lang: 0x266, script: 0x4f, flags: 0x0},
  2527  	{lang: 0x0, script: 0x0, flags: 0x0},
  2528  	{lang: 0x50, script: 0x4, flags: 0x1},
  2529  	{lang: 0x0, script: 0x0, flags: 0x0},
  2530  	{lang: 0x276, script: 0x4f, flags: 0x0},
  2531  	{lang: 0x54, script: 0x2, flags: 0x1},
  2532  	{lang: 0x242, script: 0x4f, flags: 0x0},
  2533  	{lang: 0x56, script: 0x3, flags: 0x1},
  2534  	{lang: 0x242, script: 0x4f, flags: 0x0},
  2535  	{lang: 0x0, script: 0x0, flags: 0x0},
  2536  	{lang: 0x0, script: 0x0, flags: 0x0},
  2537  	{lang: 0x2b2, script: 0x35, flags: 0x2},
  2538  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2539  	{lang: 0x286, script: 0x4f, flags: 0x0},
  2540  	{lang: 0x101, script: 0x4f, flags: 0x0},
  2541  	{lang: 0x0, script: 0x0, flags: 0x0},
  2542  	{lang: 0x0, script: 0x0, flags: 0x0},
  2543  	{lang: 0x9c, script: 0x4f, flags: 0x0},
  2544  	{lang: 0x0, script: 0x0, flags: 0x0},
  2545  	{lang: 0x0, script: 0x0, flags: 0x0},
  2546  	{lang: 0x28b, script: 0x4f, flags: 0x0},
  2547  	{lang: 0x41, script: 0x4f, flags: 0x0},
  2548  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2549  	{lang: 0x0, script: 0x0, flags: 0x0},
  2550  	{lang: 0x22a, script: 0x4f, flags: 0x0},
  2551  	{lang: 0x0, script: 0x0, flags: 0x0},
  2552  	{lang: 0x0, script: 0x0, flags: 0x0},
  2553  	{lang: 0x0, script: 0x0, flags: 0x0},
  2554  	{lang: 0x0, script: 0x0, flags: 0x0},
  2555  	{lang: 0x0, script: 0x0, flags: 0x0},
  2556  	{lang: 0x0, script: 0x0, flags: 0x0},
  2557  	{lang: 0x0, script: 0x0, flags: 0x0},
  2558  	{lang: 0x0, script: 0x0, flags: 0x0},
  2559  	{lang: 0x0, script: 0x0, flags: 0x0},
  2560  	{lang: 0x0, script: 0x0, flags: 0x0},
  2561  	{lang: 0x59, script: 0x2, flags: 0x1},
  2562  	{lang: 0x0, script: 0x0, flags: 0x0},
  2563  	{lang: 0x0, script: 0x0, flags: 0x0},
  2564  	{lang: 0x0, script: 0x0, flags: 0x0},
  2565  	{lang: 0x0, script: 0x0, flags: 0x0},
  2566  	{lang: 0x0, script: 0x0, flags: 0x0},
  2567  	{lang: 0x0, script: 0x0, flags: 0x0},
  2568  	{lang: 0x0, script: 0x0, flags: 0x0},
  2569  	{lang: 0x0, script: 0x0, flags: 0x0},
  2570  	{lang: 0x0, script: 0x0, flags: 0x0},
  2571  	{lang: 0x0, script: 0x0, flags: 0x0},
  2572  	{lang: 0x0, script: 0x0, flags: 0x0},
  2573  	{lang: 0x0, script: 0x0, flags: 0x0},
  2574  	{lang: 0x0, script: 0x0, flags: 0x0},
  2575  	{lang: 0x0, script: 0x0, flags: 0x0},
  2576  	{lang: 0x0, script: 0x0, flags: 0x0},
  2577  	{lang: 0x0, script: 0x0, flags: 0x0},
  2578  	{lang: 0x15, script: 0x5, flags: 0x0},
  2579  	{lang: 0x5b, script: 0x2, flags: 0x1},
  2580  	{lang: 0x0, script: 0x0, flags: 0x0},
  2581  	{lang: 0x0, script: 0x0, flags: 0x0},
  2582  	{lang: 0x0, script: 0x0, flags: 0x0},
  2583  	{lang: 0x0, script: 0x0, flags: 0x0},
  2584  	{lang: 0x230, script: 0x4f, flags: 0x0},
  2585  	{lang: 0x0, script: 0x0, flags: 0x0},
  2586  }
  2587  
  2588  // likelyRegionList holds lists info associated with likelyRegion.
  2589  // Size: 372 bytes, 93 elements
  2590  var likelyRegionList = [93]likelyLangScript{
  2591  	{lang: 0xa3, script: 0x5, flags: 0x0},
  2592  	{lang: 0x25e, script: 0x4f, flags: 0x0},
  2593  	{lang: 0x234, script: 0x4f, flags: 0x0},
  2594  	{lang: 0x189, script: 0x1d, flags: 0x0},
  2595  	{lang: 0xf1, script: 0x8, flags: 0x0},
  2596  	{lang: 0x142, script: 0x4f, flags: 0x0},
  2597  	{lang: 0x54, script: 0x4f, flags: 0x0},
  2598  	{lang: 0x235, script: 0x1d, flags: 0x0},
  2599  	{lang: 0x92, script: 0xd0, flags: 0x0},
  2600  	{lang: 0x1b0, script: 0x1f, flags: 0x0},
  2601  	{lang: 0x2bc, script: 0x32, flags: 0x0},
  2602  	{lang: 0x27d, script: 0x5, flags: 0x0},
  2603  	{lang: 0x2b6, script: 0x4f, flags: 0x0},
  2604  	{lang: 0x154, script: 0xcf, flags: 0x0},
  2605  	{lang: 0x99, script: 0x2c, flags: 0x0},
  2606  	{lang: 0x269, script: 0x4f, flags: 0x0},
  2607  	{lang: 0x15, script: 0x5, flags: 0x0},
  2608  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2609  	{lang: 0x11, script: 0x26, flags: 0x0},
  2610  	{lang: 0x9a, script: 0x4f, flags: 0x0},
  2611  	{lang: 0x13e, script: 0x5, flags: 0x2},
  2612  	{lang: 0x2b2, script: 0x35, flags: 0x2},
  2613  	{lang: 0x10e, script: 0x28, flags: 0x0},
  2614  	{lang: 0x2, script: 0x1d, flags: 0x0},
  2615  	{lang: 0x142, script: 0x4f, flags: 0x0},
  2616  	{lang: 0x99, script: 0x2c, flags: 0x0},
  2617  	{lang: 0x189, script: 0x1d, flags: 0x0},
  2618  	{lang: 0xf6, script: 0x4f, flags: 0x0},
  2619  	{lang: 0x197, script: 0x5, flags: 0x0},
  2620  	{lang: 0xdf, script: 0x1f, flags: 0x0},
  2621  	{lang: 0x285, script: 0x5, flags: 0x0},
  2622  	{lang: 0x126, script: 0x67, flags: 0x0},
  2623  	{lang: 0xa3, script: 0x5, flags: 0x0},
  2624  	{lang: 0x25e, script: 0x4f, flags: 0x0},
  2625  	{lang: 0x130, script: 0x43, flags: 0x0},
  2626  	{lang: 0x6d, script: 0x5, flags: 0x0},
  2627  	{lang: 0x119, script: 0xcf, flags: 0x0},
  2628  	{lang: 0x15, script: 0x5, flags: 0x0},
  2629  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2630  	{lang: 0x162, script: 0x4c, flags: 0x0},
  2631  	{lang: 0x119, script: 0xcf, flags: 0x0},
  2632  	{lang: 0x15, script: 0x5, flags: 0x0},
  2633  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2634  	{lang: 0x1fe, script: 0x4f, flags: 0x0},
  2635  	{lang: 0x27f, script: 0x1d, flags: 0x0},
  2636  	{lang: 0x189, script: 0x1d, flags: 0x0},
  2637  	{lang: 0x234, script: 0x4f, flags: 0x0},
  2638  	{lang: 0x1a2, script: 0x67, flags: 0x0},
  2639  	{lang: 0x111, script: 0x4f, flags: 0x0},
  2640  	{lang: 0x18c, script: 0x1d, flags: 0x0},
  2641  	{lang: 0x12c, script: 0x5, flags: 0x0},
  2642  	{lang: 0x2bc, script: 0x33, flags: 0x0},
  2643  	{lang: 0x1ea, script: 0x4f, flags: 0x0},
  2644  	{lang: 0x15, script: 0x5, flags: 0x0},
  2645  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2646  	{lang: 0x17f, script: 0x4f, flags: 0x0},
  2647  	{lang: 0x285, script: 0x5, flags: 0x0},
  2648  	{lang: 0x40, script: 0x1f, flags: 0x0},
  2649  	{lang: 0x285, script: 0x5, flags: 0x0},
  2650  	{lang: 0x285, script: 0x5, flags: 0x0},
  2651  	{lang: 0x58, script: 0x1f, flags: 0x0},
  2652  	{lang: 0x1e2, script: 0x4f, flags: 0x0},
  2653  	{lang: 0x2f, script: 0x1d, flags: 0x0},
  2654  	{lang: 0x1fe, script: 0x4f, flags: 0x0},
  2655  	{lang: 0x38, script: 0x1d, flags: 0x0},
  2656  	{lang: 0x202, script: 0x1d, flags: 0x0},
  2657  	{lang: 0x13c, script: 0x4f, flags: 0x0},
  2658  	{lang: 0x241, script: 0x4f, flags: 0x0},
  2659  	{lang: 0x2b2, script: 0x35, flags: 0x0},
  2660  	{lang: 0x225, script: 0x4f, flags: 0x0},
  2661  	{lang: 0x27f, script: 0x1d, flags: 0x0},
  2662  	{lang: 0x15, script: 0x5, flags: 0x0},
  2663  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2664  	{lang: 0x257, script: 0xcf, flags: 0x0},
  2665  	{lang: 0x17e, script: 0x5, flags: 0x0},
  2666  	{lang: 0x18e, script: 0x67, flags: 0x0},
  2667  	{lang: 0x256, script: 0x1d, flags: 0x0},
  2668  	{lang: 0xa3, script: 0x5, flags: 0x0},
  2669  	{lang: 0x15, script: 0x5, flags: 0x0},
  2670  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2671  	{lang: 0x269, script: 0x4f, flags: 0x0},
  2672  	{lang: 0x24, script: 0x5, flags: 0x0},
  2673  	{lang: 0x115, script: 0x1d, flags: 0x0},
  2674  	{lang: 0x3b, script: 0x2c, flags: 0x0},
  2675  	{lang: 0x2bc, script: 0x33, flags: 0x0},
  2676  	{lang: 0x26b, script: 0x4f, flags: 0x0},
  2677  	{lang: 0x27f, script: 0x1d, flags: 0x0},
  2678  	{lang: 0x2b2, script: 0x35, flags: 0x0},
  2679  	{lang: 0x1e2, script: 0x4f, flags: 0x0},
  2680  	{lang: 0x234, script: 0x4f, flags: 0x0},
  2681  	{lang: 0x235, script: 0x1d, flags: 0x0},
  2682  	{lang: 0xae, script: 0x4f, flags: 0x0},
  2683  	{lang: 0x243, script: 0x5, flags: 0x0},
  2684  }
  2685  
  2686  type likelyTag struct {
  2687  	lang   uint16
  2688  	region uint16
  2689  	script uint8
  2690  }
  2691  
  2692  // Size: 192 bytes, 32 elements
  2693  var likelyRegionGroup = [32]likelyTag{
  2694  	{lang: 0x0, region: 0x0, script: 0x0},
  2695  	{lang: 0x9a, region: 0xd4, script: 0x4f},
  2696  	{lang: 0x9a, region: 0x132, script: 0x4f},
  2697  	{lang: 0x1ea, region: 0x40, script: 0x4f},
  2698  	{lang: 0x9a, region: 0x2e, script: 0x4f},
  2699  	{lang: 0x9a, region: 0xd4, script: 0x4f},
  2700  	{lang: 0x9c, region: 0xcd, script: 0x4f},
  2701  	{lang: 0x242, region: 0x12d, script: 0x4f},
  2702  	{lang: 0x15, region: 0x6a, script: 0x5},
  2703  	{lang: 0x242, region: 0x4a, script: 0x4f},
  2704  	{lang: 0x9a, region: 0x15e, script: 0x4f},
  2705  	{lang: 0x9a, region: 0x132, script: 0x4f},
  2706  	{lang: 0x9a, region: 0x132, script: 0x4f},
  2707  	{lang: 0x9c, region: 0x58, script: 0x4f},
  2708  	{lang: 0x2bc, region: 0x52, script: 0x32},
  2709  	{lang: 0xdf, region: 0x97, script: 0x1f},
  2710  	{lang: 0xf6, region: 0x93, script: 0x4f},
  2711  	{lang: 0x101, region: 0x9c, script: 0x4f},
  2712  	{lang: 0x9a, region: 0x2e, script: 0x4f},
  2713  	{lang: 0x9a, region: 0xe4, script: 0x4f},
  2714  	{lang: 0x9a, region: 0x88, script: 0x4f},
  2715  	{lang: 0x22a, region: 0x13f, script: 0x4f},
  2716  	{lang: 0x2bc, region: 0x52, script: 0x32},
  2717  	{lang: 0x286, region: 0x134, script: 0x4f},
  2718  	{lang: 0x15, region: 0x106, script: 0x5},
  2719  	{lang: 0x202, region: 0x104, script: 0x1d},
  2720  	{lang: 0x202, region: 0x104, script: 0x1d},
  2721  	{lang: 0x9a, region: 0x79, script: 0x4f},
  2722  	{lang: 0x85, region: 0x5f, script: 0x4f},
  2723  	{lang: 0x9c, region: 0x1e, script: 0x4f},
  2724  	{lang: 0x9a, region: 0x98, script: 0x4f},
  2725  	{lang: 0x9a, region: 0x79, script: 0x4f},
  2726  }
  2727  
  2728  type mutualIntelligibility struct {
  2729  	want   uint16
  2730  	have   uint16
  2731  	conf   uint8
  2732  	oneway bool
  2733  }
  2734  
  2735  type scriptIntelligibility struct {
  2736  	lang uint16
  2737  	want uint8
  2738  	have uint8
  2739  	conf uint8
  2740  }
  2741  
  2742  // matchLang holds pairs of langIDs of base languages that are typically
  2743  // mutually intelligible. Each pair is associated with a confidence and
  2744  // whether the intelligibility goes one or both ways.
  2745  // Size: 708 bytes, 118 elements
  2746  var matchLang = [118]mutualIntelligibility{
  2747  	{want: 0x1bd, have: 0x1ab, conf: 0x2, oneway: false},
  2748  	{want: 0x220, have: 0x235, conf: 0x2, oneway: false},
  2749  	{want: 0x23b, have: 0x1, conf: 0x2, oneway: false},
  2750  	{want: 0xd1, have: 0x85, conf: 0x2, oneway: true},
  2751  	{want: 0x151, have: 0x85, conf: 0x2, oneway: true},
  2752  	{want: 0x220, have: 0xec, conf: 0x2, oneway: false},
  2753  	{want: 0xec, have: 0x54, conf: 0x2, oneway: false},
  2754  	{want: 0x220, have: 0x54, conf: 0x2, oneway: false},
  2755  	{want: 0x235, have: 0x54, conf: 0x2, oneway: false},
  2756  	{want: 0x235, have: 0xec, conf: 0x2, oneway: false},
  2757  	{want: 0x142, have: 0x6f, conf: 0x2, oneway: false},
  2758  	{want: 0x80, have: 0x1ab, conf: 0x2, oneway: false},
  2759  	{want: 0x6f, have: 0x142, conf: 0x2, oneway: false},
  2760  	{want: 0x80, have: 0x1bd, conf: 0x2, oneway: false},
  2761  	{want: 0x70, have: 0xae, conf: 0x2, oneway: true},
  2762  	{want: 0x78, have: 0xae, conf: 0x2, oneway: true},
  2763  	{want: 0x7f, have: 0x9a, conf: 0x2, oneway: true},
  2764  	{want: 0x94, have: 0x9a, conf: 0x2, oneway: true},
  2765  	{want: 0x9b, have: 0x9a, conf: 0x2, oneway: true},
  2766  	{want: 0x9e, have: 0xa7, conf: 0x2, oneway: true},
  2767  	{want: 0xa0, have: 0x9c, conf: 0x2, oneway: true},
  2768  	{want: 0xac, have: 0x80, conf: 0x2, oneway: true},
  2769  	{want: 0xb8, have: 0x1b9, conf: 0x2, oneway: true},
  2770  	{want: 0xb9, have: 0x9a, conf: 0x2, oneway: true},
  2771  	{want: 0xba, have: 0x9a, conf: 0x2, oneway: true},
  2772  	{want: 0xc1, have: 0x9a, conf: 0x2, oneway: true},
  2773  	{want: 0xc7, have: 0x9c, conf: 0x2, oneway: true},
  2774  	{want: 0xc9, have: 0x9c, conf: 0x2, oneway: true},
  2775  	{want: 0xd2, have: 0xdf, conf: 0x2, oneway: true},
  2776  	{want: 0xda, have: 0x9a, conf: 0x2, oneway: true},
  2777  	{want: 0xdc, have: 0x9a, conf: 0x2, oneway: true},
  2778  	{want: 0xef, have: 0xae, conf: 0x2, oneway: true},
  2779  	{want: 0xf1, have: 0x202, conf: 0x2, oneway: true},
  2780  	{want: 0xf3, have: 0x9a, conf: 0x2, oneway: true},
  2781  	{want: 0xf8, have: 0x9a, conf: 0x2, oneway: true},
  2782  	{want: 0x100, have: 0x9a, conf: 0x2, oneway: true},
  2783  	{want: 0x10c, have: 0xf6, conf: 0x2, oneway: true},
  2784  	{want: 0x10e, have: 0x9a, conf: 0x2, oneway: true},
  2785  	{want: 0x11f, have: 0xae, conf: 0x2, oneway: true},
  2786  	{want: 0x12c, have: 0x202, conf: 0x2, oneway: true},
  2787  	{want: 0x130, have: 0x9a, conf: 0x2, oneway: true},
  2788  	{want: 0x132, have: 0x9a, conf: 0x2, oneway: true},
  2789  	{want: 0x13a, have: 0x9a, conf: 0x2, oneway: true},
  2790  	{want: 0x142, have: 0x269, conf: 0x2, oneway: true},
  2791  	{want: 0x14a, have: 0x202, conf: 0x2, oneway: true},
  2792  	{want: 0x14b, have: 0x101, conf: 0x2, oneway: true},
  2793  	{want: 0x157, have: 0x9a, conf: 0x2, oneway: true},
  2794  	{want: 0x161, have: 0xae, conf: 0x2, oneway: true},
  2795  	{want: 0x162, have: 0x9a, conf: 0x2, oneway: true},
  2796  	{want: 0x164, have: 0x9a, conf: 0x2, oneway: true},
  2797  	{want: 0x169, have: 0xae, conf: 0x2, oneway: true},
  2798  	{want: 0x17f, have: 0x9a, conf: 0x2, oneway: true},
  2799  	{want: 0x180, have: 0xae, conf: 0x2, oneway: true},
  2800  	{want: 0x186, have: 0x9a, conf: 0x2, oneway: true},
  2801  	{want: 0x189, have: 0x38, conf: 0x2, oneway: true},
  2802  	{want: 0x18a, have: 0x9a, conf: 0x2, oneway: true},
  2803  	{want: 0x18c, have: 0x202, conf: 0x2, oneway: true},
  2804  	{want: 0x193, have: 0xdf, conf: 0x2, oneway: true},
  2805  	{want: 0x197, have: 0xf6, conf: 0x2, oneway: true},
  2806  	{want: 0x198, have: 0x9a, conf: 0x2, oneway: true},
  2807  	{want: 0x1a2, have: 0x9a, conf: 0x2, oneway: true},
  2808  	{want: 0x1b0, have: 0x9a, conf: 0x2, oneway: true},
  2809  	{want: 0x1bb, have: 0x1ab, conf: 0x2, oneway: false},
  2810  	{want: 0x1bb, have: 0x1bd, conf: 0x2, oneway: true},
  2811  	{want: 0x1c4, have: 0x9a, conf: 0x2, oneway: true},
  2812  	{want: 0x1c8, have: 0x9a, conf: 0x2, oneway: true},
  2813  	{want: 0x1ca, have: 0x9a, conf: 0x2, oneway: true},
  2814  	{want: 0x1cc, have: 0xae, conf: 0x2, oneway: true},
  2815  	{want: 0x1ce, have: 0x9a, conf: 0x2, oneway: true},
  2816  	{want: 0x1cf, have: 0x9a, conf: 0x2, oneway: true},
  2817  	{want: 0x1d2, have: 0x9a, conf: 0x2, oneway: true},
  2818  	{want: 0x1d9, have: 0x9a, conf: 0x2, oneway: true},
  2819  	{want: 0x1e9, have: 0x9a, conf: 0x2, oneway: true},
  2820  	{want: 0x1ec, have: 0x9c, conf: 0x2, oneway: true},
  2821  	{want: 0x1f7, have: 0x85, conf: 0x2, oneway: true},
  2822  	{want: 0x1fc, have: 0x9a, conf: 0x2, oneway: true},
  2823  	{want: 0x205, have: 0xae, conf: 0x2, oneway: true},
  2824  	{want: 0x208, have: 0xdf, conf: 0x2, oneway: true},
  2825  	{want: 0x215, have: 0x9a, conf: 0x2, oneway: true},
  2826  	{want: 0x223, have: 0x9a, conf: 0x2, oneway: true},
  2827  	{want: 0x230, have: 0x9a, conf: 0x2, oneway: true},
  2828  	{want: 0x232, have: 0x9a, conf: 0x2, oneway: true},
  2829  	{want: 0x234, have: 0x9a, conf: 0x2, oneway: true},
  2830  	{want: 0x23c, have: 0x9a, conf: 0x2, oneway: true},
  2831  	{want: 0x23e, have: 0xf6, conf: 0x2, oneway: true},
  2832  	{want: 0x242, have: 0x9a, conf: 0x2, oneway: true},
  2833  	{want: 0x24b, have: 0x9a, conf: 0x2, oneway: true},
  2834  	{want: 0x252, have: 0x9a, conf: 0x2, oneway: true},
  2835  	{want: 0x256, have: 0x202, conf: 0x2, oneway: true},
  2836  	{want: 0x25b, have: 0x9a, conf: 0x2, oneway: true},
  2837  	{want: 0x25e, have: 0x202, conf: 0x2, oneway: true},
  2838  	{want: 0x3612, have: 0x9a, conf: 0x2, oneway: true},
  2839  	{want: 0x265, have: 0x9a, conf: 0x2, oneway: true},
  2840  	{want: 0x266, have: 0x9a, conf: 0x2, oneway: true},
  2841  	{want: 0x271, have: 0x202, conf: 0x2, oneway: true},
  2842  	{want: 0x275, have: 0x9a, conf: 0x2, oneway: true},
  2843  	{want: 0x27d, have: 0x2bc, conf: 0x2, oneway: true},
  2844  	{want: 0x285, have: 0x9a, conf: 0x2, oneway: true},
  2845  	{want: 0x286, have: 0x202, conf: 0x2, oneway: true},
  2846  	{want: 0x29d, have: 0xae, conf: 0x2, oneway: true},
  2847  	{want: 0x2a2, have: 0x9a, conf: 0x2, oneway: true},
  2848  	{want: 0x2b2, have: 0x9a, conf: 0x2, oneway: true},
  2849  	{want: 0x2b3, have: 0x9a, conf: 0x2, oneway: true},
  2850  	{want: 0x2be, have: 0x9a, conf: 0x2, oneway: true},
  2851  	{want: 0x2, have: 0x202, conf: 0x2, oneway: true},
  2852  	{want: 0x5, have: 0x9a, conf: 0x2, oneway: true},
  2853  	{want: 0xa, have: 0x1b9, conf: 0x2, oneway: true},
  2854  	{want: 0xd, have: 0x9a, conf: 0x2, oneway: true},
  2855  	{want: 0x23, have: 0x9c, conf: 0x2, oneway: true},
  2856  	{want: 0x24, have: 0x202, conf: 0x2, oneway: true},
  2857  	{want: 0x2f, have: 0x202, conf: 0x2, oneway: true},
  2858  	{want: 0x31, have: 0x9a, conf: 0x2, oneway: true},
  2859  	{want: 0x3c, have: 0xdf, conf: 0x2, oneway: true},
  2860  	{want: 0x4b, have: 0x9a, conf: 0x2, oneway: true},
  2861  	{want: 0x50, have: 0xae, conf: 0x2, oneway: true},
  2862  	{want: 0x65, have: 0xa9, conf: 0x2, oneway: true},
  2863  	{want: 0x6c, have: 0x9a, conf: 0x2, oneway: true},
  2864  	{want: 0x6f, have: 0x15, conf: 0x2, oneway: true},
  2865  }
  2866  
  2867  // matchScript holds pairs of scriptIDs where readers of one script
  2868  // can typically also read the other. Each is associated with a confidence.
  2869  // Size: 24 bytes, 4 elements
  2870  var matchScript = [4]scriptIntelligibility{
  2871  	{lang: 0x235, want: 0x4f, have: 0x1d, conf: 0x2},
  2872  	{lang: 0x235, want: 0x1d, have: 0x4f, conf: 0x2},
  2873  	{lang: 0x0, want: 0x32, have: 0x33, conf: 0x1},
  2874  	{lang: 0x0, want: 0x33, have: 0x32, conf: 0x1},
  2875  }
  2876  
  2877  // Size: 128 bytes, 32 elements
  2878  var regionContainment = [32]uint32{
  2879  	0xffffffff, 0x000007a2, 0x00003044, 0x00000008,
  2880  	0x403c0010, 0x00000020, 0x00000040, 0x00000080,
  2881  	0x00000100, 0x00000200, 0x00000400, 0x2000384c,
  2882  	0x00001000, 0x00002000, 0x00004000, 0x00008000,
  2883  	0x00010000, 0x00020000, 0x00040000, 0x00080000,
  2884  	0x00100000, 0x00200000, 0x01c1c000, 0x00800000,
  2885  	0x01000000, 0x1e020000, 0x04000000, 0x08000000,
  2886  	0x10000000, 0x20002048, 0x40000000, 0x80000000,
  2887  }
  2888  
  2889  // regionInclusion maps region identifiers to sets of regions in regionInclusionBits,
  2890  // where each set holds all groupings that are directly connected in a region
  2891  // containment graph.
  2892  // Size: 355 bytes, 355 elements
  2893  var regionInclusion = [355]uint8{
  2894  	// Entry 0 - 3F
  2895  	0x00, 0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06,
  2896  	0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d, 0x0e,
  2897  	0x0f, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15, 0x16,
  2898  	0x17, 0x18, 0x19, 0x1a, 0x1b, 0x1c, 0x1d, 0x20,
  2899  	0x21, 0x22, 0x23, 0x24, 0x25, 0x25, 0x22, 0x23,
  2900  	0x25, 0x26, 0x21, 0x27, 0x28, 0x29, 0x2a, 0x25,
  2901  	0x2b, 0x23, 0x22, 0x25, 0x24, 0x29, 0x2c, 0x2d,
  2902  	0x23, 0x2e, 0x2c, 0x25, 0x2f, 0x30, 0x27, 0x25,
  2903  	// Entry 40 - 7F
  2904  	0x27, 0x25, 0x24, 0x30, 0x21, 0x31, 0x32, 0x33,
  2905  	0x2f, 0x21, 0x26, 0x26, 0x26, 0x34, 0x2c, 0x28,
  2906  	0x27, 0x26, 0x35, 0x27, 0x21, 0x33, 0x22, 0x20,
  2907  	0x25, 0x2c, 0x25, 0x21, 0x36, 0x2d, 0x34, 0x29,
  2908  	0x21, 0x2e, 0x37, 0x25, 0x25, 0x20, 0x38, 0x38,
  2909  	0x27, 0x37, 0x38, 0x38, 0x2e, 0x39, 0x2e, 0x1f,
  2910  	0x37, 0x3a, 0x27, 0x3b, 0x2b, 0x20, 0x29, 0x34,
  2911  	0x26, 0x37, 0x25, 0x23, 0x27, 0x2b, 0x2c, 0x22,
  2912  	// Entry 80 - BF
  2913  	0x2f, 0x2c, 0x2c, 0x25, 0x26, 0x39, 0x21, 0x33,
  2914  	0x3b, 0x2c, 0x27, 0x35, 0x21, 0x33, 0x39, 0x25,
  2915  	0x2d, 0x20, 0x38, 0x30, 0x37, 0x23, 0x2b, 0x24,
  2916  	0x21, 0x23, 0x24, 0x2b, 0x39, 0x2b, 0x25, 0x23,
  2917  	0x35, 0x20, 0x2e, 0x3c, 0x30, 0x3b, 0x2e, 0x25,
  2918  	0x35, 0x35, 0x23, 0x25, 0x3c, 0x30, 0x23, 0x25,
  2919  	0x34, 0x24, 0x2c, 0x31, 0x37, 0x29, 0x37, 0x38,
  2920  	0x38, 0x34, 0x32, 0x22, 0x25, 0x2e, 0x3b, 0x20,
  2921  	// Entry C0 - FF
  2922  	0x22, 0x2c, 0x30, 0x35, 0x35, 0x3b, 0x25, 0x2c,
  2923  	0x25, 0x39, 0x2e, 0x24, 0x2e, 0x33, 0x30, 0x2e,
  2924  	0x31, 0x3a, 0x2c, 0x2a, 0x2c, 0x20, 0x33, 0x29,
  2925  	0x2b, 0x24, 0x20, 0x3b, 0x23, 0x28, 0x2a, 0x23,
  2926  	0x33, 0x20, 0x27, 0x28, 0x3a, 0x30, 0x24, 0x2d,
  2927  	0x2f, 0x28, 0x25, 0x23, 0x39, 0x20, 0x3b, 0x27,
  2928  	0x20, 0x23, 0x20, 0x20, 0x1e, 0x20, 0x20, 0x20,
  2929  	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  2930  	// Entry 100 - 13F
  2931  	0x2e, 0x20, 0x2d, 0x22, 0x32, 0x2e, 0x23, 0x3a,
  2932  	0x2e, 0x38, 0x37, 0x30, 0x2c, 0x39, 0x2b, 0x2d,
  2933  	0x2c, 0x22, 0x2c, 0x2e, 0x27, 0x38, 0x26, 0x32,
  2934  	0x33, 0x25, 0x23, 0x31, 0x21, 0x25, 0x26, 0x21,
  2935  	0x2c, 0x30, 0x3c, 0x28, 0x30, 0x3c, 0x38, 0x28,
  2936  	0x30, 0x23, 0x25, 0x28, 0x35, 0x2e, 0x32, 0x2e,
  2937  	0x20, 0x21, 0x2f, 0x27, 0x3c, 0x22, 0x25, 0x20,
  2938  	0x27, 0x25, 0x25, 0x30, 0x3a, 0x28, 0x20, 0x28,
  2939  	// Entry 140 - 17F
  2940  	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  2941  	0x20, 0x20, 0x22, 0x20, 0x20, 0x20, 0x20, 0x20,
  2942  	0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
  2943  	0x20, 0x20, 0x23, 0x23, 0x2e, 0x22, 0x31, 0x2e,
  2944  	0x26, 0x2e, 0x20,
  2945  }
  2946  
  2947  // regionInclusionBits is an array of bit vectors where every vector represents
  2948  // a set of region groupings.  These sets are used to compute the distance
  2949  // between two regions for the purpose of language matching.
  2950  // Size: 288 bytes, 72 elements
  2951  var regionInclusionBits = [72]uint32{
  2952  	// Entry 0 - 1F
  2953  	0x82400813, 0x000007a3, 0x00003844, 0x20000808,
  2954  	0x403c0011, 0x00000022, 0x20000844, 0x00000082,
  2955  	0x00000102, 0x00000202, 0x00000402, 0x2000384d,
  2956  	0x00001804, 0x20002804, 0x00404000, 0x00408000,
  2957  	0x00410000, 0x02020000, 0x00040010, 0x00080010,
  2958  	0x00100010, 0x00200010, 0x01c1c001, 0x00c00000,
  2959  	0x01400000, 0x1e020001, 0x06000000, 0x0a000000,
  2960  	0x12000000, 0x20002848, 0x40000010, 0x80000001,
  2961  	// Entry 20 - 3F
  2962  	0x00000001, 0x40000000, 0x00020000, 0x01000000,
  2963  	0x00008000, 0x00002000, 0x00000200, 0x00000008,
  2964  	0x00200000, 0x90000000, 0x00040000, 0x08000000,
  2965  	0x00000020, 0x84000000, 0x00000080, 0x00001000,
  2966  	0x00010000, 0x00000400, 0x04000000, 0x00000040,
  2967  	0x10000000, 0x00004000, 0x81000000, 0x88000000,
  2968  	0x00000100, 0x80020000, 0x00080000, 0x00100000,
  2969  	0x00800000, 0xffffffff, 0x82400fb3, 0xc27c0813,
  2970  	// Entry 40 - 5F
  2971  	0xa240385f, 0x83c1c813, 0x9e420813, 0x92000001,
  2972  	0x86000001, 0x81400001, 0x8a000001, 0x82020001,
  2973  }
  2974  
  2975  // regionInclusionNext marks, for each entry in regionInclusionBits, the set of
  2976  // all groups that are reachable from the groups set in the respective entry.
  2977  // Size: 72 bytes, 72 elements
  2978  var regionInclusionNext = [72]uint8{
  2979  	// Entry 0 - 3F
  2980  	0x3d, 0x3e, 0x0b, 0x0b, 0x3f, 0x01, 0x0b, 0x01,
  2981  	0x01, 0x01, 0x01, 0x40, 0x0b, 0x0b, 0x16, 0x16,
  2982  	0x16, 0x19, 0x04, 0x04, 0x04, 0x04, 0x41, 0x16,
  2983  	0x16, 0x42, 0x19, 0x19, 0x19, 0x0b, 0x04, 0x00,
  2984  	0x00, 0x1e, 0x11, 0x18, 0x0f, 0x0d, 0x09, 0x03,
  2985  	0x15, 0x43, 0x12, 0x1b, 0x05, 0x44, 0x07, 0x0c,
  2986  	0x10, 0x0a, 0x1a, 0x06, 0x1c, 0x0e, 0x45, 0x46,
  2987  	0x08, 0x47, 0x13, 0x14, 0x17, 0x3d, 0x3d, 0x3d,
  2988  	// Entry 40 - 7F
  2989  	0x3d, 0x3d, 0x3d, 0x42, 0x42, 0x41, 0x42, 0x42,
  2990  }
  2991  
  2992  type parentRel struct {
  2993  	lang       uint16
  2994  	script     uint8
  2995  	maxScript  uint8
  2996  	toRegion   uint16
  2997  	fromRegion []uint16
  2998  }
  2999  
  3000  // Size: 404 bytes, 5 elements
  3001  var parents = [5]parentRel{
  3002  	{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}},
  3003  	{lang: 0x9a, script: 0x0, maxScript: 0x4f, toRegion: 0x1a, fromRegion: []uint16{0x2d, 0x4d, 0x5f, 0x62, 0x70, 0xd7, 0x10a, 0x10d}},
  3004  	{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}},
  3005  	{lang: 0x1ea, script: 0x0, maxScript: 0x4f, toRegion: 0xec, fromRegion: []uint16{0x29, 0x59, 0x89, 0xc4, 0xcf, 0x116, 0x124}},
  3006  	{lang: 0x2bc, script: 0x33, maxScript: 0x33, toRegion: 0x8b, fromRegion: []uint16{0xc4}},
  3007  }
  3008  
  3009  // Total table size 19913 bytes (19KiB); checksum: 668A5EA2