diff --git a/internal/language/compact/language.go b/internal/language/compact/language.go
index 415b55e..ecae6dd 100644
--- a/internal/language/compact/language.go
+++ b/internal/language/compact/language.go
@@ -19,6 +19,7 @@
 // specific language or locale. All language tag values are guaranteed to be
 // well-formed.
 type Tag struct {
+	// NOTE: exported tags will become part of the public API.
 	language ID
 	locale   ID
 	full     fullTag // always a language.Tag for now.
@@ -135,9 +136,6 @@
 	return t.language, t.full == nil
 }
 
-// TODO: make these functions and methods public once we settle on the API and
-//
-
 // RegionalID returns the ID for the regional variant of this tag. This index is
 // used to indicate region-specific overrides, such as default currency, default
 // calendar and week data, default time cycle, and default measurement system
diff --git a/internal/language/compact/language_test.go b/internal/language/compact/language_test.go
index 4b1eea1..57fd13f 100644
--- a/internal/language/compact/language_test.go
+++ b/internal/language/compact/language_test.go
@@ -27,6 +27,22 @@
 	}
 }
 
+func TestNoPublic(t *testing.T) {
+	noExportedField(t, reflect.TypeOf(Tag{}))
+}
+
+func noExportedField(t *testing.T, typ reflect.Type) {
+	for i := 0; i < typ.NumField(); i++ {
+		f := typ.Field(i)
+		if f.PkgPath == "" {
+			t.Errorf("Tag may not have exported fields, but has field %q", f.Name)
+		}
+		if f.Anonymous {
+			noExportedField(t, f.Type)
+		}
+	}
+}
+
 func TestEquality(t *testing.T) {
 	for i, tt := range parseTests() {
 		s := tt.in
diff --git a/language/compact.go b/language/compact.go
deleted file mode 100644
index a9941cc..0000000
--- a/language/compact.go
+++ /dev/null
@@ -1,45 +0,0 @@
-// Copyright 2018 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-package language
-
-import (
-	"sort"
-	"strings"
-
-	"golang.org/x/text/internal/language"
-)
-
-type compactID uint16
-
-func getCoreIndex(t language.Tag) (id compactID, ok bool) {
-	cci, ok := language.GetCompactCore(t)
-	if !ok {
-		return 0, false
-	}
-	i := sort.Search(len(coreTags), func(i int) bool {
-		return cci <= coreTags[i]
-	})
-	if i == len(coreTags) || coreTags[i] != cci {
-		return 0, false
-	}
-	return compactID(i), true
-}
-
-func (c compactID) tag() language.Tag {
-	if int(c) >= len(coreTags) {
-		return specialTags[int(c)-len(coreTags)]
-	}
-	return coreTags[c].Tag()
-}
-
-var specialTags []language.Tag
-
-func init() {
-	tags := strings.Split(specialTagsStr, " ")
-	specialTags = make([]language.Tag, len(tags))
-	for i, t := range tags {
-		specialTags[i] = language.MustParse(t)
-	}
-}
diff --git a/language/gen.go b/language/gen.go
index b1a35da..3004eb4 100644
--- a/language/gen.go
+++ b/language/gen.go
@@ -38,13 +38,10 @@
 	w := gen.NewCodeWriter()
 	defer w.WriteGoFile("tables.go", "language")
 
-	fmt.Fprintln(w, `import "golang.org/x/text/internal/language"`)
-
 	b := newBuilder(w)
 	gen.WriteCLDRVersion(w)
 
 	b.writeConstants()
-	b.writeCompactIndex()
 	b.writeMatchData()
 }
 
diff --git a/language/gen_index.go b/language/gen_index.go
deleted file mode 100644
index 2a84a91..0000000
--- a/language/gen_index.go
+++ /dev/null
@@ -1,108 +0,0 @@
-// Copyright 2015 The Go Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style
-// license that can be found in the LICENSE file.
-
-// +build ignore
-
-package main
-
-// This file generates derivative tables based on the language package itself.
-
-import (
-	"fmt"
-	"log"
-	"sort"
-	"strings"
-
-	"golang.org/x/text/internal/language"
-)
-
-// Compact indices:
-// Note -va-X variants only apply to localization variants.
-// BCP variants only ever apply to language.
-// The only ambiguity between tags is with regions.
-
-func (b *builder) writeCompactIndex() {
-	// Collect all language tags for which we have any data in CLDR.
-	m := map[language.Tag]bool{}
-	for _, lang := range b.data.Locales() {
-		// We include all locales unconditionally to be consistent with en_US.
-		// We want en_US, even though it has no data associated with it.
-
-		// TODO: put any of the languages for which no data exists at the end
-		// of the index. This allows all components based on ICU to use that
-		// as the cutoff point.
-		// if x := data.RawLDML(lang); false ||
-		// 	x.LocaleDisplayNames != nil ||
-		// 	x.Characters != nil ||
-		// 	x.Delimiters != nil ||
-		// 	x.Measurement != nil ||
-		// 	x.Dates != nil ||
-		// 	x.Numbers != nil ||
-		// 	x.Units != nil ||
-		// 	x.ListPatterns != nil ||
-		// 	x.Collations != nil ||
-		// 	x.Segmentations != nil ||
-		// 	x.Rbnf != nil ||
-		// 	x.Annotations != nil ||
-		// 	x.Metadata != nil {
-
-		// TODO: support POSIX natively, albeit non-standard.
-		tag := language.Make(strings.Replace(lang, "_POSIX", "-u-va-posix", 1))
-		m[tag] = true
-		// }
-	}
-	// Include locales for plural rules, which uses a different structure.
-	for _, plurals := range b.supp.Plurals {
-		for _, rules := range plurals.PluralRules {
-			for _, lang := range strings.Split(rules.Locales, " ") {
-				m[language.Make(lang)] = true
-			}
-		}
-	}
-
-	var coreTags []language.CompactCoreInfo
-	var special []string
-
-	for t := range m {
-		if x := t.Extensions(); len(x) != 0 && fmt.Sprint(x) != "[u-va-posix]" {
-			log.Fatalf("Unexpected extension %v in %v", x, t)
-		}
-		if len(t.Variants()) == 0 && len(t.Extensions()) == 0 {
-			cci, ok := language.GetCompactCore(t)
-			if !ok {
-				log.Fatalf("Locale for non-basic language %q", t)
-			}
-			coreTags = append(coreTags, cci)
-		} else {
-			special = append(special, t.String())
-		}
-	}
-
-	w := b.w
-
-	sort.Slice(coreTags, func(i, j int) bool { return coreTags[i] < coreTags[j] })
-	sort.Strings(special)
-
-	w.WriteComment(`
-	NumCompactTags is the number of common tags. The maximum tag is
-	NumCompactTags-1.`)
-	w.WriteConst("NumCompactTags", len(m))
-
-	fmt.Fprintln(w, "const (")
-	for i, t := range coreTags {
-		fmt.Fprintf(w, "%s compactID = %d\n", ident(t.Tag().String()), i)
-	}
-	for i, t := range special {
-		fmt.Fprintf(w, "%s compactID = %d\n", ident(t), i+len(coreTags))
-	}
-	fmt.Fprintln(w, ")")
-
-	w.WriteVar("coreTags", coreTags)
-
-	w.WriteConst("specialTagsStr", strings.Join(special, " "))
-}
-
-func ident(s string) string {
-	return strings.Replace(s, "-", "", -1) + "Index"
-}
diff --git a/language/language.go b/language/language.go
index 25fd210..f892354 100644
--- a/language/language.go
+++ b/language/language.go
@@ -2,7 +2,7 @@
 // Use of this source code is governed by a BSD-style
 // license that can be found in the LICENSE file.
 
-//go:generate go run gen.go gen_index.go -output tables.go
+//go:generate go run gen.go -output tables.go
 
 package language
 
@@ -13,67 +13,24 @@
 	"strings"
 
 	"golang.org/x/text/internal/language"
+	"golang.org/x/text/internal/language/compact"
 )
 
 // Tag represents a BCP 47 language tag. It is used to specify an instance of a
 // specific language or locale. All language tag values are guaranteed to be
 // well-formed.
-type Tag struct {
-	language compactID
-	locale   compactID
-	full     fullTag // always a language.Tag for now.
-}
-
-type fullTag interface {
-	IsRoot() bool
-	Parent() language.Tag
-}
+type Tag compact.Tag
 
 func makeTag(t language.Tag) (tag Tag) {
-	if region := t.TypeForKey("rg"); len(region) == 6 && region[2:] == "zzzz" {
-		if r, err := language.ParseRegion(region[:2]); err == nil {
-			tFull := t
-			t, _ = t.SetTypeForKey("rg", "")
-			// TODO: should we not consider "va" for the language tag?
-			var exact1, exact2 bool
-			tag.language, exact1 = compactIndex(t)
-			t.RegionID = r
-			tag.locale, exact2 = compactIndex(t)
-			if !exact1 || !exact2 {
-				tag.full = tFull
-			}
-			return tag
-		}
-	}
-	lang, ok := compactIndex(t)
-	tag.language = lang
-	tag.locale = lang
-	if !ok {
-		tag.full = t
-	}
-	return tag
+	return Tag(compact.Make(t))
 }
 
 func (t *Tag) tag() language.Tag {
-	if t.full != nil {
-		return t.full.(language.Tag)
-	}
-	tag := t.language.tag()
-	if t.language != t.locale {
-		loc := t.locale.tag()
-		tag, _ = tag.SetTypeForKey("rg", strings.ToLower(loc.RegionID.String())+"zzzz")
-	}
-	return tag
+	return (*compact.Tag)(t).Tag()
 }
 
-func (t *Tag) mayHaveVariants() bool {
-	return t.full != nil || int(t.language) >= len(coreTags)
-}
-
-func (t *Tag) mayHaveExtensions() bool {
-	return t.full != nil ||
-		int(t.language) >= len(coreTags) ||
-		t.language != t.locale
+func (t *Tag) isCompact() bool {
+	return (*compact.Tag)(t).IsCompact()
 }
 
 // TODO: improve performance.
@@ -103,10 +60,7 @@
 
 // IsRoot returns true if t is equal to language "und".
 func (t Tag) IsRoot() bool {
-	if t.full != nil {
-		return t.full.IsRoot()
-	}
-	return t.language == _und
+	return compact.Tag(t).IsRoot()
 }
 
 // CanonType can be used to enable or disable various types of canonicalization.
@@ -233,8 +187,8 @@
 // Canonicalize returns the canonicalized equivalent of the tag.
 func (c CanonType) Canonicalize(t Tag) (Tag, error) {
 	// First try fast path.
-	if t.full == nil {
-		if _, changed := canonicalize(c, t.language.tag()); !changed {
+	if t.isCompact() {
+		if _, changed := canonicalize(c, compact.Tag(t).Tag()); !changed {
 			return t, nil
 		}
 	}
@@ -366,7 +320,7 @@
 // Variants returns the variants specified explicitly for this language tag.
 // or nil if no variant was specified.
 func (t Tag) Variants() []Variant {
-	if !t.mayHaveVariants() {
+	if !compact.Tag(t).MayHaveVariants() {
 		return nil
 	}
 	v := []Variant{}
@@ -382,19 +336,7 @@
 // specific language are substituted with fields from the parent language.
 // The parent for a language may change for newer versions of CLDR.
 func (t Tag) Parent() Tag {
-	if t.full != nil {
-		return makeTag(t.full.Parent())
-	}
-	if t.language != t.locale {
-		// Simulate stripping -u-rg-xxxxxx
-		return Tag{language: t.language, locale: t.language}
-	}
-	// TODO: use parent lookup table once cycle from internal package is
-	// removed. Probably by internalizing the table and declaring this fast
-	// enough.
-	// lang := compactID(internal.Parent(uint16(t.language)))
-	lang, _ := compactIndex(t.language.tag().Parent())
-	return Tag{language: lang, locale: lang}
+	return Tag(compact.Tag(t).Parent())
 }
 
 // returns token t and the rest of the string.
@@ -442,7 +384,7 @@
 // false for ok if t does not have the requested extension. The returned
 // extension will be invalid in this case.
 func (t Tag) Extension(x byte) (ext Extension, ok bool) {
-	if !t.mayHaveExtensions() {
+	if !compact.Tag(t).MayHaveExtensions() {
 		return Extension{}, false
 	}
 	e, ok := t.tag().Extension(x)
@@ -451,7 +393,7 @@
 
 // Extensions returns all extensions of t.
 func (t Tag) Extensions() []Extension {
-	if !t.mayHaveExtensions() {
+	if !compact.Tag(t).MayHaveExtensions() {
 		return nil
 	}
 	e := []Extension{}
@@ -466,7 +408,7 @@
 // http://www.unicode.org/reports/tr35/#Unicode_Language_and_Locale_Identifiers.
 // TypeForKey will traverse the inheritance chain to get the correct value.
 func (t Tag) TypeForKey(key string) string {
-	if !t.mayHaveExtensions() {
+	if !compact.Tag(t).MayHaveExtensions() {
 		if key != "rg" && key != "va" {
 			return ""
 		}
@@ -483,126 +425,18 @@
 	return makeTag(tt), err
 }
 
+// NumCompactTags is the number of compact tags. The maximum tag is
+// NumCompactTags-1.
+const NumCompactTags = compact.NumCompactTags
+
 // CompactIndex returns an index, where 0 <= index < NumCompactTags, for tags
 // for which data exists in the text repository.The index will change over time
 // and should not be stored in persistent storage. If t does not match a compact
 // index, exact will be false and the compact index will be returned for the
 // first match after repeatedly taking the Parent of t.
 func CompactIndex(t Tag) (index int, exact bool) {
-	return int(t.language), t.full == nil
-}
-
-// TODO: make these functions and methods public once we settle on the API and
-//
-
-// regionalCompactIndex returns the CompactIndex for the regional variant of
-// this tag. This index is used to indicate region-specific overrides, such as
-// default currency, default calendar and week data, default time cycle, and
-// default measurement system and unit preferences.
-//
-// For instance, the tag en-GB-u-rg-uszzzz specifies British English with US
-// settings for currency, number formatting, etc. The CompactIndex for this tag
-// will be that for en-GB, while the regionalCompactIndex will be the one
-// corresponding to en-US.
-func regionalCompactIndex(t Tag) (index int, exact bool) {
-	return int(t.locale), t.full == nil
-}
-
-// languageTag returns t stripped of regional variant indicators.
-//
-// At the moment this means it is stripped of a regional and variant subtag "rg"
-// and "va" in the "u" extension.
-func (t Tag) languageTag() Tag {
-	if t.full == nil {
-		return Tag{language: t.language, locale: t.language}
-	}
-	tt := t.tag()
-	tt.SetTypeForKey("rg", "")
-	tt.SetTypeForKey("va", "")
-	return makeTag(tt)
-}
-
-// regionalTag returns the regional variant of the tag.
-//
-// At the moment this means that the region is set from the regional subtag
-// "rg" in the "u" extension.
-func (t Tag) regionalTag() Tag {
-	rt := Tag{language: t.locale, locale: t.locale}
-	if t.full == nil {
-		return rt
-	}
-	t, _ = Raw.Compose(rt, t.Variants(), t.Extensions())
-	t, _ = t.SetTypeForKey("rg", "")
-	return t
-}
-
-func compactIndex(t language.Tag) (index compactID, exact bool) {
-	// TODO: perhaps give more frequent tags a lower index.
-	// TODO: we could make the indexes stable. This will excluded some
-	//       possibilities for optimization, so don't do this quite yet.
-	exact = true
-
-	b, s, r := t.Raw()
-	switch {
-	case t.HasString():
-		if t.IsPrivateUse() {
-			// We have no entries for user-defined tags.
-			return 0, false
-		}
-		hasExtra := false
-		if t.HasVariants() {
-			if t.HasExtensions() {
-				build := language.Builder{}
-				build.SetTag(language.Tag{LangID: b, ScriptID: s, RegionID: r})
-				build.AddVariant(t.Variants())
-				exact = false
-				t = build.Make()
-			}
-			hasExtra = true
-		} else if _, ok := t.Extension('u'); ok {
-			// TODO: va may mean something else. Consider not considering it.
-			// Strip all but the 'va' entry.
-			old := t
-			variant := t.TypeForKey("va")
-			t = language.Tag{LangID: b, ScriptID: s, RegionID: r}
-			if variant != "" {
-				t, _ = t.SetTypeForKey("va", variant)
-				hasExtra = true
-			}
-			exact = old == t
-		} else {
-			exact = false
-		}
-		if hasExtra {
-			// We have some variants.
-			for i, s := range specialTags {
-				if s == t {
-					return compactID(i + len(coreTags)), exact
-				}
-			}
-			exact = false
-		}
-	}
-	if x, ok := getCoreIndex(t); ok {
-		return x, exact
-	}
-	exact = false
-	if r != 0 && s == 0 {
-		// Deal with cases where an extra script is inserted for the region.
-		t, _ := t.Maximize()
-		if x, ok := getCoreIndex(t); ok {
-			return x, exact
-		}
-	}
-	for t = t.Parent(); t != root; t = t.Parent() {
-		// No variants specified: just compare core components.
-		// The key has the form lllssrrr, where l, s, and r are nibbles for
-		// respectively the langID, scriptID, and regionID.
-		if x, ok := getCoreIndex(t); ok {
-			return x, exact
-		}
-	}
-	return 0, exact
+	id, exact := compact.LanguageID(compact.Tag(t))
+	return int(id), exact
 }
 
 var root = language.Tag{}
diff --git a/language/language_test.go b/language/language_test.go
index 168af38..f7711ba 100644
--- a/language/language_test.go
+++ b/language/language_test.go
@@ -58,77 +58,6 @@
 	}
 }
 
-type compactTest struct {
-	tag   string
-	index compactID
-	ok    bool
-}
-
-var compactTests = []compactTest{
-	// TODO: these values will change with each CLDR update. This issue
-	// will be solved if we decide to fix the indexes.
-	{"und", undIndex, true},
-	{"ca-ES-valencia", caESvalenciaIndex, true},
-	{"ca-ES-valencia-u-va-posix", caESvalenciaIndex, false},
-	{"ca-ES-valencia-u-co-phonebk", caESvalenciaIndex, false},
-	{"ca-ES-valencia-u-co-phonebk-va-posix", caESvalenciaIndex, false},
-	{"x-klingon", 0, false},
-	{"en-US", enUSIndex, true},
-	{"en-US-u-va-posix", enUSuvaposixIndex, true},
-	{"en", enIndex, true},
-	{"en-u-co-phonebk", enIndex, false},
-	{"en-001", en001Index, true},
-	{"zh-Hant-HK", zhHantHKIndex, true},
-	{"zh-HK", zhHantHKIndex, false}, // maximized to zh-Hant-HK
-	{"nl-Beng", 0, false},           // parent skips script
-	{"nl-NO", nlIndex, false},       // region is ignored
-	{"nl-Latn-NO", nlIndex, false},
-	{"nl-Latn-NO-u-co-phonebk", nlIndex, false},
-	{"nl-Latn-NO-valencia", nlIndex, false},
-	{"nl-Latn-NO-oxendict", nlIndex, false},
-	{"sh", shIndex, true}, // From plural rules.
-}
-
-func TestCompactIndex(t *testing.T) {
-	tests := append(compactTests, []compactTest{
-		{"en-GB", enGBIndex, true},
-		{"en-GB-u-rg-uszzzz", enGBIndex, true},
-		{"en-GB-u-rg-USZZZZ", enGBIndex, true},
-		{"en-GB-u-rg-uszzzz-va-posix", enGBIndex, false},
-		{"en-GB-u-co-phonebk-rg-uszzzz", enGBIndex, false},
-		// Invalid region specifications are ignored.
-		{"en-GB-u-rg-usz-va-posix", enGBIndex, false},
-		{"en-GB-u-co-phonebk-rg-usz", enGBIndex, false},
-	}...)
-	for _, tt := range tests {
-		x, ok := CompactIndex(Raw.MustParse(tt.tag))
-		if compactID(x) != tt.index || ok != tt.ok {
-			t.Errorf("%s: got %d, %v; want %d %v", tt.tag, x, ok, tt.index, tt.ok)
-		}
-	}
-}
-
-func TestRegionalCompactIndex(t *testing.T) {
-	tests := append(compactTests, []compactTest{
-		{"en-GB", enGBIndex, true},
-		{"en-GB-u-rg-uszzzz", enUSIndex, true},
-		{"en-GB-u-rg-USZZZZ", enUSIndex, true},
-		// TODO: use different exact values for language and regional tag?
-		{"en-GB-u-rg-uszzzz-va-posix", enUSuvaposixIndex, false},
-		{"en-GB-u-co-phonebk-rg-uszzzz-va-posix", enUSuvaposixIndex, false},
-		{"en-GB-u-co-phonebk-rg-uszzzz", enUSIndex, false},
-		// Invalid region specifications are ignored.
-		{"en-GB-u-rg-usz-va-posix", enGBIndex, false},
-		{"en-GB-u-co-phonebk-rg-usz", enGBIndex, false},
-	}...)
-	for _, tt := range tests {
-		x, ok := regionalCompactIndex(Raw.MustParse(tt.tag))
-		if compactID(x) != tt.index || ok != tt.ok {
-			t.Errorf("%s: got %d, %v; want %d %v", tt.tag, x, ok, tt.index, tt.ok)
-		}
-	}
-}
-
 func TestMarshal(t *testing.T) {
 	testCases := []string{
 		// TODO: these values will change with each CLDR update. This issue
diff --git a/language/tables.go b/language/tables.go
index 1825af6..e228077 100644
--- a/language/tables.go
+++ b/language/tables.go
@@ -2,8 +2,6 @@
 
 package language
 
-import "golang.org/x/text/internal/language"
-
 // CLDRVersion is the CLDR version from which the tables in this package are derived.
 const CLDRVersion = "32"
 
@@ -49,1011 +47,6 @@
 	_Zzzz = 242
 )
 
-// NumCompactTags is the number of common tags. The maximum tag is
-// NumCompactTags-1.
-const NumCompactTags = 775
-const (
-	undIndex          compactID = 0
-	afIndex           compactID = 1
-	afNAIndex         compactID = 2
-	afZAIndex         compactID = 3
-	agqIndex          compactID = 4
-	agqCMIndex        compactID = 5
-	akIndex           compactID = 6
-	akGHIndex         compactID = 7
-	amIndex           compactID = 8
-	amETIndex         compactID = 9
-	arIndex           compactID = 10
-	ar001Index        compactID = 11
-	arAEIndex         compactID = 12
-	arBHIndex         compactID = 13
-	arDJIndex         compactID = 14
-	arDZIndex         compactID = 15
-	arEGIndex         compactID = 16
-	arEHIndex         compactID = 17
-	arERIndex         compactID = 18
-	arILIndex         compactID = 19
-	arIQIndex         compactID = 20
-	arJOIndex         compactID = 21
-	arKMIndex         compactID = 22
-	arKWIndex         compactID = 23
-	arLBIndex         compactID = 24
-	arLYIndex         compactID = 25
-	arMAIndex         compactID = 26
-	arMRIndex         compactID = 27
-	arOMIndex         compactID = 28
-	arPSIndex         compactID = 29
-	arQAIndex         compactID = 30
-	arSAIndex         compactID = 31
-	arSDIndex         compactID = 32
-	arSOIndex         compactID = 33
-	arSSIndex         compactID = 34
-	arSYIndex         compactID = 35
-	arTDIndex         compactID = 36
-	arTNIndex         compactID = 37
-	arYEIndex         compactID = 38
-	arsIndex          compactID = 39
-	asIndex           compactID = 40
-	asINIndex         compactID = 41
-	asaIndex          compactID = 42
-	asaTZIndex        compactID = 43
-	astIndex          compactID = 44
-	astESIndex        compactID = 45
-	azIndex           compactID = 46
-	azCyrlIndex       compactID = 47
-	azCyrlAZIndex     compactID = 48
-	azLatnIndex       compactID = 49
-	azLatnAZIndex     compactID = 50
-	basIndex          compactID = 51
-	basCMIndex        compactID = 52
-	beIndex           compactID = 53
-	beBYIndex         compactID = 54
-	bemIndex          compactID = 55
-	bemZMIndex        compactID = 56
-	bezIndex          compactID = 57
-	bezTZIndex        compactID = 58
-	bgIndex           compactID = 59
-	bgBGIndex         compactID = 60
-	bhIndex           compactID = 61
-	bmIndex           compactID = 62
-	bmMLIndex         compactID = 63
-	bnIndex           compactID = 64
-	bnBDIndex         compactID = 65
-	bnINIndex         compactID = 66
-	boIndex           compactID = 67
-	boCNIndex         compactID = 68
-	boINIndex         compactID = 69
-	brIndex           compactID = 70
-	brFRIndex         compactID = 71
-	brxIndex          compactID = 72
-	brxINIndex        compactID = 73
-	bsIndex           compactID = 74
-	bsCyrlIndex       compactID = 75
-	bsCyrlBAIndex     compactID = 76
-	bsLatnIndex       compactID = 77
-	bsLatnBAIndex     compactID = 78
-	caIndex           compactID = 79
-	caADIndex         compactID = 80
-	caESIndex         compactID = 81
-	caFRIndex         compactID = 82
-	caITIndex         compactID = 83
-	ccpIndex          compactID = 84
-	ccpBDIndex        compactID = 85
-	ccpINIndex        compactID = 86
-	ceIndex           compactID = 87
-	ceRUIndex         compactID = 88
-	cggIndex          compactID = 89
-	cggUGIndex        compactID = 90
-	chrIndex          compactID = 91
-	chrUSIndex        compactID = 92
-	ckbIndex          compactID = 93
-	ckbIQIndex        compactID = 94
-	ckbIRIndex        compactID = 95
-	csIndex           compactID = 96
-	csCZIndex         compactID = 97
-	cuIndex           compactID = 98
-	cuRUIndex         compactID = 99
-	cyIndex           compactID = 100
-	cyGBIndex         compactID = 101
-	daIndex           compactID = 102
-	daDKIndex         compactID = 103
-	daGLIndex         compactID = 104
-	davIndex          compactID = 105
-	davKEIndex        compactID = 106
-	deIndex           compactID = 107
-	deATIndex         compactID = 108
-	deBEIndex         compactID = 109
-	deCHIndex         compactID = 110
-	deDEIndex         compactID = 111
-	deITIndex         compactID = 112
-	deLIIndex         compactID = 113
-	deLUIndex         compactID = 114
-	djeIndex          compactID = 115
-	djeNEIndex        compactID = 116
-	dsbIndex          compactID = 117
-	dsbDEIndex        compactID = 118
-	duaIndex          compactID = 119
-	duaCMIndex        compactID = 120
-	dvIndex           compactID = 121
-	dyoIndex          compactID = 122
-	dyoSNIndex        compactID = 123
-	dzIndex           compactID = 124
-	dzBTIndex         compactID = 125
-	ebuIndex          compactID = 126
-	ebuKEIndex        compactID = 127
-	eeIndex           compactID = 128
-	eeGHIndex         compactID = 129
-	eeTGIndex         compactID = 130
-	elIndex           compactID = 131
-	elCYIndex         compactID = 132
-	elGRIndex         compactID = 133
-	enIndex           compactID = 134
-	en001Index        compactID = 135
-	en150Index        compactID = 136
-	enAGIndex         compactID = 137
-	enAIIndex         compactID = 138
-	enASIndex         compactID = 139
-	enATIndex         compactID = 140
-	enAUIndex         compactID = 141
-	enBBIndex         compactID = 142
-	enBEIndex         compactID = 143
-	enBIIndex         compactID = 144
-	enBMIndex         compactID = 145
-	enBSIndex         compactID = 146
-	enBWIndex         compactID = 147
-	enBZIndex         compactID = 148
-	enCAIndex         compactID = 149
-	enCCIndex         compactID = 150
-	enCHIndex         compactID = 151
-	enCKIndex         compactID = 152
-	enCMIndex         compactID = 153
-	enCXIndex         compactID = 154
-	enCYIndex         compactID = 155
-	enDEIndex         compactID = 156
-	enDGIndex         compactID = 157
-	enDKIndex         compactID = 158
-	enDMIndex         compactID = 159
-	enERIndex         compactID = 160
-	enFIIndex         compactID = 161
-	enFJIndex         compactID = 162
-	enFKIndex         compactID = 163
-	enFMIndex         compactID = 164
-	enGBIndex         compactID = 165
-	enGDIndex         compactID = 166
-	enGGIndex         compactID = 167
-	enGHIndex         compactID = 168
-	enGIIndex         compactID = 169
-	enGMIndex         compactID = 170
-	enGUIndex         compactID = 171
-	enGYIndex         compactID = 172
-	enHKIndex         compactID = 173
-	enIEIndex         compactID = 174
-	enILIndex         compactID = 175
-	enIMIndex         compactID = 176
-	enINIndex         compactID = 177
-	enIOIndex         compactID = 178
-	enJEIndex         compactID = 179
-	enJMIndex         compactID = 180
-	enKEIndex         compactID = 181
-	enKIIndex         compactID = 182
-	enKNIndex         compactID = 183
-	enKYIndex         compactID = 184
-	enLCIndex         compactID = 185
-	enLRIndex         compactID = 186
-	enLSIndex         compactID = 187
-	enMGIndex         compactID = 188
-	enMHIndex         compactID = 189
-	enMOIndex         compactID = 190
-	enMPIndex         compactID = 191
-	enMSIndex         compactID = 192
-	enMTIndex         compactID = 193
-	enMUIndex         compactID = 194
-	enMWIndex         compactID = 195
-	enMYIndex         compactID = 196
-	enNAIndex         compactID = 197
-	enNFIndex         compactID = 198
-	enNGIndex         compactID = 199
-	enNLIndex         compactID = 200
-	enNRIndex         compactID = 201
-	enNUIndex         compactID = 202
-	enNZIndex         compactID = 203
-	enPGIndex         compactID = 204
-	enPHIndex         compactID = 205
-	enPKIndex         compactID = 206
-	enPNIndex         compactID = 207
-	enPRIndex         compactID = 208
-	enPWIndex         compactID = 209
-	enRWIndex         compactID = 210
-	enSBIndex         compactID = 211
-	enSCIndex         compactID = 212
-	enSDIndex         compactID = 213
-	enSEIndex         compactID = 214
-	enSGIndex         compactID = 215
-	enSHIndex         compactID = 216
-	enSIIndex         compactID = 217
-	enSLIndex         compactID = 218
-	enSSIndex         compactID = 219
-	enSXIndex         compactID = 220
-	enSZIndex         compactID = 221
-	enTCIndex         compactID = 222
-	enTKIndex         compactID = 223
-	enTOIndex         compactID = 224
-	enTTIndex         compactID = 225
-	enTVIndex         compactID = 226
-	enTZIndex         compactID = 227
-	enUGIndex         compactID = 228
-	enUMIndex         compactID = 229
-	enUSIndex         compactID = 230
-	enVCIndex         compactID = 231
-	enVGIndex         compactID = 232
-	enVIIndex         compactID = 233
-	enVUIndex         compactID = 234
-	enWSIndex         compactID = 235
-	enZAIndex         compactID = 236
-	enZMIndex         compactID = 237
-	enZWIndex         compactID = 238
-	eoIndex           compactID = 239
-	eo001Index        compactID = 240
-	esIndex           compactID = 241
-	es419Index        compactID = 242
-	esARIndex         compactID = 243
-	esBOIndex         compactID = 244
-	esBRIndex         compactID = 245
-	esBZIndex         compactID = 246
-	esCLIndex         compactID = 247
-	esCOIndex         compactID = 248
-	esCRIndex         compactID = 249
-	esCUIndex         compactID = 250
-	esDOIndex         compactID = 251
-	esEAIndex         compactID = 252
-	esECIndex         compactID = 253
-	esESIndex         compactID = 254
-	esGQIndex         compactID = 255
-	esGTIndex         compactID = 256
-	esHNIndex         compactID = 257
-	esICIndex         compactID = 258
-	esMXIndex         compactID = 259
-	esNIIndex         compactID = 260
-	esPAIndex         compactID = 261
-	esPEIndex         compactID = 262
-	esPHIndex         compactID = 263
-	esPRIndex         compactID = 264
-	esPYIndex         compactID = 265
-	esSVIndex         compactID = 266
-	esUSIndex         compactID = 267
-	esUYIndex         compactID = 268
-	esVEIndex         compactID = 269
-	etIndex           compactID = 270
-	etEEIndex         compactID = 271
-	euIndex           compactID = 272
-	euESIndex         compactID = 273
-	ewoIndex          compactID = 274
-	ewoCMIndex        compactID = 275
-	faIndex           compactID = 276
-	faAFIndex         compactID = 277
-	faIRIndex         compactID = 278
-	ffIndex           compactID = 279
-	ffCMIndex         compactID = 280
-	ffGNIndex         compactID = 281
-	ffMRIndex         compactID = 282
-	ffSNIndex         compactID = 283
-	fiIndex           compactID = 284
-	fiFIIndex         compactID = 285
-	filIndex          compactID = 286
-	filPHIndex        compactID = 287
-	foIndex           compactID = 288
-	foDKIndex         compactID = 289
-	foFOIndex         compactID = 290
-	frIndex           compactID = 291
-	frBEIndex         compactID = 292
-	frBFIndex         compactID = 293
-	frBIIndex         compactID = 294
-	frBJIndex         compactID = 295
-	frBLIndex         compactID = 296
-	frCAIndex         compactID = 297
-	frCDIndex         compactID = 298
-	frCFIndex         compactID = 299
-	frCGIndex         compactID = 300
-	frCHIndex         compactID = 301
-	frCIIndex         compactID = 302
-	frCMIndex         compactID = 303
-	frDJIndex         compactID = 304
-	frDZIndex         compactID = 305
-	frFRIndex         compactID = 306
-	frGAIndex         compactID = 307
-	frGFIndex         compactID = 308
-	frGNIndex         compactID = 309
-	frGPIndex         compactID = 310
-	frGQIndex         compactID = 311
-	frHTIndex         compactID = 312
-	frKMIndex         compactID = 313
-	frLUIndex         compactID = 314
-	frMAIndex         compactID = 315
-	frMCIndex         compactID = 316
-	frMFIndex         compactID = 317
-	frMGIndex         compactID = 318
-	frMLIndex         compactID = 319
-	frMQIndex         compactID = 320
-	frMRIndex         compactID = 321
-	frMUIndex         compactID = 322
-	frNCIndex         compactID = 323
-	frNEIndex         compactID = 324
-	frPFIndex         compactID = 325
-	frPMIndex         compactID = 326
-	frREIndex         compactID = 327
-	frRWIndex         compactID = 328
-	frSCIndex         compactID = 329
-	frSNIndex         compactID = 330
-	frSYIndex         compactID = 331
-	frTDIndex         compactID = 332
-	frTGIndex         compactID = 333
-	frTNIndex         compactID = 334
-	frVUIndex         compactID = 335
-	frWFIndex         compactID = 336
-	frYTIndex         compactID = 337
-	furIndex          compactID = 338
-	furITIndex        compactID = 339
-	fyIndex           compactID = 340
-	fyNLIndex         compactID = 341
-	gaIndex           compactID = 342
-	gaIEIndex         compactID = 343
-	gdIndex           compactID = 344
-	gdGBIndex         compactID = 345
-	glIndex           compactID = 346
-	glESIndex         compactID = 347
-	gswIndex          compactID = 348
-	gswCHIndex        compactID = 349
-	gswFRIndex        compactID = 350
-	gswLIIndex        compactID = 351
-	guIndex           compactID = 352
-	guINIndex         compactID = 353
-	guwIndex          compactID = 354
-	guzIndex          compactID = 355
-	guzKEIndex        compactID = 356
-	gvIndex           compactID = 357
-	gvIMIndex         compactID = 358
-	haIndex           compactID = 359
-	haGHIndex         compactID = 360
-	haNEIndex         compactID = 361
-	haNGIndex         compactID = 362
-	hawIndex          compactID = 363
-	hawUSIndex        compactID = 364
-	heIndex           compactID = 365
-	heILIndex         compactID = 366
-	hiIndex           compactID = 367
-	hiINIndex         compactID = 368
-	hrIndex           compactID = 369
-	hrBAIndex         compactID = 370
-	hrHRIndex         compactID = 371
-	hsbIndex          compactID = 372
-	hsbDEIndex        compactID = 373
-	huIndex           compactID = 374
-	huHUIndex         compactID = 375
-	hyIndex           compactID = 376
-	hyAMIndex         compactID = 377
-	idIndex           compactID = 378
-	idIDIndex         compactID = 379
-	igIndex           compactID = 380
-	igNGIndex         compactID = 381
-	iiIndex           compactID = 382
-	iiCNIndex         compactID = 383
-	inIndex           compactID = 384
-	ioIndex           compactID = 385
-	isIndex           compactID = 386
-	isISIndex         compactID = 387
-	itIndex           compactID = 388
-	itCHIndex         compactID = 389
-	itITIndex         compactID = 390
-	itSMIndex         compactID = 391
-	itVAIndex         compactID = 392
-	iuIndex           compactID = 393
-	iwIndex           compactID = 394
-	jaIndex           compactID = 395
-	jaJPIndex         compactID = 396
-	jboIndex          compactID = 397
-	jgoIndex          compactID = 398
-	jgoCMIndex        compactID = 399
-	jiIndex           compactID = 400
-	jmcIndex          compactID = 401
-	jmcTZIndex        compactID = 402
-	jvIndex           compactID = 403
-	jwIndex           compactID = 404
-	kaIndex           compactID = 405
-	kaGEIndex         compactID = 406
-	kabIndex          compactID = 407
-	kabDZIndex        compactID = 408
-	kajIndex          compactID = 409
-	kamIndex          compactID = 410
-	kamKEIndex        compactID = 411
-	kcgIndex          compactID = 412
-	kdeIndex          compactID = 413
-	kdeTZIndex        compactID = 414
-	keaIndex          compactID = 415
-	keaCVIndex        compactID = 416
-	khqIndex          compactID = 417
-	khqMLIndex        compactID = 418
-	kiIndex           compactID = 419
-	kiKEIndex         compactID = 420
-	kkIndex           compactID = 421
-	kkKZIndex         compactID = 422
-	kkjIndex          compactID = 423
-	kkjCMIndex        compactID = 424
-	klIndex           compactID = 425
-	klGLIndex         compactID = 426
-	klnIndex          compactID = 427
-	klnKEIndex        compactID = 428
-	kmIndex           compactID = 429
-	kmKHIndex         compactID = 430
-	knIndex           compactID = 431
-	knINIndex         compactID = 432
-	koIndex           compactID = 433
-	koKPIndex         compactID = 434
-	koKRIndex         compactID = 435
-	kokIndex          compactID = 436
-	kokINIndex        compactID = 437
-	ksIndex           compactID = 438
-	ksINIndex         compactID = 439
-	ksbIndex          compactID = 440
-	ksbTZIndex        compactID = 441
-	ksfIndex          compactID = 442
-	ksfCMIndex        compactID = 443
-	kshIndex          compactID = 444
-	kshDEIndex        compactID = 445
-	kuIndex           compactID = 446
-	kwIndex           compactID = 447
-	kwGBIndex         compactID = 448
-	kyIndex           compactID = 449
-	kyKGIndex         compactID = 450
-	lagIndex          compactID = 451
-	lagTZIndex        compactID = 452
-	lbIndex           compactID = 453
-	lbLUIndex         compactID = 454
-	lgIndex           compactID = 455
-	lgUGIndex         compactID = 456
-	lktIndex          compactID = 457
-	lktUSIndex        compactID = 458
-	lnIndex           compactID = 459
-	lnAOIndex         compactID = 460
-	lnCDIndex         compactID = 461
-	lnCFIndex         compactID = 462
-	lnCGIndex         compactID = 463
-	loIndex           compactID = 464
-	loLAIndex         compactID = 465
-	lrcIndex          compactID = 466
-	lrcIQIndex        compactID = 467
-	lrcIRIndex        compactID = 468
-	ltIndex           compactID = 469
-	ltLTIndex         compactID = 470
-	luIndex           compactID = 471
-	luCDIndex         compactID = 472
-	luoIndex          compactID = 473
-	luoKEIndex        compactID = 474
-	luyIndex          compactID = 475
-	luyKEIndex        compactID = 476
-	lvIndex           compactID = 477
-	lvLVIndex         compactID = 478
-	masIndex          compactID = 479
-	masKEIndex        compactID = 480
-	masTZIndex        compactID = 481
-	merIndex          compactID = 482
-	merKEIndex        compactID = 483
-	mfeIndex          compactID = 484
-	mfeMUIndex        compactID = 485
-	mgIndex           compactID = 486
-	mgMGIndex         compactID = 487
-	mghIndex          compactID = 488
-	mghMZIndex        compactID = 489
-	mgoIndex          compactID = 490
-	mgoCMIndex        compactID = 491
-	mkIndex           compactID = 492
-	mkMKIndex         compactID = 493
-	mlIndex           compactID = 494
-	mlINIndex         compactID = 495
-	mnIndex           compactID = 496
-	mnMNIndex         compactID = 497
-	moIndex           compactID = 498
-	mrIndex           compactID = 499
-	mrINIndex         compactID = 500
-	msIndex           compactID = 501
-	msBNIndex         compactID = 502
-	msMYIndex         compactID = 503
-	msSGIndex         compactID = 504
-	mtIndex           compactID = 505
-	mtMTIndex         compactID = 506
-	muaIndex          compactID = 507
-	muaCMIndex        compactID = 508
-	myIndex           compactID = 509
-	myMMIndex         compactID = 510
-	mznIndex          compactID = 511
-	mznIRIndex        compactID = 512
-	nahIndex          compactID = 513
-	naqIndex          compactID = 514
-	naqNAIndex        compactID = 515
-	nbIndex           compactID = 516
-	nbNOIndex         compactID = 517
-	nbSJIndex         compactID = 518
-	ndIndex           compactID = 519
-	ndZWIndex         compactID = 520
-	ndsIndex          compactID = 521
-	ndsDEIndex        compactID = 522
-	ndsNLIndex        compactID = 523
-	neIndex           compactID = 524
-	neINIndex         compactID = 525
-	neNPIndex         compactID = 526
-	nlIndex           compactID = 527
-	nlAWIndex         compactID = 528
-	nlBEIndex         compactID = 529
-	nlBQIndex         compactID = 530
-	nlCWIndex         compactID = 531
-	nlNLIndex         compactID = 532
-	nlSRIndex         compactID = 533
-	nlSXIndex         compactID = 534
-	nmgIndex          compactID = 535
-	nmgCMIndex        compactID = 536
-	nnIndex           compactID = 537
-	nnNOIndex         compactID = 538
-	nnhIndex          compactID = 539
-	nnhCMIndex        compactID = 540
-	noIndex           compactID = 541
-	nqoIndex          compactID = 542
-	nrIndex           compactID = 543
-	nsoIndex          compactID = 544
-	nusIndex          compactID = 545
-	nusSSIndex        compactID = 546
-	nyIndex           compactID = 547
-	nynIndex          compactID = 548
-	nynUGIndex        compactID = 549
-	omIndex           compactID = 550
-	omETIndex         compactID = 551
-	omKEIndex         compactID = 552
-	orIndex           compactID = 553
-	orINIndex         compactID = 554
-	osIndex           compactID = 555
-	osGEIndex         compactID = 556
-	osRUIndex         compactID = 557
-	paIndex           compactID = 558
-	paArabIndex       compactID = 559
-	paArabPKIndex     compactID = 560
-	paGuruIndex       compactID = 561
-	paGuruINIndex     compactID = 562
-	papIndex          compactID = 563
-	plIndex           compactID = 564
-	plPLIndex         compactID = 565
-	prgIndex          compactID = 566
-	prg001Index       compactID = 567
-	psIndex           compactID = 568
-	psAFIndex         compactID = 569
-	ptIndex           compactID = 570
-	ptAOIndex         compactID = 571
-	ptBRIndex         compactID = 572
-	ptCHIndex         compactID = 573
-	ptCVIndex         compactID = 574
-	ptGQIndex         compactID = 575
-	ptGWIndex         compactID = 576
-	ptLUIndex         compactID = 577
-	ptMOIndex         compactID = 578
-	ptMZIndex         compactID = 579
-	ptPTIndex         compactID = 580
-	ptSTIndex         compactID = 581
-	ptTLIndex         compactID = 582
-	quIndex           compactID = 583
-	quBOIndex         compactID = 584
-	quECIndex         compactID = 585
-	quPEIndex         compactID = 586
-	rmIndex           compactID = 587
-	rmCHIndex         compactID = 588
-	rnIndex           compactID = 589
-	rnBIIndex         compactID = 590
-	roIndex           compactID = 591
-	roMDIndex         compactID = 592
-	roROIndex         compactID = 593
-	rofIndex          compactID = 594
-	rofTZIndex        compactID = 595
-	ruIndex           compactID = 596
-	ruBYIndex         compactID = 597
-	ruKGIndex         compactID = 598
-	ruKZIndex         compactID = 599
-	ruMDIndex         compactID = 600
-	ruRUIndex         compactID = 601
-	ruUAIndex         compactID = 602
-	rwIndex           compactID = 603
-	rwRWIndex         compactID = 604
-	rwkIndex          compactID = 605
-	rwkTZIndex        compactID = 606
-	sahIndex          compactID = 607
-	sahRUIndex        compactID = 608
-	saqIndex          compactID = 609
-	saqKEIndex        compactID = 610
-	sbpIndex          compactID = 611
-	sbpTZIndex        compactID = 612
-	sdIndex           compactID = 613
-	sdPKIndex         compactID = 614
-	sdhIndex          compactID = 615
-	seIndex           compactID = 616
-	seFIIndex         compactID = 617
-	seNOIndex         compactID = 618
-	seSEIndex         compactID = 619
-	sehIndex          compactID = 620
-	sehMZIndex        compactID = 621
-	sesIndex          compactID = 622
-	sesMLIndex        compactID = 623
-	sgIndex           compactID = 624
-	sgCFIndex         compactID = 625
-	shIndex           compactID = 626
-	shiIndex          compactID = 627
-	shiLatnIndex      compactID = 628
-	shiLatnMAIndex    compactID = 629
-	shiTfngIndex      compactID = 630
-	shiTfngMAIndex    compactID = 631
-	siIndex           compactID = 632
-	siLKIndex         compactID = 633
-	skIndex           compactID = 634
-	skSKIndex         compactID = 635
-	slIndex           compactID = 636
-	slSIIndex         compactID = 637
-	smaIndex          compactID = 638
-	smiIndex          compactID = 639
-	smjIndex          compactID = 640
-	smnIndex          compactID = 641
-	smnFIIndex        compactID = 642
-	smsIndex          compactID = 643
-	snIndex           compactID = 644
-	snZWIndex         compactID = 645
-	soIndex           compactID = 646
-	soDJIndex         compactID = 647
-	soETIndex         compactID = 648
-	soKEIndex         compactID = 649
-	soSOIndex         compactID = 650
-	sqIndex           compactID = 651
-	sqALIndex         compactID = 652
-	sqMKIndex         compactID = 653
-	sqXKIndex         compactID = 654
-	srIndex           compactID = 655
-	srCyrlIndex       compactID = 656
-	srCyrlBAIndex     compactID = 657
-	srCyrlMEIndex     compactID = 658
-	srCyrlRSIndex     compactID = 659
-	srCyrlXKIndex     compactID = 660
-	srLatnIndex       compactID = 661
-	srLatnBAIndex     compactID = 662
-	srLatnMEIndex     compactID = 663
-	srLatnRSIndex     compactID = 664
-	srLatnXKIndex     compactID = 665
-	ssIndex           compactID = 666
-	ssyIndex          compactID = 667
-	stIndex           compactID = 668
-	svIndex           compactID = 669
-	svAXIndex         compactID = 670
-	svFIIndex         compactID = 671
-	svSEIndex         compactID = 672
-	swIndex           compactID = 673
-	swCDIndex         compactID = 674
-	swKEIndex         compactID = 675
-	swTZIndex         compactID = 676
-	swUGIndex         compactID = 677
-	syrIndex          compactID = 678
-	taIndex           compactID = 679
-	taINIndex         compactID = 680
-	taLKIndex         compactID = 681
-	taMYIndex         compactID = 682
-	taSGIndex         compactID = 683
-	teIndex           compactID = 684
-	teINIndex         compactID = 685
-	teoIndex          compactID = 686
-	teoKEIndex        compactID = 687
-	teoUGIndex        compactID = 688
-	tgIndex           compactID = 689
-	tgTJIndex         compactID = 690
-	thIndex           compactID = 691
-	thTHIndex         compactID = 692
-	tiIndex           compactID = 693
-	tiERIndex         compactID = 694
-	tiETIndex         compactID = 695
-	tigIndex          compactID = 696
-	tkIndex           compactID = 697
-	tkTMIndex         compactID = 698
-	tlIndex           compactID = 699
-	tnIndex           compactID = 700
-	toIndex           compactID = 701
-	toTOIndex         compactID = 702
-	trIndex           compactID = 703
-	trCYIndex         compactID = 704
-	trTRIndex         compactID = 705
-	tsIndex           compactID = 706
-	ttIndex           compactID = 707
-	ttRUIndex         compactID = 708
-	twqIndex          compactID = 709
-	twqNEIndex        compactID = 710
-	tzmIndex          compactID = 711
-	tzmMAIndex        compactID = 712
-	ugIndex           compactID = 713
-	ugCNIndex         compactID = 714
-	ukIndex           compactID = 715
-	ukUAIndex         compactID = 716
-	urIndex           compactID = 717
-	urINIndex         compactID = 718
-	urPKIndex         compactID = 719
-	uzIndex           compactID = 720
-	uzArabIndex       compactID = 721
-	uzArabAFIndex     compactID = 722
-	uzCyrlIndex       compactID = 723
-	uzCyrlUZIndex     compactID = 724
-	uzLatnIndex       compactID = 725
-	uzLatnUZIndex     compactID = 726
-	vaiIndex          compactID = 727
-	vaiLatnIndex      compactID = 728
-	vaiLatnLRIndex    compactID = 729
-	vaiVaiiIndex      compactID = 730
-	vaiVaiiLRIndex    compactID = 731
-	veIndex           compactID = 732
-	viIndex           compactID = 733
-	viVNIndex         compactID = 734
-	voIndex           compactID = 735
-	vo001Index        compactID = 736
-	vunIndex          compactID = 737
-	vunTZIndex        compactID = 738
-	waIndex           compactID = 739
-	waeIndex          compactID = 740
-	waeCHIndex        compactID = 741
-	woIndex           compactID = 742
-	woSNIndex         compactID = 743
-	xhIndex           compactID = 744
-	xogIndex          compactID = 745
-	xogUGIndex        compactID = 746
-	yavIndex          compactID = 747
-	yavCMIndex        compactID = 748
-	yiIndex           compactID = 749
-	yi001Index        compactID = 750
-	yoIndex           compactID = 751
-	yoBJIndex         compactID = 752
-	yoNGIndex         compactID = 753
-	yueIndex          compactID = 754
-	yueHansIndex      compactID = 755
-	yueHansCNIndex    compactID = 756
-	yueHantIndex      compactID = 757
-	yueHantHKIndex    compactID = 758
-	zghIndex          compactID = 759
-	zghMAIndex        compactID = 760
-	zhIndex           compactID = 761
-	zhHansIndex       compactID = 762
-	zhHansCNIndex     compactID = 763
-	zhHansHKIndex     compactID = 764
-	zhHansMOIndex     compactID = 765
-	zhHansSGIndex     compactID = 766
-	zhHantIndex       compactID = 767
-	zhHantHKIndex     compactID = 768
-	zhHantMOIndex     compactID = 769
-	zhHantTWIndex     compactID = 770
-	zuIndex           compactID = 771
-	zuZAIndex         compactID = 772
-	caESvalenciaIndex compactID = 773
-	enUSuvaposixIndex compactID = 774
-)
-
-var coreTags = []language.CompactCoreInfo{ // 773 elements
-	// Entry 0 - 1F
-	0x00000000, 0x01600000, 0x016000d2, 0x01600161,
-	0x01c00000, 0x01c00052, 0x02100000, 0x02100080,
-	0x02700000, 0x0270006f, 0x03a00000, 0x03a00001,
-	0x03a00023, 0x03a00039, 0x03a00062, 0x03a00067,
-	0x03a0006b, 0x03a0006c, 0x03a0006d, 0x03a00097,
-	0x03a0009b, 0x03a000a1, 0x03a000a8, 0x03a000ac,
-	0x03a000b0, 0x03a000b9, 0x03a000ba, 0x03a000c9,
-	0x03a000e1, 0x03a000ed, 0x03a000f3, 0x03a00108,
-	// Entry 20 - 3F
-	0x03a0010b, 0x03a00115, 0x03a00117, 0x03a0011c,
-	0x03a00120, 0x03a00128, 0x03a0015e, 0x04000000,
-	0x04300000, 0x04300099, 0x04400000, 0x0440012f,
-	0x04800000, 0x0480006e, 0x05800000, 0x0581f000,
-	0x0581f032, 0x05857000, 0x05857032, 0x05e00000,
-	0x05e00052, 0x07100000, 0x07100047, 0x07500000,
-	0x07500162, 0x07900000, 0x0790012f, 0x07e00000,
-	0x07e00038, 0x08200000, 0x0a000000, 0x0a0000c3,
-	// Entry 40 - 5F
-	0x0a500000, 0x0a500035, 0x0a500099, 0x0a900000,
-	0x0a900053, 0x0a900099, 0x0b200000, 0x0b200078,
-	0x0b500000, 0x0b500099, 0x0b700000, 0x0b71f000,
-	0x0b71f033, 0x0b757000, 0x0b757033, 0x0d700000,
-	0x0d700022, 0x0d70006e, 0x0d700078, 0x0d70009e,
-	0x0db00000, 0x0db00035, 0x0db00099, 0x0dc00000,
-	0x0dc00106, 0x0df00000, 0x0df00131, 0x0e500000,
-	0x0e500135, 0x0e900000, 0x0e90009b, 0x0e90009c,
-	// Entry 60 - 7F
-	0x0fa00000, 0x0fa0005e, 0x0fe00000, 0x0fe00106,
-	0x10000000, 0x1000007b, 0x10100000, 0x10100063,
-	0x10100082, 0x10800000, 0x108000a4, 0x10d00000,
-	0x10d0002e, 0x10d00036, 0x10d0004e, 0x10d00060,
-	0x10d0009e, 0x10d000b2, 0x10d000b7, 0x11700000,
-	0x117000d4, 0x11f00000, 0x11f00060, 0x12400000,
-	0x12400052, 0x12800000, 0x12b00000, 0x12b00114,
-	0x12d00000, 0x12d00043, 0x12f00000, 0x12f000a4,
-	// Entry 80 - 9F
-	0x13000000, 0x13000080, 0x13000122, 0x13600000,
-	0x1360005d, 0x13600087, 0x13900000, 0x13900001,
-	0x1390001a, 0x13900025, 0x13900026, 0x1390002d,
-	0x1390002e, 0x1390002f, 0x13900034, 0x13900036,
-	0x1390003a, 0x1390003d, 0x13900042, 0x13900046,
-	0x13900048, 0x13900049, 0x1390004a, 0x1390004e,
-	0x13900050, 0x13900052, 0x1390005c, 0x1390005d,
-	0x13900060, 0x13900061, 0x13900063, 0x13900064,
-	// Entry A0 - BF
-	0x1390006d, 0x13900072, 0x13900073, 0x13900074,
-	0x13900075, 0x1390007b, 0x1390007c, 0x1390007f,
-	0x13900080, 0x13900081, 0x13900083, 0x1390008a,
-	0x1390008c, 0x1390008d, 0x13900096, 0x13900097,
-	0x13900098, 0x13900099, 0x1390009a, 0x1390009f,
-	0x139000a0, 0x139000a4, 0x139000a7, 0x139000a9,
-	0x139000ad, 0x139000b1, 0x139000b4, 0x139000b5,
-	0x139000bf, 0x139000c0, 0x139000c6, 0x139000c7,
-	// Entry C0 - DF
-	0x139000ca, 0x139000cb, 0x139000cc, 0x139000ce,
-	0x139000d0, 0x139000d2, 0x139000d5, 0x139000d6,
-	0x139000d9, 0x139000dd, 0x139000df, 0x139000e0,
-	0x139000e6, 0x139000e7, 0x139000e8, 0x139000eb,
-	0x139000ec, 0x139000f0, 0x13900107, 0x13900109,
-	0x1390010a, 0x1390010b, 0x1390010c, 0x1390010d,
-	0x1390010e, 0x1390010f, 0x13900112, 0x13900117,
-	0x1390011b, 0x1390011d, 0x1390011f, 0x13900125,
-	// Entry E0 - FF
-	0x13900129, 0x1390012c, 0x1390012d, 0x1390012f,
-	0x13900131, 0x13900133, 0x13900135, 0x13900139,
-	0x1390013c, 0x1390013d, 0x1390013f, 0x13900142,
-	0x13900161, 0x13900162, 0x13900164, 0x13c00000,
-	0x13c00001, 0x13e00000, 0x13e0001f, 0x13e0002c,
-	0x13e0003f, 0x13e00041, 0x13e00048, 0x13e00051,
-	0x13e00054, 0x13e00056, 0x13e00059, 0x13e00065,
-	0x13e00068, 0x13e00069, 0x13e0006e, 0x13e00086,
-	// Entry 100 - 11F
-	0x13e00089, 0x13e0008f, 0x13e00094, 0x13e000cf,
-	0x13e000d8, 0x13e000e2, 0x13e000e4, 0x13e000e7,
-	0x13e000ec, 0x13e000f1, 0x13e0011a, 0x13e00135,
-	0x13e00136, 0x13e0013b, 0x14000000, 0x1400006a,
-	0x14500000, 0x1450006e, 0x14600000, 0x14600052,
-	0x14800000, 0x14800024, 0x1480009c, 0x14e00000,
-	0x14e00052, 0x14e00084, 0x14e000c9, 0x14e00114,
-	0x15100000, 0x15100072, 0x15300000, 0x153000e7,
-	// Entry 120 - 13F
-	0x15800000, 0x15800063, 0x15800076, 0x15e00000,
-	0x15e00036, 0x15e00037, 0x15e0003a, 0x15e0003b,
-	0x15e0003c, 0x15e00049, 0x15e0004b, 0x15e0004c,
-	0x15e0004d, 0x15e0004e, 0x15e0004f, 0x15e00052,
-	0x15e00062, 0x15e00067, 0x15e00078, 0x15e0007a,
-	0x15e0007e, 0x15e00084, 0x15e00085, 0x15e00086,
-	0x15e00091, 0x15e000a8, 0x15e000b7, 0x15e000ba,
-	0x15e000bb, 0x15e000be, 0x15e000bf, 0x15e000c3,
-	// Entry 140 - 15F
-	0x15e000c8, 0x15e000c9, 0x15e000cc, 0x15e000d3,
-	0x15e000d4, 0x15e000e5, 0x15e000ea, 0x15e00102,
-	0x15e00107, 0x15e0010a, 0x15e00114, 0x15e0011c,
-	0x15e00120, 0x15e00122, 0x15e00128, 0x15e0013f,
-	0x15e00140, 0x15e0015f, 0x16900000, 0x1690009e,
-	0x16d00000, 0x16d000d9, 0x16e00000, 0x16e00096,
-	0x17e00000, 0x17e0007b, 0x19000000, 0x1900006e,
-	0x1a300000, 0x1a30004e, 0x1a300078, 0x1a3000b2,
-	// Entry 160 - 17F
-	0x1a400000, 0x1a400099, 0x1a900000, 0x1ab00000,
-	0x1ab000a4, 0x1ac00000, 0x1ac00098, 0x1b400000,
-	0x1b400080, 0x1b4000d4, 0x1b4000d6, 0x1b800000,
-	0x1b800135, 0x1bc00000, 0x1bc00097, 0x1be00000,
-	0x1be00099, 0x1d100000, 0x1d100033, 0x1d100090,
-	0x1d200000, 0x1d200060, 0x1d500000, 0x1d500092,
-	0x1d700000, 0x1d700028, 0x1e100000, 0x1e100095,
-	0x1e700000, 0x1e7000d6, 0x1ea00000, 0x1ea00053,
-	// Entry 180 - 19F
-	0x1f300000, 0x1f500000, 0x1f800000, 0x1f80009d,
-	0x1f900000, 0x1f90004e, 0x1f90009e, 0x1f900113,
-	0x1f900138, 0x1fa00000, 0x1fb00000, 0x20000000,
-	0x200000a2, 0x20300000, 0x20700000, 0x20700052,
-	0x20800000, 0x20a00000, 0x20a0012f, 0x20e00000,
-	0x20f00000, 0x21000000, 0x2100007d, 0x21200000,
-	0x21200067, 0x21600000, 0x21700000, 0x217000a4,
-	0x21f00000, 0x22300000, 0x2230012f, 0x22700000,
-	// Entry 1A0 - 1BF
-	0x2270005a, 0x23400000, 0x234000c3, 0x23900000,
-	0x239000a4, 0x24200000, 0x242000ae, 0x24400000,
-	0x24400052, 0x24500000, 0x24500082, 0x24600000,
-	0x246000a4, 0x24a00000, 0x24a000a6, 0x25100000,
-	0x25100099, 0x25400000, 0x254000aa, 0x254000ab,
-	0x25600000, 0x25600099, 0x26a00000, 0x26a00099,
-	0x26b00000, 0x26b0012f, 0x26d00000, 0x26d00052,
-	0x26e00000, 0x26e00060, 0x27400000, 0x28100000,
-	// Entry 1C0 - 1DF
-	0x2810007b, 0x28a00000, 0x28a000a5, 0x29100000,
-	0x2910012f, 0x29500000, 0x295000b7, 0x2a300000,
-	0x2a300131, 0x2af00000, 0x2af00135, 0x2b500000,
-	0x2b50002a, 0x2b50004b, 0x2b50004c, 0x2b50004d,
-	0x2b800000, 0x2b8000af, 0x2bf00000, 0x2bf0009b,
-	0x2bf0009c, 0x2c000000, 0x2c0000b6, 0x2c200000,
-	0x2c20004b, 0x2c400000, 0x2c4000a4, 0x2c500000,
-	0x2c5000a4, 0x2c700000, 0x2c7000b8, 0x2d100000,
-	// Entry 1E0 - 1FF
-	0x2d1000a4, 0x2d10012f, 0x2e900000, 0x2e9000a4,
-	0x2ed00000, 0x2ed000cc, 0x2f100000, 0x2f1000bf,
-	0x2f200000, 0x2f2000d1, 0x2f400000, 0x2f400052,
-	0x2ff00000, 0x2ff000c2, 0x30400000, 0x30400099,
-	0x30b00000, 0x30b000c5, 0x31000000, 0x31b00000,
-	0x31b00099, 0x31f00000, 0x31f0003e, 0x31f000d0,
-	0x31f0010d, 0x32000000, 0x320000cb, 0x32500000,
-	0x32500052, 0x33100000, 0x331000c4, 0x33a00000,
-	// Entry 200 - 21F
-	0x33a0009c, 0x34100000, 0x34500000, 0x345000d2,
-	0x34700000, 0x347000da, 0x34700110, 0x34e00000,
-	0x34e00164, 0x35000000, 0x35000060, 0x350000d9,
-	0x35100000, 0x35100099, 0x351000db, 0x36700000,
-	0x36700030, 0x36700036, 0x36700040, 0x3670005b,
-	0x367000d9, 0x36700116, 0x3670011b, 0x36800000,
-	0x36800052, 0x36a00000, 0x36a000da, 0x36c00000,
-	0x36c00052, 0x36f00000, 0x37500000, 0x37600000,
-	// Entry 220 - 23F
-	0x37a00000, 0x38000000, 0x38000117, 0x38700000,
-	0x38900000, 0x38900131, 0x39000000, 0x3900006f,
-	0x390000a4, 0x39500000, 0x39500099, 0x39800000,
-	0x3980007d, 0x39800106, 0x39d00000, 0x39d05000,
-	0x39d050e8, 0x39d33000, 0x39d33099, 0x3a100000,
-	0x3b300000, 0x3b3000e9, 0x3bd00000, 0x3bd00001,
-	0x3be00000, 0x3be00024, 0x3c000000, 0x3c00002a,
-	0x3c000041, 0x3c00004e, 0x3c00005a, 0x3c000086,
-	// Entry 240 - 25F
-	0x3c00008b, 0x3c0000b7, 0x3c0000c6, 0x3c0000d1,
-	0x3c0000ee, 0x3c000118, 0x3c000126, 0x3c400000,
-	0x3c40003f, 0x3c400069, 0x3c4000e4, 0x3d400000,
-	0x3d40004e, 0x3d900000, 0x3d90003a, 0x3dc00000,
-	0x3dc000bc, 0x3dc00104, 0x3de00000, 0x3de0012f,
-	0x3e200000, 0x3e200047, 0x3e2000a5, 0x3e2000ae,
-	0x3e2000bc, 0x3e200106, 0x3e200130, 0x3e500000,
-	0x3e500107, 0x3e600000, 0x3e60012f, 0x3eb00000,
-	// Entry 260 - 27F
-	0x3eb00106, 0x3ec00000, 0x3ec000a4, 0x3f300000,
-	0x3f30012f, 0x3fa00000, 0x3fa000e8, 0x3fc00000,
-	0x3fd00000, 0x3fd00072, 0x3fd000da, 0x3fd0010c,
-	0x3ff00000, 0x3ff000d1, 0x40100000, 0x401000c3,
-	0x40200000, 0x4020004c, 0x40700000, 0x40800000,
-	0x40857000, 0x408570ba, 0x408dc000, 0x408dc0ba,
-	0x40c00000, 0x40c000b3, 0x41200000, 0x41200111,
-	0x41600000, 0x4160010f, 0x41c00000, 0x41d00000,
-	// Entry 280 - 29F
-	0x41e00000, 0x41f00000, 0x41f00072, 0x42200000,
-	0x42300000, 0x42300164, 0x42900000, 0x42900062,
-	0x4290006f, 0x429000a4, 0x42900115, 0x43100000,
-	0x43100027, 0x431000c2, 0x4310014d, 0x43200000,
-	0x4321f000, 0x4321f033, 0x4321f0bd, 0x4321f105,
-	0x4321f14d, 0x43257000, 0x43257033, 0x432570bd,
-	0x43257105, 0x4325714d, 0x43700000, 0x43a00000,
-	0x43b00000, 0x44400000, 0x44400031, 0x44400072,
-	// Entry 2A0 - 2BF
-	0x4440010c, 0x44500000, 0x4450004b, 0x445000a4,
-	0x4450012f, 0x44500131, 0x44e00000, 0x45000000,
-	0x45000099, 0x450000b3, 0x450000d0, 0x4500010d,
-	0x46100000, 0x46100099, 0x46400000, 0x464000a4,
-	0x46400131, 0x46700000, 0x46700124, 0x46b00000,
-	0x46b00123, 0x46f00000, 0x46f0006d, 0x46f0006f,
-	0x47100000, 0x47600000, 0x47600127, 0x47a00000,
-	0x48000000, 0x48200000, 0x48200129, 0x48a00000,
-	// Entry 2C0 - 2DF
-	0x48a0005d, 0x48a0012b, 0x48e00000, 0x49400000,
-	0x49400106, 0x4a400000, 0x4a4000d4, 0x4a900000,
-	0x4a9000ba, 0x4ac00000, 0x4ac00053, 0x4ae00000,
-	0x4ae00130, 0x4b400000, 0x4b400099, 0x4b4000e8,
-	0x4bc00000, 0x4bc05000, 0x4bc05024, 0x4bc1f000,
-	0x4bc1f137, 0x4bc57000, 0x4bc57137, 0x4be00000,
-	0x4be57000, 0x4be570b4, 0x4bee3000, 0x4bee30b4,
-	0x4c000000, 0x4c300000, 0x4c30013e, 0x4c900000,
-	// Entry 2E0 - 2FF
-	0x4c900001, 0x4cc00000, 0x4cc0012f, 0x4ce00000,
-	0x4cf00000, 0x4cf0004e, 0x4e500000, 0x4e500114,
-	0x4f200000, 0x4fb00000, 0x4fb00131, 0x50900000,
-	0x50900052, 0x51200000, 0x51200001, 0x51800000,
-	0x5180003b, 0x518000d6, 0x51f00000, 0x51f38000,
-	0x51f38053, 0x51f39000, 0x51f3908d, 0x52800000,
-	0x528000ba, 0x52900000, 0x52938000, 0x52938053,
-	0x5293808d, 0x529380c6, 0x5293810d, 0x52939000,
-	// Entry 300 - 31F
-	0x5293908d, 0x529390c6, 0x5293912e, 0x52f00000,
-	0x52f00161,
-} // Size: 3116 bytes
-
-const specialTagsStr string = "ca-ES-valencia en-US-u-va-posix"
-
 var regionToGroups = []uint8{ // 357 elements
 	// Entry 0 - 3F
 	0x00, 0x00, 0x00, 0x04, 0x04, 0x00, 0x00, 0x04,
@@ -1302,4 +295,4 @@
 	14: {lang: 0x529, script: 0x39, group: 0x80, distance: 0x5},
 } // Size: 114 bytes
 
-// Total table size 4618 bytes (4KiB); checksum: D161A896
+// Total table size 1471 bytes (1KiB); checksum: 4CB1CD46
diff --git a/language/tags.go b/language/tags.go
index acc482a..42ea792 100644
--- a/language/tags.go
+++ b/language/tags.go
@@ -4,6 +4,8 @@
 
 package language
 
+import "golang.org/x/text/internal/language/compact"
+
 // TODO: Various sets of commonly use tags and regions.
 
 // MustParse is like Parse, but panics if the given BCP 47 tag cannot be parsed.
@@ -61,83 +63,83 @@
 
 	Und Tag = Tag{}
 
-	Afrikaans            Tag = Tag{language: afIndex, locale: afIndex}
-	Amharic              Tag = Tag{language: amIndex, locale: amIndex}
-	Arabic               Tag = Tag{language: arIndex, locale: arIndex}
-	ModernStandardArabic Tag = Tag{language: ar001Index, locale: ar001Index}
-	Azerbaijani          Tag = Tag{language: azIndex, locale: azIndex}
-	Bulgarian            Tag = Tag{language: bgIndex, locale: bgIndex}
-	Bengali              Tag = Tag{language: bnIndex, locale: bnIndex}
-	Catalan              Tag = Tag{language: caIndex, locale: caIndex}
-	Czech                Tag = Tag{language: csIndex, locale: csIndex}
-	Danish               Tag = Tag{language: daIndex, locale: daIndex}
-	German               Tag = Tag{language: deIndex, locale: deIndex}
-	Greek                Tag = Tag{language: elIndex, locale: elIndex}
-	English              Tag = Tag{language: enIndex, locale: enIndex}
-	AmericanEnglish      Tag = Tag{language: enUSIndex, locale: enUSIndex}
-	BritishEnglish       Tag = Tag{language: enGBIndex, locale: enGBIndex}
-	Spanish              Tag = Tag{language: esIndex, locale: esIndex}
-	EuropeanSpanish      Tag = Tag{language: esESIndex, locale: esESIndex}
-	LatinAmericanSpanish Tag = Tag{language: es419Index, locale: es419Index}
-	Estonian             Tag = Tag{language: etIndex, locale: etIndex}
-	Persian              Tag = Tag{language: faIndex, locale: faIndex}
-	Finnish              Tag = Tag{language: fiIndex, locale: fiIndex}
-	Filipino             Tag = Tag{language: filIndex, locale: filIndex}
-	French               Tag = Tag{language: frIndex, locale: frIndex}
-	CanadianFrench       Tag = Tag{language: frCAIndex, locale: frCAIndex}
-	Gujarati             Tag = Tag{language: guIndex, locale: guIndex}
-	Hebrew               Tag = Tag{language: heIndex, locale: heIndex}
-	Hindi                Tag = Tag{language: hiIndex, locale: hiIndex}
-	Croatian             Tag = Tag{language: hrIndex, locale: hrIndex}
-	Hungarian            Tag = Tag{language: huIndex, locale: huIndex}
-	Armenian             Tag = Tag{language: hyIndex, locale: hyIndex}
-	Indonesian           Tag = Tag{language: idIndex, locale: idIndex}
-	Icelandic            Tag = Tag{language: isIndex, locale: isIndex}
-	Italian              Tag = Tag{language: itIndex, locale: itIndex}
-	Japanese             Tag = Tag{language: jaIndex, locale: jaIndex}
-	Georgian             Tag = Tag{language: kaIndex, locale: kaIndex}
-	Kazakh               Tag = Tag{language: kkIndex, locale: kkIndex}
-	Khmer                Tag = Tag{language: kmIndex, locale: kmIndex}
-	Kannada              Tag = Tag{language: knIndex, locale: knIndex}
-	Korean               Tag = Tag{language: koIndex, locale: koIndex}
-	Kirghiz              Tag = Tag{language: kyIndex, locale: kyIndex}
-	Lao                  Tag = Tag{language: loIndex, locale: loIndex}
-	Lithuanian           Tag = Tag{language: ltIndex, locale: ltIndex}
-	Latvian              Tag = Tag{language: lvIndex, locale: lvIndex}
-	Macedonian           Tag = Tag{language: mkIndex, locale: mkIndex}
-	Malayalam            Tag = Tag{language: mlIndex, locale: mlIndex}
-	Mongolian            Tag = Tag{language: mnIndex, locale: mnIndex}
-	Marathi              Tag = Tag{language: mrIndex, locale: mrIndex}
-	Malay                Tag = Tag{language: msIndex, locale: msIndex}
-	Burmese              Tag = Tag{language: myIndex, locale: myIndex}
-	Nepali               Tag = Tag{language: neIndex, locale: neIndex}
-	Dutch                Tag = Tag{language: nlIndex, locale: nlIndex}
-	Norwegian            Tag = Tag{language: noIndex, locale: noIndex}
-	Punjabi              Tag = Tag{language: paIndex, locale: paIndex}
-	Polish               Tag = Tag{language: plIndex, locale: plIndex}
-	Portuguese           Tag = Tag{language: ptIndex, locale: ptIndex}
-	BrazilianPortuguese  Tag = Tag{language: ptBRIndex, locale: ptBRIndex}
-	EuropeanPortuguese   Tag = Tag{language: ptPTIndex, locale: ptPTIndex}
-	Romanian             Tag = Tag{language: roIndex, locale: roIndex}
-	Russian              Tag = Tag{language: ruIndex, locale: ruIndex}
-	Sinhala              Tag = Tag{language: siIndex, locale: siIndex}
-	Slovak               Tag = Tag{language: skIndex, locale: skIndex}
-	Slovenian            Tag = Tag{language: slIndex, locale: slIndex}
-	Albanian             Tag = Tag{language: sqIndex, locale: sqIndex}
-	Serbian              Tag = Tag{language: srIndex, locale: srIndex}
-	SerbianLatin         Tag = Tag{language: srLatnIndex, locale: srLatnIndex}
-	Swedish              Tag = Tag{language: svIndex, locale: svIndex}
-	Swahili              Tag = Tag{language: swIndex, locale: swIndex}
-	Tamil                Tag = Tag{language: taIndex, locale: taIndex}
-	Telugu               Tag = Tag{language: teIndex, locale: teIndex}
-	Thai                 Tag = Tag{language: thIndex, locale: thIndex}
-	Turkish              Tag = Tag{language: trIndex, locale: trIndex}
-	Ukrainian            Tag = Tag{language: ukIndex, locale: ukIndex}
-	Urdu                 Tag = Tag{language: urIndex, locale: urIndex}
-	Uzbek                Tag = Tag{language: uzIndex, locale: uzIndex}
-	Vietnamese           Tag = Tag{language: viIndex, locale: viIndex}
-	Chinese              Tag = Tag{language: zhIndex, locale: zhIndex}
-	SimplifiedChinese    Tag = Tag{language: zhHansIndex, locale: zhHansIndex}
-	TraditionalChinese   Tag = Tag{language: zhHantIndex, locale: zhHantIndex}
-	Zulu                 Tag = Tag{language: zuIndex, locale: zuIndex}
+	Afrikaans            Tag = Tag(compact.Afrikaans)
+	Amharic              Tag = Tag(compact.Amharic)
+	Arabic               Tag = Tag(compact.Arabic)
+	ModernStandardArabic Tag = Tag(compact.ModernStandardArabic)
+	Azerbaijani          Tag = Tag(compact.Azerbaijani)
+	Bulgarian            Tag = Tag(compact.Bulgarian)
+	Bengali              Tag = Tag(compact.Bengali)
+	Catalan              Tag = Tag(compact.Catalan)
+	Czech                Tag = Tag(compact.Czech)
+	Danish               Tag = Tag(compact.Danish)
+	German               Tag = Tag(compact.German)
+	Greek                Tag = Tag(compact.Greek)
+	English              Tag = Tag(compact.English)
+	AmericanEnglish      Tag = Tag(compact.AmericanEnglish)
+	BritishEnglish       Tag = Tag(compact.BritishEnglish)
+	Spanish              Tag = Tag(compact.Spanish)
+	EuropeanSpanish      Tag = Tag(compact.EuropeanSpanish)
+	LatinAmericanSpanish Tag = Tag(compact.LatinAmericanSpanish)
+	Estonian             Tag = Tag(compact.Estonian)
+	Persian              Tag = Tag(compact.Persian)
+	Finnish              Tag = Tag(compact.Finnish)
+	Filipino             Tag = Tag(compact.Filipino)
+	French               Tag = Tag(compact.French)
+	CanadianFrench       Tag = Tag(compact.CanadianFrench)
+	Gujarati             Tag = Tag(compact.Gujarati)
+	Hebrew               Tag = Tag(compact.Hebrew)
+	Hindi                Tag = Tag(compact.Hindi)
+	Croatian             Tag = Tag(compact.Croatian)
+	Hungarian            Tag = Tag(compact.Hungarian)
+	Armenian             Tag = Tag(compact.Armenian)
+	Indonesian           Tag = Tag(compact.Indonesian)
+	Icelandic            Tag = Tag(compact.Icelandic)
+	Italian              Tag = Tag(compact.Italian)
+	Japanese             Tag = Tag(compact.Japanese)
+	Georgian             Tag = Tag(compact.Georgian)
+	Kazakh               Tag = Tag(compact.Kazakh)
+	Khmer                Tag = Tag(compact.Khmer)
+	Kannada              Tag = Tag(compact.Kannada)
+	Korean               Tag = Tag(compact.Korean)
+	Kirghiz              Tag = Tag(compact.Kirghiz)
+	Lao                  Tag = Tag(compact.Lao)
+	Lithuanian           Tag = Tag(compact.Lithuanian)
+	Latvian              Tag = Tag(compact.Latvian)
+	Macedonian           Tag = Tag(compact.Macedonian)
+	Malayalam            Tag = Tag(compact.Malayalam)
+	Mongolian            Tag = Tag(compact.Mongolian)
+	Marathi              Tag = Tag(compact.Marathi)
+	Malay                Tag = Tag(compact.Malay)
+	Burmese              Tag = Tag(compact.Burmese)
+	Nepali               Tag = Tag(compact.Nepali)
+	Dutch                Tag = Tag(compact.Dutch)
+	Norwegian            Tag = Tag(compact.Norwegian)
+	Punjabi              Tag = Tag(compact.Punjabi)
+	Polish               Tag = Tag(compact.Polish)
+	Portuguese           Tag = Tag(compact.Portuguese)
+	BrazilianPortuguese  Tag = Tag(compact.BrazilianPortuguese)
+	EuropeanPortuguese   Tag = Tag(compact.EuropeanPortuguese)
+	Romanian             Tag = Tag(compact.Romanian)
+	Russian              Tag = Tag(compact.Russian)
+	Sinhala              Tag = Tag(compact.Sinhala)
+	Slovak               Tag = Tag(compact.Slovak)
+	Slovenian            Tag = Tag(compact.Slovenian)
+	Albanian             Tag = Tag(compact.Albanian)
+	Serbian              Tag = Tag(compact.Serbian)
+	SerbianLatin         Tag = Tag(compact.SerbianLatin)
+	Swedish              Tag = Tag(compact.Swedish)
+	Swahili              Tag = Tag(compact.Swahili)
+	Tamil                Tag = Tag(compact.Tamil)
+	Telugu               Tag = Tag(compact.Telugu)
+	Thai                 Tag = Tag(compact.Thai)
+	Turkish              Tag = Tag(compact.Turkish)
+	Ukrainian            Tag = Tag(compact.Ukrainian)
+	Urdu                 Tag = Tag(compact.Urdu)
+	Uzbek                Tag = Tag(compact.Uzbek)
+	Vietnamese           Tag = Tag(compact.Vietnamese)
+	Chinese              Tag = Tag(compact.Chinese)
+	SimplifiedChinese    Tag = Tag(compact.SimplifiedChinese)
+	TraditionalChinese   Tag = Tag(compact.TraditionalChinese)
+	Zulu                 Tag = Tag(compact.Zulu)
 )
