1// Code generated by running "go generate" in golang.org/x/text. DO NOT EDIT.
2
3package language
4
5// CLDRVersion is the CLDR version from which the tables in this package are derived.
6const CLDRVersion = "32"
7
8const (
9	_de  = 269
10	_en  = 313
11	_fr  = 350
12	_it  = 505
13	_mo  = 784
14	_no  = 879
15	_nb  = 839
16	_pt  = 960
17	_sh  = 1031
18	_mul = 806
19	_und = 0
20)
21const (
22	_001 = 1
23	_419 = 31
24	_BR  = 65
25	_CA  = 73
26	_ES  = 110
27	_GB  = 123
28	_MD  = 188
29	_PT  = 238
30	_UK  = 306
31	_US  = 309
32	_ZZ  = 357
33	_XA  = 323
34	_XC  = 325
35	_XK  = 333
36)
37const (
38	_Latn = 87
39	_Hani = 54
40	_Hans = 56
41	_Hant = 57
42	_Qaaa = 139
43	_Qaai = 147
44	_Qabx = 188
45	_Zinh = 236
46	_Zyyy = 241
47	_Zzzz = 242
48)
49
50var regionToGroups = []uint8{ // 357 elements
51	// Entry 0 - 3F
52	0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x04,
53	0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x04, 0x00,
54	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
55	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04,
56	0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00,
57	0x00, 0x04, 0x00, 0x00, 0x04, 0x01, 0x00, 0x00,
58	0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
59	0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x04,
60	// Entry 40 - 7F
61	0x04, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00,
62	0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
63	0x00, 0x04, 0x00, 0x00, 0x04, 0x00, 0x04, 0x00,
64	0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
65	0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x08,
66	0x00, 0x04, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00,
67	0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
68	0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x04, 0x00,
69	// Entry 80 - BF
70	0x00, 0x00, 0x04, 0x00, 0x00, 0x04, 0x00, 0x00,
71	0x00, 0x04, 0x01, 0x00, 0x04, 0x02, 0x00, 0x04,
72	0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
73	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
74	0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
75	0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00,
76	0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
77	0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x04, 0x00,
78	// Entry C0 - FF
79	0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01,
80	0x04, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x04,
81	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
82	0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
83	0x00, 0x00, 0x04, 0x00, 0x04, 0x00, 0x00, 0x00,
84	0x00, 0x00, 0x04, 0x00, 0x05, 0x00, 0x00, 0x00,
85	0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
86	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
87	// Entry 100 - 13F
88	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
89	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
90	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00,
91	0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x00, 0x04,
92	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
93	0x08, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00,
94	0x00, 0x00, 0x00, 0x01, 0x00, 0x05, 0x04, 0x00,
95	0x00, 0x04, 0x00, 0x04, 0x04, 0x05, 0x00, 0x00,
96	// Entry 140 - 17F
97	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
98	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
99	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
100	0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
101	0x00, 0x00, 0x00, 0x00, 0x00,
102} // Size: 381 bytes
103
104var paradigmLocales = [][3]uint16{ // 3 elements
105	0: [3]uint16{0x139, 0x0, 0x7b},
106	1: [3]uint16{0x13e, 0x0, 0x1f},
107	2: [3]uint16{0x3c0, 0x41, 0xee},
108} // Size: 42 bytes
109
110type mutualIntelligibility struct {
111	want     uint16
112	have     uint16
113	distance uint8
114	oneway   bool
115}
116type scriptIntelligibility struct {
117	wantLang   uint16
118	haveLang   uint16
119	wantScript uint8
120	haveScript uint8
121	distance   uint8
122}
123type regionIntelligibility struct {
124	lang     uint16
125	script   uint8
126	group    uint8
127	distance uint8
128}
129
130// matchLang holds pairs of langIDs of base languages that are typically
131// mutually intelligible. Each pair is associated with a confidence and
132// whether the intelligibility goes one or both ways.
133var matchLang = []mutualIntelligibility{ // 113 elements
134	0:   {want: 0x1d1, have: 0xb7, distance: 0x4, oneway: false},
135	1:   {want: 0x407, have: 0xb7, distance: 0x4, oneway: false},
136	2:   {want: 0x407, have: 0x1d1, distance: 0x4, oneway: false},
137	3:   {want: 0x407, have: 0x432, distance: 0x4, oneway: false},
138	4:   {want: 0x43a, have: 0x1, distance: 0x4, oneway: false},
139	5:   {want: 0x1a3, have: 0x10d, distance: 0x4, oneway: true},
140	6:   {want: 0x295, have: 0x10d, distance: 0x4, oneway: true},
141	7:   {want: 0x101, have: 0x36f, distance: 0x8, oneway: false},
142	8:   {want: 0x101, have: 0x347, distance: 0x8, oneway: false},
143	9:   {want: 0x5, have: 0x3e2, distance: 0xa, oneway: true},
144	10:  {want: 0xd, have: 0x139, distance: 0xa, oneway: true},
145	11:  {want: 0x16, have: 0x367, distance: 0xa, oneway: true},
146	12:  {want: 0x21, have: 0x139, distance: 0xa, oneway: true},
147	13:  {want: 0x56, have: 0x13e, distance: 0xa, oneway: true},
148	14:  {want: 0x58, have: 0x3e2, distance: 0xa, oneway: true},
149	15:  {want: 0x71, have: 0x3e2, distance: 0xa, oneway: true},
150	16:  {want: 0x75, have: 0x139, distance: 0xa, oneway: true},
151	17:  {want: 0x82, have: 0x1be, distance: 0xa, oneway: true},
152	18:  {want: 0xa5, have: 0x139, distance: 0xa, oneway: true},
153	19:  {want: 0xb2, have: 0x15e, distance: 0xa, oneway: true},
154	20:  {want: 0xdd, have: 0x153, distance: 0xa, oneway: true},
155	21:  {want: 0xe5, have: 0x139, distance: 0xa, oneway: true},
156	22:  {want: 0xe9, have: 0x3a, distance: 0xa, oneway: true},
157	23:  {want: 0xf0, have: 0x15e, distance: 0xa, oneway: true},
158	24:  {want: 0xf9, have: 0x15e, distance: 0xa, oneway: true},
159	25:  {want: 0x100, have: 0x139, distance: 0xa, oneway: true},
160	26:  {want: 0x130, have: 0x139, distance: 0xa, oneway: true},
161	27:  {want: 0x13c, have: 0x139, distance: 0xa, oneway: true},
162	28:  {want: 0x140, have: 0x151, distance: 0xa, oneway: true},
163	29:  {want: 0x145, have: 0x13e, distance: 0xa, oneway: true},
164	30:  {want: 0x158, have: 0x101, distance: 0xa, oneway: true},
165	31:  {want: 0x16d, have: 0x367, distance: 0xa, oneway: true},
166	32:  {want: 0x16e, have: 0x139, distance: 0xa, oneway: true},
167	33:  {want: 0x16f, have: 0x139, distance: 0xa, oneway: true},
168	34:  {want: 0x17e, have: 0x139, distance: 0xa, oneway: true},
169	35:  {want: 0x190, have: 0x13e, distance: 0xa, oneway: true},
170	36:  {want: 0x194, have: 0x13e, distance: 0xa, oneway: true},
171	37:  {want: 0x1a4, have: 0x1be, distance: 0xa, oneway: true},
172	38:  {want: 0x1b4, have: 0x139, distance: 0xa, oneway: true},
173	39:  {want: 0x1b8, have: 0x139, distance: 0xa, oneway: true},
174	40:  {want: 0x1d4, have: 0x15e, distance: 0xa, oneway: true},
175	41:  {want: 0x1d7, have: 0x3e2, distance: 0xa, oneway: true},
176	42:  {want: 0x1d9, have: 0x139, distance: 0xa, oneway: true},
177	43:  {want: 0x1e7, have: 0x139, distance: 0xa, oneway: true},
178	44:  {want: 0x1f8, have: 0x139, distance: 0xa, oneway: true},
179	45:  {want: 0x20e, have: 0x1e1, distance: 0xa, oneway: true},
180	46:  {want: 0x210, have: 0x139, distance: 0xa, oneway: true},
181	47:  {want: 0x22d, have: 0x15e, distance: 0xa, oneway: true},
182	48:  {want: 0x242, have: 0x3e2, distance: 0xa, oneway: true},
183	49:  {want: 0x24a, have: 0x139, distance: 0xa, oneway: true},
184	50:  {want: 0x251, have: 0x139, distance: 0xa, oneway: true},
185	51:  {want: 0x265, have: 0x139, distance: 0xa, oneway: true},
186	52:  {want: 0x274, have: 0x48a, distance: 0xa, oneway: true},
187	53:  {want: 0x28a, have: 0x3e2, distance: 0xa, oneway: true},
188	54:  {want: 0x28e, have: 0x1f9, distance: 0xa, oneway: true},
189	55:  {want: 0x2a3, have: 0x139, distance: 0xa, oneway: true},
190	56:  {want: 0x2b5, have: 0x15e, distance: 0xa, oneway: true},
191	57:  {want: 0x2b8, have: 0x139, distance: 0xa, oneway: true},
192	58:  {want: 0x2be, have: 0x139, distance: 0xa, oneway: true},
193	59:  {want: 0x2c3, have: 0x15e, distance: 0xa, oneway: true},
194	60:  {want: 0x2ed, have: 0x139, distance: 0xa, oneway: true},
195	61:  {want: 0x2f1, have: 0x15e, distance: 0xa, oneway: true},
196	62:  {want: 0x2fa, have: 0x139, distance: 0xa, oneway: true},
197	63:  {want: 0x2ff, have: 0x7e, distance: 0xa, oneway: true},
198	64:  {want: 0x304, have: 0x139, distance: 0xa, oneway: true},
199	65:  {want: 0x30b, have: 0x3e2, distance: 0xa, oneway: true},
200	66:  {want: 0x31b, have: 0x1be, distance: 0xa, oneway: true},
201	67:  {want: 0x31f, have: 0x1e1, distance: 0xa, oneway: true},
202	68:  {want: 0x320, have: 0x139, distance: 0xa, oneway: true},
203	69:  {want: 0x331, have: 0x139, distance: 0xa, oneway: true},
204	70:  {want: 0x351, have: 0x139, distance: 0xa, oneway: true},
205	71:  {want: 0x36a, have: 0x347, distance: 0xa, oneway: false},
206	72:  {want: 0x36a, have: 0x36f, distance: 0xa, oneway: true},
207	73:  {want: 0x37a, have: 0x139, distance: 0xa, oneway: true},
208	74:  {want: 0x387, have: 0x139, distance: 0xa, oneway: true},
209	75:  {want: 0x389, have: 0x139, distance: 0xa, oneway: true},
210	76:  {want: 0x38b, have: 0x15e, distance: 0xa, oneway: true},
211	77:  {want: 0x390, have: 0x139, distance: 0xa, oneway: true},
212	78:  {want: 0x395, have: 0x139, distance: 0xa, oneway: true},
213	79:  {want: 0x39d, have: 0x139, distance: 0xa, oneway: true},
214	80:  {want: 0x3a5, have: 0x139, distance: 0xa, oneway: true},
215	81:  {want: 0x3be, have: 0x139, distance: 0xa, oneway: true},
216	82:  {want: 0x3c4, have: 0x13e, distance: 0xa, oneway: true},
217	83:  {want: 0x3d4, have: 0x10d, distance: 0xa, oneway: true},
218	84:  {want: 0x3d9, have: 0x139, distance: 0xa, oneway: true},
219	85:  {want: 0x3e5, have: 0x15e, distance: 0xa, oneway: true},
220	86:  {want: 0x3e9, have: 0x1be, distance: 0xa, oneway: true},
221	87:  {want: 0x3fa, have: 0x139, distance: 0xa, oneway: true},
222	88:  {want: 0x40c, have: 0x139, distance: 0xa, oneway: true},
223	89:  {want: 0x423, have: 0x139, distance: 0xa, oneway: true},
224	90:  {want: 0x429, have: 0x139, distance: 0xa, oneway: true},
225	91:  {want: 0x431, have: 0x139, distance: 0xa, oneway: true},
226	92:  {want: 0x43b, have: 0x139, distance: 0xa, oneway: true},
227	93:  {want: 0x43e, have: 0x1e1, distance: 0xa, oneway: true},
228	94:  {want: 0x445, have: 0x139, distance: 0xa, oneway: true},
229	95:  {want: 0x450, have: 0x139, distance: 0xa, oneway: true},
230	96:  {want: 0x461, have: 0x139, distance: 0xa, oneway: true},
231	97:  {want: 0x467, have: 0x3e2, distance: 0xa, oneway: true},
232	98:  {want: 0x46f, have: 0x139, distance: 0xa, oneway: true},
233	99:  {want: 0x476, have: 0x3e2, distance: 0xa, oneway: true},
234	100: {want: 0x3883, have: 0x139, distance: 0xa, oneway: true},
235	101: {want: 0x480, have: 0x139, distance: 0xa, oneway: true},
236	102: {want: 0x482, have: 0x139, distance: 0xa, oneway: true},
237	103: {want: 0x494, have: 0x3e2, distance: 0xa, oneway: true},
238	104: {want: 0x49d, have: 0x139, distance: 0xa, oneway: true},
239	105: {want: 0x4ac, have: 0x529, distance: 0xa, oneway: true},
240	106: {want: 0x4b4, have: 0x139, distance: 0xa, oneway: true},
241	107: {want: 0x4bc, have: 0x3e2, distance: 0xa, oneway: true},
242	108: {want: 0x4e5, have: 0x15e, distance: 0xa, oneway: true},
243	109: {want: 0x4f2, have: 0x139, distance: 0xa, oneway: true},
244	110: {want: 0x512, have: 0x139, distance: 0xa, oneway: true},
245	111: {want: 0x518, have: 0x139, distance: 0xa, oneway: true},
246	112: {want: 0x52f, have: 0x139, distance: 0xa, oneway: true},
247} // Size: 702 bytes
248
249// matchScript holds pairs of scriptIDs where readers of one script
250// can typically also read the other. Each is associated with a confidence.
251var matchScript = []scriptIntelligibility{ // 26 elements
252	0:  {wantLang: 0x432, haveLang: 0x432, wantScript: 0x57, haveScript: 0x1f, distance: 0x5},
253	1:  {wantLang: 0x432, haveLang: 0x432, wantScript: 0x1f, haveScript: 0x57, distance: 0x5},
254	2:  {wantLang: 0x58, haveLang: 0x3e2, wantScript: 0x57, haveScript: 0x1f, distance: 0xa},
255	3:  {wantLang: 0xa5, haveLang: 0x139, wantScript: 0xe, haveScript: 0x57, distance: 0xa},
256	4:  {wantLang: 0x1d7, haveLang: 0x3e2, wantScript: 0x8, haveScript: 0x1f, distance: 0xa},
257	5:  {wantLang: 0x210, haveLang: 0x139, wantScript: 0x2b, haveScript: 0x57, distance: 0xa},
258	6:  {wantLang: 0x24a, haveLang: 0x139, wantScript: 0x4b, haveScript: 0x57, distance: 0xa},
259	7:  {wantLang: 0x251, haveLang: 0x139, wantScript: 0x4f, haveScript: 0x57, distance: 0xa},
260	8:  {wantLang: 0x2b8, haveLang: 0x139, wantScript: 0x54, haveScript: 0x57, distance: 0xa},
261	9:  {wantLang: 0x304, haveLang: 0x139, wantScript: 0x6b, haveScript: 0x57, distance: 0xa},
262	10: {wantLang: 0x331, haveLang: 0x139, wantScript: 0x72, haveScript: 0x57, distance: 0xa},
263	11: {wantLang: 0x351, haveLang: 0x139, wantScript: 0x21, haveScript: 0x57, distance: 0xa},
264	12: {wantLang: 0x395, haveLang: 0x139, wantScript: 0x7d, haveScript: 0x57, distance: 0xa},
265	13: {wantLang: 0x39d, haveLang: 0x139, wantScript: 0x33, haveScript: 0x57, distance: 0xa},
266	14: {wantLang: 0x3be, haveLang: 0x139, wantScript: 0x5, haveScript: 0x57, distance: 0xa},
267	15: {wantLang: 0x3fa, haveLang: 0x139, wantScript: 0x5, haveScript: 0x57, distance: 0xa},
268	16: {wantLang: 0x40c, haveLang: 0x139, wantScript: 0xca, haveScript: 0x57, distance: 0xa},
269	17: {wantLang: 0x450, haveLang: 0x139, wantScript: 0xd7, haveScript: 0x57, distance: 0xa},
270	18: {wantLang: 0x461, haveLang: 0x139, wantScript: 0xda, haveScript: 0x57, distance: 0xa},
271	19: {wantLang: 0x46f, haveLang: 0x139, wantScript: 0x29, haveScript: 0x57, distance: 0xa},
272	20: {wantLang: 0x476, haveLang: 0x3e2, wantScript: 0x57, haveScript: 0x1f, distance: 0xa},
273	21: {wantLang: 0x4b4, haveLang: 0x139, wantScript: 0x5, haveScript: 0x57, distance: 0xa},
274	22: {wantLang: 0x4bc, haveLang: 0x3e2, wantScript: 0x57, haveScript: 0x1f, distance: 0xa},
275	23: {wantLang: 0x512, haveLang: 0x139, wantScript: 0x3b, haveScript: 0x57, distance: 0xa},
276	24: {wantLang: 0x529, haveLang: 0x529, wantScript: 0x38, haveScript: 0x39, distance: 0xf},
277	25: {wantLang: 0x529, haveLang: 0x529, wantScript: 0x39, haveScript: 0x38, distance: 0x13},
278} // Size: 232 bytes
279
280var matchRegion = []regionIntelligibility{ // 15 elements
281	0:  {lang: 0x3a, script: 0x0, group: 0x4, distance: 0x4},
282	1:  {lang: 0x3a, script: 0x0, group: 0x84, distance: 0x4},
283	2:  {lang: 0x139, script: 0x0, group: 0x1, distance: 0x4},
284	3:  {lang: 0x139, script: 0x0, group: 0x81, distance: 0x4},
285	4:  {lang: 0x13e, script: 0x0, group: 0x3, distance: 0x4},
286	5:  {lang: 0x13e, script: 0x0, group: 0x83, distance: 0x4},
287	6:  {lang: 0x3c0, script: 0x0, group: 0x3, distance: 0x4},
288	7:  {lang: 0x3c0, script: 0x0, group: 0x83, distance: 0x4},
289	8:  {lang: 0x529, script: 0x39, group: 0x2, distance: 0x4},
290	9:  {lang: 0x529, script: 0x39, group: 0x82, distance: 0x4},
291	10: {lang: 0x3a, script: 0x0, group: 0x80, distance: 0x5},
292	11: {lang: 0x139, script: 0x0, group: 0x80, distance: 0x5},
293	12: {lang: 0x13e, script: 0x0, group: 0x80, distance: 0x5},
294	13: {lang: 0x3c0, script: 0x0, group: 0x80, distance: 0x5},
295	14: {lang: 0x529, script: 0x39, group: 0x80, distance: 0x5},
296} // Size: 114 bytes
297
298// Total table size 1471 bytes (1KiB); checksum: 4CB1CD46
299