summaryrefslogtreecommitdiff
path: root/Master/tlpkg/tlperl/lib/Locale
diff options
context:
space:
mode:
Diffstat (limited to 'Master/tlpkg/tlperl/lib/Locale')
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes.pm628
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes.pod540
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes/Changes.pod171
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes/Country.pm9690
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes/Currency.pm2954
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes/Language.pm7303
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Codes/Script.pm2699
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Constants.pm81
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Constants.pod63
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Country.pm696
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Country.pod328
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Currency.pm556
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Currency.pod168
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Language.pm515
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Language.pod149
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext.pm440
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext.pod19
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext/Cookbook.pod150
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext/Guts.pm328
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext/GutsLoader.pm61
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Maketext/TPJ13.pod14
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Script.pm450
-rw-r--r--Master/tlpkg/tlperl/lib/Locale/Script.pod239
23 files changed, 25876 insertions, 2366 deletions
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes.pm b/Master/tlpkg/tlperl/lib/Locale/Codes.pm
new file mode 100644
index 00000000000..2fe84b1994c
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes.pm
@@ -0,0 +1,628 @@
+package Locale::Codes;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
+use strict;
+use warnings;
+require 5.002;
+
+use Carp;
+
+#=======================================================================
+# Public Global Variables
+#=======================================================================
+
+# This module is not called directly... %Data is filled in by the
+# calling modules.
+
+our($VERSION,%Data);
+
+# $Data{ TYPE }{ code2id }{ CODESET } { CODE } = [ ID, I ]
+# { id2code }{ CODESET } { ID } = CODE
+# { id2names }{ ID } = [ NAME, NAME, ... ]
+# { alias2id }{ NAME } = [ ID, I ]
+# { id } = FIRST_UNUSED_ID
+# { codealias }{ CODESET } { ALIAS } = CODE
+
+$VERSION='3.16';
+
+#=======================================================================
+#
+# _code2name ( TYPE,CODE,CODESET )
+#
+#=======================================================================
+
+sub _code2name {
+ my($type,$code,$codeset) = @_;
+
+ $code = $Data{$type}{'codealias'}{$codeset}{$code}
+ if (exists $Data{$type}{'codealias'}{$codeset}{$code});
+
+ if (exists $Data{$type}{'code2id'}{$codeset} &&
+ exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+ my ($id,$i) = @{ $Data{$type}{'code2id'}{$codeset}{$code} };
+ my $name = $Data{$type}{'id2names'}{$id}[$i];
+ return $name;
+ } else {
+ #---------------------------------------------------------------
+ # no such code!
+ #---------------------------------------------------------------
+ return undef;
+ }
+}
+
+#=======================================================================
+#
+# _name2code ( TYPE,NAME,CODESET )
+#
+#=======================================================================
+
+sub _name2code {
+ my($type,$name,$codeset) = @_;
+ $name = "" if (! $name);
+ $name = lc($name);
+
+ if (exists $Data{$type}{'alias2id'}{$name}) {
+ my $id = $Data{$type}{'alias2id'}{$name}[0];
+ if (exists $Data{$type}{'id2code'}{$codeset}{$id}) {
+ return $Data{$type}{'id2code'}{$codeset}{$id};
+ }
+ }
+
+ #---------------------------------------------------------------
+ # no such name!
+ #---------------------------------------------------------------
+ return undef;
+ }
+
+#=======================================================================
+#
+# _code2code ( TYPE,CODE,CODESET )
+#
+#=======================================================================
+
+sub _code2code {
+ my($type,$code,$inset,$outset) = @_;
+
+ my $name = _code2name($type,$code,$inset);
+ my $outcode = _name2code($type,$name,$outset);
+ return $outcode;
+}
+
+#=======================================================================
+#
+# _all_codes ( TYPE,CODESET )
+#
+#=======================================================================
+
+sub _all_codes {
+ my($type,$codeset) = @_;
+
+ if (! exists $Data{$type}{'code2id'}{$codeset}) {
+ return ();
+ }
+ my @codes = keys %{ $Data{$type}{'code2id'}{$codeset} };
+ return (sort @codes);
+}
+
+#=======================================================================
+#
+# _all_names ( TYPE,CODESET )
+#
+#=======================================================================
+
+sub _all_names {
+ my($type,$codeset) = @_;
+
+ my @codes = _all_codes($type,$codeset);
+ return () if (! @codes);
+ my @names;
+
+ foreach my $code (@codes) {
+ my($id,$i) = @{ $Data{$type}{'code2id'}{$codeset}{$code} };
+ my $name = $Data{$type}{'id2names'}{$id}[$i];
+ push(@names,$name);
+ }
+ return (sort @names);
+}
+
+#=======================================================================
+#
+# _rename ( TYPE,CODE,NAME,CODESET )
+#
+# Change the official name for a code. The original is retained
+# as an alias, but the new name will be returned if you lookup the
+# name from code.
+#
+#=======================================================================
+
+sub _rename {
+ my($type,$code,$new_name,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "rename_$type(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ $code = $Data{$type}{'codealias'}{$codeset}{$code}
+ if (exists $Data{$type}{'codealias'}{$codeset}{$code});
+
+ # Check that $code exists in the codeset.
+
+ my $id;
+ if (exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+ $id = $Data{$type}{'code2id'}{$codeset}{$code}[0];
+ } else {
+ carp "rename_$type(): unknown code: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Cases:
+ # 1. Renaming to a name which exists with a different ID
+ # Error
+ #
+ # 2. Renaming to a name which exists with the same ID
+ # Just change code2id (I value)
+ #
+ # 3. Renaming to a new name
+ # Create a new alias
+ # Change code2id (I value)
+
+ if (exists $Data{$type}{'alias2id'}{lc($new_name)}) {
+ # Existing name (case 1 and 2)
+
+ my ($new_id,$i) = @{ $Data{$type}{'alias2id'}{lc($new_name)} };
+ if ($new_id != $id) {
+ # Case 1
+ carp "rename_$type(): rename to an existing $type not allowed\n"
+ unless ($nowarn);
+ return 0;
+ }
+
+ # Case 2
+
+ $Data{$type}{'code2id'}{$codeset}{$code}[1] = $i;
+
+ } else {
+
+ # Case 3
+
+ push @{ $Data{$type}{'id2names'}{$id} },$new_name;
+ my $i = $#{ $Data{$type}{'id2names'}{$id} };
+ $Data{$type}{'alias2id'}{lc($new_name)} = [ $id,$i ];
+ $Data{$type}{'code2id'}{$codeset}{$code}[1] = $i;
+ }
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _add_code ( TYPE,CODE,NAME,CODESET )
+#
+# Add a new code to the codeset. Both CODE and NAME must be
+# unused in the code set.
+#
+#=======================================================================
+
+sub _add_code {
+ my($type,$code,$name,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "add_$type(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Check that $code is unused.
+
+ if (exists $Data{$type}{'code2id'}{$codeset}{$code} ||
+ exists $Data{$type}{'codealias'}{$codeset}{$code}) {
+ carp "add_$type(): code already in use: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Check to see that $name is unused in this code set. If it is
+ # used (but not in this code set), we'll use that ID. Otherwise,
+ # we'll need to get the next available ID.
+
+ my ($id,$i);
+ if (exists $Data{$type}{'alias2id'}{lc($name)}) {
+ ($id,$i) = @{ $Data{$type}{'alias2id'}{lc($name)} };
+ if (exists $Data{$type}{'id2code'}{$codeset}{$id}) {
+ carp "add_$type(): name already in use: $name\n" unless ($nowarn);
+ return 0;
+ }
+
+ } else {
+ $id = $Data{$type}{'id'}++;
+ $i = 0;
+ $Data{$type}{'alias2id'}{lc($name)} = [ $id,$i ];
+ $Data{$type}{'id2names'}{$id} = [ $name ];
+ }
+
+ # Add the new code
+
+ $Data{$type}{'code2id'}{$codeset}{$code} = [ $id,$i ];
+ $Data{$type}{'id2code'}{$codeset}{$id} = $code;
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _delete_code ( TYPE,CODE,CODESET )
+#
+# Delete a code from the codeset.
+#
+#=======================================================================
+
+sub _delete_code {
+ my($type,$code,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "delete_$type(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ $code = $Data{$type}{'codealias'}{$codeset}{$code}
+ if (exists $Data{$type}{'codealias'}{$codeset}{$code});
+
+ # Check that $code is valid.
+
+ if (! exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+ carp "delete_$type(): code does not exist: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Delete the code
+
+ my $id = $Data{$type}{'code2id'}{$codeset}{$code}[0];
+ delete $Data{$type}{'code2id'}{$codeset}{$code};
+ delete $Data{$type}{'id2code'}{$codeset}{$id};
+
+ # Delete any aliases that are linked to this code
+
+ foreach my $alias (keys %{ $Data{$type}{'codealias'}{$codeset} }) {
+ next if ($Data{$type}{'codealias'}{$codeset}{$alias} ne $code);
+ delete $Data{$type}{'codealias'}{$codeset}{$alias};
+ }
+
+ # If this ID is not used in any other codeset, delete it completely.
+
+ foreach my $c (keys %{ $Data{$type}{'id2code'} }) {
+ return 1 if (exists $Data{$type}{'id2code'}{$c}{$id});
+ }
+
+ my @names = @{ $Data{$type}{'id2names'}{$id} };
+ delete $Data{$type}{'id2names'}{$id};
+
+ foreach my $name (@names) {
+ delete $Data{$type}{'alias2id'}{lc($name)};
+ }
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _add_alias ( TYPE,NAME,NEW_NAME )
+#
+# Add a new alias. NAME must exist, and NEW_NAME must be unused.
+#
+#=======================================================================
+
+sub _add_alias {
+ my($type,$name,$new_name,$nowarn) = @_;
+
+ # Check that $name is used and $new_name is new.
+
+ my($id);
+ if (exists $Data{$type}{'alias2id'}{lc($name)}) {
+ $id = $Data{$type}{'alias2id'}{lc($name)}[0];
+ } else {
+ carp "add_${type}_alias(): name does not exist: $name\n" unless ($nowarn);
+ return 0;
+ }
+
+ if (exists $Data{$type}{'alias2id'}{lc($new_name)}) {
+ carp "add_${type}_alias(): alias already in use: $new_name\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Add the new alias
+
+ push @{ $Data{$type}{'id2names'}{$id} },$new_name;
+ my $i = $#{ $Data{$type}{'id2names'}{$id} };
+ $Data{$type}{'alias2id'}{lc($new_name)} = [ $id,$i ];
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _delete_alias ( TYPE,NAME )
+#
+# This deletes a name from the list of names used by an element.
+# NAME must be used, but must NOT be the only name in the list.
+#
+# Any id2name that references this name will be changed to
+# refer to the first name in the list.
+#
+#=======================================================================
+
+sub _delete_alias {
+ my($type,$name,$nowarn) = @_;
+
+ # Check that $name is used.
+
+ my($id,$i);
+ if (exists $Data{$type}{'alias2id'}{lc($name)}) {
+ ($id,$i) = @{ $Data{$type}{'alias2id'}{lc($name)} };
+ } else {
+ carp "delete_${type}_alias(): name does not exist: $name\n" unless ($nowarn);
+ return 0;
+ }
+
+ my $n = $#{ $Data{$type}{'id2names'}{$id} };
+ if ($n == 1) {
+ carp "delete_${type}_alias(): only one name defined (use _delete_${type} instead)\n"
+ unless ($nowarn);
+ return 0;
+ }
+
+ # Delete the alias.
+
+ splice (@{ $Data{$type}{'id2names'}{$id} },$i,1);
+ delete $Data{$type}{'alias2id'}{lc($name)};
+
+ # Every element that refers to this ID:
+ # Ignore if I < $i
+ # Set to 0 if I = $i
+ # Decrement if I > $i
+
+ foreach my $codeset (keys %{ $Data{'code2id'} }) {
+ foreach my $code (keys %{ $Data{'code2id'}{$codeset} }) {
+ my($jd,$j) = @{ $Data{'code2id'}{$codeset}{$code} };
+ next if ($jd ne $id ||
+ $j < $i);
+ if ($i == $j) {
+ $Data{'code2id'}{$codeset}{$code}[1] = 0;
+ } else {
+ $Data{'code2id'}{$codeset}{$code}[1]--;
+ }
+ }
+ }
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _rename_code ( TYPE,CODE,NEW_CODE,CODESET )
+#
+# Change the official code. The original is retained as an alias, but
+# the new name will be returned if you lookup the code from name.
+#
+#=======================================================================
+
+sub _rename_code {
+ my($type,$code,$new_code,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "rename_$type(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ $code = $Data{$type}{'codealias'}{$codeset}{$code}
+ if (exists $Data{$type}{'codealias'}{$codeset}{$code});
+
+ # Check that $code exists in the codeset.
+
+ if (! exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+ carp "rename_$type(): unknown code: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Cases:
+ # 1. Renaming code to an existing alias of this code:
+ # Make the alias real and the code an alias
+ #
+ # 2. Renaming code to some other existing alias:
+ # Error
+ #
+ # 3. Renaming code to some other code:
+ # Error (
+ #
+ # 4. Renaming code to a new code:
+ # Make code into an alias
+ # Replace code with new_code.
+
+ if (exists $Data{$type}{'codealias'}{$codeset}{$new_code}) {
+ # Cases 1 and 2
+ if ($Data{$type}{'codealias'}{$codeset}{$new_code} eq $code) {
+ # Case 1
+
+ delete $Data{$type}{'codealias'}{$codeset}{$new_code};
+
+ } else {
+ # Case 2
+ carp "rename_$type(): new code already in use: $new_code\n" unless ($nowarn);
+ return 0;
+ }
+
+ } elsif (exists $Data{$type}{'code2id'}{$codeset}{$new_code}) {
+ # Case 3
+ carp "rename_$type(): new code already in use: $new_code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Cases 1 and 4
+
+ $Data{$type}{'codealias'}{$codeset}{$code} = $new_code;
+
+ my $id = $Data{$type}{'code2id'}{$codeset}{$code}[0];
+ $Data{$type}{'code2id'}{$codeset}{$new_code} = $Data{$type}{'code2id'}{$codeset}{$code};
+ delete $Data{$type}{'code2id'}{$codeset}{$code};
+
+ $Data{$type}{'id2code'}{$codeset}{$id} = $new_code;
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _add_code_alias ( TYPE,CODE,NEW_CODE,CODESET )
+#
+# Adds an alias for the code.
+#
+#=======================================================================
+
+sub _add_code_alias {
+ my($type,$code,$new_code,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "add_${type}_code_alias(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ $code = $Data{$type}{'codealias'}{$codeset}{$code}
+ if (exists $Data{$type}{'codealias'}{$codeset}{$code});
+
+ # Check that $code exists in the codeset and that $new_code
+ # does not exist.
+
+ if (! exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+ carp "add_${type}_code_alias(): unknown code: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ if (exists $Data{$type}{'code2id'}{$codeset}{$new_code} ||
+ exists $Data{$type}{'codealias'}{$codeset}{$new_code}) {
+ carp "add_${type}_code_alias(): code already in use: $new_code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Add the alias
+
+ $Data{$type}{'codealias'}{$codeset}{$new_code} = $code;
+
+ return 1;
+}
+
+#=======================================================================
+#
+# _delete_code_alias ( TYPE,CODE,CODESET )
+#
+# Deletes an alias for the code.
+#
+#=======================================================================
+
+sub _delete_code_alias {
+ my($type,$code,$codeset,$nowarn) = @_;
+
+ if (! $codeset) {
+ carp "delete_${type}_code_alias(): unknown codeset\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Check that $code exists in the codeset as an alias.
+
+ if (! exists $Data{$type}{'codealias'}{$codeset}{$code}) {
+ carp "delete_${type}_code_alias(): no alias defined: $code\n" unless ($nowarn);
+ return 0;
+ }
+
+ # Delete the alias
+
+ delete $Data{$type}{'codealias'}{$codeset}{$code};
+
+ return 1;
+}
+
+#=======================================================================
+#
+# alias_code ( ALIAS => CODE [ , CODESET ] )
+#
+# Add an alias for an existing code. If the CODESET isn't specified,
+# then we use the default (currently the alpha-2 codeset).
+#
+# Locale::Country::alias_code('uk' => 'gb');
+#
+#=======================================================================
+
+# sub alias_code {
+# my $nowarn = 0;
+# $nowarn = 1, pop if ($_[$#_] eq "nowarn");
+# my $alias = shift;
+# my $code = shift;
+# my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
+
+# return 0 if ($codeset !~ /^\d+$/);
+
+# if ($codeset == LOCALE_CODE_ALPHA_2) {
+# $codeset = "alpha2";
+# $alias = lc($alias);
+# } elsif ($codeset == LOCALE_CODE_ALPHA_3) {
+# $codeset = "alpha3";
+# $alias = lc($alias);
+# } elsif ($codeset == LOCALE_CODE_FIPS) {
+# $codeset = "fips";
+# $alias = uc($alias);
+# } elsif ($codeset == LOCALE_CODE_NUMERIC) {
+# $codeset = "num";
+# return undef if ($alias =~ /\D/);
+# $alias = sprintf("%.3d", $alias);
+# } else {
+# carp "rename_country(): unknown codeset\n" unless ($nowarn);
+# return 0;
+# }
+
+# # Check that $code exists in the codeset.
+
+# my ($id,$i);
+# if (exists $Data{$type}{'code2id'}{$codeset}{$code}) {
+# ($id,$i) = @{ $Data{$type}{'code2id'}{$codeset}{$code} };
+# } else {
+# carp "alias_code: attempt to alias \"$alias\" to unknown country code \"$code\"\n"
+# unless ($nowarn);
+# return 0;
+# }
+
+# # Cases:
+# # The alias already exists.
+# # Error
+# #
+# # It's new
+# # Create a new entry in Code2CountryID
+# # Replace the entiry in CountryID2Code
+# # Regenerate %Codes
+
+# if (exists $Data{$type}{'code2id'}{$codeset}{$alias}) {
+# carp "alias_code: attempt to alias \"$alias\" which is already in use\n"
+# unless ($nowarn);
+# return 0;
+# }
+
+# $Data{$type}{'code2id'}{$codeset}{$alias} = [ $id, $i ];
+# $Data{$type}{'id2names'}ID2Code{$codeset}{$id} = $alias;
+
+# my @codes = keys %{ $Data{$type}{'code2id'}{$codeset} };
+# $Locale::CountryCodes::Codes{$codeset} = [ sort @codes ];
+
+# return $alias;
+# }
+
+1;
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes.pod b/Master/tlpkg/tlperl/lib/Locale/Codes.pod
new file mode 100644
index 00000000000..1baa1e647ce
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes.pod
@@ -0,0 +1,540 @@
+=pod
+
+=head1 NAME
+
+Locale::Codes - a distribution of modules to handle locale codes
+
+=head1 DESCRIPTION
+
+B<Locale::Codes> is a distribution containing a set of modules. The
+modules each deal with different types of codes which identify parts
+of the locale including languages, countries, currency, etc.
+
+Currently, the following modules are included:
+
+=over 4
+
+=item B<Locale::Country>
+
+This includes support for country codes (such as those listed in ISO-3166)
+to specify the country.
+
+=item B<Locale::Language>
+
+This includes support for language codes (such as those listed in ISO-639)
+to specify the language.
+
+=item B<Locale::Currency>
+
+This includes support for currency codes (such as those listed in ISO-4217)
+to specify the currency.
+
+=item B<Locale::Script>
+
+This includes support for script codes (such as those listed in ISO-15924)
+to specify the script.
+
+=back
+
+Each module can support an arbitrary number of code sets, and it it
+not required that the relationship between these code sets be
+one-to-one. For example, the Locale::Country module supports code
+sets from ISO-3166 and the FIPS 10 standard, and they do not break the
+world down into exactly the same sets of countries. This does not
+cause any problem (though converting codes from ISO-3166 to FIPS or
+back will not work except for countries that are one-to-one).
+
+All data in all of these modules comes directly from the original
+standards (or as close to direct as possible), so it should be
+up-to-date at the time of release.
+
+I plan on releasing a new version a couple of times a year to
+incorporate any changes made in the standards. However, I don't always
+know about changes that occur, so if any of the standards change, and
+you want a new release sooner, just email me and I'll get one out.
+
+=head1 NEW CODE SETS
+
+I'm always open to suggestions for new code sets.
+
+In order for me to add a code set, I want the following criteria
+to be met:
+
+=over 4
+
+=item B<General-use code set>
+
+If a code set is not general use, I'm not likely to spend the time
+to add and support it.
+
+=item B<An official source of data>
+
+I require an official (or at least, a NEARLY official) source where I
+can get the data on a regular basis.
+
+Ideally, I'd only get data from an official source, but sometimes that
+is not possible. For example the ISO standards are not typically
+available for free, so I may have to get some of that data from
+alternate sources that I'm confident are getting their data from the
+official source.
+
+As an example, I get some country data from the CIA World
+Factbook. Given the nature of the source, I'm sure they're updating
+data from the official sources and I consider it "nearly" official.
+
+There are many 3rd party sites which maintain lists (many of which are
+actually in a more convenient form than the official sites).
+Unfortunately, I will reject most of them since I have no feel for how
+"official" they are.
+
+=item B<A free source of the data>
+
+Obviously, the data must be free-of-charge. I'm not interested in
+paying for the data (and I'm not interested in the overhead of having
+someone else pay for the data for me).
+
+=item B<A reliable source of data>
+
+The source of data must come from a source that I can reasonably expect
+to exist for the foreseeable future since I will be extremely reluctant
+to drop support for a data set once it's included.
+
+I am also reluctant to accept data sent to me by an individual.
+Although I appreciate the offer, it is simply not practical to consider
+an individual contribution as a reliable source of data. The source
+should be an official agency of some sort.
+
+=back
+
+These requirements are open to discussion. If you have a code set
+you'd like to see added, but which may not meet all of the above
+requirements, feel free to email me and we'll discuss it. Depending
+on circumstances, I may be willing to waive some of these criteria.
+
+=head1 COMMON ALIASES
+
+As of version 2.00, the modules supported common variants of names.
+
+For example, Locale::Country supports variant names for countries, and
+a few of the most common ones are included in the data. The country
+code for "United States" is "us", so:
+
+ country2code('United States');
+ => "us"
+
+Now the following will also return 'us':
+
+ country2code('United States of America');
+ country2code('USA');
+
+Any number of common aliases may be included in the data, in addition
+to the names that come directly from the standards. If you have a
+common alias for a country, language, or any other of the types of
+codes, let me know and I'll add it, with some restrictions.
+
+For example, the country name "North Korea" never appeared in any of
+the official sources (instead, it was "Korea, North" or "Korea,
+Democratic People's Republic of". I would honor a request to add an
+alias "North Korea" since that's a very common way to specify the
+country (please don't request this... I've already added it).
+
+On the other hand, a request to add Zaire as an alias for "Congo, The
+Democratic Republic of" may not be honored. The country's official
+name is not Zaire, so adding it as an alias violates the standard.
+Zaire was kept as an alias in versions prior to 3.00, but it has been
+removed. Other aliases (if any) which no longer appear in any standard
+have also been removed.
+
+=head1 ROUTINES
+
+As of 3.10, the interface for all of the modules listed above are
+identical (as a matter of fact, they are all just wrappers around a
+central module which does all the real work).
+
+In order to maintain the documentation for the modules consistently,
+the functions are all documented here, rather than in the documentation
+for the separate modules.
+
+The name of the function depends on the module. For example, every module
+contains a function "code2XXX" where XXX refers to the type of data
+(country, language, currency, or script). So, the Locale::Country module
+contains the function code2country, the Locale::Language module contains
+the function code2language, etc.
+
+In all of the functions below, CODE refers to a code for one element in
+the code set. For example, in the two-letter country codes from ISO 3166-1,
+the code 'fi' is used to refer to the country Finland. CODE is always
+case insensitive (though when a code is returned, it will always be in
+the case as used in the standard), so 'fi', 'FI', and 'Fi' would all
+be equivalent.
+
+CODESET refers to a constant specified in the documentation for each
+module to label the various code sets. For example, in the
+Locale::Language module, CODESET could be LOCALE_CODE_ALPHA_2 or
+LOCALE_CODE_ALPHA_3 (among others). Most functions have a default one,
+so they do not need to be specified. So the following calls are valid:
+
+ code2country("fi");
+ code2country("fi",LOCALE_CODE_ALPHA_2);
+ code2country("fin",LOCALE_CODE_ALPHA_3);
+
+Since LOCALE_CODE_ALPHA_2 is the default code set, the first two are
+identical.
+
+=over 4
+
+=item B<code2country ( CODE [,CODESET] )>
+
+=item B<code2language( CODE [,CODESET] )>
+
+=item B<code2currency( CODE [,CODESET] )>
+
+=item B<code2script ( CODE [,CODESET] )>
+
+These functions take a code and returns a string which contains
+the name of the element identified. If the code is not a valid
+code in the CODESET specified then C<undef> will be returned.
+
+The name of the element is the name as specified in the standard,
+and as a result, different variations of an element name may
+be returned for different values of CODESET.
+
+For example, the B<alpha-2> country code set defines the two-letter
+code "bo" to be "Bolivia, Plurinational State of", whereas the
+B<alpha-3> code set defines the code 'bol' to be the country "Bolivia
+(Plurinational State of)". So:
+
+ code2country('bo',LOCALE_CODE_ALPHA_2);
+ => 'Bolivia, Plurinational State of'
+
+ code2country('bol',LOCALE_CODE_ALPHA_3);
+ => 'Bolivia (Plurinational State of)'
+
+=item B<country2code ( NAME [,CODESET] )>
+
+=item B<language2code( NAME [,CODESET] )>
+
+=item B<currency2code( NAME [,CODESET] )>
+
+=item B<script2code ( NAME [,CODESET] )>
+
+These functions takes the name of an element (or any of it's aliases)
+and returns the code that corresponds to it, if it exists. If NAME
+could not be identified as the name of one of the elements, then
+C<undef> will be returned.
+
+The name is not case sensitive. Also, any known variation of a name
+may be passed in.
+
+For example, even though the country name returned using
+LOCALE_CODE_ALPHA_2 and LOCALE_CODE_ALPHA_3 country codes for Bolivia is different,
+either country name may be passed in since for each code set, in addition to
+the alias 'Bolivia'. So:
+
+ country2code('Bolivia, Plurinational State of',
+ LOCALE_CODE_ALPHA_2);
+ => bo
+
+ country2code('Bolivia (Plurinational State of)',
+ LOCALE_CODE_ALPHA_2);
+ => bo
+
+ country2code('Bolivia',LOCALE_CODE_ALPHA_2);
+ => bo
+
+=item B<country_code2code ( CODE ,CODESET ,CODESET2 )>
+
+=item B<language_code2code( CODE ,CODESET ,CODESET2 )>
+
+=item B<currency_code2code( CODE ,CODESET ,CODESET2 )>
+
+=item B<script_code2code ( CODE ,CODESET ,CODESET2 )>
+
+These functions takes a a code from one code set, and returns the
+corresponding code from another code set. CODE must exists in the code
+set specified by CODESET and must have a corresponding code in the
+code set specified by CODESET2 or C<undef> will be returned.
+
+Both CODESETs must be explicitly entered.
+
+ country_code2code('fin', LOCALE_CODE_ALPHA_3,
+ LOCALE_CODE_ALPHA_2);
+ => 'fi'
+
+=item B<all_country_codes ( [CODESET] )>
+
+=item B<all_language_codes( [CODESET] )>
+
+=item B<all_currency_codes( [CODESET] )>
+
+=item B<all_script_codes ( [CODESET] )>
+
+These returns a list of all code in the code set. The codes will be
+sorted.
+
+=item B<all_country_names ( [CODESET] )>
+
+=item B<all_language_names( [CODESET] )>
+
+=item B<all_currency_names( [CODESET] )>
+
+=item B<all_script_names ( [CODESET] )>
+
+These return a list of all elements names for which there is a
+corresponding code in the specified code set.
+
+The names returned are exactly as they are specified in the standard,
+and are sorted.
+
+Since not all elements are listed in all code sets, the list of
+elements may differ depending on the code set specified.
+
+=back
+
+=head1 SEMI-PRIVATE ROUTINES
+
+Additional semi-private routines which may be used to modify the
+internal data are also available. Given their status, they aren't
+exported, and so need to be called by prefixing the function name with
+the package name.
+
+=over 4
+
+=item B<Locale::Country::rename_country ( CODE ,NEW_NAME [,CODESET] )>
+
+=item B<Locale::Language::rename_language( CODE ,NEW_NAME [,CODESET] )>
+
+=item B<Locale::Currency::rename_currency( CODE ,NEW_NAME [,CODESET] )>
+
+=item B<Locale::Script::rename_script ( CODE ,NEW_NAME [,CODESET] )>
+
+These routines are used to change the official name of an element. At
+that point, the name returned by the code2XXX routine would be
+NEW_NAME instead of the name specified in the standard.
+
+The original name will remain as an alias.
+
+For example, the official country name for code 'gb' is 'United
+Kingdom'. If you want to change that, you might call:
+
+ Locale::Country::rename_country('gb', 'Great Britain');
+
+This means that calling code2country('gb') will now return 'Great
+Britain' instead of 'United Kingdom'.
+
+If any error occurs, a warning is issued and 0 is returned. An error
+occurs if CODE doesn't exist in the specified code set, or if
+NEW_NAME is already in use but for a different element.
+
+If the routine succeeds, 1 is returned.
+
+=item B<Locale::Country::add_country ( CODE ,NAME [,CODESET] )>
+
+=item B<Locale::Language::add_language( CODE ,NAME [,CODESET] )>
+
+=item B<Locale::Currency::add_currency( CODE ,NAME [,CODESET] )>
+
+=item B<Locale::Script::add_script ( CODE ,NAME [,CODESET] )>
+
+These routines are used to add a new code and name to the data.
+
+Both CODE and NAME must be unused in the data set or an error
+occurs (though NAME may be used in a different data set).
+
+For example, to create the fictitious country named "Duchy of
+Grand Fenwick" with codes "gf" and "fen", use the following:
+
+ Locale::Country::add_country("fe","Duchy of Grand Fenwick",
+ LOCALE_CODE_ALPHA_2);
+
+ Locale::Country::add_country("fen","Duchy of Grand Fenwick",
+ LOCALE_CODE_ALPHA_3);
+
+The return value is 1 on success, 0 on an error.
+
+=item B<Locale::Country::delete_country ( CODE [,CODESET] )>
+
+=item B<Locale::Language::delete_language( CODE [,CODESET] )>
+
+=item B<Locale::Currency::delete_currency( CODE [,CODESET] )>
+
+=item B<Locale::Script::delete_script ( CODE [,CODESET] )>
+
+These routines are used to delete a code from the data.
+
+CODE must refer to an existing code in the code set.
+
+The return value is 1 on success, 0 on an error.
+
+=item B<Locale::Country::add_country_alias ( NAME ,NEW_NAME )>
+
+=item B<Locale::Language::add_language_alias( NAME ,NEW_NAME )>
+
+=item B<Locale::Currency::add_currency_alias( NAME ,NEW_NAME )>
+
+=item B<Locale::Script::add_script_alias ( NAME ,NEW_NAME )>
+
+These routines are used to add a new alias to the data. They do
+not alter the return value of the code2XXX function.
+
+NAME must be an existing element name, and NEW_NAME must
+be unused or an error occurs.
+
+The return value is 1 on success, 0 on an error.
+
+=item B<Locale::Country::delete_country_alias ( NAME )>
+
+=item B<Locale::Language::delete_language_alias( NAME )>
+
+=item B<Locale::Currency::delete_currency_alias( NAME )>
+
+=item B<Locale::Script::delete_script_alias ( NAME )>
+
+These routines are used to delete an alias from the data. Once
+removed, the element may not be referred to by NAME.
+
+NAME must be one of a list of at least two names that may be used to
+specify an element. If the element may only be referred to by a single
+name, you'll need to use the add_XXX_alias function to add a new alias
+first, or the remove_XXX function to remove the element entirely.
+
+If the alias is used as the name in any code set, one of the other
+names will be used instead. Predicting exactly which one will
+be used requires you to know the order in which the standards
+were read, which is not reliable, so you may want to use the
+rename_XXX function to force one of the alternate names to be
+used.
+
+The return value is 1 on success, 0 on an error.
+
+=item B<Locale::Country::rename_country_code ( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Language::rename_language_code( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Currency::rename_currency_code( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Script::rename_script_code ( CODE ,NEW_CODE [,CODESET] )>
+
+These routines are used to change the official code for an element. At
+that point, the code returned by the XXX2code routine would be
+NEW_CODE instead of the code specified in the standard.
+
+NEW_CODE may either be a code that is not in use, or it may be an
+alias for CODE (in which case, CODE becomes and alias and NEW_CODE
+becomes the "real" code).
+
+The original code is kept as an alias, so that the code2XXX routines
+will work with either the code from the standard or the new code.
+
+However, the all_XXX_codes routine will only return the codes which
+are considered "real" (which means that the list of codes will now
+contain NEW_CODE, but will not contain CODE).
+
+=item B<Locale::Country::add_country_code_alias ( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Language::add_language_code_alias( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Currency::add_currency_code_alias( CODE ,NEW_CODE [,CODESET] )>
+
+=item B<Locale::Script::add_script_code_alias ( CODE ,NEW_CODE [,CODESET] )>
+
+These routines add an alias for the code. At that point, NEW_CODE and CODE
+will both work in the code2XXX routines. However, the XXX2code routines will
+still return the original code.
+
+=item B<Locale::Country::delete_country_code_alias ( CODE [,CODESET] )>
+
+=item B<Locale::Language::delete_language_code_alias( CODE [,CODESET] )>
+
+=item B<Locale::Currency::delete_currency_code_alias( CODE [,CODESET] )>
+
+=item B<Locale::Script::delete_script_code_alias ( CODE [,CODESET] )>
+
+These routines delete an alias for the code.
+
+These will only work if CODE is actually an alias. If it is the "real"
+code, it will not be deleted. You will need to use the rename_XXX_code
+function to switch the real code with one of the aliases, and then
+delete the alias.
+
+=back
+
+=head1 KNOWN BUGS AND LIMITATIONS
+
+=over 4
+
+=item B<*>
+
+Because each code set uses a slightly different list of elements, and
+they are not necessarily one-to-one, there may be some confusion
+about the relationship between codes from different code sets.
+
+For example, ISO 3166 assigns one code to the country "United States
+Minor Outlying Islands", but the FIPS 10 codes give different codes
+to different islands (Baker Island, Howland Island, etc.).
+
+This may cause some confusion... I've done the best that I could do
+to minimize it.
+
+=item B<*>
+
+Currently all names must be all ASCII. I plan on relaxing that
+limitation in the future.
+
+=back
+
+=head1 SEE ALSO
+
+=over 4
+
+=item B<Locale::Constants>
+
+Constants for Locale codes.
+
+=item B<Locale::Country>
+
+Codes for identification of countries.
+
+=item B<Locale::Language>
+
+Codes for identification of languages.
+
+=item B<Locale::Script>
+
+Codes for identification of scripts.
+
+=item B<Locale::Currency>
+
+Codes for identification of currencies and funds.
+
+=back
+
+=head1 AUTHOR
+
+Locale::Country and Locale::Language were originally written by Neil
+Bowers at the Canon Research Centre Europe (CRE). They maintained the
+distribution from 1997 to 2001.
+
+Locale::Currency was originally written by Michael Hennecke.
+
+From 2001 to 2004, maintenance was continued by Neil Bowers. He
+modified Locale::Currency for inclusion in the distribution. He also
+added Locale::Constants and Locale::Script.
+
+From 2004-2009, the module was unmaintained.
+
+In 2010, maintenance was taken over by Sullivan Beck (sbeck@cpan.org)
+with Neil Bower's permission.
+
+=head1 COPYRIGHT
+
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001 Michael Hennecke (Locale::Currency)
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
+
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes/Changes.pod b/Master/tlpkg/tlperl/lib/Locale/Codes/Changes.pod
new file mode 100644
index 00000000000..b9850ad13e3
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes/Changes.pod
@@ -0,0 +1,171 @@
+=pod
+
+=head1 NAME
+
+Locale::Codes::Changes - details important changes after 2.07
+
+=head1 3.10
+
+=over 4
+
+=item B<Changed XXX_code2code behavior slightly>
+
+In previous versions, passing in the same code set for both code set
+arguments would automatically return undef. For example:
+
+ country_code2code('bo',LOCALE_CODE_ALPHA_2,LOCALE_CODE_ALPHA_2);
+ => undef
+
+This doesn't seem like reasonable behavior, so it has been changed
+to allow the same code set:
+
+ country_code2code('bo',LOCALE_CODE_ALPHA_2,LOCALE_CODE_ALPHA_2);
+ => 'bo'
+
+Note that if an invalid code is passed in, undef will still be
+returned:
+
+ country_code2code('bol',LOCALE_CODE_ALPHA_2,LOCALE_CODE_ALPHA_2);
+ => undef
+
+=item B<Added many semi-private routines>
+
+Previous versions had only two semi-private routines: rename_country
+and alias_code which had the ability to modify the internal data in
+a couple very limited ways. It was requested (in an anonymous posting
+by someone named Steve and also by Steve Hay) that better support
+for modifying internal data, so a full set of routines were added.
+
+The full set of routines includes:
+
+ rename_country
+ rename_language
+ rename_currency
+ rename_script
+
+ add_country
+ add_language
+ add_currency
+ add_script
+
+ delete_country
+ delete_language
+ delete_currency
+ delete_script
+
+ add_country_alias
+ add_language_alias
+ add_currency_alias
+ add_script_alias
+
+ delete_country_alias
+ delete_language_alias
+ delete_currency_alias
+ delete_script_alias
+
+ rename_country_code
+ rename_language_code
+ rename_currency_code
+ rename_script_code
+
+ add_country_code_alias
+ add_language_code_alias
+ add_currency_code_alias
+ add_script_code_alias
+
+ delete_country_code_alias
+ delete_language_code_alias
+ delete_currency_code_alias
+ delete_script_code_alias
+
+=back
+
+=head1 3.00
+
+=over 4
+
+=item B<New maintainer>
+
+From 1997 to 2004, Locale::Codes was maintained by Neil
+Bowers. Unfortunately, no updates were made from June 2004 to January
+2010. During that time, a number of changes have been made to the
+standards since then, so the data included was out-of-date.
+
+I contacted Neil to get his permission to assume maintenance of
+the module, and he kindly agreed.
+
+=item B<All codes are generated from standards>
+
+All of the values returned by the various functions are now values
+directly from the standards. This means that the values returned in
+the 2.xx series are not necessarily the same as the values returned
+here.
+
+As an example, the ISO 3166 standard which lists country codes refers
+to the country associated with the code "bo" as "Bolivia,
+Plurinational State of", so that is what is returned. In the 2.xx
+series, "Bolivia" was returned. Also, the country names vary from one
+standard to another. So the code "bol" which is maintained by the
+United Nations returns the name of the country as "Bolivia
+(Plurinational State of)". Some common aliases have been added, so you
+can still request a code associated with a county name "Bolivia".
+
+Since the data comes from the standards, some "incorrect" values are
+no longer supported. For example, 2.07 treated "Zaire" as an alias for
+"Congo", but the country changed it's name, and "Zaire" is not in the
+standard, so it has been dropped in 3.00.
+
+=item B<Added several code sets from standards>
+
+I've added the following code sets:
+
+ FIPS 10 country codes
+ Alpha-3 and Term language codes
+ Numeric currency codes
+
+=item B<Locale::Script changed>
+
+In 2.xx, Locale::Script assigned scripts to country codes, which is NOT
+how it is done currently in the standards. It appears that an older version
+of ISO 15924 did this, but I haven't found an old version to confirm
+that, and in any case, that is not the case in the current standards.
+
+As a result, the Locale::Script module is completely incompatible with
+the 2.xx version with respect to the types of codes it supports. None of
+the old codes will work.
+
+=item B<Added missing functions>
+
+I've added in some functions which were "missing" previously (since there was
+only one set of codes supported, the code2code functions didn't apply):
+
+ language_code2code
+ currency_code2code
+
+so the interfaces for each type of codes are consistent.
+
+=item B<Dropped support for _alias_code>
+
+In Locale::Country, _alias_code was an allowed, but deprecated function
+which was documented to be supported in the 2.xx series. I've removed it.
+
+=back
+
+=head1 SEE ALSO
+
+Locale::Codes
+
+=head1 AUTHOR
+
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
+
+=head1 COPYRIGHT
+
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes/Country.pm b/Master/tlpkg/tlperl/lib/Locale/Codes/Country.pm
new file mode 100644
index 00000000000..1ec5dcd8aae
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes/Country.pm
@@ -0,0 +1,9690 @@
+package Locale::Codes::Country;
+
+# This file was automatically generated. Any changes to this file will
+# be lost the next time 'get_codes' is run.
+# Generated on: Tue Mar 1 13:37:25 EST 2011
+
+=pod
+
+=head1 NAME
+
+Locale::Codes::Country - country codes for the Locale::Country module
+
+=head1 SYNOPSIS
+
+This module contains data used by the Locale::Country module. It is
+not intended to be used directly, and contains no calleable routines.
+
+=head1 AUTHOR
+
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
+
+=head1 COPYRIGHT
+
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
+
+use strict;
+use warnings;
+require 5.002;
+
+our($VERSION);
+$VERSION='3.16';
+
+$Locale::Codes::Data{'country'}{'id'} = '0281';
+
+$Locale::Codes::Data{'country'}{'id2names'} = {
+ q(0001) => [
+ q(Afghanistan),
+ q(Islamic State of Afghanistan),
+ ],
+ q(0002) => [
+ q(Aland Islands),
+ ],
+ q(0003) => [
+ q(Albania),
+ q(Republic of Albania),
+ ],
+ q(0004) => [
+ q(Algeria),
+ q(People's Democratic Republic of Algeria),
+ ],
+ q(0005) => [
+ q(American Samoa),
+ q(Territory of American Samoa),
+ ],
+ q(0006) => [
+ q(Andorra),
+ q(Principality of Andorra),
+ ],
+ q(0007) => [
+ q(Angola),
+ q(Republic of Angola),
+ ],
+ q(0008) => [
+ q(Anguilla),
+ ],
+ q(0009) => [
+ q(Antarctica),
+ ],
+ q(0010) => [
+ q(Antigua and Barbuda),
+ ],
+ q(0011) => [
+ q(Argentina),
+ q(Argentine Republic),
+ ],
+ q(0012) => [
+ q(Armenia),
+ q(Republic of Armenia),
+ ],
+ q(0013) => [
+ q(Aruba),
+ ],
+ q(0014) => [
+ q(Australia),
+ q(Commonwealth of Australia),
+ ],
+ q(0015) => [
+ q(Austria),
+ q(Republic of Austria),
+ ],
+ q(0016) => [
+ q(Azerbaijan),
+ q(Republic of Azerbaijan),
+ ],
+ q(0017) => [
+ q(Bahamas),
+ q(Bahamas, The),
+ q(Commonwealth of the Bahamas),
+ q(The Bahamas),
+ ],
+ q(0018) => [
+ q(Bahrain),
+ q(State of Bahrain),
+ ],
+ q(0019) => [
+ q(Bangladesh),
+ q(People's Republic of Bangladesh),
+ ],
+ q(0020) => [
+ q(Barbados),
+ ],
+ q(0021) => [
+ q(Belarus),
+ q(Republic of Belarus),
+ ],
+ q(0022) => [
+ q(Belgium),
+ q(Kingdom of Belgium),
+ ],
+ q(0023) => [
+ q(Belize),
+ ],
+ q(0024) => [
+ q(Benin),
+ q(Republic of Benin),
+ ],
+ q(0025) => [
+ q(Bermuda),
+ ],
+ q(0026) => [
+ q(Bhutan),
+ q(Kingdom of Bhutan),
+ ],
+ q(0027) => [
+ q(Bolivia, Plurinational State of),
+ q(Bolivia (Plurinational State of)),
+ q(Bolivia),
+ q(Republic of Bolivia),
+ ],
+ q(0028) => [
+ q(Bonaire, Saint Eustatius and Saba),
+ ],
+ q(0029) => [
+ q(Bosnia and Herzegovina),
+ ],
+ q(0030) => [
+ q(Botswana),
+ q(Republic of Botswana),
+ ],
+ q(0031) => [
+ q(Bouvet Island),
+ ],
+ q(0032) => [
+ q(Brazil),
+ q(Federative Republic of Brazil),
+ ],
+ q(0033) => [
+ q(British Indian Ocean Territory),
+ ],
+ q(0034) => [
+ q(Brunei Darussalam),
+ q(Brunei),
+ q(Negara Brunei Darussalam),
+ ],
+ q(0035) => [
+ q(Bulgaria),
+ ],
+ q(0036) => [
+ q(Burkina Faso),
+ ],
+ q(0037) => [
+ q(Burundi),
+ q(Republic of Burundi),
+ ],
+ q(0038) => [
+ q(Cambodia),
+ q(Kingdom of Cambodia),
+ ],
+ q(0039) => [
+ q(Cameroon),
+ q(Republic of Cameroon),
+ ],
+ q(0040) => [
+ q(Canada),
+ ],
+ q(0041) => [
+ q(Cape Verde),
+ q(Republic of Cape Verde),
+ ],
+ q(0042) => [
+ q(Cayman Islands),
+ ],
+ q(0043) => [
+ q(Central African Republic),
+ ],
+ q(0044) => [
+ q(Chad),
+ q(Republic of Chad),
+ ],
+ q(0045) => [
+ q(Chile),
+ q(Republic of Chile),
+ ],
+ q(0046) => [
+ q(China),
+ q(People's Republic of China),
+ ],
+ q(0047) => [
+ q(Christmas Island),
+ q(Territory of Christmas Island),
+ ],
+ q(0048) => [
+ q(Cocos (Keeling) Islands),
+ q(Territory of Cocos (Keeling) Islands),
+ q(Keeling Islands),
+ q(Cocos Islands),
+ ],
+ q(0049) => [
+ q(Colombia),
+ q(Republic of Colombia),
+ ],
+ q(0050) => [
+ q(Comoros),
+ q(Federal Islamic Republic of the Comoros),
+ ],
+ q(0051) => [
+ q(Congo),
+ q(Congo (Brazzaville)),
+ q(Republic of the Congo),
+ q(Congo, Republic of the),
+ q(The Republic of the Congo),
+ ],
+ q(0052) => [
+ q(Congo, The Democratic Republic of the),
+ q(Democratic Republic of the Congo),
+ q(Congo (Kinshasa)),
+ q(Congo, Democratic Republic of the),
+ q(The Democratic Republic of the Congo),
+ ],
+ q(0053) => [
+ q(Cook Islands),
+ ],
+ q(0054) => [
+ q(Costa Rica),
+ q(Republic of Costa Rica),
+ ],
+ q(0055) => [
+ q(Cote d'Ivoire),
+ q(Republic of Cote D'Ivoire),
+ ],
+ q(0056) => [
+ q(Croatia),
+ q(Republic of Croatia),
+ ],
+ q(0057) => [
+ q(Cuba),
+ q(Republic of Cuba),
+ ],
+ q(0058) => [
+ q(Curacao),
+ ],
+ q(0059) => [
+ q(Cyprus),
+ q(Republic of Cyprus),
+ ],
+ q(0060) => [
+ q(Czech Republic),
+ ],
+ q(0061) => [
+ q(Denmark),
+ q(Kingdom of Denmark),
+ ],
+ q(0062) => [
+ q(Djibouti),
+ q(Republic of Djibouti),
+ ],
+ q(0063) => [
+ q(Dominica),
+ q(Commonwealth of Dominica),
+ ],
+ q(0064) => [
+ q(Dominican Republic),
+ ],
+ q(0065) => [
+ q(Ecuador),
+ q(Republic of Ecuador),
+ ],
+ q(0066) => [
+ q(Egypt),
+ q(Arab Republic of Egypt),
+ ],
+ q(0067) => [
+ q(El Salvador),
+ q(Republic of El Salvador),
+ ],
+ q(0068) => [
+ q(Equatorial Guinea),
+ q(Republic of Equatorial Guinea),
+ ],
+ q(0069) => [
+ q(Eritrea),
+ q(State of Eritrea),
+ ],
+ q(0070) => [
+ q(Estonia),
+ q(Republic of Estonia),
+ ],
+ q(0071) => [
+ q(Ethiopia),
+ q(Federal Democratic Republic of Ethiopia),
+ ],
+ q(0072) => [
+ q(Falkland Islands (Malvinas)),
+ q(Falkland Islands (Islas Malvinas)),
+ ],
+ q(0073) => [
+ q(Faroe Islands),
+ q(Faeroe Islands),
+ ],
+ q(0074) => [
+ q(Fiji),
+ q(Republic of the Fiji Islands),
+ ],
+ q(0075) => [
+ q(Finland),
+ q(Republic of Finland),
+ ],
+ q(0076) => [
+ q(France),
+ q(French Republic),
+ ],
+ q(0077) => [
+ q(French Guiana),
+ q(Department of Guiana),
+ ],
+ q(0078) => [
+ q(French Polynesia),
+ q(Territory of French Polynesia),
+ ],
+ q(0079) => [
+ q(French Southern Territories),
+ q(French Southern and Antarctic Lands),
+ q(Territory of the French Southern and Antarctic Lands),
+ ],
+ q(0080) => [
+ q(Gabon),
+ q(Gabonese Republic),
+ ],
+ q(0081) => [
+ q(Gambia),
+ q(Gambia, The),
+ q(Republic of the Gambia),
+ ],
+ q(0082) => [
+ q(Georgia),
+ ],
+ q(0083) => [
+ q(Germany),
+ q(Federal Republic of Germany),
+ ],
+ q(0084) => [
+ q(Ghana),
+ q(Republic of Ghana),
+ ],
+ q(0085) => [
+ q(Gibraltar),
+ ],
+ q(0086) => [
+ q(Greece),
+ q(Hellenic Republic),
+ ],
+ q(0087) => [
+ q(Greenland),
+ ],
+ q(0088) => [
+ q(Grenada),
+ ],
+ q(0089) => [
+ q(Guadeloupe),
+ q(Department of Guadeloupe),
+ ],
+ q(0090) => [
+ q(Guam),
+ q(Territory of Guam),
+ ],
+ q(0091) => [
+ q(Guatemala),
+ q(Republic of Guatemala),
+ ],
+ q(0092) => [
+ q(Guernsey),
+ q(Bailiwick of Guernsey),
+ ],
+ q(0093) => [
+ q(Guinea),
+ q(Republic of Guinea),
+ ],
+ q(0094) => [
+ q(Guinea-Bissau),
+ q(Republic of Guinea-Bissau),
+ ],
+ q(0095) => [
+ q(Guyana),
+ q(Co-operative Republic of Guyana),
+ ],
+ q(0096) => [
+ q(Haiti),
+ q(Republic of Haiti),
+ ],
+ q(0097) => [
+ q(Heard Island and Mcdonald Islands),
+ q(Territory of Heard Island and McDonald Islands),
+ ],
+ q(0098) => [
+ q(Holy See (Vatican City State)),
+ q(Holy See),
+ q(Vatican City),
+ q(State of the Vatican City),
+ q(Holy See (Vatican City)),
+ ],
+ q(0099) => [
+ q(Honduras),
+ q(Republic of Honduras),
+ ],
+ q(0100) => [
+ q(Hong Kong),
+ q(China, Hong Kong Special Administrative Region),
+ q(Hong Kong S.A.R.),
+ q(Hong Kong Special Administrative Region),
+ q(Hong Kong Special Administrative Region of China),
+ ],
+ q(0101) => [
+ q(Hungary),
+ q(Republic of Hungary),
+ ],
+ q(0102) => [
+ q(Iceland),
+ q(Republic of Iceland),
+ ],
+ q(0103) => [
+ q(India),
+ q(Republic of India),
+ ],
+ q(0104) => [
+ q(Indonesia),
+ q(Republic of Indonesia),
+ ],
+ q(0105) => [
+ q(Iran, Islamic Republic of),
+ q(Iran (Islamic Republic of)),
+ q(Iran),
+ q(Islamic Republic of Iran),
+ ],
+ q(0106) => [
+ q(Iraq),
+ q(Republic of Iraq),
+ ],
+ q(0107) => [
+ q(Ireland),
+ ],
+ q(0108) => [
+ q(Isle of Man),
+ ],
+ q(0109) => [
+ q(Israel),
+ q(State of Israel),
+ ],
+ q(0110) => [
+ q(Italy),
+ q(Italian Republic),
+ ],
+ q(0111) => [
+ q(Jamaica),
+ ],
+ q(0112) => [
+ q(Japan),
+ ],
+ q(0113) => [
+ q(Jersey),
+ q(Bailiwick of Jersey),
+ ],
+ q(0114) => [
+ q(Jordan),
+ q(Hashemite Kingdom of Jordan),
+ ],
+ q(0115) => [
+ q(Kazakhstan),
+ q(Republic of Kazakhstan),
+ q(Kazakstan),
+ ],
+ q(0116) => [
+ q(Kenya),
+ q(Republic of Kenya),
+ ],
+ q(0117) => [
+ q(Kiribati),
+ q(Republic of Kiribati),
+ ],
+ q(0118) => [
+ q(Korea, Democratic People's Republic of),
+ q(Democratic People's Republic of Korea),
+ q(Korea, North),
+ q(North Korea),
+ ],
+ q(0119) => [
+ q(Korea, Republic of),
+ q(Republic of Korea),
+ q(Korea, South),
+ q(South Korea),
+ ],
+ q(0120) => [
+ q(Kuwait),
+ q(State of Kuwait),
+ ],
+ q(0121) => [
+ q(Kyrgyzstan),
+ q(Kyrgyz Republic),
+ ],
+ q(0122) => [
+ q(Lao People's Democratic Republic),
+ q(Laos),
+ ],
+ q(0123) => [
+ q(Latvia),
+ q(Republic of Latvia),
+ ],
+ q(0124) => [
+ q(Lebanon),
+ q(Lebanese Republic),
+ ],
+ q(0125) => [
+ q(Lesotho),
+ q(Republic of Lesotho),
+ ],
+ q(0126) => [
+ q(Liberia),
+ q(Republic of Liberia),
+ ],
+ q(0127) => [
+ q(Libyan Arab Jamahiriya),
+ q(Libya),
+ q(Great Socialist People's Libyan Arab Jamahiriya),
+ ],
+ q(0128) => [
+ q(Liechtenstein),
+ q(Principality of Liechtenstein),
+ ],
+ q(0129) => [
+ q(Lithuania),
+ q(Republic of Lithuania),
+ ],
+ q(0130) => [
+ q(Luxembourg),
+ q(Grand Duchy of Luxembourg),
+ ],
+ q(0131) => [
+ q(Macao),
+ q(China, Macao Special Administrative Region),
+ q(Macau S.A.R),
+ q(Macau Special Administrative Region),
+ q(Macau),
+ q(Macau S.A.R.),
+ q(Macao Special Administrative Region of China),
+ ],
+ q(0132) => [
+ q(Macedonia, The Former Yugoslav Republic of),
+ q(The former Yugoslav Republic of Macedonia),
+ q(Macedonia),
+ q(Republic of Macedonia),
+ q(Macedonia, Former Yugoslav Republic of),
+ ],
+ q(0133) => [
+ q(Madagascar),
+ q(Republic of Madagascar),
+ ],
+ q(0134) => [
+ q(Malawi),
+ q(Republic of Malawi),
+ ],
+ q(0135) => [
+ q(Malaysia),
+ ],
+ q(0136) => [
+ q(Maldives),
+ q(Republic of Maldives),
+ ],
+ q(0137) => [
+ q(Mali),
+ q(Republic of Mali),
+ ],
+ q(0138) => [
+ q(Malta),
+ q(Republic of Malta),
+ ],
+ q(0139) => [
+ q(Marshall Islands),
+ q(Republic of the Marshall Islands),
+ ],
+ q(0140) => [
+ q(Martinique),
+ q(Department of Martinique),
+ ],
+ q(0141) => [
+ q(Mauritania),
+ q(Islamic Republic of Mauritania),
+ ],
+ q(0142) => [
+ q(Mauritius),
+ q(Republic of Mauritius),
+ ],
+ q(0143) => [
+ q(Mayotte),
+ q(Territorial Collectivity of Mayotte),
+ ],
+ q(0144) => [
+ q(Mexico),
+ q(United Mexican States),
+ ],
+ q(0145) => [
+ q(Micronesia, Federated States of),
+ q(Micronesia (Federated States of)),
+ q(Federated States of Micronesia),
+ ],
+ q(0146) => [
+ q(Moldova, Republic of),
+ q(Republic of Moldova),
+ q(Moldova),
+ ],
+ q(0147) => [
+ q(Monaco),
+ q(Principality of Monaco),
+ ],
+ q(0148) => [
+ q(Mongolia),
+ ],
+ q(0149) => [
+ q(Montenegro),
+ ],
+ q(0150) => [
+ q(Montserrat),
+ ],
+ q(0151) => [
+ q(Morocco),
+ q(Kingdom of Morocco),
+ ],
+ q(0152) => [
+ q(Mozambique),
+ q(Republic of Mozambique),
+ ],
+ q(0153) => [
+ q(Myanmar),
+ q(Burma),
+ q(Union of Burma),
+ ],
+ q(0154) => [
+ q(Namibia),
+ q(Republic of Namibia),
+ ],
+ q(0155) => [
+ q(Nauru),
+ q(Republic of Nauru),
+ ],
+ q(0156) => [
+ q(Nepal),
+ q(Kingdom of Nepal),
+ ],
+ q(0157) => [
+ q(Netherlands),
+ q(Kingdom of the Netherlands),
+ ],
+ q(0158) => [
+ q(New Caledonia),
+ q(Territory of New Caledonia and Dependencies),
+ ],
+ q(0159) => [
+ q(New Zealand),
+ ],
+ q(0160) => [
+ q(Nicaragua),
+ q(Republic of Nicaragua),
+ ],
+ q(0161) => [
+ q(Niger),
+ q(Republic of Niger),
+ ],
+ q(0162) => [
+ q(Nigeria),
+ q(Federal Republic of Nigeria),
+ ],
+ q(0163) => [
+ q(Niue),
+ ],
+ q(0164) => [
+ q(Norfolk Island),
+ q(Territory of Norfolk Island),
+ ],
+ q(0165) => [
+ q(Northern Mariana Islands),
+ q(Commonwealth of the Northern Mariana Islands),
+ ],
+ q(0166) => [
+ q(Norway),
+ q(Kingdom of Norway),
+ ],
+ q(0167) => [
+ q(Oman),
+ q(Sultanate of Oman),
+ ],
+ q(0168) => [
+ q(Pakistan),
+ q(Islamic Republic of Pakistan),
+ ],
+ q(0169) => [
+ q(Palau),
+ q(Republic of Palau),
+ ],
+ q(0170) => [
+ q(Palestinian Territory, Occupied),
+ q(Occupied Palestinian Territory),
+ ],
+ q(0171) => [
+ q(Panama),
+ q(Republic of Panama),
+ ],
+ q(0172) => [
+ q(Papua New Guinea),
+ q(Independent State of Papua New Guinea),
+ ],
+ q(0173) => [
+ q(Paraguay),
+ q(Republic of Paraguay),
+ ],
+ q(0174) => [
+ q(Peru),
+ q(Republic of Peru),
+ ],
+ q(0175) => [
+ q(Philippines),
+ q(Republic of the Philippines),
+ ],
+ q(0176) => [
+ q(Pitcairn),
+ q(Pitcairn Islands),
+ q(Pitcairn, Henderson, Ducie and Oeno Islands),
+ q(Pitcairn Island),
+ ],
+ q(0177) => [
+ q(Poland),
+ q(Republic of Poland),
+ ],
+ q(0178) => [
+ q(Portugal),
+ q(Portuguese Republic),
+ ],
+ q(0179) => [
+ q(Puerto Rico),
+ q(Commonwealth of Puerto Rico),
+ ],
+ q(0180) => [
+ q(Qatar),
+ q(State of Qatar),
+ ],
+ q(0181) => [
+ q(Reunion),
+ q(Department of Reunion),
+ ],
+ q(0182) => [
+ q(Romania),
+ ],
+ q(0183) => [
+ q(Russian Federation),
+ q(Russia),
+ ],
+ q(0184) => [
+ q(Rwanda),
+ q(Rwandese Republic),
+ ],
+ q(0185) => [
+ q(Saint Barthelemy),
+ q(Saint-Barthelemy),
+ ],
+ q(0186) => [
+ q(Saint Helena, Ascension and Tristan da Cunha),
+ q(Saint Helena),
+ ],
+ q(0187) => [
+ q(Saint Kitts and Nevis),
+ q(Federation of Saint Kitts and Nevis),
+ ],
+ q(0188) => [
+ q(Saint Lucia),
+ ],
+ q(0189) => [
+ q(Saint Martin (French part)),
+ q(Saint-Martin (French part)),
+ q(Saint Martin),
+ q(Saint-Martin),
+ ],
+ q(0190) => [
+ q(Saint Pierre and Miquelon),
+ q(Territorial Collectivity of Saint Pierre and Miquelon),
+ ],
+ q(0191) => [
+ q(Saint Vincent and the Grenadines),
+ ],
+ q(0192) => [
+ q(Samoa),
+ q(Independent State of Samoa),
+ ],
+ q(0193) => [
+ q(San Marino),
+ q(Republic of San Marino),
+ ],
+ q(0194) => [
+ q(Sao Tome and Principe),
+ q(Democratic Republic of Sao Tome and Principe),
+ ],
+ q(0195) => [
+ q(Saudi Arabia),
+ q(Kingdom of Saudi Arabia),
+ ],
+ q(0196) => [
+ q(Senegal),
+ q(Republic of Senegal),
+ ],
+ q(0197) => [
+ q(Serbia),
+ ],
+ q(0198) => [
+ q(Seychelles),
+ q(Republic of Seychelles),
+ ],
+ q(0199) => [
+ q(Sierra Leone),
+ q(Republic of Sierra Leone),
+ ],
+ q(0200) => [
+ q(Singapore),
+ q(Republic of Singapore),
+ ],
+ q(0201) => [
+ q(Sint Maarten (Dutch part)),
+ q(Sint Maarten),
+ ],
+ q(0202) => [
+ q(Slovakia),
+ q(Slovak Republic),
+ ],
+ q(0203) => [
+ q(Slovenia),
+ q(Republic of Slovenia),
+ ],
+ q(0204) => [
+ q(Solomon Islands),
+ ],
+ q(0205) => [
+ q(Somalia),
+ ],
+ q(0206) => [
+ q(South Africa),
+ q(Republic of South Africa),
+ ],
+ q(0207) => [
+ q(South Georgia and the South Sandwich Islands),
+ q(South Georgia and the Islands),
+ ],
+ q(0208) => [
+ q(Spain),
+ q(Kingdom of Spain),
+ ],
+ q(0209) => [
+ q(Sri Lanka),
+ q(Democratic Socialist Republic of Sri Lanka),
+ ],
+ q(0210) => [
+ q(Sudan),
+ q(Republic of the Sudan),
+ ],
+ q(0211) => [
+ q(Suriname),
+ q(Republic of Suriname),
+ ],
+ q(0212) => [
+ q(Svalbard and Jan Mayen),
+ q(Svalbard and Jan Mayen Islands),
+ ],
+ q(0213) => [
+ q(Swaziland),
+ q(Kingdom of Swaziland),
+ ],
+ q(0214) => [
+ q(Sweden),
+ q(Kingdom of Sweden),
+ ],
+ q(0215) => [
+ q(Switzerland),
+ q(Swiss Confederation),
+ ],
+ q(0216) => [
+ q(Syrian Arab Republic),
+ q(Syria),
+ q(Golan Heights (Israeli-occupied)),
+ ],
+ q(0217) => [
+ q(Taiwan, Province of China),
+ q(Taiwan),
+ ],
+ q(0218) => [
+ q(Tajikistan),
+ q(Republic of Tajikistan),
+ ],
+ q(0219) => [
+ q(Tanzania, United Republic of),
+ q(United Republic of Tanzania),
+ q(Tanzania),
+ ],
+ q(0220) => [
+ q(Thailand),
+ q(Kingdom of Thailand),
+ ],
+ q(0221) => [
+ q(Timor-Leste),
+ q(East Timor),
+ ],
+ q(0222) => [
+ q(Togo),
+ q(Togolese Republic),
+ ],
+ q(0223) => [
+ q(Tokelau),
+ ],
+ q(0224) => [
+ q(Tonga),
+ q(Kingdom of Tonga),
+ ],
+ q(0225) => [
+ q(Trinidad and Tobago),
+ q(Republic of Trinidad and Tobago),
+ ],
+ q(0226) => [
+ q(Tunisia),
+ q(Republic of Tunisia),
+ ],
+ q(0227) => [
+ q(Turkey),
+ q(Republic of Turkey),
+ ],
+ q(0228) => [
+ q(Turkmenistan),
+ ],
+ q(0229) => [
+ q(Turks and Caicos Islands),
+ ],
+ q(0230) => [
+ q(Tuvalu),
+ ],
+ q(0231) => [
+ q(Uganda),
+ ],
+ q(0232) => [
+ q(Ukraine),
+ ],
+ q(0233) => [
+ q(United Arab Emirates),
+ ],
+ q(0234) => [
+ q(United Kingdom),
+ q(United Kingdom of Great Britain and Northern Ireland),
+ q(Great Britain),
+ q(UK),
+ ],
+ q(0235) => [
+ q(United States),
+ q(United States of America),
+ q(US),
+ q(USA),
+ ],
+ q(0236) => [
+ q(United States Minor Outlying Islands),
+ ],
+ q(0237) => [
+ q(Uruguay),
+ q(Oriental Republic of Uruguay),
+ ],
+ q(0238) => [
+ q(Uzbekistan),
+ q(Republic of Uzbekistan),
+ ],
+ q(0239) => [
+ q(Vanuatu),
+ q(Republic of Vanuatu),
+ ],
+ q(0240) => [
+ q(Venezuela, Bolivarian Republic of),
+ q(Venezuela (Bolivarian Republic of)),
+ q(Venezuela),
+ q(Bolivarian Republic of Venezuela),
+ ],
+ q(0241) => [
+ q(Viet Nam),
+ q(Vietnam),
+ q(Socialist Republic of Vietnam),
+ ],
+ q(0242) => [
+ q(Virgin Islands, British),
+ q(British Virgin Islands),
+ q(Virgin Islands (UK)),
+ ],
+ q(0243) => [
+ q(Virgin Islands, U.S.),
+ q(United States Virgin Islands),
+ q(Virgin Islands),
+ q(Virgin Islands of the United States),
+ q(Virgin Islands (US)),
+ ],
+ q(0244) => [
+ q(Wallis and Futuna),
+ q(Wallis and Futuna Islands),
+ q(Territory of the Wallis and Futuna Islands),
+ ],
+ q(0245) => [
+ q(Western Sahara),
+ ],
+ q(0246) => [
+ q(Yemen),
+ q(Republic of Yemen),
+ ],
+ q(0247) => [
+ q(Zambia),
+ q(Republic of Zambia),
+ ],
+ q(0248) => [
+ q(Zimbabwe),
+ q(Republic of Zimbabwe),
+ ],
+ q(0249) => [
+ q(Channel Islands),
+ ],
+ q(0250) => [
+ q(Serbia and Montenegro),
+ ],
+ q(0251) => [
+ q(Ashmore and Cartier Islands),
+ q(Territory of Ashmore and Cartier Islands),
+ ],
+ q(0252) => [
+ q(Baker Island),
+ ],
+ q(0253) => [
+ q(Bassas da India),
+ ],
+ q(0254) => [
+ q(Clipperton Island),
+ ],
+ q(0255) => [
+ q(Coral Sea Islands),
+ q(Coral Sea Islands Territory),
+ ],
+ q(0256) => [
+ q(Europa Island),
+ ],
+ q(0257) => [
+ q(Gaza Strip),
+ ],
+ q(0258) => [
+ q(Glorioso Islands),
+ ],
+ q(0259) => [
+ q(Howland Island),
+ ],
+ q(0260) => [
+ q(Jan Mayen),
+ ],
+ q(0261) => [
+ q(Jarvis Island),
+ ],
+ q(0262) => [
+ q(Johnston Atoll),
+ ],
+ q(0263) => [
+ q(Juan De Nova Island),
+ ],
+ q(0264) => [
+ q(Kingman Reef),
+ ],
+ q(0265) => [
+ q(Midway Islands),
+ ],
+ q(0266) => [
+ q(Navassa Island),
+ ],
+ q(0267) => [
+ q(Netherlands Antilles),
+ ],
+ q(0268) => [
+ q(Palmyra Atoll),
+ ],
+ q(0269) => [
+ q(Paracel Islands),
+ ],
+ q(0270) => [
+ q(Spratly Islands),
+ ],
+ q(0271) => [
+ q(Svalbard),
+ ],
+ q(0272) => [
+ q(Tromelin Island),
+ ],
+ q(0273) => [
+ q(Wake Atoll),
+ q(Wake Island),
+ ],
+ q(0274) => [
+ q(West Bank),
+ ],
+ q(0275) => [
+ q(Ascension Island),
+ ],
+ q(0276) => [
+ q(European Union),
+ ],
+ q(0277) => [
+ q(Soviet Union),
+ ],
+ q(0278) => [
+ q(Portuguese Timor),
+ ],
+ q(0279) => [
+ q(France, Metropolitan),
+ ],
+ q(0280) => [
+ q(Kosovo),
+ ],
+};
+
+$Locale::Codes::Data{'country'}{'alias2id'} = {
+ q(afghanistan) => [
+ q(0001),
+ q(0),
+ ],
+ q(aland islands) => [
+ q(0002),
+ q(0),
+ ],
+ q(albania) => [
+ q(0003),
+ q(0),
+ ],
+ q(algeria) => [
+ q(0004),
+ q(0),
+ ],
+ q(american samoa) => [
+ q(0005),
+ q(0),
+ ],
+ q(andorra) => [
+ q(0006),
+ q(0),
+ ],
+ q(angola) => [
+ q(0007),
+ q(0),
+ ],
+ q(anguilla) => [
+ q(0008),
+ q(0),
+ ],
+ q(antarctica) => [
+ q(0009),
+ q(0),
+ ],
+ q(antigua and barbuda) => [
+ q(0010),
+ q(0),
+ ],
+ q(arab republic of egypt) => [
+ q(0066),
+ q(1),
+ ],
+ q(argentina) => [
+ q(0011),
+ q(0),
+ ],
+ q(argentine republic) => [
+ q(0011),
+ q(1),
+ ],
+ q(armenia) => [
+ q(0012),
+ q(0),
+ ],
+ q(aruba) => [
+ q(0013),
+ q(0),
+ ],
+ q(ascension island) => [
+ q(0275),
+ q(0),
+ ],
+ q(ashmore and cartier islands) => [
+ q(0251),
+ q(0),
+ ],
+ q(australia) => [
+ q(0014),
+ q(0),
+ ],
+ q(austria) => [
+ q(0015),
+ q(0),
+ ],
+ q(azerbaijan) => [
+ q(0016),
+ q(0),
+ ],
+ q(bahamas) => [
+ q(0017),
+ q(0),
+ ],
+ q(bahamas, the) => [
+ q(0017),
+ q(1),
+ ],
+ q(bahrain) => [
+ q(0018),
+ q(0),
+ ],
+ q(bailiwick of guernsey) => [
+ q(0092),
+ q(1),
+ ],
+ q(bailiwick of jersey) => [
+ q(0113),
+ q(1),
+ ],
+ q(baker island) => [
+ q(0252),
+ q(0),
+ ],
+ q(bangladesh) => [
+ q(0019),
+ q(0),
+ ],
+ q(barbados) => [
+ q(0020),
+ q(0),
+ ],
+ q(bassas da india) => [
+ q(0253),
+ q(0),
+ ],
+ q(belarus) => [
+ q(0021),
+ q(0),
+ ],
+ q(belgium) => [
+ q(0022),
+ q(0),
+ ],
+ q(belize) => [
+ q(0023),
+ q(0),
+ ],
+ q(benin) => [
+ q(0024),
+ q(0),
+ ],
+ q(bermuda) => [
+ q(0025),
+ q(0),
+ ],
+ q(bhutan) => [
+ q(0026),
+ q(0),
+ ],
+ q(bolivarian republic of venezuela) => [
+ q(0240),
+ q(3),
+ ],
+ q(bolivia) => [
+ q(0027),
+ q(2),
+ ],
+ q(bolivia (plurinational state of)) => [
+ q(0027),
+ q(1),
+ ],
+ q(bolivia, plurinational state of) => [
+ q(0027),
+ q(0),
+ ],
+ q(bonaire, saint eustatius and saba) => [
+ q(0028),
+ q(0),
+ ],
+ q(bosnia and herzegovina) => [
+ q(0029),
+ q(0),
+ ],
+ q(botswana) => [
+ q(0030),
+ q(0),
+ ],
+ q(bouvet island) => [
+ q(0031),
+ q(0),
+ ],
+ q(brazil) => [
+ q(0032),
+ q(0),
+ ],
+ q(british indian ocean territory) => [
+ q(0033),
+ q(0),
+ ],
+ q(british virgin islands) => [
+ q(0242),
+ q(1),
+ ],
+ q(brunei) => [
+ q(0034),
+ q(1),
+ ],
+ q(brunei darussalam) => [
+ q(0034),
+ q(0),
+ ],
+ q(bulgaria) => [
+ q(0035),
+ q(0),
+ ],
+ q(burkina faso) => [
+ q(0036),
+ q(0),
+ ],
+ q(burma) => [
+ q(0153),
+ q(1),
+ ],
+ q(burundi) => [
+ q(0037),
+ q(0),
+ ],
+ q(cambodia) => [
+ q(0038),
+ q(0),
+ ],
+ q(cameroon) => [
+ q(0039),
+ q(0),
+ ],
+ q(canada) => [
+ q(0040),
+ q(0),
+ ],
+ q(cape verde) => [
+ q(0041),
+ q(0),
+ ],
+ q(cayman islands) => [
+ q(0042),
+ q(0),
+ ],
+ q(central african republic) => [
+ q(0043),
+ q(0),
+ ],
+ q(chad) => [
+ q(0044),
+ q(0),
+ ],
+ q(channel islands) => [
+ q(0249),
+ q(0),
+ ],
+ q(chile) => [
+ q(0045),
+ q(0),
+ ],
+ q(china) => [
+ q(0046),
+ q(0),
+ ],
+ q(china, hong kong special administrative region) => [
+ q(0100),
+ q(1),
+ ],
+ q(china, macao special administrative region) => [
+ q(0131),
+ q(1),
+ ],
+ q(christmas island) => [
+ q(0047),
+ q(0),
+ ],
+ q(clipperton island) => [
+ q(0254),
+ q(0),
+ ],
+ q(co-operative republic of guyana) => [
+ q(0095),
+ q(1),
+ ],
+ q(cocos (keeling) islands) => [
+ q(0048),
+ q(0),
+ ],
+ q(cocos islands) => [
+ q(0048),
+ q(3),
+ ],
+ q(colombia) => [
+ q(0049),
+ q(0),
+ ],
+ q(commonwealth of australia) => [
+ q(0014),
+ q(1),
+ ],
+ q(commonwealth of dominica) => [
+ q(0063),
+ q(1),
+ ],
+ q(commonwealth of puerto rico) => [
+ q(0179),
+ q(1),
+ ],
+ q(commonwealth of the bahamas) => [
+ q(0017),
+ q(2),
+ ],
+ q(commonwealth of the northern mariana islands) => [
+ q(0165),
+ q(1),
+ ],
+ q(comoros) => [
+ q(0050),
+ q(0),
+ ],
+ q(congo) => [
+ q(0051),
+ q(0),
+ ],
+ q(congo (brazzaville)) => [
+ q(0051),
+ q(1),
+ ],
+ q(congo (kinshasa)) => [
+ q(0052),
+ q(2),
+ ],
+ q(congo, democratic republic of the) => [
+ q(0052),
+ q(3),
+ ],
+ q(congo, republic of the) => [
+ q(0051),
+ q(3),
+ ],
+ q(congo, the democratic republic of the) => [
+ q(0052),
+ q(0),
+ ],
+ q(cook islands) => [
+ q(0053),
+ q(0),
+ ],
+ q(coral sea islands) => [
+ q(0255),
+ q(0),
+ ],
+ q(coral sea islands territory) => [
+ q(0255),
+ q(1),
+ ],
+ q(costa rica) => [
+ q(0054),
+ q(0),
+ ],
+ q(cote d'ivoire) => [
+ q(0055),
+ q(0),
+ ],
+ q(croatia) => [
+ q(0056),
+ q(0),
+ ],
+ q(cuba) => [
+ q(0057),
+ q(0),
+ ],
+ q(curacao) => [
+ q(0058),
+ q(0),
+ ],
+ q(cyprus) => [
+ q(0059),
+ q(0),
+ ],
+ q(czech republic) => [
+ q(0060),
+ q(0),
+ ],
+ q(democratic people's republic of korea) => [
+ q(0118),
+ q(1),
+ ],
+ q(democratic republic of sao tome and principe) => [
+ q(0194),
+ q(1),
+ ],
+ q(democratic republic of the congo) => [
+ q(0052),
+ q(1),
+ ],
+ q(democratic socialist republic of sri lanka) => [
+ q(0209),
+ q(1),
+ ],
+ q(denmark) => [
+ q(0061),
+ q(0),
+ ],
+ q(department of guadeloupe) => [
+ q(0089),
+ q(1),
+ ],
+ q(department of guiana) => [
+ q(0077),
+ q(1),
+ ],
+ q(department of martinique) => [
+ q(0140),
+ q(1),
+ ],
+ q(department of reunion) => [
+ q(0181),
+ q(1),
+ ],
+ q(djibouti) => [
+ q(0062),
+ q(0),
+ ],
+ q(dominica) => [
+ q(0063),
+ q(0),
+ ],
+ q(dominican republic) => [
+ q(0064),
+ q(0),
+ ],
+ q(east timor) => [
+ q(0221),
+ q(1),
+ ],
+ q(ecuador) => [
+ q(0065),
+ q(0),
+ ],
+ q(egypt) => [
+ q(0066),
+ q(0),
+ ],
+ q(el salvador) => [
+ q(0067),
+ q(0),
+ ],
+ q(equatorial guinea) => [
+ q(0068),
+ q(0),
+ ],
+ q(eritrea) => [
+ q(0069),
+ q(0),
+ ],
+ q(estonia) => [
+ q(0070),
+ q(0),
+ ],
+ q(ethiopia) => [
+ q(0071),
+ q(0),
+ ],
+ q(europa island) => [
+ q(0256),
+ q(0),
+ ],
+ q(european union) => [
+ q(0276),
+ q(0),
+ ],
+ q(faeroe islands) => [
+ q(0073),
+ q(1),
+ ],
+ q(falkland islands (islas malvinas)) => [
+ q(0072),
+ q(1),
+ ],
+ q(falkland islands (malvinas)) => [
+ q(0072),
+ q(0),
+ ],
+ q(faroe islands) => [
+ q(0073),
+ q(0),
+ ],
+ q(federal democratic republic of ethiopia) => [
+ q(0071),
+ q(1),
+ ],
+ q(federal islamic republic of the comoros) => [
+ q(0050),
+ q(1),
+ ],
+ q(federal republic of germany) => [
+ q(0083),
+ q(1),
+ ],
+ q(federal republic of nigeria) => [
+ q(0162),
+ q(1),
+ ],
+ q(federated states of micronesia) => [
+ q(0145),
+ q(2),
+ ],
+ q(federation of saint kitts and nevis) => [
+ q(0187),
+ q(1),
+ ],
+ q(federative republic of brazil) => [
+ q(0032),
+ q(1),
+ ],
+ q(fiji) => [
+ q(0074),
+ q(0),
+ ],
+ q(finland) => [
+ q(0075),
+ q(0),
+ ],
+ q(france) => [
+ q(0076),
+ q(0),
+ ],
+ q(france, metropolitan) => [
+ q(0279),
+ q(0),
+ ],
+ q(french guiana) => [
+ q(0077),
+ q(0),
+ ],
+ q(french polynesia) => [
+ q(0078),
+ q(0),
+ ],
+ q(french republic) => [
+ q(0076),
+ q(1),
+ ],
+ q(french southern and antarctic lands) => [
+ q(0079),
+ q(1),
+ ],
+ q(french southern territories) => [
+ q(0079),
+ q(0),
+ ],
+ q(gabon) => [
+ q(0080),
+ q(0),
+ ],
+ q(gabonese republic) => [
+ q(0080),
+ q(1),
+ ],
+ q(gambia) => [
+ q(0081),
+ q(0),
+ ],
+ q(gambia, the) => [
+ q(0081),
+ q(1),
+ ],
+ q(gaza strip) => [
+ q(0257),
+ q(0),
+ ],
+ q(georgia) => [
+ q(0082),
+ q(0),
+ ],
+ q(germany) => [
+ q(0083),
+ q(0),
+ ],
+ q(ghana) => [
+ q(0084),
+ q(0),
+ ],
+ q(gibraltar) => [
+ q(0085),
+ q(0),
+ ],
+ q(glorioso islands) => [
+ q(0258),
+ q(0),
+ ],
+ q(golan heights (israeli-occupied)) => [
+ q(0216),
+ q(2),
+ ],
+ q(grand duchy of luxembourg) => [
+ q(0130),
+ q(1),
+ ],
+ q(great britain) => [
+ q(0234),
+ q(2),
+ ],
+ q(great socialist people's libyan arab jamahiriya) => [
+ q(0127),
+ q(2),
+ ],
+ q(greece) => [
+ q(0086),
+ q(0),
+ ],
+ q(greenland) => [
+ q(0087),
+ q(0),
+ ],
+ q(grenada) => [
+ q(0088),
+ q(0),
+ ],
+ q(guadeloupe) => [
+ q(0089),
+ q(0),
+ ],
+ q(guam) => [
+ q(0090),
+ q(0),
+ ],
+ q(guatemala) => [
+ q(0091),
+ q(0),
+ ],
+ q(guernsey) => [
+ q(0092),
+ q(0),
+ ],
+ q(guinea) => [
+ q(0093),
+ q(0),
+ ],
+ q(guinea-bissau) => [
+ q(0094),
+ q(0),
+ ],
+ q(guyana) => [
+ q(0095),
+ q(0),
+ ],
+ q(haiti) => [
+ q(0096),
+ q(0),
+ ],
+ q(hashemite kingdom of jordan) => [
+ q(0114),
+ q(1),
+ ],
+ q(heard island and mcdonald islands) => [
+ q(0097),
+ q(0),
+ ],
+ q(hellenic republic) => [
+ q(0086),
+ q(1),
+ ],
+ q(holy see) => [
+ q(0098),
+ q(1),
+ ],
+ q(holy see (vatican city state)) => [
+ q(0098),
+ q(0),
+ ],
+ q(holy see (vatican city)) => [
+ q(0098),
+ q(4),
+ ],
+ q(honduras) => [
+ q(0099),
+ q(0),
+ ],
+ q(hong kong) => [
+ q(0100),
+ q(0),
+ ],
+ q(hong kong s.a.r.) => [
+ q(0100),
+ q(2),
+ ],
+ q(hong kong special administrative region) => [
+ q(0100),
+ q(3),
+ ],
+ q(hong kong special administrative region of china) => [
+ q(0100),
+ q(4),
+ ],
+ q(howland island) => [
+ q(0259),
+ q(0),
+ ],
+ q(hungary) => [
+ q(0101),
+ q(0),
+ ],
+ q(iceland) => [
+ q(0102),
+ q(0),
+ ],
+ q(independent state of papua new guinea) => [
+ q(0172),
+ q(1),
+ ],
+ q(independent state of samoa) => [
+ q(0192),
+ q(1),
+ ],
+ q(india) => [
+ q(0103),
+ q(0),
+ ],
+ q(indonesia) => [
+ q(0104),
+ q(0),
+ ],
+ q(iran) => [
+ q(0105),
+ q(2),
+ ],
+ q(iran (islamic republic of)) => [
+ q(0105),
+ q(1),
+ ],
+ q(iran, islamic republic of) => [
+ q(0105),
+ q(0),
+ ],
+ q(iraq) => [
+ q(0106),
+ q(0),
+ ],
+ q(ireland) => [
+ q(0107),
+ q(0),
+ ],
+ q(islamic republic of iran) => [
+ q(0105),
+ q(3),
+ ],
+ q(islamic republic of mauritania) => [
+ q(0141),
+ q(1),
+ ],
+ q(islamic republic of pakistan) => [
+ q(0168),
+ q(1),
+ ],
+ q(islamic state of afghanistan) => [
+ q(0001),
+ q(1),
+ ],
+ q(isle of man) => [
+ q(0108),
+ q(0),
+ ],
+ q(israel) => [
+ q(0109),
+ q(0),
+ ],
+ q(italian republic) => [
+ q(0110),
+ q(1),
+ ],
+ q(italy) => [
+ q(0110),
+ q(0),
+ ],
+ q(jamaica) => [
+ q(0111),
+ q(0),
+ ],
+ q(jan mayen) => [
+ q(0260),
+ q(0),
+ ],
+ q(japan) => [
+ q(0112),
+ q(0),
+ ],
+ q(jarvis island) => [
+ q(0261),
+ q(0),
+ ],
+ q(jersey) => [
+ q(0113),
+ q(0),
+ ],
+ q(johnston atoll) => [
+ q(0262),
+ q(0),
+ ],
+ q(jordan) => [
+ q(0114),
+ q(0),
+ ],
+ q(juan de nova island) => [
+ q(0263),
+ q(0),
+ ],
+ q(kazakhstan) => [
+ q(0115),
+ q(0),
+ ],
+ q(kazakstan) => [
+ q(0115),
+ q(2),
+ ],
+ q(keeling islands) => [
+ q(0048),
+ q(2),
+ ],
+ q(kenya) => [
+ q(0116),
+ q(0),
+ ],
+ q(kingdom of belgium) => [
+ q(0022),
+ q(1),
+ ],
+ q(kingdom of bhutan) => [
+ q(0026),
+ q(1),
+ ],
+ q(kingdom of cambodia) => [
+ q(0038),
+ q(1),
+ ],
+ q(kingdom of denmark) => [
+ q(0061),
+ q(1),
+ ],
+ q(kingdom of morocco) => [
+ q(0151),
+ q(1),
+ ],
+ q(kingdom of nepal) => [
+ q(0156),
+ q(1),
+ ],
+ q(kingdom of norway) => [
+ q(0166),
+ q(1),
+ ],
+ q(kingdom of saudi arabia) => [
+ q(0195),
+ q(1),
+ ],
+ q(kingdom of spain) => [
+ q(0208),
+ q(1),
+ ],
+ q(kingdom of swaziland) => [
+ q(0213),
+ q(1),
+ ],
+ q(kingdom of sweden) => [
+ q(0214),
+ q(1),
+ ],
+ q(kingdom of thailand) => [
+ q(0220),
+ q(1),
+ ],
+ q(kingdom of the netherlands) => [
+ q(0157),
+ q(1),
+ ],
+ q(kingdom of tonga) => [
+ q(0224),
+ q(1),
+ ],
+ q(kingman reef) => [
+ q(0264),
+ q(0),
+ ],
+ q(kiribati) => [
+ q(0117),
+ q(0),
+ ],
+ q(korea, democratic people's republic of) => [
+ q(0118),
+ q(0),
+ ],
+ q(korea, north) => [
+ q(0118),
+ q(2),
+ ],
+ q(korea, republic of) => [
+ q(0119),
+ q(0),
+ ],
+ q(korea, south) => [
+ q(0119),
+ q(2),
+ ],
+ q(kosovo) => [
+ q(0280),
+ q(0),
+ ],
+ q(kuwait) => [
+ q(0120),
+ q(0),
+ ],
+ q(kyrgyz republic) => [
+ q(0121),
+ q(1),
+ ],
+ q(kyrgyzstan) => [
+ q(0121),
+ q(0),
+ ],
+ q(lao people's democratic republic) => [
+ q(0122),
+ q(0),
+ ],
+ q(laos) => [
+ q(0122),
+ q(1),
+ ],
+ q(latvia) => [
+ q(0123),
+ q(0),
+ ],
+ q(lebanese republic) => [
+ q(0124),
+ q(1),
+ ],
+ q(lebanon) => [
+ q(0124),
+ q(0),
+ ],
+ q(lesotho) => [
+ q(0125),
+ q(0),
+ ],
+ q(liberia) => [
+ q(0126),
+ q(0),
+ ],
+ q(libya) => [
+ q(0127),
+ q(1),
+ ],
+ q(libyan arab jamahiriya) => [
+ q(0127),
+ q(0),
+ ],
+ q(liechtenstein) => [
+ q(0128),
+ q(0),
+ ],
+ q(lithuania) => [
+ q(0129),
+ q(0),
+ ],
+ q(luxembourg) => [
+ q(0130),
+ q(0),
+ ],
+ q(macao) => [
+ q(0131),
+ q(0),
+ ],
+ q(macao special administrative region of china) => [
+ q(0131),
+ q(6),
+ ],
+ q(macau) => [
+ q(0131),
+ q(4),
+ ],
+ q(macau s.a.r) => [
+ q(0131),
+ q(2),
+ ],
+ q(macau s.a.r.) => [
+ q(0131),
+ q(5),
+ ],
+ q(macau special administrative region) => [
+ q(0131),
+ q(3),
+ ],
+ q(macedonia) => [
+ q(0132),
+ q(2),
+ ],
+ q(macedonia, former yugoslav republic of) => [
+ q(0132),
+ q(4),
+ ],
+ q(macedonia, the former yugoslav republic of) => [
+ q(0132),
+ q(0),
+ ],
+ q(madagascar) => [
+ q(0133),
+ q(0),
+ ],
+ q(malawi) => [
+ q(0134),
+ q(0),
+ ],
+ q(malaysia) => [
+ q(0135),
+ q(0),
+ ],
+ q(maldives) => [
+ q(0136),
+ q(0),
+ ],
+ q(mali) => [
+ q(0137),
+ q(0),
+ ],
+ q(malta) => [
+ q(0138),
+ q(0),
+ ],
+ q(marshall islands) => [
+ q(0139),
+ q(0),
+ ],
+ q(martinique) => [
+ q(0140),
+ q(0),
+ ],
+ q(mauritania) => [
+ q(0141),
+ q(0),
+ ],
+ q(mauritius) => [
+ q(0142),
+ q(0),
+ ],
+ q(mayotte) => [
+ q(0143),
+ q(0),
+ ],
+ q(mexico) => [
+ q(0144),
+ q(0),
+ ],
+ q(micronesia (federated states of)) => [
+ q(0145),
+ q(1),
+ ],
+ q(micronesia, federated states of) => [
+ q(0145),
+ q(0),
+ ],
+ q(midway islands) => [
+ q(0265),
+ q(0),
+ ],
+ q(moldova) => [
+ q(0146),
+ q(2),
+ ],
+ q(moldova, republic of) => [
+ q(0146),
+ q(0),
+ ],
+ q(monaco) => [
+ q(0147),
+ q(0),
+ ],
+ q(mongolia) => [
+ q(0148),
+ q(0),
+ ],
+ q(montenegro) => [
+ q(0149),
+ q(0),
+ ],
+ q(montserrat) => [
+ q(0150),
+ q(0),
+ ],
+ q(morocco) => [
+ q(0151),
+ q(0),
+ ],
+ q(mozambique) => [
+ q(0152),
+ q(0),
+ ],
+ q(myanmar) => [
+ q(0153),
+ q(0),
+ ],
+ q(namibia) => [
+ q(0154),
+ q(0),
+ ],
+ q(nauru) => [
+ q(0155),
+ q(0),
+ ],
+ q(navassa island) => [
+ q(0266),
+ q(0),
+ ],
+ q(negara brunei darussalam) => [
+ q(0034),
+ q(2),
+ ],
+ q(nepal) => [
+ q(0156),
+ q(0),
+ ],
+ q(netherlands) => [
+ q(0157),
+ q(0),
+ ],
+ q(netherlands antilles) => [
+ q(0267),
+ q(0),
+ ],
+ q(new caledonia) => [
+ q(0158),
+ q(0),
+ ],
+ q(new zealand) => [
+ q(0159),
+ q(0),
+ ],
+ q(nicaragua) => [
+ q(0160),
+ q(0),
+ ],
+ q(niger) => [
+ q(0161),
+ q(0),
+ ],
+ q(nigeria) => [
+ q(0162),
+ q(0),
+ ],
+ q(niue) => [
+ q(0163),
+ q(0),
+ ],
+ q(norfolk island) => [
+ q(0164),
+ q(0),
+ ],
+ q(north korea) => [
+ q(0118),
+ q(3),
+ ],
+ q(northern mariana islands) => [
+ q(0165),
+ q(0),
+ ],
+ q(norway) => [
+ q(0166),
+ q(0),
+ ],
+ q(occupied palestinian territory) => [
+ q(0170),
+ q(1),
+ ],
+ q(oman) => [
+ q(0167),
+ q(0),
+ ],
+ q(oriental republic of uruguay) => [
+ q(0237),
+ q(1),
+ ],
+ q(pakistan) => [
+ q(0168),
+ q(0),
+ ],
+ q(palau) => [
+ q(0169),
+ q(0),
+ ],
+ q(palestinian territory, occupied) => [
+ q(0170),
+ q(0),
+ ],
+ q(palmyra atoll) => [
+ q(0268),
+ q(0),
+ ],
+ q(panama) => [
+ q(0171),
+ q(0),
+ ],
+ q(papua new guinea) => [
+ q(0172),
+ q(0),
+ ],
+ q(paracel islands) => [
+ q(0269),
+ q(0),
+ ],
+ q(paraguay) => [
+ q(0173),
+ q(0),
+ ],
+ q(people's democratic republic of algeria) => [
+ q(0004),
+ q(1),
+ ],
+ q(people's republic of bangladesh) => [
+ q(0019),
+ q(1),
+ ],
+ q(people's republic of china) => [
+ q(0046),
+ q(1),
+ ],
+ q(peru) => [
+ q(0174),
+ q(0),
+ ],
+ q(philippines) => [
+ q(0175),
+ q(0),
+ ],
+ q(pitcairn) => [
+ q(0176),
+ q(0),
+ ],
+ q(pitcairn island) => [
+ q(0176),
+ q(3),
+ ],
+ q(pitcairn islands) => [
+ q(0176),
+ q(1),
+ ],
+ q(pitcairn, henderson, ducie and oeno islands) => [
+ q(0176),
+ q(2),
+ ],
+ q(poland) => [
+ q(0177),
+ q(0),
+ ],
+ q(portugal) => [
+ q(0178),
+ q(0),
+ ],
+ q(portuguese republic) => [
+ q(0178),
+ q(1),
+ ],
+ q(portuguese timor) => [
+ q(0278),
+ q(0),
+ ],
+ q(principality of andorra) => [
+ q(0006),
+ q(1),
+ ],
+ q(principality of liechtenstein) => [
+ q(0128),
+ q(1),
+ ],
+ q(principality of monaco) => [
+ q(0147),
+ q(1),
+ ],
+ q(puerto rico) => [
+ q(0179),
+ q(0),
+ ],
+ q(qatar) => [
+ q(0180),
+ q(0),
+ ],
+ q(republic of albania) => [
+ q(0003),
+ q(1),
+ ],
+ q(republic of angola) => [
+ q(0007),
+ q(1),
+ ],
+ q(republic of armenia) => [
+ q(0012),
+ q(1),
+ ],
+ q(republic of austria) => [
+ q(0015),
+ q(1),
+ ],
+ q(republic of azerbaijan) => [
+ q(0016),
+ q(1),
+ ],
+ q(republic of belarus) => [
+ q(0021),
+ q(1),
+ ],
+ q(republic of benin) => [
+ q(0024),
+ q(1),
+ ],
+ q(republic of bolivia) => [
+ q(0027),
+ q(3),
+ ],
+ q(republic of botswana) => [
+ q(0030),
+ q(1),
+ ],
+ q(republic of burundi) => [
+ q(0037),
+ q(1),
+ ],
+ q(republic of cameroon) => [
+ q(0039),
+ q(1),
+ ],
+ q(republic of cape verde) => [
+ q(0041),
+ q(1),
+ ],
+ q(republic of chad) => [
+ q(0044),
+ q(1),
+ ],
+ q(republic of chile) => [
+ q(0045),
+ q(1),
+ ],
+ q(republic of colombia) => [
+ q(0049),
+ q(1),
+ ],
+ q(republic of costa rica) => [
+ q(0054),
+ q(1),
+ ],
+ q(republic of cote d'ivoire) => [
+ q(0055),
+ q(1),
+ ],
+ q(republic of croatia) => [
+ q(0056),
+ q(1),
+ ],
+ q(republic of cuba) => [
+ q(0057),
+ q(1),
+ ],
+ q(republic of cyprus) => [
+ q(0059),
+ q(1),
+ ],
+ q(republic of djibouti) => [
+ q(0062),
+ q(1),
+ ],
+ q(republic of ecuador) => [
+ q(0065),
+ q(1),
+ ],
+ q(republic of el salvador) => [
+ q(0067),
+ q(1),
+ ],
+ q(republic of equatorial guinea) => [
+ q(0068),
+ q(1),
+ ],
+ q(republic of estonia) => [
+ q(0070),
+ q(1),
+ ],
+ q(republic of finland) => [
+ q(0075),
+ q(1),
+ ],
+ q(republic of ghana) => [
+ q(0084),
+ q(1),
+ ],
+ q(republic of guatemala) => [
+ q(0091),
+ q(1),
+ ],
+ q(republic of guinea) => [
+ q(0093),
+ q(1),
+ ],
+ q(republic of guinea-bissau) => [
+ q(0094),
+ q(1),
+ ],
+ q(republic of haiti) => [
+ q(0096),
+ q(1),
+ ],
+ q(republic of honduras) => [
+ q(0099),
+ q(1),
+ ],
+ q(republic of hungary) => [
+ q(0101),
+ q(1),
+ ],
+ q(republic of iceland) => [
+ q(0102),
+ q(1),
+ ],
+ q(republic of india) => [
+ q(0103),
+ q(1),
+ ],
+ q(republic of indonesia) => [
+ q(0104),
+ q(1),
+ ],
+ q(republic of iraq) => [
+ q(0106),
+ q(1),
+ ],
+ q(republic of kazakhstan) => [
+ q(0115),
+ q(1),
+ ],
+ q(republic of kenya) => [
+ q(0116),
+ q(1),
+ ],
+ q(republic of kiribati) => [
+ q(0117),
+ q(1),
+ ],
+ q(republic of korea) => [
+ q(0119),
+ q(1),
+ ],
+ q(republic of latvia) => [
+ q(0123),
+ q(1),
+ ],
+ q(republic of lesotho) => [
+ q(0125),
+ q(1),
+ ],
+ q(republic of liberia) => [
+ q(0126),
+ q(1),
+ ],
+ q(republic of lithuania) => [
+ q(0129),
+ q(1),
+ ],
+ q(republic of macedonia) => [
+ q(0132),
+ q(3),
+ ],
+ q(republic of madagascar) => [
+ q(0133),
+ q(1),
+ ],
+ q(republic of malawi) => [
+ q(0134),
+ q(1),
+ ],
+ q(republic of maldives) => [
+ q(0136),
+ q(1),
+ ],
+ q(republic of mali) => [
+ q(0137),
+ q(1),
+ ],
+ q(republic of malta) => [
+ q(0138),
+ q(1),
+ ],
+ q(republic of mauritius) => [
+ q(0142),
+ q(1),
+ ],
+ q(republic of moldova) => [
+ q(0146),
+ q(1),
+ ],
+ q(republic of mozambique) => [
+ q(0152),
+ q(1),
+ ],
+ q(republic of namibia) => [
+ q(0154),
+ q(1),
+ ],
+ q(republic of nauru) => [
+ q(0155),
+ q(1),
+ ],
+ q(republic of nicaragua) => [
+ q(0160),
+ q(1),
+ ],
+ q(republic of niger) => [
+ q(0161),
+ q(1),
+ ],
+ q(republic of palau) => [
+ q(0169),
+ q(1),
+ ],
+ q(republic of panama) => [
+ q(0171),
+ q(1),
+ ],
+ q(republic of paraguay) => [
+ q(0173),
+ q(1),
+ ],
+ q(republic of peru) => [
+ q(0174),
+ q(1),
+ ],
+ q(republic of poland) => [
+ q(0177),
+ q(1),
+ ],
+ q(republic of san marino) => [
+ q(0193),
+ q(1),
+ ],
+ q(republic of senegal) => [
+ q(0196),
+ q(1),
+ ],
+ q(republic of seychelles) => [
+ q(0198),
+ q(1),
+ ],
+ q(republic of sierra leone) => [
+ q(0199),
+ q(1),
+ ],
+ q(republic of singapore) => [
+ q(0200),
+ q(1),
+ ],
+ q(republic of slovenia) => [
+ q(0203),
+ q(1),
+ ],
+ q(republic of south africa) => [
+ q(0206),
+ q(1),
+ ],
+ q(republic of suriname) => [
+ q(0211),
+ q(1),
+ ],
+ q(republic of tajikistan) => [
+ q(0218),
+ q(1),
+ ],
+ q(republic of the congo) => [
+ q(0051),
+ q(2),
+ ],
+ q(republic of the fiji islands) => [
+ q(0074),
+ q(1),
+ ],
+ q(republic of the gambia) => [
+ q(0081),
+ q(2),
+ ],
+ q(republic of the marshall islands) => [
+ q(0139),
+ q(1),
+ ],
+ q(republic of the philippines) => [
+ q(0175),
+ q(1),
+ ],
+ q(republic of the sudan) => [
+ q(0210),
+ q(1),
+ ],
+ q(republic of trinidad and tobago) => [
+ q(0225),
+ q(1),
+ ],
+ q(republic of tunisia) => [
+ q(0226),
+ q(1),
+ ],
+ q(republic of turkey) => [
+ q(0227),
+ q(1),
+ ],
+ q(republic of uzbekistan) => [
+ q(0238),
+ q(1),
+ ],
+ q(republic of vanuatu) => [
+ q(0239),
+ q(1),
+ ],
+ q(republic of yemen) => [
+ q(0246),
+ q(1),
+ ],
+ q(republic of zambia) => [
+ q(0247),
+ q(1),
+ ],
+ q(republic of zimbabwe) => [
+ q(0248),
+ q(1),
+ ],
+ q(reunion) => [
+ q(0181),
+ q(0),
+ ],
+ q(romania) => [
+ q(0182),
+ q(0),
+ ],
+ q(russia) => [
+ q(0183),
+ q(1),
+ ],
+ q(russian federation) => [
+ q(0183),
+ q(0),
+ ],
+ q(rwanda) => [
+ q(0184),
+ q(0),
+ ],
+ q(rwandese republic) => [
+ q(0184),
+ q(1),
+ ],
+ q(saint barthelemy) => [
+ q(0185),
+ q(0),
+ ],
+ q(saint helena) => [
+ q(0186),
+ q(1),
+ ],
+ q(saint helena, ascension and tristan da cunha) => [
+ q(0186),
+ q(0),
+ ],
+ q(saint kitts and nevis) => [
+ q(0187),
+ q(0),
+ ],
+ q(saint lucia) => [
+ q(0188),
+ q(0),
+ ],
+ q(saint martin) => [
+ q(0189),
+ q(2),
+ ],
+ q(saint martin (french part)) => [
+ q(0189),
+ q(0),
+ ],
+ q(saint pierre and miquelon) => [
+ q(0190),
+ q(0),
+ ],
+ q(saint vincent and the grenadines) => [
+ q(0191),
+ q(0),
+ ],
+ q(saint-barthelemy) => [
+ q(0185),
+ q(1),
+ ],
+ q(saint-martin) => [
+ q(0189),
+ q(3),
+ ],
+ q(saint-martin (french part)) => [
+ q(0189),
+ q(1),
+ ],
+ q(samoa) => [
+ q(0192),
+ q(0),
+ ],
+ q(san marino) => [
+ q(0193),
+ q(0),
+ ],
+ q(sao tome and principe) => [
+ q(0194),
+ q(0),
+ ],
+ q(saudi arabia) => [
+ q(0195),
+ q(0),
+ ],
+ q(senegal) => [
+ q(0196),
+ q(0),
+ ],
+ q(serbia) => [
+ q(0197),
+ q(0),
+ ],
+ q(serbia and montenegro) => [
+ q(0250),
+ q(0),
+ ],
+ q(seychelles) => [
+ q(0198),
+ q(0),
+ ],
+ q(sierra leone) => [
+ q(0199),
+ q(0),
+ ],
+ q(singapore) => [
+ q(0200),
+ q(0),
+ ],
+ q(sint maarten) => [
+ q(0201),
+ q(1),
+ ],
+ q(sint maarten (dutch part)) => [
+ q(0201),
+ q(0),
+ ],
+ q(slovak republic) => [
+ q(0202),
+ q(1),
+ ],
+ q(slovakia) => [
+ q(0202),
+ q(0),
+ ],
+ q(slovenia) => [
+ q(0203),
+ q(0),
+ ],
+ q(socialist republic of vietnam) => [
+ q(0241),
+ q(2),
+ ],
+ q(solomon islands) => [
+ q(0204),
+ q(0),
+ ],
+ q(somalia) => [
+ q(0205),
+ q(0),
+ ],
+ q(south africa) => [
+ q(0206),
+ q(0),
+ ],
+ q(south georgia and the islands) => [
+ q(0207),
+ q(1),
+ ],
+ q(south georgia and the south sandwich islands) => [
+ q(0207),
+ q(0),
+ ],
+ q(south korea) => [
+ q(0119),
+ q(3),
+ ],
+ q(soviet union) => [
+ q(0277),
+ q(0),
+ ],
+ q(spain) => [
+ q(0208),
+ q(0),
+ ],
+ q(spratly islands) => [
+ q(0270),
+ q(0),
+ ],
+ q(sri lanka) => [
+ q(0209),
+ q(0),
+ ],
+ q(state of bahrain) => [
+ q(0018),
+ q(1),
+ ],
+ q(state of eritrea) => [
+ q(0069),
+ q(1),
+ ],
+ q(state of israel) => [
+ q(0109),
+ q(1),
+ ],
+ q(state of kuwait) => [
+ q(0120),
+ q(1),
+ ],
+ q(state of qatar) => [
+ q(0180),
+ q(1),
+ ],
+ q(state of the vatican city) => [
+ q(0098),
+ q(3),
+ ],
+ q(sudan) => [
+ q(0210),
+ q(0),
+ ],
+ q(sultanate of oman) => [
+ q(0167),
+ q(1),
+ ],
+ q(suriname) => [
+ q(0211),
+ q(0),
+ ],
+ q(svalbard) => [
+ q(0271),
+ q(0),
+ ],
+ q(svalbard and jan mayen) => [
+ q(0212),
+ q(0),
+ ],
+ q(svalbard and jan mayen islands) => [
+ q(0212),
+ q(1),
+ ],
+ q(swaziland) => [
+ q(0213),
+ q(0),
+ ],
+ q(sweden) => [
+ q(0214),
+ q(0),
+ ],
+ q(swiss confederation) => [
+ q(0215),
+ q(1),
+ ],
+ q(switzerland) => [
+ q(0215),
+ q(0),
+ ],
+ q(syria) => [
+ q(0216),
+ q(1),
+ ],
+ q(syrian arab republic) => [
+ q(0216),
+ q(0),
+ ],
+ q(taiwan) => [
+ q(0217),
+ q(1),
+ ],
+ q(taiwan, province of china) => [
+ q(0217),
+ q(0),
+ ],
+ q(tajikistan) => [
+ q(0218),
+ q(0),
+ ],
+ q(tanzania) => [
+ q(0219),
+ q(2),
+ ],
+ q(tanzania, united republic of) => [
+ q(0219),
+ q(0),
+ ],
+ q(territorial collectivity of mayotte) => [
+ q(0143),
+ q(1),
+ ],
+ q(territorial collectivity of saint pierre and miquelon) => [
+ q(0190),
+ q(1),
+ ],
+ q(territory of american samoa) => [
+ q(0005),
+ q(1),
+ ],
+ q(territory of ashmore and cartier islands) => [
+ q(0251),
+ q(1),
+ ],
+ q(territory of christmas island) => [
+ q(0047),
+ q(1),
+ ],
+ q(territory of cocos (keeling) islands) => [
+ q(0048),
+ q(1),
+ ],
+ q(territory of french polynesia) => [
+ q(0078),
+ q(1),
+ ],
+ q(territory of guam) => [
+ q(0090),
+ q(1),
+ ],
+ q(territory of heard island and mcdonald islands) => [
+ q(0097),
+ q(1),
+ ],
+ q(territory of new caledonia and dependencies) => [
+ q(0158),
+ q(1),
+ ],
+ q(territory of norfolk island) => [
+ q(0164),
+ q(1),
+ ],
+ q(territory of the french southern and antarctic lands) => [
+ q(0079),
+ q(2),
+ ],
+ q(territory of the wallis and futuna islands) => [
+ q(0244),
+ q(2),
+ ],
+ q(thailand) => [
+ q(0220),
+ q(0),
+ ],
+ q(the bahamas) => [
+ q(0017),
+ q(3),
+ ],
+ q(the democratic republic of the congo) => [
+ q(0052),
+ q(4),
+ ],
+ q(the former yugoslav republic of macedonia) => [
+ q(0132),
+ q(1),
+ ],
+ q(the republic of the congo) => [
+ q(0051),
+ q(4),
+ ],
+ q(timor-leste) => [
+ q(0221),
+ q(0),
+ ],
+ q(togo) => [
+ q(0222),
+ q(0),
+ ],
+ q(togolese republic) => [
+ q(0222),
+ q(1),
+ ],
+ q(tokelau) => [
+ q(0223),
+ q(0),
+ ],
+ q(tonga) => [
+ q(0224),
+ q(0),
+ ],
+ q(trinidad and tobago) => [
+ q(0225),
+ q(0),
+ ],
+ q(tromelin island) => [
+ q(0272),
+ q(0),
+ ],
+ q(tunisia) => [
+ q(0226),
+ q(0),
+ ],
+ q(turkey) => [
+ q(0227),
+ q(0),
+ ],
+ q(turkmenistan) => [
+ q(0228),
+ q(0),
+ ],
+ q(turks and caicos islands) => [
+ q(0229),
+ q(0),
+ ],
+ q(tuvalu) => [
+ q(0230),
+ q(0),
+ ],
+ q(uganda) => [
+ q(0231),
+ q(0),
+ ],
+ q(uk) => [
+ q(0234),
+ q(3),
+ ],
+ q(ukraine) => [
+ q(0232),
+ q(0),
+ ],
+ q(union of burma) => [
+ q(0153),
+ q(2),
+ ],
+ q(united arab emirates) => [
+ q(0233),
+ q(0),
+ ],
+ q(united kingdom) => [
+ q(0234),
+ q(0),
+ ],
+ q(united kingdom of great britain and northern ireland) => [
+ q(0234),
+ q(1),
+ ],
+ q(united mexican states) => [
+ q(0144),
+ q(1),
+ ],
+ q(united republic of tanzania) => [
+ q(0219),
+ q(1),
+ ],
+ q(united states) => [
+ q(0235),
+ q(0),
+ ],
+ q(united states minor outlying islands) => [
+ q(0236),
+ q(0),
+ ],
+ q(united states of america) => [
+ q(0235),
+ q(1),
+ ],
+ q(united states virgin islands) => [
+ q(0243),
+ q(1),
+ ],
+ q(uruguay) => [
+ q(0237),
+ q(0),
+ ],
+ q(us) => [
+ q(0235),
+ q(2),
+ ],
+ q(usa) => [
+ q(0235),
+ q(3),
+ ],
+ q(uzbekistan) => [
+ q(0238),
+ q(0),
+ ],
+ q(vanuatu) => [
+ q(0239),
+ q(0),
+ ],
+ q(vatican city) => [
+ q(0098),
+ q(2),
+ ],
+ q(venezuela) => [
+ q(0240),
+ q(2),
+ ],
+ q(venezuela (bolivarian republic of)) => [
+ q(0240),
+ q(1),
+ ],
+ q(venezuela, bolivarian republic of) => [
+ q(0240),
+ q(0),
+ ],
+ q(viet nam) => [
+ q(0241),
+ q(0),
+ ],
+ q(vietnam) => [
+ q(0241),
+ q(1),
+ ],
+ q(virgin islands) => [
+ q(0243),
+ q(2),
+ ],
+ q(virgin islands (uk)) => [
+ q(0242),
+ q(2),
+ ],
+ q(virgin islands (us)) => [
+ q(0243),
+ q(4),
+ ],
+ q(virgin islands of the united states) => [
+ q(0243),
+ q(3),
+ ],
+ q(virgin islands, british) => [
+ q(0242),
+ q(0),
+ ],
+ q(virgin islands, u.s.) => [
+ q(0243),
+ q(0),
+ ],
+ q(wake atoll) => [
+ q(0273),
+ q(0),
+ ],
+ q(wake island) => [
+ q(0273),
+ q(1),
+ ],
+ q(wallis and futuna) => [
+ q(0244),
+ q(0),
+ ],
+ q(wallis and futuna islands) => [
+ q(0244),
+ q(1),
+ ],
+ q(west bank) => [
+ q(0274),
+ q(0),
+ ],
+ q(western sahara) => [
+ q(0245),
+ q(0),
+ ],
+ q(yemen) => [
+ q(0246),
+ q(0),
+ ],
+ q(zambia) => [
+ q(0247),
+ q(0),
+ ],
+ q(zimbabwe) => [
+ q(0248),
+ q(0),
+ ],
+};
+
+$Locale::Codes::Data{'country'}{'code2id'} = {
+ q(alpha2) => {
+ q(ad) => [
+ q(0006),
+ q(0),
+ ],
+ q(ae) => [
+ q(0233),
+ q(0),
+ ],
+ q(af) => [
+ q(0001),
+ q(0),
+ ],
+ q(ag) => [
+ q(0010),
+ q(0),
+ ],
+ q(ai) => [
+ q(0008),
+ q(0),
+ ],
+ q(al) => [
+ q(0003),
+ q(0),
+ ],
+ q(am) => [
+ q(0012),
+ q(0),
+ ],
+ q(an) => [
+ q(0267),
+ q(0),
+ ],
+ q(ao) => [
+ q(0007),
+ q(0),
+ ],
+ q(aq) => [
+ q(0009),
+ q(0),
+ ],
+ q(ar) => [
+ q(0011),
+ q(0),
+ ],
+ q(as) => [
+ q(0005),
+ q(0),
+ ],
+ q(at) => [
+ q(0015),
+ q(0),
+ ],
+ q(au) => [
+ q(0014),
+ q(0),
+ ],
+ q(aw) => [
+ q(0013),
+ q(0),
+ ],
+ q(ax) => [
+ q(0002),
+ q(0),
+ ],
+ q(az) => [
+ q(0016),
+ q(0),
+ ],
+ q(ba) => [
+ q(0029),
+ q(0),
+ ],
+ q(bb) => [
+ q(0020),
+ q(0),
+ ],
+ q(bd) => [
+ q(0019),
+ q(0),
+ ],
+ q(be) => [
+ q(0022),
+ q(0),
+ ],
+ q(bf) => [
+ q(0036),
+ q(0),
+ ],
+ q(bg) => [
+ q(0035),
+ q(0),
+ ],
+ q(bh) => [
+ q(0018),
+ q(0),
+ ],
+ q(bi) => [
+ q(0037),
+ q(0),
+ ],
+ q(bj) => [
+ q(0024),
+ q(0),
+ ],
+ q(bl) => [
+ q(0185),
+ q(0),
+ ],
+ q(bm) => [
+ q(0025),
+ q(0),
+ ],
+ q(bn) => [
+ q(0034),
+ q(0),
+ ],
+ q(bo) => [
+ q(0027),
+ q(0),
+ ],
+ q(bq) => [
+ q(0028),
+ q(0),
+ ],
+ q(br) => [
+ q(0032),
+ q(0),
+ ],
+ q(bs) => [
+ q(0017),
+ q(0),
+ ],
+ q(bt) => [
+ q(0026),
+ q(0),
+ ],
+ q(bv) => [
+ q(0031),
+ q(0),
+ ],
+ q(bw) => [
+ q(0030),
+ q(0),
+ ],
+ q(by) => [
+ q(0021),
+ q(0),
+ ],
+ q(bz) => [
+ q(0023),
+ q(0),
+ ],
+ q(ca) => [
+ q(0040),
+ q(0),
+ ],
+ q(cc) => [
+ q(0048),
+ q(0),
+ ],
+ q(cd) => [
+ q(0052),
+ q(0),
+ ],
+ q(cf) => [
+ q(0043),
+ q(0),
+ ],
+ q(cg) => [
+ q(0051),
+ q(0),
+ ],
+ q(ch) => [
+ q(0215),
+ q(0),
+ ],
+ q(ci) => [
+ q(0055),
+ q(0),
+ ],
+ q(ck) => [
+ q(0053),
+ q(0),
+ ],
+ q(cl) => [
+ q(0045),
+ q(0),
+ ],
+ q(cm) => [
+ q(0039),
+ q(0),
+ ],
+ q(cn) => [
+ q(0046),
+ q(0),
+ ],
+ q(co) => [
+ q(0049),
+ q(0),
+ ],
+ q(cr) => [
+ q(0054),
+ q(0),
+ ],
+ q(cu) => [
+ q(0057),
+ q(0),
+ ],
+ q(cv) => [
+ q(0041),
+ q(0),
+ ],
+ q(cw) => [
+ q(0058),
+ q(0),
+ ],
+ q(cx) => [
+ q(0047),
+ q(0),
+ ],
+ q(cy) => [
+ q(0059),
+ q(0),
+ ],
+ q(cz) => [
+ q(0060),
+ q(0),
+ ],
+ q(de) => [
+ q(0083),
+ q(0),
+ ],
+ q(dj) => [
+ q(0062),
+ q(0),
+ ],
+ q(dk) => [
+ q(0061),
+ q(0),
+ ],
+ q(dm) => [
+ q(0063),
+ q(0),
+ ],
+ q(do) => [
+ q(0064),
+ q(0),
+ ],
+ q(dz) => [
+ q(0004),
+ q(0),
+ ],
+ q(ec) => [
+ q(0065),
+ q(0),
+ ],
+ q(ee) => [
+ q(0070),
+ q(0),
+ ],
+ q(eg) => [
+ q(0066),
+ q(0),
+ ],
+ q(eh) => [
+ q(0245),
+ q(0),
+ ],
+ q(er) => [
+ q(0069),
+ q(0),
+ ],
+ q(es) => [
+ q(0208),
+ q(0),
+ ],
+ q(et) => [
+ q(0071),
+ q(0),
+ ],
+ q(fi) => [
+ q(0075),
+ q(0),
+ ],
+ q(fj) => [
+ q(0074),
+ q(0),
+ ],
+ q(fk) => [
+ q(0072),
+ q(0),
+ ],
+ q(fm) => [
+ q(0145),
+ q(0),
+ ],
+ q(fo) => [
+ q(0073),
+ q(0),
+ ],
+ q(fr) => [
+ q(0076),
+ q(0),
+ ],
+ q(fx) => [
+ q(0279),
+ q(0),
+ ],
+ q(ga) => [
+ q(0080),
+ q(0),
+ ],
+ q(gb) => [
+ q(0234),
+ q(0),
+ ],
+ q(gd) => [
+ q(0088),
+ q(0),
+ ],
+ q(ge) => [
+ q(0082),
+ q(0),
+ ],
+ q(gf) => [
+ q(0077),
+ q(0),
+ ],
+ q(gg) => [
+ q(0092),
+ q(0),
+ ],
+ q(gh) => [
+ q(0084),
+ q(0),
+ ],
+ q(gi) => [
+ q(0085),
+ q(0),
+ ],
+ q(gl) => [
+ q(0087),
+ q(0),
+ ],
+ q(gm) => [
+ q(0081),
+ q(0),
+ ],
+ q(gn) => [
+ q(0093),
+ q(0),
+ ],
+ q(gp) => [
+ q(0089),
+ q(0),
+ ],
+ q(gq) => [
+ q(0068),
+ q(0),
+ ],
+ q(gr) => [
+ q(0086),
+ q(0),
+ ],
+ q(gs) => [
+ q(0207),
+ q(0),
+ ],
+ q(gt) => [
+ q(0091),
+ q(0),
+ ],
+ q(gu) => [
+ q(0090),
+ q(0),
+ ],
+ q(gw) => [
+ q(0094),
+ q(0),
+ ],
+ q(gy) => [
+ q(0095),
+ q(0),
+ ],
+ q(hk) => [
+ q(0100),
+ q(0),
+ ],
+ q(hm) => [
+ q(0097),
+ q(0),
+ ],
+ q(hn) => [
+ q(0099),
+ q(0),
+ ],
+ q(hr) => [
+ q(0056),
+ q(0),
+ ],
+ q(ht) => [
+ q(0096),
+ q(0),
+ ],
+ q(hu) => [
+ q(0101),
+ q(0),
+ ],
+ q(id) => [
+ q(0104),
+ q(0),
+ ],
+ q(ie) => [
+ q(0107),
+ q(0),
+ ],
+ q(il) => [
+ q(0109),
+ q(0),
+ ],
+ q(im) => [
+ q(0108),
+ q(0),
+ ],
+ q(in) => [
+ q(0103),
+ q(0),
+ ],
+ q(io) => [
+ q(0033),
+ q(0),
+ ],
+ q(iq) => [
+ q(0106),
+ q(0),
+ ],
+ q(ir) => [
+ q(0105),
+ q(0),
+ ],
+ q(is) => [
+ q(0102),
+ q(0),
+ ],
+ q(it) => [
+ q(0110),
+ q(0),
+ ],
+ q(je) => [
+ q(0113),
+ q(0),
+ ],
+ q(jm) => [
+ q(0111),
+ q(0),
+ ],
+ q(jo) => [
+ q(0114),
+ q(0),
+ ],
+ q(jp) => [
+ q(0112),
+ q(0),
+ ],
+ q(ke) => [
+ q(0116),
+ q(0),
+ ],
+ q(kg) => [
+ q(0121),
+ q(0),
+ ],
+ q(kh) => [
+ q(0038),
+ q(0),
+ ],
+ q(ki) => [
+ q(0117),
+ q(0),
+ ],
+ q(km) => [
+ q(0050),
+ q(0),
+ ],
+ q(kn) => [
+ q(0187),
+ q(0),
+ ],
+ q(kp) => [
+ q(0118),
+ q(0),
+ ],
+ q(kr) => [
+ q(0119),
+ q(0),
+ ],
+ q(kw) => [
+ q(0120),
+ q(0),
+ ],
+ q(ky) => [
+ q(0042),
+ q(0),
+ ],
+ q(kz) => [
+ q(0115),
+ q(0),
+ ],
+ q(la) => [
+ q(0122),
+ q(0),
+ ],
+ q(lb) => [
+ q(0124),
+ q(0),
+ ],
+ q(lc) => [
+ q(0188),
+ q(0),
+ ],
+ q(li) => [
+ q(0128),
+ q(0),
+ ],
+ q(lk) => [
+ q(0209),
+ q(0),
+ ],
+ q(lr) => [
+ q(0126),
+ q(0),
+ ],
+ q(ls) => [
+ q(0125),
+ q(0),
+ ],
+ q(lt) => [
+ q(0129),
+ q(0),
+ ],
+ q(lu) => [
+ q(0130),
+ q(0),
+ ],
+ q(lv) => [
+ q(0123),
+ q(0),
+ ],
+ q(ly) => [
+ q(0127),
+ q(0),
+ ],
+ q(ma) => [
+ q(0151),
+ q(0),
+ ],
+ q(mc) => [
+ q(0147),
+ q(0),
+ ],
+ q(md) => [
+ q(0146),
+ q(0),
+ ],
+ q(me) => [
+ q(0149),
+ q(0),
+ ],
+ q(mf) => [
+ q(0189),
+ q(0),
+ ],
+ q(mg) => [
+ q(0133),
+ q(0),
+ ],
+ q(mh) => [
+ q(0139),
+ q(0),
+ ],
+ q(mk) => [
+ q(0132),
+ q(0),
+ ],
+ q(ml) => [
+ q(0137),
+ q(0),
+ ],
+ q(mm) => [
+ q(0153),
+ q(0),
+ ],
+ q(mn) => [
+ q(0148),
+ q(0),
+ ],
+ q(mo) => [
+ q(0131),
+ q(0),
+ ],
+ q(mp) => [
+ q(0165),
+ q(0),
+ ],
+ q(mq) => [
+ q(0140),
+ q(0),
+ ],
+ q(mr) => [
+ q(0141),
+ q(0),
+ ],
+ q(ms) => [
+ q(0150),
+ q(0),
+ ],
+ q(mt) => [
+ q(0138),
+ q(0),
+ ],
+ q(mu) => [
+ q(0142),
+ q(0),
+ ],
+ q(mv) => [
+ q(0136),
+ q(0),
+ ],
+ q(mw) => [
+ q(0134),
+ q(0),
+ ],
+ q(mx) => [
+ q(0144),
+ q(0),
+ ],
+ q(my) => [
+ q(0135),
+ q(0),
+ ],
+ q(mz) => [
+ q(0152),
+ q(0),
+ ],
+ q(na) => [
+ q(0154),
+ q(0),
+ ],
+ q(nc) => [
+ q(0158),
+ q(0),
+ ],
+ q(ne) => [
+ q(0161),
+ q(0),
+ ],
+ q(nf) => [
+ q(0164),
+ q(0),
+ ],
+ q(ng) => [
+ q(0162),
+ q(0),
+ ],
+ q(ni) => [
+ q(0160),
+ q(0),
+ ],
+ q(nl) => [
+ q(0157),
+ q(0),
+ ],
+ q(no) => [
+ q(0166),
+ q(0),
+ ],
+ q(np) => [
+ q(0156),
+ q(0),
+ ],
+ q(nr) => [
+ q(0155),
+ q(0),
+ ],
+ q(nu) => [
+ q(0163),
+ q(0),
+ ],
+ q(nz) => [
+ q(0159),
+ q(0),
+ ],
+ q(om) => [
+ q(0167),
+ q(0),
+ ],
+ q(pa) => [
+ q(0171),
+ q(0),
+ ],
+ q(pe) => [
+ q(0174),
+ q(0),
+ ],
+ q(pf) => [
+ q(0078),
+ q(0),
+ ],
+ q(pg) => [
+ q(0172),
+ q(0),
+ ],
+ q(ph) => [
+ q(0175),
+ q(0),
+ ],
+ q(pk) => [
+ q(0168),
+ q(0),
+ ],
+ q(pl) => [
+ q(0177),
+ q(0),
+ ],
+ q(pm) => [
+ q(0190),
+ q(0),
+ ],
+ q(pn) => [
+ q(0176),
+ q(0),
+ ],
+ q(pr) => [
+ q(0179),
+ q(0),
+ ],
+ q(ps) => [
+ q(0170),
+ q(0),
+ ],
+ q(pt) => [
+ q(0178),
+ q(0),
+ ],
+ q(pw) => [
+ q(0169),
+ q(0),
+ ],
+ q(py) => [
+ q(0173),
+ q(0),
+ ],
+ q(qa) => [
+ q(0180),
+ q(0),
+ ],
+ q(re) => [
+ q(0181),
+ q(0),
+ ],
+ q(ro) => [
+ q(0182),
+ q(0),
+ ],
+ q(rs) => [
+ q(0197),
+ q(0),
+ ],
+ q(ru) => [
+ q(0183),
+ q(0),
+ ],
+ q(rw) => [
+ q(0184),
+ q(0),
+ ],
+ q(sa) => [
+ q(0195),
+ q(0),
+ ],
+ q(sb) => [
+ q(0204),
+ q(0),
+ ],
+ q(sc) => [
+ q(0198),
+ q(0),
+ ],
+ q(sd) => [
+ q(0210),
+ q(0),
+ ],
+ q(se) => [
+ q(0214),
+ q(0),
+ ],
+ q(sg) => [
+ q(0200),
+ q(0),
+ ],
+ q(sh) => [
+ q(0186),
+ q(0),
+ ],
+ q(si) => [
+ q(0203),
+ q(0),
+ ],
+ q(sj) => [
+ q(0212),
+ q(0),
+ ],
+ q(sk) => [
+ q(0202),
+ q(0),
+ ],
+ q(sl) => [
+ q(0199),
+ q(0),
+ ],
+ q(sm) => [
+ q(0193),
+ q(0),
+ ],
+ q(sn) => [
+ q(0196),
+ q(0),
+ ],
+ q(so) => [
+ q(0205),
+ q(0),
+ ],
+ q(sr) => [
+ q(0211),
+ q(0),
+ ],
+ q(st) => [
+ q(0194),
+ q(0),
+ ],
+ q(sv) => [
+ q(0067),
+ q(0),
+ ],
+ q(sx) => [
+ q(0201),
+ q(0),
+ ],
+ q(sy) => [
+ q(0216),
+ q(0),
+ ],
+ q(sz) => [
+ q(0213),
+ q(0),
+ ],
+ q(tc) => [
+ q(0229),
+ q(0),
+ ],
+ q(td) => [
+ q(0044),
+ q(0),
+ ],
+ q(tf) => [
+ q(0079),
+ q(0),
+ ],
+ q(tg) => [
+ q(0222),
+ q(0),
+ ],
+ q(th) => [
+ q(0220),
+ q(0),
+ ],
+ q(tj) => [
+ q(0218),
+ q(0),
+ ],
+ q(tk) => [
+ q(0223),
+ q(0),
+ ],
+ q(tl) => [
+ q(0221),
+ q(0),
+ ],
+ q(tm) => [
+ q(0228),
+ q(0),
+ ],
+ q(tn) => [
+ q(0226),
+ q(0),
+ ],
+ q(to) => [
+ q(0224),
+ q(0),
+ ],
+ q(tr) => [
+ q(0227),
+ q(0),
+ ],
+ q(tt) => [
+ q(0225),
+ q(0),
+ ],
+ q(tv) => [
+ q(0230),
+ q(0),
+ ],
+ q(tw) => [
+ q(0217),
+ q(0),
+ ],
+ q(tz) => [
+ q(0219),
+ q(0),
+ ],
+ q(ua) => [
+ q(0232),
+ q(0),
+ ],
+ q(ug) => [
+ q(0231),
+ q(0),
+ ],
+ q(um) => [
+ q(0236),
+ q(0),
+ ],
+ q(us) => [
+ q(0235),
+ q(0),
+ ],
+ q(uy) => [
+ q(0237),
+ q(0),
+ ],
+ q(uz) => [
+ q(0238),
+ q(0),
+ ],
+ q(va) => [
+ q(0098),
+ q(0),
+ ],
+ q(vc) => [
+ q(0191),
+ q(0),
+ ],
+ q(ve) => [
+ q(0240),
+ q(0),
+ ],
+ q(vg) => [
+ q(0242),
+ q(0),
+ ],
+ q(vi) => [
+ q(0243),
+ q(0),
+ ],
+ q(vn) => [
+ q(0241),
+ q(0),
+ ],
+ q(vu) => [
+ q(0239),
+ q(0),
+ ],
+ q(wf) => [
+ q(0244),
+ q(0),
+ ],
+ q(ws) => [
+ q(0192),
+ q(0),
+ ],
+ q(ye) => [
+ q(0246),
+ q(0),
+ ],
+ q(yt) => [
+ q(0143),
+ q(0),
+ ],
+ q(za) => [
+ q(0206),
+ q(0),
+ ],
+ q(zm) => [
+ q(0247),
+ q(0),
+ ],
+ q(zw) => [
+ q(0248),
+ q(0),
+ ],
+ },
+ q(alpha3) => {
+ q(abw) => [
+ q(0013),
+ q(0),
+ ],
+ q(afg) => [
+ q(0001),
+ q(0),
+ ],
+ q(ago) => [
+ q(0007),
+ q(0),
+ ],
+ q(aia) => [
+ q(0008),
+ q(0),
+ ],
+ q(ala) => [
+ q(0002),
+ q(0),
+ ],
+ q(alb) => [
+ q(0003),
+ q(0),
+ ],
+ q(and) => [
+ q(0006),
+ q(0),
+ ],
+ q(ant) => [
+ q(0267),
+ q(0),
+ ],
+ q(are) => [
+ q(0233),
+ q(0),
+ ],
+ q(arg) => [
+ q(0011),
+ q(0),
+ ],
+ q(arm) => [
+ q(0012),
+ q(0),
+ ],
+ q(asm) => [
+ q(0005),
+ q(0),
+ ],
+ q(ata) => [
+ q(0009),
+ q(0),
+ ],
+ q(atf) => [
+ q(0079),
+ q(1),
+ ],
+ q(atg) => [
+ q(0010),
+ q(0),
+ ],
+ q(aus) => [
+ q(0014),
+ q(0),
+ ],
+ q(aut) => [
+ q(0015),
+ q(0),
+ ],
+ q(aze) => [
+ q(0016),
+ q(0),
+ ],
+ q(bdi) => [
+ q(0037),
+ q(0),
+ ],
+ q(bel) => [
+ q(0022),
+ q(0),
+ ],
+ q(ben) => [
+ q(0024),
+ q(0),
+ ],
+ q(bes) => [
+ q(0028),
+ q(0),
+ ],
+ q(bfa) => [
+ q(0036),
+ q(0),
+ ],
+ q(bgd) => [
+ q(0019),
+ q(0),
+ ],
+ q(bgr) => [
+ q(0035),
+ q(0),
+ ],
+ q(bhr) => [
+ q(0018),
+ q(0),
+ ],
+ q(bhs) => [
+ q(0017),
+ q(0),
+ ],
+ q(bih) => [
+ q(0029),
+ q(0),
+ ],
+ q(blm) => [
+ q(0185),
+ q(1),
+ ],
+ q(blr) => [
+ q(0021),
+ q(0),
+ ],
+ q(blz) => [
+ q(0023),
+ q(0),
+ ],
+ q(bmu) => [
+ q(0025),
+ q(0),
+ ],
+ q(bol) => [
+ q(0027),
+ q(1),
+ ],
+ q(bra) => [
+ q(0032),
+ q(0),
+ ],
+ q(brb) => [
+ q(0020),
+ q(0),
+ ],
+ q(brn) => [
+ q(0034),
+ q(0),
+ ],
+ q(btn) => [
+ q(0026),
+ q(0),
+ ],
+ q(bvt) => [
+ q(0031),
+ q(0),
+ ],
+ q(bwa) => [
+ q(0030),
+ q(0),
+ ],
+ q(caf) => [
+ q(0043),
+ q(0),
+ ],
+ q(can) => [
+ q(0040),
+ q(0),
+ ],
+ q(cck) => [
+ q(0048),
+ q(0),
+ ],
+ q(che) => [
+ q(0215),
+ q(0),
+ ],
+ q(chl) => [
+ q(0045),
+ q(0),
+ ],
+ q(chn) => [
+ q(0046),
+ q(0),
+ ],
+ q(civ) => [
+ q(0055),
+ q(0),
+ ],
+ q(cmr) => [
+ q(0039),
+ q(0),
+ ],
+ q(cod) => [
+ q(0052),
+ q(1),
+ ],
+ q(cog) => [
+ q(0051),
+ q(0),
+ ],
+ q(cok) => [
+ q(0053),
+ q(0),
+ ],
+ q(col) => [
+ q(0049),
+ q(0),
+ ],
+ q(com) => [
+ q(0050),
+ q(0),
+ ],
+ q(cpv) => [
+ q(0041),
+ q(0),
+ ],
+ q(cri) => [
+ q(0054),
+ q(0),
+ ],
+ q(cub) => [
+ q(0057),
+ q(0),
+ ],
+ q(cuw) => [
+ q(0058),
+ q(0),
+ ],
+ q(cxr) => [
+ q(0047),
+ q(0),
+ ],
+ q(cym) => [
+ q(0042),
+ q(0),
+ ],
+ q(cyp) => [
+ q(0059),
+ q(0),
+ ],
+ q(cze) => [
+ q(0060),
+ q(0),
+ ],
+ q(deu) => [
+ q(0083),
+ q(0),
+ ],
+ q(dji) => [
+ q(0062),
+ q(0),
+ ],
+ q(dma) => [
+ q(0063),
+ q(0),
+ ],
+ q(dnk) => [
+ q(0061),
+ q(0),
+ ],
+ q(dom) => [
+ q(0064),
+ q(0),
+ ],
+ q(dza) => [
+ q(0004),
+ q(0),
+ ],
+ q(ecu) => [
+ q(0065),
+ q(0),
+ ],
+ q(egy) => [
+ q(0066),
+ q(0),
+ ],
+ q(eri) => [
+ q(0069),
+ q(0),
+ ],
+ q(esh) => [
+ q(0245),
+ q(0),
+ ],
+ q(esp) => [
+ q(0208),
+ q(0),
+ ],
+ q(est) => [
+ q(0070),
+ q(0),
+ ],
+ q(eth) => [
+ q(0071),
+ q(0),
+ ],
+ q(fin) => [
+ q(0075),
+ q(0),
+ ],
+ q(fji) => [
+ q(0074),
+ q(0),
+ ],
+ q(flk) => [
+ q(0072),
+ q(0),
+ ],
+ q(fra) => [
+ q(0076),
+ q(0),
+ ],
+ q(fro) => [
+ q(0073),
+ q(1),
+ ],
+ q(fsm) => [
+ q(0145),
+ q(1),
+ ],
+ q(fxx) => [
+ q(0279),
+ q(0),
+ ],
+ q(gab) => [
+ q(0080),
+ q(0),
+ ],
+ q(gbr) => [
+ q(0234),
+ q(1),
+ ],
+ q(geo) => [
+ q(0082),
+ q(0),
+ ],
+ q(ggy) => [
+ q(0092),
+ q(0),
+ ],
+ q(gha) => [
+ q(0084),
+ q(0),
+ ],
+ q(gib) => [
+ q(0085),
+ q(0),
+ ],
+ q(gin) => [
+ q(0093),
+ q(0),
+ ],
+ q(glp) => [
+ q(0089),
+ q(0),
+ ],
+ q(gmb) => [
+ q(0081),
+ q(0),
+ ],
+ q(gnb) => [
+ q(0094),
+ q(0),
+ ],
+ q(gnq) => [
+ q(0068),
+ q(0),
+ ],
+ q(grc) => [
+ q(0086),
+ q(0),
+ ],
+ q(grd) => [
+ q(0088),
+ q(0),
+ ],
+ q(grl) => [
+ q(0087),
+ q(0),
+ ],
+ q(gtm) => [
+ q(0091),
+ q(0),
+ ],
+ q(guf) => [
+ q(0077),
+ q(0),
+ ],
+ q(gum) => [
+ q(0090),
+ q(0),
+ ],
+ q(guy) => [
+ q(0095),
+ q(0),
+ ],
+ q(hkg) => [
+ q(0100),
+ q(1),
+ ],
+ q(hmd) => [
+ q(0097),
+ q(0),
+ ],
+ q(hnd) => [
+ q(0099),
+ q(0),
+ ],
+ q(hrv) => [
+ q(0056),
+ q(0),
+ ],
+ q(hti) => [
+ q(0096),
+ q(0),
+ ],
+ q(hun) => [
+ q(0101),
+ q(0),
+ ],
+ q(idn) => [
+ q(0104),
+ q(0),
+ ],
+ q(imn) => [
+ q(0108),
+ q(0),
+ ],
+ q(ind) => [
+ q(0103),
+ q(0),
+ ],
+ q(iot) => [
+ q(0033),
+ q(0),
+ ],
+ q(irl) => [
+ q(0107),
+ q(0),
+ ],
+ q(irn) => [
+ q(0105),
+ q(1),
+ ],
+ q(irq) => [
+ q(0106),
+ q(0),
+ ],
+ q(isl) => [
+ q(0102),
+ q(0),
+ ],
+ q(isr) => [
+ q(0109),
+ q(0),
+ ],
+ q(ita) => [
+ q(0110),
+ q(0),
+ ],
+ q(jam) => [
+ q(0111),
+ q(0),
+ ],
+ q(jey) => [
+ q(0113),
+ q(0),
+ ],
+ q(jor) => [
+ q(0114),
+ q(0),
+ ],
+ q(jpn) => [
+ q(0112),
+ q(0),
+ ],
+ q(kaz) => [
+ q(0115),
+ q(0),
+ ],
+ q(ken) => [
+ q(0116),
+ q(0),
+ ],
+ q(kgz) => [
+ q(0121),
+ q(0),
+ ],
+ q(khm) => [
+ q(0038),
+ q(0),
+ ],
+ q(kir) => [
+ q(0117),
+ q(0),
+ ],
+ q(kna) => [
+ q(0187),
+ q(0),
+ ],
+ q(kor) => [
+ q(0119),
+ q(1),
+ ],
+ q(kwt) => [
+ q(0120),
+ q(0),
+ ],
+ q(lao) => [
+ q(0122),
+ q(0),
+ ],
+ q(lbn) => [
+ q(0124),
+ q(0),
+ ],
+ q(lbr) => [
+ q(0126),
+ q(0),
+ ],
+ q(lby) => [
+ q(0127),
+ q(0),
+ ],
+ q(lca) => [
+ q(0188),
+ q(0),
+ ],
+ q(lie) => [
+ q(0128),
+ q(0),
+ ],
+ q(lka) => [
+ q(0209),
+ q(0),
+ ],
+ q(lso) => [
+ q(0125),
+ q(0),
+ ],
+ q(ltu) => [
+ q(0129),
+ q(0),
+ ],
+ q(lux) => [
+ q(0130),
+ q(0),
+ ],
+ q(lva) => [
+ q(0123),
+ q(0),
+ ],
+ q(mac) => [
+ q(0131),
+ q(1),
+ ],
+ q(maf) => [
+ q(0189),
+ q(1),
+ ],
+ q(mar) => [
+ q(0151),
+ q(0),
+ ],
+ q(mco) => [
+ q(0147),
+ q(0),
+ ],
+ q(mda) => [
+ q(0146),
+ q(1),
+ ],
+ q(mdg) => [
+ q(0133),
+ q(0),
+ ],
+ q(mdv) => [
+ q(0136),
+ q(0),
+ ],
+ q(mex) => [
+ q(0144),
+ q(0),
+ ],
+ q(mhl) => [
+ q(0139),
+ q(0),
+ ],
+ q(mkd) => [
+ q(0132),
+ q(1),
+ ],
+ q(mli) => [
+ q(0137),
+ q(0),
+ ],
+ q(mlt) => [
+ q(0138),
+ q(0),
+ ],
+ q(mmr) => [
+ q(0153),
+ q(0),
+ ],
+ q(mne) => [
+ q(0149),
+ q(0),
+ ],
+ q(mng) => [
+ q(0148),
+ q(0),
+ ],
+ q(mnp) => [
+ q(0165),
+ q(0),
+ ],
+ q(moz) => [
+ q(0152),
+ q(0),
+ ],
+ q(mrt) => [
+ q(0141),
+ q(0),
+ ],
+ q(msr) => [
+ q(0150),
+ q(0),
+ ],
+ q(mtq) => [
+ q(0140),
+ q(0),
+ ],
+ q(mus) => [
+ q(0142),
+ q(0),
+ ],
+ q(mwi) => [
+ q(0134),
+ q(0),
+ ],
+ q(mys) => [
+ q(0135),
+ q(0),
+ ],
+ q(myt) => [
+ q(0143),
+ q(0),
+ ],
+ q(nam) => [
+ q(0154),
+ q(0),
+ ],
+ q(ncl) => [
+ q(0158),
+ q(0),
+ ],
+ q(ner) => [
+ q(0161),
+ q(0),
+ ],
+ q(nfk) => [
+ q(0164),
+ q(0),
+ ],
+ q(nga) => [
+ q(0162),
+ q(0),
+ ],
+ q(nic) => [
+ q(0160),
+ q(0),
+ ],
+ q(niu) => [
+ q(0163),
+ q(0),
+ ],
+ q(nld) => [
+ q(0157),
+ q(0),
+ ],
+ q(nor) => [
+ q(0166),
+ q(0),
+ ],
+ q(npl) => [
+ q(0156),
+ q(0),
+ ],
+ q(nru) => [
+ q(0155),
+ q(0),
+ ],
+ q(nzl) => [
+ q(0159),
+ q(0),
+ ],
+ q(omn) => [
+ q(0167),
+ q(0),
+ ],
+ q(pak) => [
+ q(0168),
+ q(0),
+ ],
+ q(pan) => [
+ q(0171),
+ q(0),
+ ],
+ q(pcn) => [
+ q(0176),
+ q(0),
+ ],
+ q(per) => [
+ q(0174),
+ q(0),
+ ],
+ q(phl) => [
+ q(0175),
+ q(0),
+ ],
+ q(plw) => [
+ q(0169),
+ q(0),
+ ],
+ q(png) => [
+ q(0172),
+ q(0),
+ ],
+ q(pol) => [
+ q(0177),
+ q(0),
+ ],
+ q(pri) => [
+ q(0179),
+ q(0),
+ ],
+ q(prk) => [
+ q(0118),
+ q(1),
+ ],
+ q(prt) => [
+ q(0178),
+ q(0),
+ ],
+ q(pry) => [
+ q(0173),
+ q(0),
+ ],
+ q(pse) => [
+ q(0170),
+ q(1),
+ ],
+ q(pyf) => [
+ q(0078),
+ q(0),
+ ],
+ q(qat) => [
+ q(0180),
+ q(0),
+ ],
+ q(reu) => [
+ q(0181),
+ q(0),
+ ],
+ q(rou) => [
+ q(0182),
+ q(0),
+ ],
+ q(rus) => [
+ q(0183),
+ q(0),
+ ],
+ q(rwa) => [
+ q(0184),
+ q(0),
+ ],
+ q(sau) => [
+ q(0195),
+ q(0),
+ ],
+ q(sdn) => [
+ q(0210),
+ q(0),
+ ],
+ q(sen) => [
+ q(0196),
+ q(0),
+ ],
+ q(sgp) => [
+ q(0200),
+ q(0),
+ ],
+ q(shn) => [
+ q(0186),
+ q(1),
+ ],
+ q(sjm) => [
+ q(0212),
+ q(1),
+ ],
+ q(slb) => [
+ q(0204),
+ q(0),
+ ],
+ q(sle) => [
+ q(0199),
+ q(0),
+ ],
+ q(slv) => [
+ q(0067),
+ q(0),
+ ],
+ q(smr) => [
+ q(0193),
+ q(0),
+ ],
+ q(som) => [
+ q(0205),
+ q(0),
+ ],
+ q(spm) => [
+ q(0190),
+ q(0),
+ ],
+ q(srb) => [
+ q(0197),
+ q(0),
+ ],
+ q(stp) => [
+ q(0194),
+ q(0),
+ ],
+ q(sur) => [
+ q(0211),
+ q(0),
+ ],
+ q(svk) => [
+ q(0202),
+ q(0),
+ ],
+ q(svn) => [
+ q(0203),
+ q(0),
+ ],
+ q(swe) => [
+ q(0214),
+ q(0),
+ ],
+ q(swz) => [
+ q(0213),
+ q(0),
+ ],
+ q(sxm) => [
+ q(0201),
+ q(0),
+ ],
+ q(syc) => [
+ q(0198),
+ q(0),
+ ],
+ q(syr) => [
+ q(0216),
+ q(0),
+ ],
+ q(tca) => [
+ q(0229),
+ q(0),
+ ],
+ q(tcd) => [
+ q(0044),
+ q(0),
+ ],
+ q(tgo) => [
+ q(0222),
+ q(0),
+ ],
+ q(tha) => [
+ q(0220),
+ q(0),
+ ],
+ q(tjk) => [
+ q(0218),
+ q(0),
+ ],
+ q(tkl) => [
+ q(0223),
+ q(0),
+ ],
+ q(tkm) => [
+ q(0228),
+ q(0),
+ ],
+ q(tls) => [
+ q(0221),
+ q(0),
+ ],
+ q(ton) => [
+ q(0224),
+ q(0),
+ ],
+ q(tto) => [
+ q(0225),
+ q(0),
+ ],
+ q(tun) => [
+ q(0226),
+ q(0),
+ ],
+ q(tur) => [
+ q(0227),
+ q(0),
+ ],
+ q(tuv) => [
+ q(0230),
+ q(0),
+ ],
+ q(twn) => [
+ q(0217),
+ q(1),
+ ],
+ q(tza) => [
+ q(0219),
+ q(1),
+ ],
+ q(uga) => [
+ q(0231),
+ q(0),
+ ],
+ q(ukr) => [
+ q(0232),
+ q(0),
+ ],
+ q(umi) => [
+ q(0236),
+ q(0),
+ ],
+ q(ury) => [
+ q(0237),
+ q(0),
+ ],
+ q(usa) => [
+ q(0235),
+ q(1),
+ ],
+ q(uzb) => [
+ q(0238),
+ q(0),
+ ],
+ q(vat) => [
+ q(0098),
+ q(1),
+ ],
+ q(vct) => [
+ q(0191),
+ q(0),
+ ],
+ q(ven) => [
+ q(0240),
+ q(1),
+ ],
+ q(vgb) => [
+ q(0242),
+ q(1),
+ ],
+ q(vir) => [
+ q(0243),
+ q(1),
+ ],
+ q(vnm) => [
+ q(0241),
+ q(0),
+ ],
+ q(vut) => [
+ q(0239),
+ q(0),
+ ],
+ q(wlf) => [
+ q(0244),
+ q(1),
+ ],
+ q(wsm) => [
+ q(0192),
+ q(0),
+ ],
+ q(yem) => [
+ q(0246),
+ q(0),
+ ],
+ q(zaf) => [
+ q(0206),
+ q(0),
+ ],
+ q(zmb) => [
+ q(0247),
+ q(0),
+ ],
+ q(zwe) => [
+ q(0248),
+ q(0),
+ ],
+ },
+ q(dom) => {
+ q(AC) => [
+ q(0275),
+ q(0),
+ ],
+ q(AD) => [
+ q(0006),
+ q(0),
+ ],
+ q(AE) => [
+ q(0233),
+ q(0),
+ ],
+ q(AF) => [
+ q(0001),
+ q(0),
+ ],
+ q(AG) => [
+ q(0010),
+ q(0),
+ ],
+ q(AI) => [
+ q(0008),
+ q(0),
+ ],
+ q(AL) => [
+ q(0003),
+ q(0),
+ ],
+ q(AM) => [
+ q(0012),
+ q(0),
+ ],
+ q(AN) => [
+ q(0267),
+ q(0),
+ ],
+ q(AO) => [
+ q(0007),
+ q(0),
+ ],
+ q(AQ) => [
+ q(0009),
+ q(0),
+ ],
+ q(AR) => [
+ q(0011),
+ q(0),
+ ],
+ q(AS) => [
+ q(0005),
+ q(0),
+ ],
+ q(AT) => [
+ q(0015),
+ q(0),
+ ],
+ q(AU) => [
+ q(0014),
+ q(0),
+ ],
+ q(AW) => [
+ q(0013),
+ q(0),
+ ],
+ q(AX) => [
+ q(0002),
+ q(0),
+ ],
+ q(AZ) => [
+ q(0016),
+ q(0),
+ ],
+ q(BA) => [
+ q(0029),
+ q(0),
+ ],
+ q(BB) => [
+ q(0020),
+ q(0),
+ ],
+ q(BD) => [
+ q(0019),
+ q(0),
+ ],
+ q(BE) => [
+ q(0022),
+ q(0),
+ ],
+ q(BF) => [
+ q(0036),
+ q(0),
+ ],
+ q(BG) => [
+ q(0035),
+ q(0),
+ ],
+ q(BH) => [
+ q(0018),
+ q(0),
+ ],
+ q(BI) => [
+ q(0037),
+ q(0),
+ ],
+ q(BJ) => [
+ q(0024),
+ q(0),
+ ],
+ q(BL) => [
+ q(0185),
+ q(0),
+ ],
+ q(BM) => [
+ q(0025),
+ q(0),
+ ],
+ q(BN) => [
+ q(0034),
+ q(0),
+ ],
+ q(BO) => [
+ q(0027),
+ q(2),
+ ],
+ q(BQ) => [
+ q(0028),
+ q(0),
+ ],
+ q(BR) => [
+ q(0032),
+ q(0),
+ ],
+ q(BS) => [
+ q(0017),
+ q(0),
+ ],
+ q(BT) => [
+ q(0026),
+ q(0),
+ ],
+ q(BV) => [
+ q(0031),
+ q(0),
+ ],
+ q(BW) => [
+ q(0030),
+ q(0),
+ ],
+ q(BY) => [
+ q(0021),
+ q(0),
+ ],
+ q(BZ) => [
+ q(0023),
+ q(0),
+ ],
+ q(CA) => [
+ q(0040),
+ q(0),
+ ],
+ q(CC) => [
+ q(0048),
+ q(0),
+ ],
+ q(CD) => [
+ q(0052),
+ q(0),
+ ],
+ q(CF) => [
+ q(0043),
+ q(0),
+ ],
+ q(CG) => [
+ q(0051),
+ q(0),
+ ],
+ q(CH) => [
+ q(0215),
+ q(0),
+ ],
+ q(CI) => [
+ q(0055),
+ q(0),
+ ],
+ q(CK) => [
+ q(0053),
+ q(0),
+ ],
+ q(CL) => [
+ q(0045),
+ q(0),
+ ],
+ q(CM) => [
+ q(0039),
+ q(0),
+ ],
+ q(CN) => [
+ q(0046),
+ q(0),
+ ],
+ q(CO) => [
+ q(0049),
+ q(0),
+ ],
+ q(CR) => [
+ q(0054),
+ q(0),
+ ],
+ q(CU) => [
+ q(0057),
+ q(0),
+ ],
+ q(CV) => [
+ q(0041),
+ q(0),
+ ],
+ q(CW) => [
+ q(0058),
+ q(0),
+ ],
+ q(CX) => [
+ q(0047),
+ q(0),
+ ],
+ q(CY) => [
+ q(0059),
+ q(0),
+ ],
+ q(CZ) => [
+ q(0060),
+ q(0),
+ ],
+ q(DE) => [
+ q(0083),
+ q(0),
+ ],
+ q(DJ) => [
+ q(0062),
+ q(0),
+ ],
+ q(DK) => [
+ q(0061),
+ q(0),
+ ],
+ q(DM) => [
+ q(0063),
+ q(0),
+ ],
+ q(DO) => [
+ q(0064),
+ q(0),
+ ],
+ q(DZ) => [
+ q(0004),
+ q(0),
+ ],
+ q(EC) => [
+ q(0065),
+ q(0),
+ ],
+ q(EE) => [
+ q(0070),
+ q(0),
+ ],
+ q(EG) => [
+ q(0066),
+ q(0),
+ ],
+ q(EH) => [
+ q(0245),
+ q(0),
+ ],
+ q(ER) => [
+ q(0069),
+ q(0),
+ ],
+ q(ES) => [
+ q(0208),
+ q(0),
+ ],
+ q(ET) => [
+ q(0071),
+ q(0),
+ ],
+ q(EU) => [
+ q(0276),
+ q(0),
+ ],
+ q(FI) => [
+ q(0075),
+ q(0),
+ ],
+ q(FJ) => [
+ q(0074),
+ q(0),
+ ],
+ q(FK) => [
+ q(0072),
+ q(0),
+ ],
+ q(FM) => [
+ q(0145),
+ q(0),
+ ],
+ q(FO) => [
+ q(0073),
+ q(0),
+ ],
+ q(FR) => [
+ q(0076),
+ q(0),
+ ],
+ q(FX) => [
+ q(0279),
+ q(0),
+ ],
+ q(GA) => [
+ q(0080),
+ q(0),
+ ],
+ q(GB) => [
+ q(0234),
+ q(0),
+ ],
+ q(GD) => [
+ q(0088),
+ q(0),
+ ],
+ q(GE) => [
+ q(0082),
+ q(0),
+ ],
+ q(GF) => [
+ q(0077),
+ q(0),
+ ],
+ q(GG) => [
+ q(0092),
+ q(0),
+ ],
+ q(GH) => [
+ q(0084),
+ q(0),
+ ],
+ q(GI) => [
+ q(0085),
+ q(0),
+ ],
+ q(GL) => [
+ q(0087),
+ q(0),
+ ],
+ q(GM) => [
+ q(0081),
+ q(0),
+ ],
+ q(GN) => [
+ q(0093),
+ q(0),
+ ],
+ q(GP) => [
+ q(0089),
+ q(0),
+ ],
+ q(GQ) => [
+ q(0068),
+ q(0),
+ ],
+ q(GR) => [
+ q(0086),
+ q(0),
+ ],
+ q(GS) => [
+ q(0207),
+ q(0),
+ ],
+ q(GT) => [
+ q(0091),
+ q(0),
+ ],
+ q(GU) => [
+ q(0090),
+ q(0),
+ ],
+ q(GW) => [
+ q(0094),
+ q(0),
+ ],
+ q(GY) => [
+ q(0095),
+ q(0),
+ ],
+ q(HK) => [
+ q(0100),
+ q(0),
+ ],
+ q(HM) => [
+ q(0097),
+ q(0),
+ ],
+ q(HN) => [
+ q(0099),
+ q(0),
+ ],
+ q(HR) => [
+ q(0056),
+ q(0),
+ ],
+ q(HT) => [
+ q(0096),
+ q(0),
+ ],
+ q(HU) => [
+ q(0101),
+ q(0),
+ ],
+ q(ID) => [
+ q(0104),
+ q(0),
+ ],
+ q(IE) => [
+ q(0107),
+ q(0),
+ ],
+ q(IL) => [
+ q(0109),
+ q(0),
+ ],
+ q(IM) => [
+ q(0108),
+ q(0),
+ ],
+ q(IN) => [
+ q(0103),
+ q(0),
+ ],
+ q(IO) => [
+ q(0033),
+ q(0),
+ ],
+ q(IQ) => [
+ q(0106),
+ q(0),
+ ],
+ q(IR) => [
+ q(0105),
+ q(0),
+ ],
+ q(IS) => [
+ q(0102),
+ q(0),
+ ],
+ q(IT) => [
+ q(0110),
+ q(0),
+ ],
+ q(JE) => [
+ q(0113),
+ q(0),
+ ],
+ q(JM) => [
+ q(0111),
+ q(0),
+ ],
+ q(JO) => [
+ q(0114),
+ q(0),
+ ],
+ q(JP) => [
+ q(0112),
+ q(0),
+ ],
+ q(KE) => [
+ q(0116),
+ q(0),
+ ],
+ q(KG) => [
+ q(0121),
+ q(0),
+ ],
+ q(KH) => [
+ q(0038),
+ q(0),
+ ],
+ q(KI) => [
+ q(0117),
+ q(0),
+ ],
+ q(KM) => [
+ q(0050),
+ q(0),
+ ],
+ q(KN) => [
+ q(0187),
+ q(0),
+ ],
+ q(KP) => [
+ q(0118),
+ q(0),
+ ],
+ q(KR) => [
+ q(0119),
+ q(0),
+ ],
+ q(KW) => [
+ q(0120),
+ q(0),
+ ],
+ q(KY) => [
+ q(0042),
+ q(0),
+ ],
+ q(KZ) => [
+ q(0115),
+ q(0),
+ ],
+ q(LA) => [
+ q(0122),
+ q(0),
+ ],
+ q(LB) => [
+ q(0124),
+ q(0),
+ ],
+ q(LC) => [
+ q(0188),
+ q(0),
+ ],
+ q(LI) => [
+ q(0128),
+ q(0),
+ ],
+ q(LK) => [
+ q(0209),
+ q(0),
+ ],
+ q(LR) => [
+ q(0126),
+ q(0),
+ ],
+ q(LS) => [
+ q(0125),
+ q(0),
+ ],
+ q(LT) => [
+ q(0129),
+ q(0),
+ ],
+ q(LU) => [
+ q(0130),
+ q(0),
+ ],
+ q(LV) => [
+ q(0123),
+ q(0),
+ ],
+ q(LY) => [
+ q(0127),
+ q(0),
+ ],
+ q(MA) => [
+ q(0151),
+ q(0),
+ ],
+ q(MC) => [
+ q(0147),
+ q(0),
+ ],
+ q(MD) => [
+ q(0146),
+ q(0),
+ ],
+ q(ME) => [
+ q(0149),
+ q(0),
+ ],
+ q(MF) => [
+ q(0189),
+ q(0),
+ ],
+ q(MG) => [
+ q(0133),
+ q(0),
+ ],
+ q(MH) => [
+ q(0139),
+ q(0),
+ ],
+ q(MK) => [
+ q(0132),
+ q(0),
+ ],
+ q(ML) => [
+ q(0137),
+ q(0),
+ ],
+ q(MM) => [
+ q(0153),
+ q(0),
+ ],
+ q(MN) => [
+ q(0148),
+ q(0),
+ ],
+ q(MO) => [
+ q(0131),
+ q(0),
+ ],
+ q(MP) => [
+ q(0165),
+ q(0),
+ ],
+ q(MQ) => [
+ q(0140),
+ q(0),
+ ],
+ q(MR) => [
+ q(0141),
+ q(0),
+ ],
+ q(MS) => [
+ q(0150),
+ q(0),
+ ],
+ q(MT) => [
+ q(0138),
+ q(0),
+ ],
+ q(MU) => [
+ q(0142),
+ q(0),
+ ],
+ q(MV) => [
+ q(0136),
+ q(0),
+ ],
+ q(MW) => [
+ q(0134),
+ q(0),
+ ],
+ q(MX) => [
+ q(0144),
+ q(0),
+ ],
+ q(MY) => [
+ q(0135),
+ q(0),
+ ],
+ q(MZ) => [
+ q(0152),
+ q(0),
+ ],
+ q(NA) => [
+ q(0154),
+ q(0),
+ ],
+ q(NC) => [
+ q(0158),
+ q(0),
+ ],
+ q(NE) => [
+ q(0161),
+ q(0),
+ ],
+ q(NF) => [
+ q(0164),
+ q(0),
+ ],
+ q(NG) => [
+ q(0162),
+ q(0),
+ ],
+ q(NI) => [
+ q(0160),
+ q(0),
+ ],
+ q(NL) => [
+ q(0157),
+ q(0),
+ ],
+ q(NO) => [
+ q(0166),
+ q(0),
+ ],
+ q(NP) => [
+ q(0156),
+ q(0),
+ ],
+ q(NR) => [
+ q(0155),
+ q(0),
+ ],
+ q(NU) => [
+ q(0163),
+ q(0),
+ ],
+ q(NZ) => [
+ q(0159),
+ q(0),
+ ],
+ q(OM) => [
+ q(0167),
+ q(0),
+ ],
+ q(PA) => [
+ q(0171),
+ q(0),
+ ],
+ q(PE) => [
+ q(0174),
+ q(0),
+ ],
+ q(PF) => [
+ q(0078),
+ q(0),
+ ],
+ q(PG) => [
+ q(0172),
+ q(0),
+ ],
+ q(PH) => [
+ q(0175),
+ q(0),
+ ],
+ q(PK) => [
+ q(0168),
+ q(0),
+ ],
+ q(PL) => [
+ q(0177),
+ q(0),
+ ],
+ q(PM) => [
+ q(0190),
+ q(0),
+ ],
+ q(PN) => [
+ q(0176),
+ q(0),
+ ],
+ q(PR) => [
+ q(0179),
+ q(0),
+ ],
+ q(PS) => [
+ q(0170),
+ q(0),
+ ],
+ q(PT) => [
+ q(0178),
+ q(0),
+ ],
+ q(PW) => [
+ q(0169),
+ q(0),
+ ],
+ q(PY) => [
+ q(0173),
+ q(0),
+ ],
+ q(QA) => [
+ q(0180),
+ q(0),
+ ],
+ q(RE) => [
+ q(0181),
+ q(0),
+ ],
+ q(RO) => [
+ q(0182),
+ q(0),
+ ],
+ q(RS) => [
+ q(0197),
+ q(0),
+ ],
+ q(RU) => [
+ q(0183),
+ q(0),
+ ],
+ q(RW) => [
+ q(0184),
+ q(0),
+ ],
+ q(SA) => [
+ q(0195),
+ q(0),
+ ],
+ q(SB) => [
+ q(0204),
+ q(0),
+ ],
+ q(SC) => [
+ q(0198),
+ q(0),
+ ],
+ q(SD) => [
+ q(0210),
+ q(0),
+ ],
+ q(SE) => [
+ q(0214),
+ q(0),
+ ],
+ q(SG) => [
+ q(0200),
+ q(0),
+ ],
+ q(SH) => [
+ q(0186),
+ q(1),
+ ],
+ q(SI) => [
+ q(0203),
+ q(0),
+ ],
+ q(SJ) => [
+ q(0212),
+ q(0),
+ ],
+ q(SK) => [
+ q(0202),
+ q(0),
+ ],
+ q(SL) => [
+ q(0199),
+ q(0),
+ ],
+ q(SM) => [
+ q(0193),
+ q(0),
+ ],
+ q(SN) => [
+ q(0196),
+ q(0),
+ ],
+ q(SO) => [
+ q(0205),
+ q(0),
+ ],
+ q(SR) => [
+ q(0211),
+ q(0),
+ ],
+ q(ST) => [
+ q(0194),
+ q(0),
+ ],
+ q(SU) => [
+ q(0277),
+ q(0),
+ ],
+ q(SV) => [
+ q(0067),
+ q(0),
+ ],
+ q(SX) => [
+ q(0201),
+ q(0),
+ ],
+ q(SY) => [
+ q(0216),
+ q(0),
+ ],
+ q(SZ) => [
+ q(0213),
+ q(0),
+ ],
+ q(TC) => [
+ q(0229),
+ q(0),
+ ],
+ q(TD) => [
+ q(0044),
+ q(0),
+ ],
+ q(TF) => [
+ q(0079),
+ q(0),
+ ],
+ q(TG) => [
+ q(0222),
+ q(0),
+ ],
+ q(TH) => [
+ q(0220),
+ q(0),
+ ],
+ q(TJ) => [
+ q(0218),
+ q(0),
+ ],
+ q(TK) => [
+ q(0223),
+ q(0),
+ ],
+ q(TL) => [
+ q(0221),
+ q(0),
+ ],
+ q(TM) => [
+ q(0228),
+ q(0),
+ ],
+ q(TN) => [
+ q(0226),
+ q(0),
+ ],
+ q(TO) => [
+ q(0224),
+ q(0),
+ ],
+ q(TP) => [
+ q(0278),
+ q(0),
+ ],
+ q(TR) => [
+ q(0227),
+ q(0),
+ ],
+ q(TT) => [
+ q(0225),
+ q(0),
+ ],
+ q(TV) => [
+ q(0230),
+ q(0),
+ ],
+ q(TW) => [
+ q(0217),
+ q(1),
+ ],
+ q(TZ) => [
+ q(0219),
+ q(0),
+ ],
+ q(UA) => [
+ q(0232),
+ q(0),
+ ],
+ q(UG) => [
+ q(0231),
+ q(0),
+ ],
+ q(UK) => [
+ q(0234),
+ q(0),
+ ],
+ q(UM) => [
+ q(0236),
+ q(0),
+ ],
+ q(US) => [
+ q(0235),
+ q(0),
+ ],
+ q(UY) => [
+ q(0237),
+ q(0),
+ ],
+ q(UZ) => [
+ q(0238),
+ q(0),
+ ],
+ q(VA) => [
+ q(0098),
+ q(0),
+ ],
+ q(VC) => [
+ q(0191),
+ q(0),
+ ],
+ q(VE) => [
+ q(0240),
+ q(0),
+ ],
+ q(VG) => [
+ q(0242),
+ q(0),
+ ],
+ q(VI) => [
+ q(0243),
+ q(0),
+ ],
+ q(VN) => [
+ q(0241),
+ q(0),
+ ],
+ q(VU) => [
+ q(0239),
+ q(0),
+ ],
+ q(WF) => [
+ q(0244),
+ q(0),
+ ],
+ q(WS) => [
+ q(0192),
+ q(0),
+ ],
+ q(YE) => [
+ q(0246),
+ q(0),
+ ],
+ q(YT) => [
+ q(0143),
+ q(0),
+ ],
+ q(ZA) => [
+ q(0206),
+ q(0),
+ ],
+ q(ZM) => [
+ q(0247),
+ q(0),
+ ],
+ q(ZW) => [
+ q(0248),
+ q(0),
+ ],
+ },
+ q(fips) => {
+ q(AA) => [
+ q(0013),
+ q(0),
+ ],
+ q(AC) => [
+ q(0010),
+ q(0),
+ ],
+ q(AE) => [
+ q(0233),
+ q(0),
+ ],
+ q(AF) => [
+ q(0001),
+ q(1),
+ ],
+ q(AG) => [
+ q(0004),
+ q(1),
+ ],
+ q(AJ) => [
+ q(0016),
+ q(1),
+ ],
+ q(AL) => [
+ q(0003),
+ q(1),
+ ],
+ q(AM) => [
+ q(0012),
+ q(1),
+ ],
+ q(AN) => [
+ q(0006),
+ q(1),
+ ],
+ q(AO) => [
+ q(0007),
+ q(1),
+ ],
+ q(AQ) => [
+ q(0005),
+ q(1),
+ ],
+ q(AR) => [
+ q(0011),
+ q(1),
+ ],
+ q(AS) => [
+ q(0014),
+ q(1),
+ ],
+ q(AT) => [
+ q(0251),
+ q(1),
+ ],
+ q(AU) => [
+ q(0015),
+ q(1),
+ ],
+ q(AV) => [
+ q(0008),
+ q(0),
+ ],
+ q(AY) => [
+ q(0009),
+ q(0),
+ ],
+ q(BA) => [
+ q(0018),
+ q(1),
+ ],
+ q(BB) => [
+ q(0020),
+ q(0),
+ ],
+ q(BC) => [
+ q(0030),
+ q(1),
+ ],
+ q(BD) => [
+ q(0025),
+ q(0),
+ ],
+ q(BE) => [
+ q(0022),
+ q(1),
+ ],
+ q(BF) => [
+ q(0017),
+ q(2),
+ ],
+ q(BG) => [
+ q(0019),
+ q(1),
+ ],
+ q(BH) => [
+ q(0023),
+ q(0),
+ ],
+ q(BK) => [
+ q(0029),
+ q(0),
+ ],
+ q(BL) => [
+ q(0027),
+ q(3),
+ ],
+ q(BM) => [
+ q(0153),
+ q(2),
+ ],
+ q(BN) => [
+ q(0024),
+ q(1),
+ ],
+ q(BO) => [
+ q(0021),
+ q(1),
+ ],
+ q(BP) => [
+ q(0204),
+ q(0),
+ ],
+ q(BQ) => [
+ q(0266),
+ q(0),
+ ],
+ q(BR) => [
+ q(0032),
+ q(1),
+ ],
+ q(BS) => [
+ q(0253),
+ q(0),
+ ],
+ q(BT) => [
+ q(0026),
+ q(1),
+ ],
+ q(BU) => [
+ q(0035),
+ q(0),
+ ],
+ q(BV) => [
+ q(0031),
+ q(0),
+ ],
+ q(BX) => [
+ q(0034),
+ q(2),
+ ],
+ q(BY) => [
+ q(0037),
+ q(1),
+ ],
+ q(CA) => [
+ q(0040),
+ q(0),
+ ],
+ q(CB) => [
+ q(0038),
+ q(1),
+ ],
+ q(CD) => [
+ q(0044),
+ q(1),
+ ],
+ q(CE) => [
+ q(0209),
+ q(1),
+ ],
+ q(CF) => [
+ q(0051),
+ q(2),
+ ],
+ q(CG) => [
+ q(0052),
+ q(2),
+ ],
+ q(CH) => [
+ q(0046),
+ q(1),
+ ],
+ q(CI) => [
+ q(0045),
+ q(1),
+ ],
+ q(CJ) => [
+ q(0042),
+ q(0),
+ ],
+ q(CK) => [
+ q(0048),
+ q(1),
+ ],
+ q(CM) => [
+ q(0039),
+ q(1),
+ ],
+ q(CN) => [
+ q(0050),
+ q(1),
+ ],
+ q(CO) => [
+ q(0049),
+ q(1),
+ ],
+ q(CQ) => [
+ q(0165),
+ q(1),
+ ],
+ q(CR) => [
+ q(0255),
+ q(1),
+ ],
+ q(CS) => [
+ q(0054),
+ q(1),
+ ],
+ q(CT) => [
+ q(0043),
+ q(0),
+ ],
+ q(CU) => [
+ q(0057),
+ q(1),
+ ],
+ q(CV) => [
+ q(0041),
+ q(1),
+ ],
+ q(CW) => [
+ q(0053),
+ q(0),
+ ],
+ q(CY) => [
+ q(0059),
+ q(1),
+ ],
+ q(DA) => [
+ q(0061),
+ q(1),
+ ],
+ q(DJ) => [
+ q(0062),
+ q(1),
+ ],
+ q(DO) => [
+ q(0063),
+ q(1),
+ ],
+ q(DQ) => [
+ q(0261),
+ q(0),
+ ],
+ q(DR) => [
+ q(0064),
+ q(0),
+ ],
+ q(EC) => [
+ q(0065),
+ q(1),
+ ],
+ q(EG) => [
+ q(0066),
+ q(1),
+ ],
+ q(EI) => [
+ q(0107),
+ q(0),
+ ],
+ q(EK) => [
+ q(0068),
+ q(1),
+ ],
+ q(EN) => [
+ q(0070),
+ q(1),
+ ],
+ q(ER) => [
+ q(0069),
+ q(1),
+ ],
+ q(ES) => [
+ q(0067),
+ q(1),
+ ],
+ q(ET) => [
+ q(0071),
+ q(1),
+ ],
+ q(EU) => [
+ q(0256),
+ q(0),
+ ],
+ q(EZ) => [
+ q(0060),
+ q(0),
+ ],
+ q(FG) => [
+ q(0077),
+ q(1),
+ ],
+ q(FI) => [
+ q(0075),
+ q(1),
+ ],
+ q(FJ) => [
+ q(0074),
+ q(1),
+ ],
+ q(FK) => [
+ q(0072),
+ q(1),
+ ],
+ q(FM) => [
+ q(0145),
+ q(2),
+ ],
+ q(FO) => [
+ q(0073),
+ q(0),
+ ],
+ q(FP) => [
+ q(0078),
+ q(1),
+ ],
+ q(FQ) => [
+ q(0252),
+ q(0),
+ ],
+ q(FR) => [
+ q(0076),
+ q(1),
+ ],
+ q(FS) => [
+ q(0079),
+ q(2),
+ ],
+ q(GA) => [
+ q(0081),
+ q(2),
+ ],
+ q(GB) => [
+ q(0080),
+ q(1),
+ ],
+ q(GG) => [
+ q(0082),
+ q(0),
+ ],
+ q(GH) => [
+ q(0084),
+ q(1),
+ ],
+ q(GI) => [
+ q(0085),
+ q(0),
+ ],
+ q(GJ) => [
+ q(0088),
+ q(0),
+ ],
+ q(GK) => [
+ q(0092),
+ q(1),
+ ],
+ q(GL) => [
+ q(0087),
+ q(0),
+ ],
+ q(GM) => [
+ q(0083),
+ q(1),
+ ],
+ q(GO) => [
+ q(0258),
+ q(0),
+ ],
+ q(GP) => [
+ q(0089),
+ q(1),
+ ],
+ q(GQ) => [
+ q(0090),
+ q(1),
+ ],
+ q(GR) => [
+ q(0086),
+ q(1),
+ ],
+ q(GT) => [
+ q(0091),
+ q(1),
+ ],
+ q(GV) => [
+ q(0093),
+ q(1),
+ ],
+ q(GY) => [
+ q(0095),
+ q(1),
+ ],
+ q(GZ) => [
+ q(0257),
+ q(0),
+ ],
+ q(HA) => [
+ q(0096),
+ q(1),
+ ],
+ q(HK) => [
+ q(0100),
+ q(3),
+ ],
+ q(HM) => [
+ q(0097),
+ q(1),
+ ],
+ q(HO) => [
+ q(0099),
+ q(1),
+ ],
+ q(HQ) => [
+ q(0259),
+ q(0),
+ ],
+ q(HR) => [
+ q(0056),
+ q(1),
+ ],
+ q(HU) => [
+ q(0101),
+ q(1),
+ ],
+ q(IC) => [
+ q(0102),
+ q(1),
+ ],
+ q(ID) => [
+ q(0104),
+ q(1),
+ ],
+ q(IM) => [
+ q(0108),
+ q(0),
+ ],
+ q(IN) => [
+ q(0103),
+ q(1),
+ ],
+ q(IO) => [
+ q(0033),
+ q(0),
+ ],
+ q(IP) => [
+ q(0254),
+ q(0),
+ ],
+ q(IR) => [
+ q(0105),
+ q(3),
+ ],
+ q(IS) => [
+ q(0109),
+ q(1),
+ ],
+ q(IT) => [
+ q(0110),
+ q(1),
+ ],
+ q(IV) => [
+ q(0055),
+ q(1),
+ ],
+ q(IZ) => [
+ q(0106),
+ q(1),
+ ],
+ q(JA) => [
+ q(0112),
+ q(0),
+ ],
+ q(JE) => [
+ q(0113),
+ q(1),
+ ],
+ q(JM) => [
+ q(0111),
+ q(0),
+ ],
+ q(JN) => [
+ q(0260),
+ q(0),
+ ],
+ q(JO) => [
+ q(0114),
+ q(1),
+ ],
+ q(JQ) => [
+ q(0262),
+ q(0),
+ ],
+ q(JU) => [
+ q(0263),
+ q(0),
+ ],
+ q(KE) => [
+ q(0116),
+ q(1),
+ ],
+ q(KG) => [
+ q(0121),
+ q(1),
+ ],
+ q(KN) => [
+ q(0118),
+ q(2),
+ ],
+ q(KQ) => [
+ q(0264),
+ q(0),
+ ],
+ q(KR) => [
+ q(0117),
+ q(1),
+ ],
+ q(KS) => [
+ q(0119),
+ q(2),
+ ],
+ q(KT) => [
+ q(0047),
+ q(1),
+ ],
+ q(KU) => [
+ q(0120),
+ q(1),
+ ],
+ q(KV) => [
+ q(0280),
+ q(0),
+ ],
+ q(KZ) => [
+ q(0115),
+ q(1),
+ ],
+ q(LA) => [
+ q(0122),
+ q(1),
+ ],
+ q(LE) => [
+ q(0124),
+ q(1),
+ ],
+ q(LG) => [
+ q(0123),
+ q(1),
+ ],
+ q(LH) => [
+ q(0129),
+ q(1),
+ ],
+ q(LI) => [
+ q(0126),
+ q(1),
+ ],
+ q(LO) => [
+ q(0202),
+ q(1),
+ ],
+ q(LQ) => [
+ q(0268),
+ q(0),
+ ],
+ q(LS) => [
+ q(0128),
+ q(1),
+ ],
+ q(LT) => [
+ q(0125),
+ q(1),
+ ],
+ q(LU) => [
+ q(0130),
+ q(1),
+ ],
+ q(LY) => [
+ q(0127),
+ q(2),
+ ],
+ q(MA) => [
+ q(0133),
+ q(1),
+ ],
+ q(MB) => [
+ q(0140),
+ q(1),
+ ],
+ q(MC) => [
+ q(0131),
+ q(3),
+ ],
+ q(MD) => [
+ q(0146),
+ q(2),
+ ],
+ q(MF) => [
+ q(0143),
+ q(1),
+ ],
+ q(MG) => [
+ q(0148),
+ q(0),
+ ],
+ q(MH) => [
+ q(0150),
+ q(0),
+ ],
+ q(MI) => [
+ q(0134),
+ q(1),
+ ],
+ q(MJ) => [
+ q(0149),
+ q(0),
+ ],
+ q(MK) => [
+ q(0132),
+ q(3),
+ ],
+ q(ML) => [
+ q(0137),
+ q(1),
+ ],
+ q(MN) => [
+ q(0147),
+ q(1),
+ ],
+ q(MO) => [
+ q(0151),
+ q(1),
+ ],
+ q(MP) => [
+ q(0142),
+ q(1),
+ ],
+ q(MQ) => [
+ q(0265),
+ q(0),
+ ],
+ q(MR) => [
+ q(0141),
+ q(1),
+ ],
+ q(MT) => [
+ q(0138),
+ q(1),
+ ],
+ q(MU) => [
+ q(0167),
+ q(1),
+ ],
+ q(MV) => [
+ q(0136),
+ q(1),
+ ],
+ q(MX) => [
+ q(0144),
+ q(1),
+ ],
+ q(MY) => [
+ q(0135),
+ q(0),
+ ],
+ q(MZ) => [
+ q(0152),
+ q(1),
+ ],
+ q(NC) => [
+ q(0158),
+ q(1),
+ ],
+ q(NE) => [
+ q(0163),
+ q(0),
+ ],
+ q(NF) => [
+ q(0164),
+ q(1),
+ ],
+ q(NG) => [
+ q(0161),
+ q(1),
+ ],
+ q(NH) => [
+ q(0239),
+ q(1),
+ ],
+ q(NI) => [
+ q(0162),
+ q(1),
+ ],
+ q(NL) => [
+ q(0157),
+ q(1),
+ ],
+ q(NO) => [
+ q(0166),
+ q(1),
+ ],
+ q(NP) => [
+ q(0156),
+ q(1),
+ ],
+ q(NR) => [
+ q(0155),
+ q(1),
+ ],
+ q(NS) => [
+ q(0211),
+ q(1),
+ ],
+ q(NT) => [
+ q(0267),
+ q(0),
+ ],
+ q(NU) => [
+ q(0160),
+ q(1),
+ ],
+ q(NZ) => [
+ q(0159),
+ q(0),
+ ],
+ q(PA) => [
+ q(0173),
+ q(1),
+ ],
+ q(PC) => [
+ q(0176),
+ q(2),
+ ],
+ q(PE) => [
+ q(0174),
+ q(1),
+ ],
+ q(PF) => [
+ q(0269),
+ q(0),
+ ],
+ q(PG) => [
+ q(0270),
+ q(0),
+ ],
+ q(PK) => [
+ q(0168),
+ q(1),
+ ],
+ q(PL) => [
+ q(0177),
+ q(1),
+ ],
+ q(PM) => [
+ q(0171),
+ q(1),
+ ],
+ q(PO) => [
+ q(0178),
+ q(1),
+ ],
+ q(PP) => [
+ q(0172),
+ q(1),
+ ],
+ q(PS) => [
+ q(0169),
+ q(1),
+ ],
+ q(PU) => [
+ q(0094),
+ q(1),
+ ],
+ q(QA) => [
+ q(0180),
+ q(1),
+ ],
+ q(RE) => [
+ q(0181),
+ q(1),
+ ],
+ q(RI) => [
+ q(0197),
+ q(0),
+ ],
+ q(RM) => [
+ q(0139),
+ q(1),
+ ],
+ q(RN) => [
+ q(0189),
+ q(2),
+ ],
+ q(RO) => [
+ q(0182),
+ q(0),
+ ],
+ q(RP) => [
+ q(0175),
+ q(1),
+ ],
+ q(RQ) => [
+ q(0179),
+ q(1),
+ ],
+ q(RS) => [
+ q(0183),
+ q(1),
+ ],
+ q(RW) => [
+ q(0184),
+ q(1),
+ ],
+ q(SA) => [
+ q(0195),
+ q(1),
+ ],
+ q(SB) => [
+ q(0190),
+ q(1),
+ ],
+ q(SC) => [
+ q(0187),
+ q(1),
+ ],
+ q(SE) => [
+ q(0198),
+ q(1),
+ ],
+ q(SF) => [
+ q(0206),
+ q(1),
+ ],
+ q(SG) => [
+ q(0196),
+ q(1),
+ ],
+ q(SH) => [
+ q(0186),
+ q(1),
+ ],
+ q(SI) => [
+ q(0203),
+ q(1),
+ ],
+ q(SL) => [
+ q(0199),
+ q(1),
+ ],
+ q(SM) => [
+ q(0193),
+ q(1),
+ ],
+ q(SN) => [
+ q(0200),
+ q(1),
+ ],
+ q(SO) => [
+ q(0205),
+ q(0),
+ ],
+ q(SP) => [
+ q(0208),
+ q(1),
+ ],
+ q(ST) => [
+ q(0188),
+ q(0),
+ ],
+ q(SU) => [
+ q(0210),
+ q(1),
+ ],
+ q(SV) => [
+ q(0271),
+ q(0),
+ ],
+ q(SW) => [
+ q(0214),
+ q(1),
+ ],
+ q(SX) => [
+ q(0207),
+ q(0),
+ ],
+ q(SY) => [
+ q(0216),
+ q(1),
+ ],
+ q(SZ) => [
+ q(0215),
+ q(1),
+ ],
+ q(TB) => [
+ q(0185),
+ q(0),
+ ],
+ q(TD) => [
+ q(0225),
+ q(1),
+ ],
+ q(TE) => [
+ q(0272),
+ q(0),
+ ],
+ q(TH) => [
+ q(0220),
+ q(1),
+ ],
+ q(TI) => [
+ q(0218),
+ q(1),
+ ],
+ q(TK) => [
+ q(0229),
+ q(0),
+ ],
+ q(TL) => [
+ q(0223),
+ q(0),
+ ],
+ q(TN) => [
+ q(0224),
+ q(1),
+ ],
+ q(TO) => [
+ q(0222),
+ q(1),
+ ],
+ q(TP) => [
+ q(0194),
+ q(1),
+ ],
+ q(TS) => [
+ q(0226),
+ q(1),
+ ],
+ q(TT) => [
+ q(0221),
+ q(1),
+ ],
+ q(TU) => [
+ q(0227),
+ q(1),
+ ],
+ q(TV) => [
+ q(0230),
+ q(0),
+ ],
+ q(TW) => [
+ q(0217),
+ q(1),
+ ],
+ q(TX) => [
+ q(0228),
+ q(0),
+ ],
+ q(TZ) => [
+ q(0219),
+ q(2),
+ ],
+ q(UC) => [
+ q(0058),
+ q(0),
+ ],
+ q(UG) => [
+ q(0231),
+ q(0),
+ ],
+ q(UK) => [
+ q(0234),
+ q(0),
+ ],
+ q(UP) => [
+ q(0232),
+ q(0),
+ ],
+ q(US) => [
+ q(0235),
+ q(0),
+ ],
+ q(UV) => [
+ q(0036),
+ q(0),
+ ],
+ q(UY) => [
+ q(0237),
+ q(1),
+ ],
+ q(UZ) => [
+ q(0238),
+ q(1),
+ ],
+ q(VC) => [
+ q(0191),
+ q(0),
+ ],
+ q(VE) => [
+ q(0240),
+ q(3),
+ ],
+ q(VI) => [
+ q(0242),
+ q(1),
+ ],
+ q(VM) => [
+ q(0241),
+ q(2),
+ ],
+ q(VQ) => [
+ q(0243),
+ q(3),
+ ],
+ q(VT) => [
+ q(0098),
+ q(3),
+ ],
+ q(WA) => [
+ q(0154),
+ q(1),
+ ],
+ q(WE) => [
+ q(0274),
+ q(0),
+ ],
+ q(WF) => [
+ q(0244),
+ q(2),
+ ],
+ q(WI) => [
+ q(0245),
+ q(0),
+ ],
+ q(WQ) => [
+ q(0273),
+ q(0),
+ ],
+ q(WS) => [
+ q(0192),
+ q(1),
+ ],
+ q(WZ) => [
+ q(0213),
+ q(1),
+ ],
+ q(YI) => [
+ q(0250),
+ q(0),
+ ],
+ q(YM) => [
+ q(0246),
+ q(1),
+ ],
+ q(ZA) => [
+ q(0247),
+ q(1),
+ ],
+ q(ZI) => [
+ q(0248),
+ q(1),
+ ],
+ },
+ q(num) => {
+ q(004) => [
+ q(0001),
+ q(0),
+ ],
+ q(008) => [
+ q(0003),
+ q(0),
+ ],
+ q(010) => [
+ q(0009),
+ q(0),
+ ],
+ q(012) => [
+ q(0004),
+ q(0),
+ ],
+ q(016) => [
+ q(0005),
+ q(0),
+ ],
+ q(020) => [
+ q(0006),
+ q(0),
+ ],
+ q(024) => [
+ q(0007),
+ q(0),
+ ],
+ q(028) => [
+ q(0010),
+ q(0),
+ ],
+ q(031) => [
+ q(0016),
+ q(0),
+ ],
+ q(032) => [
+ q(0011),
+ q(0),
+ ],
+ q(036) => [
+ q(0014),
+ q(0),
+ ],
+ q(040) => [
+ q(0015),
+ q(0),
+ ],
+ q(044) => [
+ q(0017),
+ q(0),
+ ],
+ q(048) => [
+ q(0018),
+ q(0),
+ ],
+ q(050) => [
+ q(0019),
+ q(0),
+ ],
+ q(051) => [
+ q(0012),
+ q(0),
+ ],
+ q(052) => [
+ q(0020),
+ q(0),
+ ],
+ q(056) => [
+ q(0022),
+ q(0),
+ ],
+ q(060) => [
+ q(0025),
+ q(0),
+ ],
+ q(064) => [
+ q(0026),
+ q(0),
+ ],
+ q(068) => [
+ q(0027),
+ q(1),
+ ],
+ q(070) => [
+ q(0029),
+ q(0),
+ ],
+ q(072) => [
+ q(0030),
+ q(0),
+ ],
+ q(074) => [
+ q(0031),
+ q(0),
+ ],
+ q(076) => [
+ q(0032),
+ q(0),
+ ],
+ q(084) => [
+ q(0023),
+ q(0),
+ ],
+ q(086) => [
+ q(0033),
+ q(0),
+ ],
+ q(090) => [
+ q(0204),
+ q(0),
+ ],
+ q(092) => [
+ q(0242),
+ q(1),
+ ],
+ q(096) => [
+ q(0034),
+ q(0),
+ ],
+ q(100) => [
+ q(0035),
+ q(0),
+ ],
+ q(104) => [
+ q(0153),
+ q(0),
+ ],
+ q(108) => [
+ q(0037),
+ q(0),
+ ],
+ q(112) => [
+ q(0021),
+ q(0),
+ ],
+ q(116) => [
+ q(0038),
+ q(0),
+ ],
+ q(120) => [
+ q(0039),
+ q(0),
+ ],
+ q(124) => [
+ q(0040),
+ q(0),
+ ],
+ q(132) => [
+ q(0041),
+ q(0),
+ ],
+ q(136) => [
+ q(0042),
+ q(0),
+ ],
+ q(140) => [
+ q(0043),
+ q(0),
+ ],
+ q(144) => [
+ q(0209),
+ q(0),
+ ],
+ q(148) => [
+ q(0044),
+ q(0),
+ ],
+ q(152) => [
+ q(0045),
+ q(0),
+ ],
+ q(156) => [
+ q(0046),
+ q(0),
+ ],
+ q(158) => [
+ q(0217),
+ q(1),
+ ],
+ q(162) => [
+ q(0047),
+ q(0),
+ ],
+ q(166) => [
+ q(0048),
+ q(0),
+ ],
+ q(170) => [
+ q(0049),
+ q(0),
+ ],
+ q(174) => [
+ q(0050),
+ q(0),
+ ],
+ q(175) => [
+ q(0143),
+ q(0),
+ ],
+ q(178) => [
+ q(0051),
+ q(0),
+ ],
+ q(180) => [
+ q(0052),
+ q(1),
+ ],
+ q(184) => [
+ q(0053),
+ q(0),
+ ],
+ q(188) => [
+ q(0054),
+ q(0),
+ ],
+ q(191) => [
+ q(0056),
+ q(0),
+ ],
+ q(192) => [
+ q(0057),
+ q(0),
+ ],
+ q(196) => [
+ q(0059),
+ q(0),
+ ],
+ q(203) => [
+ q(0060),
+ q(0),
+ ],
+ q(204) => [
+ q(0024),
+ q(0),
+ ],
+ q(208) => [
+ q(0061),
+ q(0),
+ ],
+ q(212) => [
+ q(0063),
+ q(0),
+ ],
+ q(214) => [
+ q(0064),
+ q(0),
+ ],
+ q(218) => [
+ q(0065),
+ q(0),
+ ],
+ q(222) => [
+ q(0067),
+ q(0),
+ ],
+ q(226) => [
+ q(0068),
+ q(0),
+ ],
+ q(231) => [
+ q(0071),
+ q(0),
+ ],
+ q(232) => [
+ q(0069),
+ q(0),
+ ],
+ q(233) => [
+ q(0070),
+ q(0),
+ ],
+ q(234) => [
+ q(0073),
+ q(1),
+ ],
+ q(238) => [
+ q(0072),
+ q(0),
+ ],
+ q(242) => [
+ q(0074),
+ q(0),
+ ],
+ q(246) => [
+ q(0075),
+ q(0),
+ ],
+ q(248) => [
+ q(0002),
+ q(0),
+ ],
+ q(249) => [
+ q(0279),
+ q(0),
+ ],
+ q(250) => [
+ q(0076),
+ q(0),
+ ],
+ q(254) => [
+ q(0077),
+ q(0),
+ ],
+ q(258) => [
+ q(0078),
+ q(0),
+ ],
+ q(260) => [
+ q(0079),
+ q(1),
+ ],
+ q(262) => [
+ q(0062),
+ q(0),
+ ],
+ q(266) => [
+ q(0080),
+ q(0),
+ ],
+ q(268) => [
+ q(0082),
+ q(0),
+ ],
+ q(270) => [
+ q(0081),
+ q(0),
+ ],
+ q(275) => [
+ q(0170),
+ q(1),
+ ],
+ q(276) => [
+ q(0083),
+ q(0),
+ ],
+ q(288) => [
+ q(0084),
+ q(0),
+ ],
+ q(292) => [
+ q(0085),
+ q(0),
+ ],
+ q(296) => [
+ q(0117),
+ q(0),
+ ],
+ q(300) => [
+ q(0086),
+ q(0),
+ ],
+ q(304) => [
+ q(0087),
+ q(0),
+ ],
+ q(308) => [
+ q(0088),
+ q(0),
+ ],
+ q(312) => [
+ q(0089),
+ q(0),
+ ],
+ q(316) => [
+ q(0090),
+ q(0),
+ ],
+ q(320) => [
+ q(0091),
+ q(0),
+ ],
+ q(324) => [
+ q(0093),
+ q(0),
+ ],
+ q(328) => [
+ q(0095),
+ q(0),
+ ],
+ q(332) => [
+ q(0096),
+ q(0),
+ ],
+ q(334) => [
+ q(0097),
+ q(0),
+ ],
+ q(336) => [
+ q(0098),
+ q(1),
+ ],
+ q(340) => [
+ q(0099),
+ q(0),
+ ],
+ q(344) => [
+ q(0100),
+ q(1),
+ ],
+ q(348) => [
+ q(0101),
+ q(0),
+ ],
+ q(352) => [
+ q(0102),
+ q(0),
+ ],
+ q(356) => [
+ q(0103),
+ q(0),
+ ],
+ q(360) => [
+ q(0104),
+ q(0),
+ ],
+ q(364) => [
+ q(0105),
+ q(1),
+ ],
+ q(368) => [
+ q(0106),
+ q(0),
+ ],
+ q(372) => [
+ q(0107),
+ q(0),
+ ],
+ q(376) => [
+ q(0109),
+ q(0),
+ ],
+ q(380) => [
+ q(0110),
+ q(0),
+ ],
+ q(384) => [
+ q(0055),
+ q(0),
+ ],
+ q(388) => [
+ q(0111),
+ q(0),
+ ],
+ q(392) => [
+ q(0112),
+ q(0),
+ ],
+ q(398) => [
+ q(0115),
+ q(0),
+ ],
+ q(400) => [
+ q(0114),
+ q(0),
+ ],
+ q(404) => [
+ q(0116),
+ q(0),
+ ],
+ q(408) => [
+ q(0118),
+ q(1),
+ ],
+ q(410) => [
+ q(0119),
+ q(1),
+ ],
+ q(414) => [
+ q(0120),
+ q(0),
+ ],
+ q(417) => [
+ q(0121),
+ q(0),
+ ],
+ q(418) => [
+ q(0122),
+ q(0),
+ ],
+ q(422) => [
+ q(0124),
+ q(0),
+ ],
+ q(426) => [
+ q(0125),
+ q(0),
+ ],
+ q(428) => [
+ q(0123),
+ q(0),
+ ],
+ q(430) => [
+ q(0126),
+ q(0),
+ ],
+ q(434) => [
+ q(0127),
+ q(0),
+ ],
+ q(438) => [
+ q(0128),
+ q(0),
+ ],
+ q(440) => [
+ q(0129),
+ q(0),
+ ],
+ q(442) => [
+ q(0130),
+ q(0),
+ ],
+ q(446) => [
+ q(0131),
+ q(1),
+ ],
+ q(450) => [
+ q(0133),
+ q(0),
+ ],
+ q(454) => [
+ q(0134),
+ q(0),
+ ],
+ q(458) => [
+ q(0135),
+ q(0),
+ ],
+ q(462) => [
+ q(0136),
+ q(0),
+ ],
+ q(466) => [
+ q(0137),
+ q(0),
+ ],
+ q(470) => [
+ q(0138),
+ q(0),
+ ],
+ q(474) => [
+ q(0140),
+ q(0),
+ ],
+ q(478) => [
+ q(0141),
+ q(0),
+ ],
+ q(480) => [
+ q(0142),
+ q(0),
+ ],
+ q(484) => [
+ q(0144),
+ q(0),
+ ],
+ q(492) => [
+ q(0147),
+ q(0),
+ ],
+ q(496) => [
+ q(0148),
+ q(0),
+ ],
+ q(498) => [
+ q(0146),
+ q(1),
+ ],
+ q(499) => [
+ q(0149),
+ q(0),
+ ],
+ q(500) => [
+ q(0150),
+ q(0),
+ ],
+ q(504) => [
+ q(0151),
+ q(0),
+ ],
+ q(508) => [
+ q(0152),
+ q(0),
+ ],
+ q(512) => [
+ q(0167),
+ q(0),
+ ],
+ q(516) => [
+ q(0154),
+ q(0),
+ ],
+ q(520) => [
+ q(0155),
+ q(0),
+ ],
+ q(524) => [
+ q(0156),
+ q(0),
+ ],
+ q(528) => [
+ q(0157),
+ q(0),
+ ],
+ q(530) => [
+ q(0267),
+ q(0),
+ ],
+ q(531) => [
+ q(0058),
+ q(0),
+ ],
+ q(533) => [
+ q(0013),
+ q(0),
+ ],
+ q(534) => [
+ q(0201),
+ q(0),
+ ],
+ q(535) => [
+ q(0028),
+ q(0),
+ ],
+ q(540) => [
+ q(0158),
+ q(0),
+ ],
+ q(548) => [
+ q(0239),
+ q(0),
+ ],
+ q(554) => [
+ q(0159),
+ q(0),
+ ],
+ q(558) => [
+ q(0160),
+ q(0),
+ ],
+ q(562) => [
+ q(0161),
+ q(0),
+ ],
+ q(566) => [
+ q(0162),
+ q(0),
+ ],
+ q(570) => [
+ q(0163),
+ q(0),
+ ],
+ q(574) => [
+ q(0164),
+ q(0),
+ ],
+ q(578) => [
+ q(0166),
+ q(0),
+ ],
+ q(580) => [
+ q(0165),
+ q(0),
+ ],
+ q(581) => [
+ q(0236),
+ q(0),
+ ],
+ q(583) => [
+ q(0145),
+ q(1),
+ ],
+ q(584) => [
+ q(0139),
+ q(0),
+ ],
+ q(585) => [
+ q(0169),
+ q(0),
+ ],
+ q(586) => [
+ q(0168),
+ q(0),
+ ],
+ q(591) => [
+ q(0171),
+ q(0),
+ ],
+ q(598) => [
+ q(0172),
+ q(0),
+ ],
+ q(600) => [
+ q(0173),
+ q(0),
+ ],
+ q(604) => [
+ q(0174),
+ q(0),
+ ],
+ q(608) => [
+ q(0175),
+ q(0),
+ ],
+ q(612) => [
+ q(0176),
+ q(0),
+ ],
+ q(616) => [
+ q(0177),
+ q(0),
+ ],
+ q(620) => [
+ q(0178),
+ q(0),
+ ],
+ q(624) => [
+ q(0094),
+ q(0),
+ ],
+ q(626) => [
+ q(0221),
+ q(0),
+ ],
+ q(630) => [
+ q(0179),
+ q(0),
+ ],
+ q(634) => [
+ q(0180),
+ q(0),
+ ],
+ q(638) => [
+ q(0181),
+ q(0),
+ ],
+ q(642) => [
+ q(0182),
+ q(0),
+ ],
+ q(643) => [
+ q(0183),
+ q(0),
+ ],
+ q(646) => [
+ q(0184),
+ q(0),
+ ],
+ q(652) => [
+ q(0185),
+ q(1),
+ ],
+ q(654) => [
+ q(0186),
+ q(1),
+ ],
+ q(659) => [
+ q(0187),
+ q(0),
+ ],
+ q(660) => [
+ q(0008),
+ q(0),
+ ],
+ q(662) => [
+ q(0188),
+ q(0),
+ ],
+ q(663) => [
+ q(0189),
+ q(1),
+ ],
+ q(666) => [
+ q(0190),
+ q(0),
+ ],
+ q(670) => [
+ q(0191),
+ q(0),
+ ],
+ q(674) => [
+ q(0193),
+ q(0),
+ ],
+ q(678) => [
+ q(0194),
+ q(0),
+ ],
+ q(682) => [
+ q(0195),
+ q(0),
+ ],
+ q(686) => [
+ q(0196),
+ q(0),
+ ],
+ q(688) => [
+ q(0197),
+ q(0),
+ ],
+ q(690) => [
+ q(0198),
+ q(0),
+ ],
+ q(694) => [
+ q(0199),
+ q(0),
+ ],
+ q(702) => [
+ q(0200),
+ q(0),
+ ],
+ q(703) => [
+ q(0202),
+ q(0),
+ ],
+ q(704) => [
+ q(0241),
+ q(0),
+ ],
+ q(705) => [
+ q(0203),
+ q(0),
+ ],
+ q(706) => [
+ q(0205),
+ q(0),
+ ],
+ q(710) => [
+ q(0206),
+ q(0),
+ ],
+ q(716) => [
+ q(0248),
+ q(0),
+ ],
+ q(724) => [
+ q(0208),
+ q(0),
+ ],
+ q(732) => [
+ q(0245),
+ q(0),
+ ],
+ q(736) => [
+ q(0210),
+ q(0),
+ ],
+ q(740) => [
+ q(0211),
+ q(0),
+ ],
+ q(744) => [
+ q(0212),
+ q(1),
+ ],
+ q(748) => [
+ q(0213),
+ q(0),
+ ],
+ q(752) => [
+ q(0214),
+ q(0),
+ ],
+ q(756) => [
+ q(0215),
+ q(0),
+ ],
+ q(760) => [
+ q(0216),
+ q(0),
+ ],
+ q(762) => [
+ q(0218),
+ q(0),
+ ],
+ q(764) => [
+ q(0220),
+ q(0),
+ ],
+ q(768) => [
+ q(0222),
+ q(0),
+ ],
+ q(772) => [
+ q(0223),
+ q(0),
+ ],
+ q(776) => [
+ q(0224),
+ q(0),
+ ],
+ q(780) => [
+ q(0225),
+ q(0),
+ ],
+ q(784) => [
+ q(0233),
+ q(0),
+ ],
+ q(788) => [
+ q(0226),
+ q(0),
+ ],
+ q(792) => [
+ q(0227),
+ q(0),
+ ],
+ q(795) => [
+ q(0228),
+ q(0),
+ ],
+ q(796) => [
+ q(0229),
+ q(0),
+ ],
+ q(798) => [
+ q(0230),
+ q(0),
+ ],
+ q(800) => [
+ q(0231),
+ q(0),
+ ],
+ q(804) => [
+ q(0232),
+ q(0),
+ ],
+ q(807) => [
+ q(0132),
+ q(1),
+ ],
+ q(818) => [
+ q(0066),
+ q(0),
+ ],
+ q(826) => [
+ q(0234),
+ q(1),
+ ],
+ q(830) => [
+ q(0249),
+ q(0),
+ ],
+ q(831) => [
+ q(0092),
+ q(0),
+ ],
+ q(832) => [
+ q(0113),
+ q(0),
+ ],
+ q(833) => [
+ q(0108),
+ q(0),
+ ],
+ q(834) => [
+ q(0219),
+ q(1),
+ ],
+ q(840) => [
+ q(0235),
+ q(1),
+ ],
+ q(850) => [
+ q(0243),
+ q(1),
+ ],
+ q(854) => [
+ q(0036),
+ q(0),
+ ],
+ q(858) => [
+ q(0237),
+ q(0),
+ ],
+ q(860) => [
+ q(0238),
+ q(0),
+ ],
+ q(862) => [
+ q(0240),
+ q(1),
+ ],
+ q(876) => [
+ q(0244),
+ q(1),
+ ],
+ q(882) => [
+ q(0192),
+ q(0),
+ ],
+ q(887) => [
+ q(0246),
+ q(0),
+ ],
+ q(894) => [
+ q(0247),
+ q(0),
+ ],
+ },
+};
+
+$Locale::Codes::Data{'country'}{'id2code'} = {
+ q(alpha2) => {
+ q(0001) => q(af),
+ q(0002) => q(ax),
+ q(0003) => q(al),
+ q(0004) => q(dz),
+ q(0005) => q(as),
+ q(0006) => q(ad),
+ q(0007) => q(ao),
+ q(0008) => q(ai),
+ q(0009) => q(aq),
+ q(0010) => q(ag),
+ q(0011) => q(ar),
+ q(0012) => q(am),
+ q(0013) => q(aw),
+ q(0014) => q(au),
+ q(0015) => q(at),
+ q(0016) => q(az),
+ q(0017) => q(bs),
+ q(0018) => q(bh),
+ q(0019) => q(bd),
+ q(0020) => q(bb),
+ q(0021) => q(by),
+ q(0022) => q(be),
+ q(0023) => q(bz),
+ q(0024) => q(bj),
+ q(0025) => q(bm),
+ q(0026) => q(bt),
+ q(0027) => q(bo),
+ q(0028) => q(bq),
+ q(0029) => q(ba),
+ q(0030) => q(bw),
+ q(0031) => q(bv),
+ q(0032) => q(br),
+ q(0033) => q(io),
+ q(0034) => q(bn),
+ q(0035) => q(bg),
+ q(0036) => q(bf),
+ q(0037) => q(bi),
+ q(0038) => q(kh),
+ q(0039) => q(cm),
+ q(0040) => q(ca),
+ q(0041) => q(cv),
+ q(0042) => q(ky),
+ q(0043) => q(cf),
+ q(0044) => q(td),
+ q(0045) => q(cl),
+ q(0046) => q(cn),
+ q(0047) => q(cx),
+ q(0048) => q(cc),
+ q(0049) => q(co),
+ q(0050) => q(km),
+ q(0051) => q(cg),
+ q(0052) => q(cd),
+ q(0053) => q(ck),
+ q(0054) => q(cr),
+ q(0055) => q(ci),
+ q(0056) => q(hr),
+ q(0057) => q(cu),
+ q(0058) => q(cw),
+ q(0059) => q(cy),
+ q(0060) => q(cz),
+ q(0061) => q(dk),
+ q(0062) => q(dj),
+ q(0063) => q(dm),
+ q(0064) => q(do),
+ q(0065) => q(ec),
+ q(0066) => q(eg),
+ q(0067) => q(sv),
+ q(0068) => q(gq),
+ q(0069) => q(er),
+ q(0070) => q(ee),
+ q(0071) => q(et),
+ q(0072) => q(fk),
+ q(0073) => q(fo),
+ q(0074) => q(fj),
+ q(0075) => q(fi),
+ q(0076) => q(fr),
+ q(0077) => q(gf),
+ q(0078) => q(pf),
+ q(0079) => q(tf),
+ q(0080) => q(ga),
+ q(0081) => q(gm),
+ q(0082) => q(ge),
+ q(0083) => q(de),
+ q(0084) => q(gh),
+ q(0085) => q(gi),
+ q(0086) => q(gr),
+ q(0087) => q(gl),
+ q(0088) => q(gd),
+ q(0089) => q(gp),
+ q(0090) => q(gu),
+ q(0091) => q(gt),
+ q(0092) => q(gg),
+ q(0093) => q(gn),
+ q(0094) => q(gw),
+ q(0095) => q(gy),
+ q(0096) => q(ht),
+ q(0097) => q(hm),
+ q(0098) => q(va),
+ q(0099) => q(hn),
+ q(0100) => q(hk),
+ q(0101) => q(hu),
+ q(0102) => q(is),
+ q(0103) => q(in),
+ q(0104) => q(id),
+ q(0105) => q(ir),
+ q(0106) => q(iq),
+ q(0107) => q(ie),
+ q(0108) => q(im),
+ q(0109) => q(il),
+ q(0110) => q(it),
+ q(0111) => q(jm),
+ q(0112) => q(jp),
+ q(0113) => q(je),
+ q(0114) => q(jo),
+ q(0115) => q(kz),
+ q(0116) => q(ke),
+ q(0117) => q(ki),
+ q(0118) => q(kp),
+ q(0119) => q(kr),
+ q(0120) => q(kw),
+ q(0121) => q(kg),
+ q(0122) => q(la),
+ q(0123) => q(lv),
+ q(0124) => q(lb),
+ q(0125) => q(ls),
+ q(0126) => q(lr),
+ q(0127) => q(ly),
+ q(0128) => q(li),
+ q(0129) => q(lt),
+ q(0130) => q(lu),
+ q(0131) => q(mo),
+ q(0132) => q(mk),
+ q(0133) => q(mg),
+ q(0134) => q(mw),
+ q(0135) => q(my),
+ q(0136) => q(mv),
+ q(0137) => q(ml),
+ q(0138) => q(mt),
+ q(0139) => q(mh),
+ q(0140) => q(mq),
+ q(0141) => q(mr),
+ q(0142) => q(mu),
+ q(0143) => q(yt),
+ q(0144) => q(mx),
+ q(0145) => q(fm),
+ q(0146) => q(md),
+ q(0147) => q(mc),
+ q(0148) => q(mn),
+ q(0149) => q(me),
+ q(0150) => q(ms),
+ q(0151) => q(ma),
+ q(0152) => q(mz),
+ q(0153) => q(mm),
+ q(0154) => q(na),
+ q(0155) => q(nr),
+ q(0156) => q(np),
+ q(0157) => q(nl),
+ q(0158) => q(nc),
+ q(0159) => q(nz),
+ q(0160) => q(ni),
+ q(0161) => q(ne),
+ q(0162) => q(ng),
+ q(0163) => q(nu),
+ q(0164) => q(nf),
+ q(0165) => q(mp),
+ q(0166) => q(no),
+ q(0167) => q(om),
+ q(0168) => q(pk),
+ q(0169) => q(pw),
+ q(0170) => q(ps),
+ q(0171) => q(pa),
+ q(0172) => q(pg),
+ q(0173) => q(py),
+ q(0174) => q(pe),
+ q(0175) => q(ph),
+ q(0176) => q(pn),
+ q(0177) => q(pl),
+ q(0178) => q(pt),
+ q(0179) => q(pr),
+ q(0180) => q(qa),
+ q(0181) => q(re),
+ q(0182) => q(ro),
+ q(0183) => q(ru),
+ q(0184) => q(rw),
+ q(0185) => q(bl),
+ q(0186) => q(sh),
+ q(0187) => q(kn),
+ q(0188) => q(lc),
+ q(0189) => q(mf),
+ q(0190) => q(pm),
+ q(0191) => q(vc),
+ q(0192) => q(ws),
+ q(0193) => q(sm),
+ q(0194) => q(st),
+ q(0195) => q(sa),
+ q(0196) => q(sn),
+ q(0197) => q(rs),
+ q(0198) => q(sc),
+ q(0199) => q(sl),
+ q(0200) => q(sg),
+ q(0201) => q(sx),
+ q(0202) => q(sk),
+ q(0203) => q(si),
+ q(0204) => q(sb),
+ q(0205) => q(so),
+ q(0206) => q(za),
+ q(0207) => q(gs),
+ q(0208) => q(es),
+ q(0209) => q(lk),
+ q(0210) => q(sd),
+ q(0211) => q(sr),
+ q(0212) => q(sj),
+ q(0213) => q(sz),
+ q(0214) => q(se),
+ q(0215) => q(ch),
+ q(0216) => q(sy),
+ q(0217) => q(tw),
+ q(0218) => q(tj),
+ q(0219) => q(tz),
+ q(0220) => q(th),
+ q(0221) => q(tl),
+ q(0222) => q(tg),
+ q(0223) => q(tk),
+ q(0224) => q(to),
+ q(0225) => q(tt),
+ q(0226) => q(tn),
+ q(0227) => q(tr),
+ q(0228) => q(tm),
+ q(0229) => q(tc),
+ q(0230) => q(tv),
+ q(0231) => q(ug),
+ q(0232) => q(ua),
+ q(0233) => q(ae),
+ q(0234) => q(gb),
+ q(0235) => q(us),
+ q(0236) => q(um),
+ q(0237) => q(uy),
+ q(0238) => q(uz),
+ q(0239) => q(vu),
+ q(0240) => q(ve),
+ q(0241) => q(vn),
+ q(0242) => q(vg),
+ q(0243) => q(vi),
+ q(0244) => q(wf),
+ q(0245) => q(eh),
+ q(0246) => q(ye),
+ q(0247) => q(zm),
+ q(0248) => q(zw),
+ q(0267) => q(an),
+ q(0279) => q(fx),
+ },
+ q(alpha3) => {
+ q(0001) => q(afg),
+ q(0002) => q(ala),
+ q(0003) => q(alb),
+ q(0004) => q(dza),
+ q(0005) => q(asm),
+ q(0006) => q(and),
+ q(0007) => q(ago),
+ q(0008) => q(aia),
+ q(0009) => q(ata),
+ q(0010) => q(atg),
+ q(0011) => q(arg),
+ q(0012) => q(arm),
+ q(0013) => q(abw),
+ q(0014) => q(aus),
+ q(0015) => q(aut),
+ q(0016) => q(aze),
+ q(0017) => q(bhs),
+ q(0018) => q(bhr),
+ q(0019) => q(bgd),
+ q(0020) => q(brb),
+ q(0021) => q(blr),
+ q(0022) => q(bel),
+ q(0023) => q(blz),
+ q(0024) => q(ben),
+ q(0025) => q(bmu),
+ q(0026) => q(btn),
+ q(0027) => q(bol),
+ q(0028) => q(bes),
+ q(0029) => q(bih),
+ q(0030) => q(bwa),
+ q(0031) => q(bvt),
+ q(0032) => q(bra),
+ q(0033) => q(iot),
+ q(0034) => q(brn),
+ q(0035) => q(bgr),
+ q(0036) => q(bfa),
+ q(0037) => q(bdi),
+ q(0038) => q(khm),
+ q(0039) => q(cmr),
+ q(0040) => q(can),
+ q(0041) => q(cpv),
+ q(0042) => q(cym),
+ q(0043) => q(caf),
+ q(0044) => q(tcd),
+ q(0045) => q(chl),
+ q(0046) => q(chn),
+ q(0047) => q(cxr),
+ q(0048) => q(cck),
+ q(0049) => q(col),
+ q(0050) => q(com),
+ q(0051) => q(cog),
+ q(0052) => q(cod),
+ q(0053) => q(cok),
+ q(0054) => q(cri),
+ q(0055) => q(civ),
+ q(0056) => q(hrv),
+ q(0057) => q(cub),
+ q(0058) => q(cuw),
+ q(0059) => q(cyp),
+ q(0060) => q(cze),
+ q(0061) => q(dnk),
+ q(0062) => q(dji),
+ q(0063) => q(dma),
+ q(0064) => q(dom),
+ q(0065) => q(ecu),
+ q(0066) => q(egy),
+ q(0067) => q(slv),
+ q(0068) => q(gnq),
+ q(0069) => q(eri),
+ q(0070) => q(est),
+ q(0071) => q(eth),
+ q(0072) => q(flk),
+ q(0073) => q(fro),
+ q(0074) => q(fji),
+ q(0075) => q(fin),
+ q(0076) => q(fra),
+ q(0077) => q(guf),
+ q(0078) => q(pyf),
+ q(0079) => q(atf),
+ q(0080) => q(gab),
+ q(0081) => q(gmb),
+ q(0082) => q(geo),
+ q(0083) => q(deu),
+ q(0084) => q(gha),
+ q(0085) => q(gib),
+ q(0086) => q(grc),
+ q(0087) => q(grl),
+ q(0088) => q(grd),
+ q(0089) => q(glp),
+ q(0090) => q(gum),
+ q(0091) => q(gtm),
+ q(0092) => q(ggy),
+ q(0093) => q(gin),
+ q(0094) => q(gnb),
+ q(0095) => q(guy),
+ q(0096) => q(hti),
+ q(0097) => q(hmd),
+ q(0098) => q(vat),
+ q(0099) => q(hnd),
+ q(0100) => q(hkg),
+ q(0101) => q(hun),
+ q(0102) => q(isl),
+ q(0103) => q(ind),
+ q(0104) => q(idn),
+ q(0105) => q(irn),
+ q(0106) => q(irq),
+ q(0107) => q(irl),
+ q(0108) => q(imn),
+ q(0109) => q(isr),
+ q(0110) => q(ita),
+ q(0111) => q(jam),
+ q(0112) => q(jpn),
+ q(0113) => q(jey),
+ q(0114) => q(jor),
+ q(0115) => q(kaz),
+ q(0116) => q(ken),
+ q(0117) => q(kir),
+ q(0118) => q(prk),
+ q(0119) => q(kor),
+ q(0120) => q(kwt),
+ q(0121) => q(kgz),
+ q(0122) => q(lao),
+ q(0123) => q(lva),
+ q(0124) => q(lbn),
+ q(0125) => q(lso),
+ q(0126) => q(lbr),
+ q(0127) => q(lby),
+ q(0128) => q(lie),
+ q(0129) => q(ltu),
+ q(0130) => q(lux),
+ q(0131) => q(mac),
+ q(0132) => q(mkd),
+ q(0133) => q(mdg),
+ q(0134) => q(mwi),
+ q(0135) => q(mys),
+ q(0136) => q(mdv),
+ q(0137) => q(mli),
+ q(0138) => q(mlt),
+ q(0139) => q(mhl),
+ q(0140) => q(mtq),
+ q(0141) => q(mrt),
+ q(0142) => q(mus),
+ q(0143) => q(myt),
+ q(0144) => q(mex),
+ q(0145) => q(fsm),
+ q(0146) => q(mda),
+ q(0147) => q(mco),
+ q(0148) => q(mng),
+ q(0149) => q(mne),
+ q(0150) => q(msr),
+ q(0151) => q(mar),
+ q(0152) => q(moz),
+ q(0153) => q(mmr),
+ q(0154) => q(nam),
+ q(0155) => q(nru),
+ q(0156) => q(npl),
+ q(0157) => q(nld),
+ q(0158) => q(ncl),
+ q(0159) => q(nzl),
+ q(0160) => q(nic),
+ q(0161) => q(ner),
+ q(0162) => q(nga),
+ q(0163) => q(niu),
+ q(0164) => q(nfk),
+ q(0165) => q(mnp),
+ q(0166) => q(nor),
+ q(0167) => q(omn),
+ q(0168) => q(pak),
+ q(0169) => q(plw),
+ q(0170) => q(pse),
+ q(0171) => q(pan),
+ q(0172) => q(png),
+ q(0173) => q(pry),
+ q(0174) => q(per),
+ q(0175) => q(phl),
+ q(0176) => q(pcn),
+ q(0177) => q(pol),
+ q(0178) => q(prt),
+ q(0179) => q(pri),
+ q(0180) => q(qat),
+ q(0181) => q(reu),
+ q(0182) => q(rou),
+ q(0183) => q(rus),
+ q(0184) => q(rwa),
+ q(0185) => q(blm),
+ q(0186) => q(shn),
+ q(0187) => q(kna),
+ q(0188) => q(lca),
+ q(0189) => q(maf),
+ q(0190) => q(spm),
+ q(0191) => q(vct),
+ q(0192) => q(wsm),
+ q(0193) => q(smr),
+ q(0194) => q(stp),
+ q(0195) => q(sau),
+ q(0196) => q(sen),
+ q(0197) => q(srb),
+ q(0198) => q(syc),
+ q(0199) => q(sle),
+ q(0200) => q(sgp),
+ q(0201) => q(sxm),
+ q(0202) => q(svk),
+ q(0203) => q(svn),
+ q(0204) => q(slb),
+ q(0205) => q(som),
+ q(0206) => q(zaf),
+ q(0208) => q(esp),
+ q(0209) => q(lka),
+ q(0210) => q(sdn),
+ q(0211) => q(sur),
+ q(0212) => q(sjm),
+ q(0213) => q(swz),
+ q(0214) => q(swe),
+ q(0215) => q(che),
+ q(0216) => q(syr),
+ q(0217) => q(twn),
+ q(0218) => q(tjk),
+ q(0219) => q(tza),
+ q(0220) => q(tha),
+ q(0221) => q(tls),
+ q(0222) => q(tgo),
+ q(0223) => q(tkl),
+ q(0224) => q(ton),
+ q(0225) => q(tto),
+ q(0226) => q(tun),
+ q(0227) => q(tur),
+ q(0228) => q(tkm),
+ q(0229) => q(tca),
+ q(0230) => q(tuv),
+ q(0231) => q(uga),
+ q(0232) => q(ukr),
+ q(0233) => q(are),
+ q(0234) => q(gbr),
+ q(0235) => q(usa),
+ q(0236) => q(umi),
+ q(0237) => q(ury),
+ q(0238) => q(uzb),
+ q(0239) => q(vut),
+ q(0240) => q(ven),
+ q(0241) => q(vnm),
+ q(0242) => q(vgb),
+ q(0243) => q(vir),
+ q(0244) => q(wlf),
+ q(0245) => q(esh),
+ q(0246) => q(yem),
+ q(0247) => q(zmb),
+ q(0248) => q(zwe),
+ q(0267) => q(ant),
+ q(0279) => q(fxx),
+ },
+ q(dom) => {
+ q(0001) => q(AF),
+ q(0002) => q(AX),
+ q(0003) => q(AL),
+ q(0004) => q(DZ),
+ q(0005) => q(AS),
+ q(0006) => q(AD),
+ q(0007) => q(AO),
+ q(0008) => q(AI),
+ q(0009) => q(AQ),
+ q(0010) => q(AG),
+ q(0011) => q(AR),
+ q(0012) => q(AM),
+ q(0013) => q(AW),
+ q(0014) => q(AU),
+ q(0015) => q(AT),
+ q(0016) => q(AZ),
+ q(0017) => q(BS),
+ q(0018) => q(BH),
+ q(0019) => q(BD),
+ q(0020) => q(BB),
+ q(0021) => q(BY),
+ q(0022) => q(BE),
+ q(0023) => q(BZ),
+ q(0024) => q(BJ),
+ q(0025) => q(BM),
+ q(0026) => q(BT),
+ q(0027) => q(BO),
+ q(0028) => q(BQ),
+ q(0029) => q(BA),
+ q(0030) => q(BW),
+ q(0031) => q(BV),
+ q(0032) => q(BR),
+ q(0033) => q(IO),
+ q(0034) => q(BN),
+ q(0035) => q(BG),
+ q(0036) => q(BF),
+ q(0037) => q(BI),
+ q(0038) => q(KH),
+ q(0039) => q(CM),
+ q(0040) => q(CA),
+ q(0041) => q(CV),
+ q(0042) => q(KY),
+ q(0043) => q(CF),
+ q(0044) => q(TD),
+ q(0045) => q(CL),
+ q(0046) => q(CN),
+ q(0047) => q(CX),
+ q(0048) => q(CC),
+ q(0049) => q(CO),
+ q(0050) => q(KM),
+ q(0051) => q(CG),
+ q(0052) => q(CD),
+ q(0053) => q(CK),
+ q(0054) => q(CR),
+ q(0055) => q(CI),
+ q(0056) => q(HR),
+ q(0057) => q(CU),
+ q(0058) => q(CW),
+ q(0059) => q(CY),
+ q(0060) => q(CZ),
+ q(0061) => q(DK),
+ q(0062) => q(DJ),
+ q(0063) => q(DM),
+ q(0064) => q(DO),
+ q(0065) => q(EC),
+ q(0066) => q(EG),
+ q(0067) => q(SV),
+ q(0068) => q(GQ),
+ q(0069) => q(ER),
+ q(0070) => q(EE),
+ q(0071) => q(ET),
+ q(0072) => q(FK),
+ q(0073) => q(FO),
+ q(0074) => q(FJ),
+ q(0075) => q(FI),
+ q(0076) => q(FR),
+ q(0077) => q(GF),
+ q(0078) => q(PF),
+ q(0079) => q(TF),
+ q(0080) => q(GA),
+ q(0081) => q(GM),
+ q(0082) => q(GE),
+ q(0083) => q(DE),
+ q(0084) => q(GH),
+ q(0085) => q(GI),
+ q(0086) => q(GR),
+ q(0087) => q(GL),
+ q(0088) => q(GD),
+ q(0089) => q(GP),
+ q(0090) => q(GU),
+ q(0091) => q(GT),
+ q(0092) => q(GG),
+ q(0093) => q(GN),
+ q(0094) => q(GW),
+ q(0095) => q(GY),
+ q(0096) => q(HT),
+ q(0097) => q(HM),
+ q(0098) => q(VA),
+ q(0099) => q(HN),
+ q(0100) => q(HK),
+ q(0101) => q(HU),
+ q(0102) => q(IS),
+ q(0103) => q(IN),
+ q(0104) => q(ID),
+ q(0105) => q(IR),
+ q(0106) => q(IQ),
+ q(0107) => q(IE),
+ q(0108) => q(IM),
+ q(0109) => q(IL),
+ q(0110) => q(IT),
+ q(0111) => q(JM),
+ q(0112) => q(JP),
+ q(0113) => q(JE),
+ q(0114) => q(JO),
+ q(0115) => q(KZ),
+ q(0116) => q(KE),
+ q(0117) => q(KI),
+ q(0118) => q(KP),
+ q(0119) => q(KR),
+ q(0120) => q(KW),
+ q(0121) => q(KG),
+ q(0122) => q(LA),
+ q(0123) => q(LV),
+ q(0124) => q(LB),
+ q(0125) => q(LS),
+ q(0126) => q(LR),
+ q(0127) => q(LY),
+ q(0128) => q(LI),
+ q(0129) => q(LT),
+ q(0130) => q(LU),
+ q(0131) => q(MO),
+ q(0132) => q(MK),
+ q(0133) => q(MG),
+ q(0134) => q(MW),
+ q(0135) => q(MY),
+ q(0136) => q(MV),
+ q(0137) => q(ML),
+ q(0138) => q(MT),
+ q(0139) => q(MH),
+ q(0140) => q(MQ),
+ q(0141) => q(MR),
+ q(0142) => q(MU),
+ q(0143) => q(YT),
+ q(0144) => q(MX),
+ q(0145) => q(FM),
+ q(0146) => q(MD),
+ q(0147) => q(MC),
+ q(0148) => q(MN),
+ q(0149) => q(ME),
+ q(0150) => q(MS),
+ q(0151) => q(MA),
+ q(0152) => q(MZ),
+ q(0153) => q(MM),
+ q(0154) => q(NA),
+ q(0155) => q(NR),
+ q(0156) => q(NP),
+ q(0157) => q(NL),
+ q(0158) => q(NC),
+ q(0159) => q(NZ),
+ q(0160) => q(NI),
+ q(0161) => q(NE),
+ q(0162) => q(NG),
+ q(0163) => q(NU),
+ q(0164) => q(NF),
+ q(0165) => q(MP),
+ q(0166) => q(NO),
+ q(0167) => q(OM),
+ q(0168) => q(PK),
+ q(0169) => q(PW),
+ q(0170) => q(PS),
+ q(0171) => q(PA),
+ q(0172) => q(PG),
+ q(0173) => q(PY),
+ q(0174) => q(PE),
+ q(0175) => q(PH),
+ q(0176) => q(PN),
+ q(0177) => q(PL),
+ q(0178) => q(PT),
+ q(0179) => q(PR),
+ q(0180) => q(QA),
+ q(0181) => q(RE),
+ q(0182) => q(RO),
+ q(0183) => q(RU),
+ q(0184) => q(RW),
+ q(0185) => q(BL),
+ q(0186) => q(SH),
+ q(0187) => q(KN),
+ q(0188) => q(LC),
+ q(0189) => q(MF),
+ q(0190) => q(PM),
+ q(0191) => q(VC),
+ q(0192) => q(WS),
+ q(0193) => q(SM),
+ q(0194) => q(ST),
+ q(0195) => q(SA),
+ q(0196) => q(SN),
+ q(0197) => q(RS),
+ q(0198) => q(SC),
+ q(0199) => q(SL),
+ q(0200) => q(SG),
+ q(0201) => q(SX),
+ q(0202) => q(SK),
+ q(0203) => q(SI),
+ q(0204) => q(SB),
+ q(0205) => q(SO),
+ q(0206) => q(ZA),
+ q(0207) => q(GS),
+ q(0208) => q(ES),
+ q(0209) => q(LK),
+ q(0210) => q(SD),
+ q(0211) => q(SR),
+ q(0212) => q(SJ),
+ q(0213) => q(SZ),
+ q(0214) => q(SE),
+ q(0215) => q(CH),
+ q(0216) => q(SY),
+ q(0217) => q(TW),
+ q(0218) => q(TJ),
+ q(0219) => q(TZ),
+ q(0220) => q(TH),
+ q(0221) => q(TL),
+ q(0222) => q(TG),
+ q(0223) => q(TK),
+ q(0224) => q(TO),
+ q(0225) => q(TT),
+ q(0226) => q(TN),
+ q(0227) => q(TR),
+ q(0228) => q(TM),
+ q(0229) => q(TC),
+ q(0230) => q(TV),
+ q(0231) => q(UG),
+ q(0232) => q(UA),
+ q(0233) => q(AE),
+ q(0234) => q(UK),
+ q(0235) => q(US),
+ q(0236) => q(UM),
+ q(0237) => q(UY),
+ q(0238) => q(UZ),
+ q(0239) => q(VU),
+ q(0240) => q(VE),
+ q(0241) => q(VN),
+ q(0242) => q(VG),
+ q(0243) => q(VI),
+ q(0244) => q(WF),
+ q(0245) => q(EH),
+ q(0246) => q(YE),
+ q(0247) => q(ZM),
+ q(0248) => q(ZW),
+ q(0267) => q(AN),
+ q(0275) => q(AC),
+ q(0276) => q(EU),
+ q(0277) => q(SU),
+ q(0278) => q(TP),
+ q(0279) => q(FX),
+ },
+ q(fips) => {
+ q(0001) => q(AF),
+ q(0003) => q(AL),
+ q(0004) => q(AG),
+ q(0005) => q(AQ),
+ q(0006) => q(AN),
+ q(0007) => q(AO),
+ q(0008) => q(AV),
+ q(0009) => q(AY),
+ q(0010) => q(AC),
+ q(0011) => q(AR),
+ q(0012) => q(AM),
+ q(0013) => q(AA),
+ q(0014) => q(AS),
+ q(0015) => q(AU),
+ q(0016) => q(AJ),
+ q(0017) => q(BF),
+ q(0018) => q(BA),
+ q(0019) => q(BG),
+ q(0020) => q(BB),
+ q(0021) => q(BO),
+ q(0022) => q(BE),
+ q(0023) => q(BH),
+ q(0024) => q(BN),
+ q(0025) => q(BD),
+ q(0026) => q(BT),
+ q(0027) => q(BL),
+ q(0029) => q(BK),
+ q(0030) => q(BC),
+ q(0031) => q(BV),
+ q(0032) => q(BR),
+ q(0033) => q(IO),
+ q(0034) => q(BX),
+ q(0035) => q(BU),
+ q(0036) => q(UV),
+ q(0037) => q(BY),
+ q(0038) => q(CB),
+ q(0039) => q(CM),
+ q(0040) => q(CA),
+ q(0041) => q(CV),
+ q(0042) => q(CJ),
+ q(0043) => q(CT),
+ q(0044) => q(CD),
+ q(0045) => q(CI),
+ q(0046) => q(CH),
+ q(0047) => q(KT),
+ q(0048) => q(CK),
+ q(0049) => q(CO),
+ q(0050) => q(CN),
+ q(0051) => q(CF),
+ q(0052) => q(CG),
+ q(0053) => q(CW),
+ q(0054) => q(CS),
+ q(0055) => q(IV),
+ q(0056) => q(HR),
+ q(0057) => q(CU),
+ q(0058) => q(UC),
+ q(0059) => q(CY),
+ q(0060) => q(EZ),
+ q(0061) => q(DA),
+ q(0062) => q(DJ),
+ q(0063) => q(DO),
+ q(0064) => q(DR),
+ q(0065) => q(EC),
+ q(0066) => q(EG),
+ q(0067) => q(ES),
+ q(0068) => q(EK),
+ q(0069) => q(ER),
+ q(0070) => q(EN),
+ q(0071) => q(ET),
+ q(0072) => q(FK),
+ q(0073) => q(FO),
+ q(0074) => q(FJ),
+ q(0075) => q(FI),
+ q(0076) => q(FR),
+ q(0077) => q(FG),
+ q(0078) => q(FP),
+ q(0079) => q(FS),
+ q(0080) => q(GB),
+ q(0081) => q(GA),
+ q(0082) => q(GG),
+ q(0083) => q(GM),
+ q(0084) => q(GH),
+ q(0085) => q(GI),
+ q(0086) => q(GR),
+ q(0087) => q(GL),
+ q(0088) => q(GJ),
+ q(0089) => q(GP),
+ q(0090) => q(GQ),
+ q(0091) => q(GT),
+ q(0092) => q(GK),
+ q(0093) => q(GV),
+ q(0094) => q(PU),
+ q(0095) => q(GY),
+ q(0096) => q(HA),
+ q(0097) => q(HM),
+ q(0098) => q(VT),
+ q(0099) => q(HO),
+ q(0100) => q(HK),
+ q(0101) => q(HU),
+ q(0102) => q(IC),
+ q(0103) => q(IN),
+ q(0104) => q(ID),
+ q(0105) => q(IR),
+ q(0106) => q(IZ),
+ q(0107) => q(EI),
+ q(0108) => q(IM),
+ q(0109) => q(IS),
+ q(0110) => q(IT),
+ q(0111) => q(JM),
+ q(0112) => q(JA),
+ q(0113) => q(JE),
+ q(0114) => q(JO),
+ q(0115) => q(KZ),
+ q(0116) => q(KE),
+ q(0117) => q(KR),
+ q(0118) => q(KN),
+ q(0119) => q(KS),
+ q(0120) => q(KU),
+ q(0121) => q(KG),
+ q(0122) => q(LA),
+ q(0123) => q(LG),
+ q(0124) => q(LE),
+ q(0125) => q(LT),
+ q(0126) => q(LI),
+ q(0127) => q(LY),
+ q(0128) => q(LS),
+ q(0129) => q(LH),
+ q(0130) => q(LU),
+ q(0131) => q(MC),
+ q(0132) => q(MK),
+ q(0133) => q(MA),
+ q(0134) => q(MI),
+ q(0135) => q(MY),
+ q(0136) => q(MV),
+ q(0137) => q(ML),
+ q(0138) => q(MT),
+ q(0139) => q(RM),
+ q(0140) => q(MB),
+ q(0141) => q(MR),
+ q(0142) => q(MP),
+ q(0143) => q(MF),
+ q(0144) => q(MX),
+ q(0145) => q(FM),
+ q(0146) => q(MD),
+ q(0147) => q(MN),
+ q(0148) => q(MG),
+ q(0149) => q(MJ),
+ q(0150) => q(MH),
+ q(0151) => q(MO),
+ q(0152) => q(MZ),
+ q(0153) => q(BM),
+ q(0154) => q(WA),
+ q(0155) => q(NR),
+ q(0156) => q(NP),
+ q(0157) => q(NL),
+ q(0158) => q(NC),
+ q(0159) => q(NZ),
+ q(0160) => q(NU),
+ q(0161) => q(NG),
+ q(0162) => q(NI),
+ q(0163) => q(NE),
+ q(0164) => q(NF),
+ q(0165) => q(CQ),
+ q(0166) => q(NO),
+ q(0167) => q(MU),
+ q(0168) => q(PK),
+ q(0169) => q(PS),
+ q(0171) => q(PM),
+ q(0172) => q(PP),
+ q(0173) => q(PA),
+ q(0174) => q(PE),
+ q(0175) => q(RP),
+ q(0176) => q(PC),
+ q(0177) => q(PL),
+ q(0178) => q(PO),
+ q(0179) => q(RQ),
+ q(0180) => q(QA),
+ q(0181) => q(RE),
+ q(0182) => q(RO),
+ q(0183) => q(RS),
+ q(0184) => q(RW),
+ q(0185) => q(TB),
+ q(0186) => q(SH),
+ q(0187) => q(SC),
+ q(0188) => q(ST),
+ q(0189) => q(RN),
+ q(0190) => q(SB),
+ q(0191) => q(VC),
+ q(0192) => q(WS),
+ q(0193) => q(SM),
+ q(0194) => q(TP),
+ q(0195) => q(SA),
+ q(0196) => q(SG),
+ q(0197) => q(RI),
+ q(0198) => q(SE),
+ q(0199) => q(SL),
+ q(0200) => q(SN),
+ q(0202) => q(LO),
+ q(0203) => q(SI),
+ q(0204) => q(BP),
+ q(0205) => q(SO),
+ q(0206) => q(SF),
+ q(0207) => q(SX),
+ q(0208) => q(SP),
+ q(0209) => q(CE),
+ q(0210) => q(SU),
+ q(0211) => q(NS),
+ q(0213) => q(WZ),
+ q(0214) => q(SW),
+ q(0215) => q(SZ),
+ q(0216) => q(SY),
+ q(0217) => q(TW),
+ q(0218) => q(TI),
+ q(0219) => q(TZ),
+ q(0220) => q(TH),
+ q(0221) => q(TT),
+ q(0222) => q(TO),
+ q(0223) => q(TL),
+ q(0224) => q(TN),
+ q(0225) => q(TD),
+ q(0226) => q(TS),
+ q(0227) => q(TU),
+ q(0228) => q(TX),
+ q(0229) => q(TK),
+ q(0230) => q(TV),
+ q(0231) => q(UG),
+ q(0232) => q(UP),
+ q(0233) => q(AE),
+ q(0234) => q(UK),
+ q(0235) => q(US),
+ q(0237) => q(UY),
+ q(0238) => q(UZ),
+ q(0239) => q(NH),
+ q(0240) => q(VE),
+ q(0241) => q(VM),
+ q(0242) => q(VI),
+ q(0243) => q(VQ),
+ q(0244) => q(WF),
+ q(0245) => q(WI),
+ q(0246) => q(YM),
+ q(0247) => q(ZA),
+ q(0248) => q(ZI),
+ q(0250) => q(YI),
+ q(0251) => q(AT),
+ q(0252) => q(FQ),
+ q(0253) => q(BS),
+ q(0254) => q(IP),
+ q(0255) => q(CR),
+ q(0256) => q(EU),
+ q(0257) => q(GZ),
+ q(0258) => q(GO),
+ q(0259) => q(HQ),
+ q(0260) => q(JN),
+ q(0261) => q(DQ),
+ q(0262) => q(JQ),
+ q(0263) => q(JU),
+ q(0264) => q(KQ),
+ q(0265) => q(MQ),
+ q(0266) => q(BQ),
+ q(0267) => q(NT),
+ q(0268) => q(LQ),
+ q(0269) => q(PF),
+ q(0270) => q(PG),
+ q(0271) => q(SV),
+ q(0272) => q(TE),
+ q(0273) => q(WQ),
+ q(0274) => q(WE),
+ q(0280) => q(KV),
+ },
+ q(num) => {
+ q(0001) => q(004),
+ q(0002) => q(248),
+ q(0003) => q(008),
+ q(0004) => q(012),
+ q(0005) => q(016),
+ q(0006) => q(020),
+ q(0007) => q(024),
+ q(0008) => q(660),
+ q(0009) => q(010),
+ q(0010) => q(028),
+ q(0011) => q(032),
+ q(0012) => q(051),
+ q(0013) => q(533),
+ q(0014) => q(036),
+ q(0015) => q(040),
+ q(0016) => q(031),
+ q(0017) => q(044),
+ q(0018) => q(048),
+ q(0019) => q(050),
+ q(0020) => q(052),
+ q(0021) => q(112),
+ q(0022) => q(056),
+ q(0023) => q(084),
+ q(0024) => q(204),
+ q(0025) => q(060),
+ q(0026) => q(064),
+ q(0027) => q(068),
+ q(0028) => q(535),
+ q(0029) => q(070),
+ q(0030) => q(072),
+ q(0031) => q(074),
+ q(0032) => q(076),
+ q(0033) => q(086),
+ q(0034) => q(096),
+ q(0035) => q(100),
+ q(0036) => q(854),
+ q(0037) => q(108),
+ q(0038) => q(116),
+ q(0039) => q(120),
+ q(0040) => q(124),
+ q(0041) => q(132),
+ q(0042) => q(136),
+ q(0043) => q(140),
+ q(0044) => q(148),
+ q(0045) => q(152),
+ q(0046) => q(156),
+ q(0047) => q(162),
+ q(0048) => q(166),
+ q(0049) => q(170),
+ q(0050) => q(174),
+ q(0051) => q(178),
+ q(0052) => q(180),
+ q(0053) => q(184),
+ q(0054) => q(188),
+ q(0055) => q(384),
+ q(0056) => q(191),
+ q(0057) => q(192),
+ q(0058) => q(531),
+ q(0059) => q(196),
+ q(0060) => q(203),
+ q(0061) => q(208),
+ q(0062) => q(262),
+ q(0063) => q(212),
+ q(0064) => q(214),
+ q(0065) => q(218),
+ q(0066) => q(818),
+ q(0067) => q(222),
+ q(0068) => q(226),
+ q(0069) => q(232),
+ q(0070) => q(233),
+ q(0071) => q(231),
+ q(0072) => q(238),
+ q(0073) => q(234),
+ q(0074) => q(242),
+ q(0075) => q(246),
+ q(0076) => q(250),
+ q(0077) => q(254),
+ q(0078) => q(258),
+ q(0079) => q(260),
+ q(0080) => q(266),
+ q(0081) => q(270),
+ q(0082) => q(268),
+ q(0083) => q(276),
+ q(0084) => q(288),
+ q(0085) => q(292),
+ q(0086) => q(300),
+ q(0087) => q(304),
+ q(0088) => q(308),
+ q(0089) => q(312),
+ q(0090) => q(316),
+ q(0091) => q(320),
+ q(0092) => q(831),
+ q(0093) => q(324),
+ q(0094) => q(624),
+ q(0095) => q(328),
+ q(0096) => q(332),
+ q(0097) => q(334),
+ q(0098) => q(336),
+ q(0099) => q(340),
+ q(0100) => q(344),
+ q(0101) => q(348),
+ q(0102) => q(352),
+ q(0103) => q(356),
+ q(0104) => q(360),
+ q(0105) => q(364),
+ q(0106) => q(368),
+ q(0107) => q(372),
+ q(0108) => q(833),
+ q(0109) => q(376),
+ q(0110) => q(380),
+ q(0111) => q(388),
+ q(0112) => q(392),
+ q(0113) => q(832),
+ q(0114) => q(400),
+ q(0115) => q(398),
+ q(0116) => q(404),
+ q(0117) => q(296),
+ q(0118) => q(408),
+ q(0119) => q(410),
+ q(0120) => q(414),
+ q(0121) => q(417),
+ q(0122) => q(418),
+ q(0123) => q(428),
+ q(0124) => q(422),
+ q(0125) => q(426),
+ q(0126) => q(430),
+ q(0127) => q(434),
+ q(0128) => q(438),
+ q(0129) => q(440),
+ q(0130) => q(442),
+ q(0131) => q(446),
+ q(0132) => q(807),
+ q(0133) => q(450),
+ q(0134) => q(454),
+ q(0135) => q(458),
+ q(0136) => q(462),
+ q(0137) => q(466),
+ q(0138) => q(470),
+ q(0139) => q(584),
+ q(0140) => q(474),
+ q(0141) => q(478),
+ q(0142) => q(480),
+ q(0143) => q(175),
+ q(0144) => q(484),
+ q(0145) => q(583),
+ q(0146) => q(498),
+ q(0147) => q(492),
+ q(0148) => q(496),
+ q(0149) => q(499),
+ q(0150) => q(500),
+ q(0151) => q(504),
+ q(0152) => q(508),
+ q(0153) => q(104),
+ q(0154) => q(516),
+ q(0155) => q(520),
+ q(0156) => q(524),
+ q(0157) => q(528),
+ q(0158) => q(540),
+ q(0159) => q(554),
+ q(0160) => q(558),
+ q(0161) => q(562),
+ q(0162) => q(566),
+ q(0163) => q(570),
+ q(0164) => q(574),
+ q(0165) => q(580),
+ q(0166) => q(578),
+ q(0167) => q(512),
+ q(0168) => q(586),
+ q(0169) => q(585),
+ q(0170) => q(275),
+ q(0171) => q(591),
+ q(0172) => q(598),
+ q(0173) => q(600),
+ q(0174) => q(604),
+ q(0175) => q(608),
+ q(0176) => q(612),
+ q(0177) => q(616),
+ q(0178) => q(620),
+ q(0179) => q(630),
+ q(0180) => q(634),
+ q(0181) => q(638),
+ q(0182) => q(642),
+ q(0183) => q(643),
+ q(0184) => q(646),
+ q(0185) => q(652),
+ q(0186) => q(654),
+ q(0187) => q(659),
+ q(0188) => q(662),
+ q(0189) => q(663),
+ q(0190) => q(666),
+ q(0191) => q(670),
+ q(0192) => q(882),
+ q(0193) => q(674),
+ q(0194) => q(678),
+ q(0195) => q(682),
+ q(0196) => q(686),
+ q(0197) => q(688),
+ q(0198) => q(690),
+ q(0199) => q(694),
+ q(0200) => q(702),
+ q(0201) => q(534),
+ q(0202) => q(703),
+ q(0203) => q(705),
+ q(0204) => q(090),
+ q(0205) => q(706),
+ q(0206) => q(710),
+ q(0208) => q(724),
+ q(0209) => q(144),
+ q(0210) => q(736),
+ q(0211) => q(740),
+ q(0212) => q(744),
+ q(0213) => q(748),
+ q(0214) => q(752),
+ q(0215) => q(756),
+ q(0216) => q(760),
+ q(0217) => q(158),
+ q(0218) => q(762),
+ q(0219) => q(834),
+ q(0220) => q(764),
+ q(0221) => q(626),
+ q(0222) => q(768),
+ q(0223) => q(772),
+ q(0224) => q(776),
+ q(0225) => q(780),
+ q(0226) => q(788),
+ q(0227) => q(792),
+ q(0228) => q(795),
+ q(0229) => q(796),
+ q(0230) => q(798),
+ q(0231) => q(800),
+ q(0232) => q(804),
+ q(0233) => q(784),
+ q(0234) => q(826),
+ q(0235) => q(840),
+ q(0236) => q(581),
+ q(0237) => q(858),
+ q(0238) => q(860),
+ q(0239) => q(548),
+ q(0240) => q(862),
+ q(0241) => q(704),
+ q(0242) => q(092),
+ q(0243) => q(850),
+ q(0244) => q(876),
+ q(0245) => q(732),
+ q(0246) => q(887),
+ q(0247) => q(894),
+ q(0248) => q(716),
+ q(0249) => q(830),
+ q(0267) => q(530),
+ q(0279) => q(249),
+ },
+};
+
+1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes/Currency.pm b/Master/tlpkg/tlperl/lib/Locale/Codes/Currency.pm
new file mode 100644
index 00000000000..a2eb6cac9c0
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes/Currency.pm
@@ -0,0 +1,2954 @@
+package Locale::Codes::Currency;
+
+# This file was automatically generated. Any changes to this file will
+# be lost the next time 'get_codes' is run.
+# Generated on: Tue Mar 1 14:45:12 EST 2011
+
+=pod
+
+=head1 NAME
+
+Locale::Codes::Currency - currency codes for the Locale::Currency module
+
+=head1 SYNOPSIS
+
+This module contains data used by the Locale::Currency module. It is
+not intended to be used directly, and contains no calleable routines.
+
+=head1 AUTHOR
+
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
+
+=head1 COPYRIGHT
+
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
+
+use strict;
+use warnings;
+require 5.002;
+
+our($VERSION);
+$VERSION='3.16';
+
+$Locale::Codes::Data{'currency'}{'id'} = '0171';
+
+$Locale::Codes::Data{'currency'}{'id2names'} = {
+ q(0001) => [
+ q(Afghani),
+ ],
+ q(0002) => [
+ q(Euro),
+ ],
+ q(0003) => [
+ q(Lek),
+ ],
+ q(0004) => [
+ q(Algerian Dinar),
+ ],
+ q(0005) => [
+ q(US Dollar),
+ ],
+ q(0006) => [
+ q(Kwanza),
+ ],
+ q(0007) => [
+ q(East Caribbean Dollar),
+ ],
+ q(0008) => [
+ q(Argentine Peso),
+ ],
+ q(0009) => [
+ q(Armenian Dram),
+ ],
+ q(0010) => [
+ q(Aruban Guilder),
+ ],
+ q(0011) => [
+ q(Australian Dollar),
+ ],
+ q(0012) => [
+ q(Azerbaijanian Manat),
+ ],
+ q(0013) => [
+ q(Bahamian Dollar),
+ ],
+ q(0014) => [
+ q(Bahraini Dinar),
+ ],
+ q(0015) => [
+ q(Taka),
+ ],
+ q(0016) => [
+ q(Barbados Dollar),
+ ],
+ q(0017) => [
+ q(Belarussian Ruble),
+ ],
+ q(0018) => [
+ q(Belize Dollar),
+ ],
+ q(0019) => [
+ q(CFA Franc BCEAO),
+ ],
+ q(0020) => [
+ q(Bermudian Dollar),
+ ],
+ q(0021) => [
+ q(Ngultrum),
+ ],
+ q(0022) => [
+ q(Indian Rupee),
+ ],
+ q(0023) => [
+ q(Boliviano),
+ ],
+ q(0024) => [
+ q(Mvdol),
+ ],
+ q(0025) => [
+ q(Convertible Mark),
+ ],
+ q(0026) => [
+ q(Pula),
+ ],
+ q(0027) => [
+ q(Norwegian Krone),
+ ],
+ q(0028) => [
+ q(Brazilian Real),
+ ],
+ q(0029) => [
+ q(Brunei Dollar),
+ ],
+ q(0030) => [
+ q(Bulgarian Lev),
+ ],
+ q(0031) => [
+ q(Burundi Franc),
+ ],
+ q(0032) => [
+ q(Riel),
+ ],
+ q(0033) => [
+ q(CFA Franc BEAC),
+ ],
+ q(0034) => [
+ q(Canadian Dollar),
+ ],
+ q(0035) => [
+ q(Cape Verde Escudo),
+ ],
+ q(0036) => [
+ q(Cayman Islands Dollar),
+ ],
+ q(0037) => [
+ q(Unidades de fomento),
+ ],
+ q(0038) => [
+ q(Chilean Peso),
+ ],
+ q(0039) => [
+ q(Yuan Renminbi),
+ ],
+ q(0040) => [
+ q(Colombian Peso),
+ ],
+ q(0041) => [
+ q(Unidad de Valor Real),
+ ],
+ q(0042) => [
+ q(Comoro Franc),
+ ],
+ q(0043) => [
+ q(Congolese Franc),
+ ],
+ q(0044) => [
+ q(New Zealand Dollar),
+ ],
+ q(0045) => [
+ q(Costa Rican Colon),
+ ],
+ q(0046) => [
+ q(Croatian Kuna),
+ ],
+ q(0047) => [
+ q(Peso Convertible),
+ ],
+ q(0048) => [
+ q(Cuban Peso),
+ ],
+ q(0049) => [
+ q(Netherlands Antillean Guilder),
+ ],
+ q(0050) => [
+ q(Czech Koruna),
+ ],
+ q(0051) => [
+ q(Danish Krone),
+ ],
+ q(0052) => [
+ q(Djibouti Franc),
+ ],
+ q(0053) => [
+ q(Dominican Peso),
+ ],
+ q(0054) => [
+ q(Egyptian Pound),
+ ],
+ q(0055) => [
+ q(El Salvador Colon),
+ ],
+ q(0056) => [
+ q(Nakfa),
+ ],
+ q(0057) => [
+ q(Ethiopian Birr),
+ ],
+ q(0058) => [
+ q(Falkland Islands Pound),
+ ],
+ q(0059) => [
+ q(Fiji Dollar),
+ ],
+ q(0060) => [
+ q(CFP Franc),
+ ],
+ q(0061) => [
+ q(Dalasi),
+ ],
+ q(0062) => [
+ q(Lari),
+ ],
+ q(0063) => [
+ q(Cedi),
+ ],
+ q(0064) => [
+ q(Gibraltar Pound),
+ ],
+ q(0065) => [
+ q(Quetzal),
+ ],
+ q(0066) => [
+ q(Pound Sterling),
+ ],
+ q(0067) => [
+ q(Guinea Franc),
+ ],
+ q(0068) => [
+ q(Guyana Dollar),
+ ],
+ q(0069) => [
+ q(Gourde),
+ ],
+ q(0070) => [
+ q(Lempira),
+ ],
+ q(0071) => [
+ q(Hong Kong Dollar),
+ ],
+ q(0072) => [
+ q(Forint),
+ ],
+ q(0073) => [
+ q(Iceland Krona),
+ ],
+ q(0074) => [
+ q(Rupiah),
+ ],
+ q(0075) => [
+ q(Iranian Rial),
+ ],
+ q(0076) => [
+ q(Iraqi Dinar),
+ ],
+ q(0077) => [
+ q(New Israeli Sheqel),
+ ],
+ q(0078) => [
+ q(Jamaican Dollar),
+ ],
+ q(0079) => [
+ q(Yen),
+ ],
+ q(0080) => [
+ q(Jordanian Dinar),
+ ],
+ q(0081) => [
+ q(Tenge),
+ ],
+ q(0082) => [
+ q(Kenyan Shilling),
+ ],
+ q(0083) => [
+ q(North Korean Won),
+ ],
+ q(0084) => [
+ q(Won),
+ ],
+ q(0085) => [
+ q(Kuwaiti Dinar),
+ ],
+ q(0086) => [
+ q(Som),
+ ],
+ q(0087) => [
+ q(Kip),
+ ],
+ q(0088) => [
+ q(Latvian Lats),
+ ],
+ q(0089) => [
+ q(Lebanese Pound),
+ ],
+ q(0090) => [
+ q(Loti),
+ ],
+ q(0091) => [
+ q(Rand),
+ ],
+ q(0092) => [
+ q(Liberian Dollar),
+ ],
+ q(0093) => [
+ q(Libyan Dinar),
+ ],
+ q(0094) => [
+ q(Swiss Franc),
+ ],
+ q(0095) => [
+ q(Lithuanian Litas),
+ ],
+ q(0096) => [
+ q(Pataca),
+ ],
+ q(0097) => [
+ q(Denar),
+ ],
+ q(0098) => [
+ q(Malagasy Ariary),
+ ],
+ q(0099) => [
+ q(Kwacha),
+ ],
+ q(0100) => [
+ q(Malaysian Ringgit),
+ ],
+ q(0101) => [
+ q(Rufiyaa),
+ ],
+ q(0102) => [
+ q(Ouguiya),
+ ],
+ q(0103) => [
+ q(Mauritius Rupee),
+ ],
+ q(0104) => [
+ q(Mexican Peso),
+ ],
+ q(0105) => [
+ q(Mexican Unidad de Inversion (UDI)),
+ ],
+ q(0106) => [
+ q(Moldovan Leu),
+ ],
+ q(0107) => [
+ q(Tugrik),
+ ],
+ q(0108) => [
+ q(Moroccan Dirham),
+ ],
+ q(0109) => [
+ q(Metical),
+ ],
+ q(0110) => [
+ q(Kyat),
+ ],
+ q(0111) => [
+ q(Namibia Dollar),
+ ],
+ q(0112) => [
+ q(Nepalese Rupee),
+ ],
+ q(0113) => [
+ q(Cordoba Oro),
+ ],
+ q(0114) => [
+ q(Naira),
+ ],
+ q(0115) => [
+ q(Rial Omani),
+ ],
+ q(0116) => [
+ q(Pakistan Rupee),
+ ],
+ q(0117) => [
+ q(Balboa),
+ ],
+ q(0118) => [
+ q(Kina),
+ ],
+ q(0119) => [
+ q(Guarani),
+ ],
+ q(0120) => [
+ q(Nuevo Sol),
+ ],
+ q(0121) => [
+ q(Philippine Peso),
+ ],
+ q(0122) => [
+ q(Zloty),
+ ],
+ q(0123) => [
+ q(Qatari Rial),
+ ],
+ q(0124) => [
+ q(Leu),
+ ],
+ q(0125) => [
+ q(Russian Ruble),
+ ],
+ q(0126) => [
+ q(Rwanda Franc),
+ ],
+ q(0127) => [
+ q(Saint Helena Pound),
+ ],
+ q(0128) => [
+ q(Tala),
+ ],
+ q(0129) => [
+ q(Dobra),
+ ],
+ q(0130) => [
+ q(Saudi Riyal),
+ ],
+ q(0131) => [
+ q(Serbian Dinar),
+ ],
+ q(0132) => [
+ q(Seychelles Rupee),
+ ],
+ q(0133) => [
+ q(Leone),
+ ],
+ q(0134) => [
+ q(Singapore Dollar),
+ ],
+ q(0135) => [
+ q(Sucre),
+ ],
+ q(0136) => [
+ q(Solomon Islands Dollar),
+ ],
+ q(0137) => [
+ q(Somali Shilling),
+ ],
+ q(0138) => [
+ q(Sri Lanka Rupee),
+ ],
+ q(0139) => [
+ q(Sudanese Pound),
+ ],
+ q(0140) => [
+ q(Surinam Dollar),
+ ],
+ q(0141) => [
+ q(Lilangeni),
+ ],
+ q(0142) => [
+ q(Swedish Krona),
+ ],
+ q(0143) => [
+ q(WIR Euro),
+ ],
+ q(0144) => [
+ q(WIR Franc),
+ ],
+ q(0145) => [
+ q(Syrian Pound),
+ ],
+ q(0146) => [
+ q(New Taiwan Dollar),
+ ],
+ q(0147) => [
+ q(Somoni),
+ ],
+ q(0148) => [
+ q(Tanzanian Shilling),
+ ],
+ q(0149) => [
+ q(Baht),
+ ],
+ q(0150) => [
+ q(Pa'anga),
+ ],
+ q(0151) => [
+ q(Trinidad and Tobago Dollar),
+ ],
+ q(0152) => [
+ q(Tunisian Dinar),
+ ],
+ q(0153) => [
+ q(Turkish Lira),
+ ],
+ q(0154) => [
+ q(New Manat),
+ ],
+ q(0155) => [
+ q(Uganda Shilling),
+ ],
+ q(0156) => [
+ q(Hryvnia),
+ ],
+ q(0157) => [
+ q(UAE Dirham),
+ ],
+ q(0158) => [
+ q(US Dollar (Next day)),
+ ],
+ q(0159) => [
+ q(US Dollar (Same day)),
+ ],
+ q(0160) => [
+ q(Uruguay Peso en Unidades Indexadas (URUIURUI)),
+ ],
+ q(0161) => [
+ q(Peso Uruguayo),
+ ],
+ q(0162) => [
+ q(Uzbekistan Sum),
+ ],
+ q(0163) => [
+ q(Vatu),
+ ],
+ q(0164) => [
+ q(Bolivar Fuerte),
+ ],
+ q(0165) => [
+ q(Dong),
+ ],
+ q(0166) => [
+ q(Yemeni Rial),
+ ],
+ q(0167) => [
+ q(Zambian Kwacha),
+ ],
+ q(0168) => [
+ q(Zimbabwe Dollar),
+ ],
+ q(0169) => [
+ q(Gold),
+ ],
+ q(0170) => [
+ q(SDR (Special Drawing Right)),
+ ],
+};
+
+$Locale::Codes::Data{'currency'}{'alias2id'} = {
+ q(afghani) => [
+ q(0001),
+ q(0),
+ ],
+ q(algerian dinar) => [
+ q(0004),
+ q(0),
+ ],
+ q(argentine peso) => [
+ q(0008),
+ q(0),
+ ],
+ q(armenian dram) => [
+ q(0009),
+ q(0),
+ ],
+ q(aruban guilder) => [
+ q(0010),
+ q(0),
+ ],
+ q(australian dollar) => [
+ q(0011),
+ q(0),
+ ],
+ q(azerbaijanian manat) => [
+ q(0012),
+ q(0),
+ ],
+ q(bahamian dollar) => [
+ q(0013),
+ q(0),
+ ],
+ q(bahraini dinar) => [
+ q(0014),
+ q(0),
+ ],
+ q(baht) => [
+ q(0149),
+ q(0),
+ ],
+ q(balboa) => [
+ q(0117),
+ q(0),
+ ],
+ q(barbados dollar) => [
+ q(0016),
+ q(0),
+ ],
+ q(belarussian ruble) => [
+ q(0017),
+ q(0),
+ ],
+ q(belize dollar) => [
+ q(0018),
+ q(0),
+ ],
+ q(bermudian dollar) => [
+ q(0020),
+ q(0),
+ ],
+ q(bolivar fuerte) => [
+ q(0164),
+ q(0),
+ ],
+ q(boliviano) => [
+ q(0023),
+ q(0),
+ ],
+ q(brazilian real) => [
+ q(0028),
+ q(0),
+ ],
+ q(brunei dollar) => [
+ q(0029),
+ q(0),
+ ],
+ q(bulgarian lev) => [
+ q(0030),
+ q(0),
+ ],
+ q(burundi franc) => [
+ q(0031),
+ q(0),
+ ],
+ q(canadian dollar) => [
+ q(0034),
+ q(0),
+ ],
+ q(cape verde escudo) => [
+ q(0035),
+ q(0),
+ ],
+ q(cayman islands dollar) => [
+ q(0036),
+ q(0),
+ ],
+ q(cedi) => [
+ q(0063),
+ q(0),
+ ],
+ q(cfa franc bceao) => [
+ q(0019),
+ q(0),
+ ],
+ q(cfa franc beac) => [
+ q(0033),
+ q(0),
+ ],
+ q(cfp franc) => [
+ q(0060),
+ q(0),
+ ],
+ q(chilean peso) => [
+ q(0038),
+ q(0),
+ ],
+ q(colombian peso) => [
+ q(0040),
+ q(0),
+ ],
+ q(comoro franc) => [
+ q(0042),
+ q(0),
+ ],
+ q(congolese franc) => [
+ q(0043),
+ q(0),
+ ],
+ q(convertible mark) => [
+ q(0025),
+ q(0),
+ ],
+ q(cordoba oro) => [
+ q(0113),
+ q(0),
+ ],
+ q(costa rican colon) => [
+ q(0045),
+ q(0),
+ ],
+ q(croatian kuna) => [
+ q(0046),
+ q(0),
+ ],
+ q(cuban peso) => [
+ q(0048),
+ q(0),
+ ],
+ q(czech koruna) => [
+ q(0050),
+ q(0),
+ ],
+ q(dalasi) => [
+ q(0061),
+ q(0),
+ ],
+ q(danish krone) => [
+ q(0051),
+ q(0),
+ ],
+ q(denar) => [
+ q(0097),
+ q(0),
+ ],
+ q(djibouti franc) => [
+ q(0052),
+ q(0),
+ ],
+ q(dobra) => [
+ q(0129),
+ q(0),
+ ],
+ q(dominican peso) => [
+ q(0053),
+ q(0),
+ ],
+ q(dong) => [
+ q(0165),
+ q(0),
+ ],
+ q(east caribbean dollar) => [
+ q(0007),
+ q(0),
+ ],
+ q(egyptian pound) => [
+ q(0054),
+ q(0),
+ ],
+ q(el salvador colon) => [
+ q(0055),
+ q(0),
+ ],
+ q(ethiopian birr) => [
+ q(0057),
+ q(0),
+ ],
+ q(euro) => [
+ q(0002),
+ q(0),
+ ],
+ q(falkland islands pound) => [
+ q(0058),
+ q(0),
+ ],
+ q(fiji dollar) => [
+ q(0059),
+ q(0),
+ ],
+ q(forint) => [
+ q(0072),
+ q(0),
+ ],
+ q(gibraltar pound) => [
+ q(0064),
+ q(0),
+ ],
+ q(gold) => [
+ q(0169),
+ q(0),
+ ],
+ q(gourde) => [
+ q(0069),
+ q(0),
+ ],
+ q(guarani) => [
+ q(0119),
+ q(0),
+ ],
+ q(guinea franc) => [
+ q(0067),
+ q(0),
+ ],
+ q(guyana dollar) => [
+ q(0068),
+ q(0),
+ ],
+ q(hong kong dollar) => [
+ q(0071),
+ q(0),
+ ],
+ q(hryvnia) => [
+ q(0156),
+ q(0),
+ ],
+ q(iceland krona) => [
+ q(0073),
+ q(0),
+ ],
+ q(indian rupee) => [
+ q(0022),
+ q(0),
+ ],
+ q(iranian rial) => [
+ q(0075),
+ q(0),
+ ],
+ q(iraqi dinar) => [
+ q(0076),
+ q(0),
+ ],
+ q(jamaican dollar) => [
+ q(0078),
+ q(0),
+ ],
+ q(jordanian dinar) => [
+ q(0080),
+ q(0),
+ ],
+ q(kenyan shilling) => [
+ q(0082),
+ q(0),
+ ],
+ q(kina) => [
+ q(0118),
+ q(0),
+ ],
+ q(kip) => [
+ q(0087),
+ q(0),
+ ],
+ q(kuwaiti dinar) => [
+ q(0085),
+ q(0),
+ ],
+ q(kwacha) => [
+ q(0099),
+ q(0),
+ ],
+ q(kwanza) => [
+ q(0006),
+ q(0),
+ ],
+ q(kyat) => [
+ q(0110),
+ q(0),
+ ],
+ q(lari) => [
+ q(0062),
+ q(0),
+ ],
+ q(latvian lats) => [
+ q(0088),
+ q(0),
+ ],
+ q(lebanese pound) => [
+ q(0089),
+ q(0),
+ ],
+ q(lek) => [
+ q(0003),
+ q(0),
+ ],
+ q(lempira) => [
+ q(0070),
+ q(0),
+ ],
+ q(leone) => [
+ q(0133),
+ q(0),
+ ],
+ q(leu) => [
+ q(0124),
+ q(0),
+ ],
+ q(liberian dollar) => [
+ q(0092),
+ q(0),
+ ],
+ q(libyan dinar) => [
+ q(0093),
+ q(0),
+ ],
+ q(lilangeni) => [
+ q(0141),
+ q(0),
+ ],
+ q(lithuanian litas) => [
+ q(0095),
+ q(0),
+ ],
+ q(loti) => [
+ q(0090),
+ q(0),
+ ],
+ q(malagasy ariary) => [
+ q(0098),
+ q(0),
+ ],
+ q(malaysian ringgit) => [
+ q(0100),
+ q(0),
+ ],
+ q(mauritius rupee) => [
+ q(0103),
+ q(0),
+ ],
+ q(metical) => [
+ q(0109),
+ q(0),
+ ],
+ q(mexican peso) => [
+ q(0104),
+ q(0),
+ ],
+ q(mexican unidad de inversion (udi)) => [
+ q(0105),
+ q(0),
+ ],
+ q(moldovan leu) => [
+ q(0106),
+ q(0),
+ ],
+ q(moroccan dirham) => [
+ q(0108),
+ q(0),
+ ],
+ q(mvdol) => [
+ q(0024),
+ q(0),
+ ],
+ q(naira) => [
+ q(0114),
+ q(0),
+ ],
+ q(nakfa) => [
+ q(0056),
+ q(0),
+ ],
+ q(namibia dollar) => [
+ q(0111),
+ q(0),
+ ],
+ q(nepalese rupee) => [
+ q(0112),
+ q(0),
+ ],
+ q(netherlands antillean guilder) => [
+ q(0049),
+ q(0),
+ ],
+ q(new israeli sheqel) => [
+ q(0077),
+ q(0),
+ ],
+ q(new manat) => [
+ q(0154),
+ q(0),
+ ],
+ q(new taiwan dollar) => [
+ q(0146),
+ q(0),
+ ],
+ q(new zealand dollar) => [
+ q(0044),
+ q(0),
+ ],
+ q(ngultrum) => [
+ q(0021),
+ q(0),
+ ],
+ q(north korean won) => [
+ q(0083),
+ q(0),
+ ],
+ q(norwegian krone) => [
+ q(0027),
+ q(0),
+ ],
+ q(nuevo sol) => [
+ q(0120),
+ q(0),
+ ],
+ q(ouguiya) => [
+ q(0102),
+ q(0),
+ ],
+ q(pa'anga) => [
+ q(0150),
+ q(0),
+ ],
+ q(pakistan rupee) => [
+ q(0116),
+ q(0),
+ ],
+ q(pataca) => [
+ q(0096),
+ q(0),
+ ],
+ q(peso convertible) => [
+ q(0047),
+ q(0),
+ ],
+ q(peso uruguayo) => [
+ q(0161),
+ q(0),
+ ],
+ q(philippine peso) => [
+ q(0121),
+ q(0),
+ ],
+ q(pound sterling) => [
+ q(0066),
+ q(0),
+ ],
+ q(pula) => [
+ q(0026),
+ q(0),
+ ],
+ q(qatari rial) => [
+ q(0123),
+ q(0),
+ ],
+ q(quetzal) => [
+ q(0065),
+ q(0),
+ ],
+ q(rand) => [
+ q(0091),
+ q(0),
+ ],
+ q(rial omani) => [
+ q(0115),
+ q(0),
+ ],
+ q(riel) => [
+ q(0032),
+ q(0),
+ ],
+ q(rufiyaa) => [
+ q(0101),
+ q(0),
+ ],
+ q(rupiah) => [
+ q(0074),
+ q(0),
+ ],
+ q(russian ruble) => [
+ q(0125),
+ q(0),
+ ],
+ q(rwanda franc) => [
+ q(0126),
+ q(0),
+ ],
+ q(saint helena pound) => [
+ q(0127),
+ q(0),
+ ],
+ q(saudi riyal) => [
+ q(0130),
+ q(0),
+ ],
+ q(sdr (special drawing right)) => [
+ q(0170),
+ q(0),
+ ],
+ q(serbian dinar) => [
+ q(0131),
+ q(0),
+ ],
+ q(seychelles rupee) => [
+ q(0132),
+ q(0),
+ ],
+ q(singapore dollar) => [
+ q(0134),
+ q(0),
+ ],
+ q(solomon islands dollar) => [
+ q(0136),
+ q(0),
+ ],
+ q(som) => [
+ q(0086),
+ q(0),
+ ],
+ q(somali shilling) => [
+ q(0137),
+ q(0),
+ ],
+ q(somoni) => [
+ q(0147),
+ q(0),
+ ],
+ q(sri lanka rupee) => [
+ q(0138),
+ q(0),
+ ],
+ q(sucre) => [
+ q(0135),
+ q(0),
+ ],
+ q(sudanese pound) => [
+ q(0139),
+ q(0),
+ ],
+ q(surinam dollar) => [
+ q(0140),
+ q(0),
+ ],
+ q(swedish krona) => [
+ q(0142),
+ q(0),
+ ],
+ q(swiss franc) => [
+ q(0094),
+ q(0),
+ ],
+ q(syrian pound) => [
+ q(0145),
+ q(0),
+ ],
+ q(taka) => [
+ q(0015),
+ q(0),
+ ],
+ q(tala) => [
+ q(0128),
+ q(0),
+ ],
+ q(tanzanian shilling) => [
+ q(0148),
+ q(0),
+ ],
+ q(tenge) => [
+ q(0081),
+ q(0),
+ ],
+ q(trinidad and tobago dollar) => [
+ q(0151),
+ q(0),
+ ],
+ q(tugrik) => [
+ q(0107),
+ q(0),
+ ],
+ q(tunisian dinar) => [
+ q(0152),
+ q(0),
+ ],
+ q(turkish lira) => [
+ q(0153),
+ q(0),
+ ],
+ q(uae dirham) => [
+ q(0157),
+ q(0),
+ ],
+ q(uganda shilling) => [
+ q(0155),
+ q(0),
+ ],
+ q(unidad de valor real) => [
+ q(0041),
+ q(0),
+ ],
+ q(unidades de fomento) => [
+ q(0037),
+ q(0),
+ ],
+ q(uruguay peso en unidades indexadas (uruiurui)) => [
+ q(0160),
+ q(0),
+ ],
+ q(us dollar) => [
+ q(0005),
+ q(0),
+ ],
+ q(us dollar (next day)) => [
+ q(0158),
+ q(0),
+ ],
+ q(us dollar (same day)) => [
+ q(0159),
+ q(0),
+ ],
+ q(uzbekistan sum) => [
+ q(0162),
+ q(0),
+ ],
+ q(vatu) => [
+ q(0163),
+ q(0),
+ ],
+ q(wir euro) => [
+ q(0143),
+ q(0),
+ ],
+ q(wir franc) => [
+ q(0144),
+ q(0),
+ ],
+ q(won) => [
+ q(0084),
+ q(0),
+ ],
+ q(yemeni rial) => [
+ q(0166),
+ q(0),
+ ],
+ q(yen) => [
+ q(0079),
+ q(0),
+ ],
+ q(yuan renminbi) => [
+ q(0039),
+ q(0),
+ ],
+ q(zambian kwacha) => [
+ q(0167),
+ q(0),
+ ],
+ q(zimbabwe dollar) => [
+ q(0168),
+ q(0),
+ ],
+ q(zloty) => [
+ q(0122),
+ q(0),
+ ],
+};
+
+$Locale::Codes::Data{'currency'}{'code2id'} = {
+ q(alpha) => {
+ q(AED) => [
+ q(0157),
+ q(0),
+ ],
+ q(AFN) => [
+ q(0001),
+ q(0),
+ ],
+ q(ALL) => [
+ q(0003),
+ q(0),
+ ],
+ q(AMD) => [
+ q(0009),
+ q(0),
+ ],
+ q(ANG) => [
+ q(0049),
+ q(0),
+ ],
+ q(AOA) => [
+ q(0006),
+ q(0),
+ ],
+ q(ARS) => [
+ q(0008),
+ q(0),
+ ],
+ q(AUD) => [
+ q(0011),
+ q(0),
+ ],
+ q(AWG) => [
+ q(0010),
+ q(0),
+ ],
+ q(AZN) => [
+ q(0012),
+ q(0),
+ ],
+ q(BAM) => [
+ q(0025),
+ q(0),
+ ],
+ q(BBD) => [
+ q(0016),
+ q(0),
+ ],
+ q(BDT) => [
+ q(0015),
+ q(0),
+ ],
+ q(BGN) => [
+ q(0030),
+ q(0),
+ ],
+ q(BHD) => [
+ q(0014),
+ q(0),
+ ],
+ q(BIF) => [
+ q(0031),
+ q(0),
+ ],
+ q(BMD) => [
+ q(0020),
+ q(0),
+ ],
+ q(BND) => [
+ q(0029),
+ q(0),
+ ],
+ q(BOB) => [
+ q(0023),
+ q(0),
+ ],
+ q(BOV) => [
+ q(0024),
+ q(0),
+ ],
+ q(BRL) => [
+ q(0028),
+ q(0),
+ ],
+ q(BSD) => [
+ q(0013),
+ q(0),
+ ],
+ q(BTN) => [
+ q(0021),
+ q(0),
+ ],
+ q(BWP) => [
+ q(0026),
+ q(0),
+ ],
+ q(BYR) => [
+ q(0017),
+ q(0),
+ ],
+ q(BZD) => [
+ q(0018),
+ q(0),
+ ],
+ q(CAD) => [
+ q(0034),
+ q(0),
+ ],
+ q(CDF) => [
+ q(0043),
+ q(0),
+ ],
+ q(CHE) => [
+ q(0143),
+ q(0),
+ ],
+ q(CHF) => [
+ q(0094),
+ q(0),
+ ],
+ q(CHW) => [
+ q(0144),
+ q(0),
+ ],
+ q(CLF) => [
+ q(0037),
+ q(0),
+ ],
+ q(CLP) => [
+ q(0038),
+ q(0),
+ ],
+ q(CNY) => [
+ q(0039),
+ q(0),
+ ],
+ q(COP) => [
+ q(0040),
+ q(0),
+ ],
+ q(COU) => [
+ q(0041),
+ q(0),
+ ],
+ q(CRC) => [
+ q(0045),
+ q(0),
+ ],
+ q(CUC) => [
+ q(0047),
+ q(0),
+ ],
+ q(CUP) => [
+ q(0048),
+ q(0),
+ ],
+ q(CVE) => [
+ q(0035),
+ q(0),
+ ],
+ q(CZK) => [
+ q(0050),
+ q(0),
+ ],
+ q(DJF) => [
+ q(0052),
+ q(0),
+ ],
+ q(DKK) => [
+ q(0051),
+ q(0),
+ ],
+ q(DOP) => [
+ q(0053),
+ q(0),
+ ],
+ q(DZD) => [
+ q(0004),
+ q(0),
+ ],
+ q(EGP) => [
+ q(0054),
+ q(0),
+ ],
+ q(ERN) => [
+ q(0056),
+ q(0),
+ ],
+ q(ETB) => [
+ q(0057),
+ q(0),
+ ],
+ q(EUR) => [
+ q(0002),
+ q(0),
+ ],
+ q(FJD) => [
+ q(0059),
+ q(0),
+ ],
+ q(FKP) => [
+ q(0058),
+ q(0),
+ ],
+ q(GBP) => [
+ q(0066),
+ q(0),
+ ],
+ q(GEL) => [
+ q(0062),
+ q(0),
+ ],
+ q(GHS) => [
+ q(0063),
+ q(0),
+ ],
+ q(GIP) => [
+ q(0064),
+ q(0),
+ ],
+ q(GMD) => [
+ q(0061),
+ q(0),
+ ],
+ q(GNF) => [
+ q(0067),
+ q(0),
+ ],
+ q(GTQ) => [
+ q(0065),
+ q(0),
+ ],
+ q(GYD) => [
+ q(0068),
+ q(0),
+ ],
+ q(HKD) => [
+ q(0071),
+ q(0),
+ ],
+ q(HNL) => [
+ q(0070),
+ q(0),
+ ],
+ q(HRK) => [
+ q(0046),
+ q(0),
+ ],
+ q(HTG) => [
+ q(0069),
+ q(0),
+ ],
+ q(HUF) => [
+ q(0072),
+ q(0),
+ ],
+ q(IDR) => [
+ q(0074),
+ q(0),
+ ],
+ q(ILS) => [
+ q(0077),
+ q(0),
+ ],
+ q(INR) => [
+ q(0022),
+ q(0),
+ ],
+ q(IQD) => [
+ q(0076),
+ q(0),
+ ],
+ q(IRR) => [
+ q(0075),
+ q(0),
+ ],
+ q(ISK) => [
+ q(0073),
+ q(0),
+ ],
+ q(JMD) => [
+ q(0078),
+ q(0),
+ ],
+ q(JOD) => [
+ q(0080),
+ q(0),
+ ],
+ q(JPY) => [
+ q(0079),
+ q(0),
+ ],
+ q(KES) => [
+ q(0082),
+ q(0),
+ ],
+ q(KGS) => [
+ q(0086),
+ q(0),
+ ],
+ q(KHR) => [
+ q(0032),
+ q(0),
+ ],
+ q(KMF) => [
+ q(0042),
+ q(0),
+ ],
+ q(KPW) => [
+ q(0083),
+ q(0),
+ ],
+ q(KRW) => [
+ q(0084),
+ q(0),
+ ],
+ q(KWD) => [
+ q(0085),
+ q(0),
+ ],
+ q(KYD) => [
+ q(0036),
+ q(0),
+ ],
+ q(KZT) => [
+ q(0081),
+ q(0),
+ ],
+ q(LAK) => [
+ q(0087),
+ q(0),
+ ],
+ q(LBP) => [
+ q(0089),
+ q(0),
+ ],
+ q(LKR) => [
+ q(0138),
+ q(0),
+ ],
+ q(LRD) => [
+ q(0092),
+ q(0),
+ ],
+ q(LSL) => [
+ q(0090),
+ q(0),
+ ],
+ q(LTL) => [
+ q(0095),
+ q(0),
+ ],
+ q(LVL) => [
+ q(0088),
+ q(0),
+ ],
+ q(LYD) => [
+ q(0093),
+ q(0),
+ ],
+ q(MAD) => [
+ q(0108),
+ q(0),
+ ],
+ q(MDL) => [
+ q(0106),
+ q(0),
+ ],
+ q(MGA) => [
+ q(0098),
+ q(0),
+ ],
+ q(MKD) => [
+ q(0097),
+ q(0),
+ ],
+ q(MMK) => [
+ q(0110),
+ q(0),
+ ],
+ q(MNT) => [
+ q(0107),
+ q(0),
+ ],
+ q(MOP) => [
+ q(0096),
+ q(0),
+ ],
+ q(MRO) => [
+ q(0102),
+ q(0),
+ ],
+ q(MUR) => [
+ q(0103),
+ q(0),
+ ],
+ q(MVR) => [
+ q(0101),
+ q(0),
+ ],
+ q(MWK) => [
+ q(0099),
+ q(0),
+ ],
+ q(MXN) => [
+ q(0104),
+ q(0),
+ ],
+ q(MXV) => [
+ q(0105),
+ q(0),
+ ],
+ q(MYR) => [
+ q(0100),
+ q(0),
+ ],
+ q(MZN) => [
+ q(0109),
+ q(0),
+ ],
+ q(NAD) => [
+ q(0111),
+ q(0),
+ ],
+ q(NGN) => [
+ q(0114),
+ q(0),
+ ],
+ q(NIO) => [
+ q(0113),
+ q(0),
+ ],
+ q(NOK) => [
+ q(0027),
+ q(0),
+ ],
+ q(NPR) => [
+ q(0112),
+ q(0),
+ ],
+ q(NZD) => [
+ q(0044),
+ q(0),
+ ],
+ q(OMR) => [
+ q(0115),
+ q(0),
+ ],
+ q(PAB) => [
+ q(0117),
+ q(0),
+ ],
+ q(PEN) => [
+ q(0120),
+ q(0),
+ ],
+ q(PGK) => [
+ q(0118),
+ q(0),
+ ],
+ q(PHP) => [
+ q(0121),
+ q(0),
+ ],
+ q(PKR) => [
+ q(0116),
+ q(0),
+ ],
+ q(PLN) => [
+ q(0122),
+ q(0),
+ ],
+ q(PYG) => [
+ q(0119),
+ q(0),
+ ],
+ q(QAR) => [
+ q(0123),
+ q(0),
+ ],
+ q(RON) => [
+ q(0124),
+ q(0),
+ ],
+ q(RSD) => [
+ q(0131),
+ q(0),
+ ],
+ q(RUB) => [
+ q(0125),
+ q(0),
+ ],
+ q(RWF) => [
+ q(0126),
+ q(0),
+ ],
+ q(SAR) => [
+ q(0130),
+ q(0),
+ ],
+ q(SBD) => [
+ q(0136),
+ q(0),
+ ],
+ q(SCR) => [
+ q(0132),
+ q(0),
+ ],
+ q(SDG) => [
+ q(0139),
+ q(0),
+ ],
+ q(SEK) => [
+ q(0142),
+ q(0),
+ ],
+ q(SGD) => [
+ q(0134),
+ q(0),
+ ],
+ q(SHP) => [
+ q(0127),
+ q(0),
+ ],
+ q(SLL) => [
+ q(0133),
+ q(0),
+ ],
+ q(SOS) => [
+ q(0137),
+ q(0),
+ ],
+ q(SRD) => [
+ q(0140),
+ q(0),
+ ],
+ q(STD) => [
+ q(0129),
+ q(0),
+ ],
+ q(SVC) => [
+ q(0055),
+ q(0),
+ ],
+ q(SYP) => [
+ q(0145),
+ q(0),
+ ],
+ q(SZL) => [
+ q(0141),
+ q(0),
+ ],
+ q(THB) => [
+ q(0149),
+ q(0),
+ ],
+ q(TJS) => [
+ q(0147),
+ q(0),
+ ],
+ q(TMT) => [
+ q(0154),
+ q(0),
+ ],
+ q(TND) => [
+ q(0152),
+ q(0),
+ ],
+ q(TOP) => [
+ q(0150),
+ q(0),
+ ],
+ q(TRY) => [
+ q(0153),
+ q(0),
+ ],
+ q(TTD) => [
+ q(0151),
+ q(0),
+ ],
+ q(TWD) => [
+ q(0146),
+ q(0),
+ ],
+ q(TZS) => [
+ q(0148),
+ q(0),
+ ],
+ q(UAH) => [
+ q(0156),
+ q(0),
+ ],
+ q(UGX) => [
+ q(0155),
+ q(0),
+ ],
+ q(USD) => [
+ q(0005),
+ q(0),
+ ],
+ q(USN) => [
+ q(0158),
+ q(0),
+ ],
+ q(USS) => [
+ q(0159),
+ q(0),
+ ],
+ q(UYI) => [
+ q(0160),
+ q(0),
+ ],
+ q(UYU) => [
+ q(0161),
+ q(0),
+ ],
+ q(UZS) => [
+ q(0162),
+ q(0),
+ ],
+ q(VEF) => [
+ q(0164),
+ q(0),
+ ],
+ q(VND) => [
+ q(0165),
+ q(0),
+ ],
+ q(VUV) => [
+ q(0163),
+ q(0),
+ ],
+ q(WST) => [
+ q(0128),
+ q(0),
+ ],
+ q(XAF) => [
+ q(0033),
+ q(0),
+ ],
+ q(XAU) => [
+ q(0169),
+ q(0),
+ ],
+ q(XCD) => [
+ q(0007),
+ q(0),
+ ],
+ q(XDR) => [
+ q(0170),
+ q(0),
+ ],
+ q(XOF) => [
+ q(0019),
+ q(0),
+ ],
+ q(XPF) => [
+ q(0060),
+ q(0),
+ ],
+ q(XSU) => [
+ q(0135),
+ q(0),
+ ],
+ q(YER) => [
+ q(0166),
+ q(0),
+ ],
+ q(ZAR) => [
+ q(0091),
+ q(0),
+ ],
+ q(ZMK) => [
+ q(0167),
+ q(0),
+ ],
+ q(ZWL) => [
+ q(0168),
+ q(0),
+ ],
+ },
+ q(num) => {
+ q(008) => [
+ q(0003),
+ q(0),
+ ],
+ q(012) => [
+ q(0004),
+ q(0),
+ ],
+ q(032) => [
+ q(0008),
+ q(0),
+ ],
+ q(036) => [
+ q(0011),
+ q(0),
+ ],
+ q(044) => [
+ q(0013),
+ q(0),
+ ],
+ q(048) => [
+ q(0014),
+ q(0),
+ ],
+ q(050) => [
+ q(0015),
+ q(0),
+ ],
+ q(051) => [
+ q(0009),
+ q(0),
+ ],
+ q(052) => [
+ q(0016),
+ q(0),
+ ],
+ q(060) => [
+ q(0020),
+ q(0),
+ ],
+ q(064) => [
+ q(0021),
+ q(0),
+ ],
+ q(068) => [
+ q(0023),
+ q(0),
+ ],
+ q(072) => [
+ q(0026),
+ q(0),
+ ],
+ q(084) => [
+ q(0018),
+ q(0),
+ ],
+ q(090) => [
+ q(0136),
+ q(0),
+ ],
+ q(096) => [
+ q(0029),
+ q(0),
+ ],
+ q(104) => [
+ q(0110),
+ q(0),
+ ],
+ q(108) => [
+ q(0031),
+ q(0),
+ ],
+ q(116) => [
+ q(0032),
+ q(0),
+ ],
+ q(124) => [
+ q(0034),
+ q(0),
+ ],
+ q(132) => [
+ q(0035),
+ q(0),
+ ],
+ q(136) => [
+ q(0036),
+ q(0),
+ ],
+ q(144) => [
+ q(0138),
+ q(0),
+ ],
+ q(152) => [
+ q(0038),
+ q(0),
+ ],
+ q(156) => [
+ q(0039),
+ q(0),
+ ],
+ q(170) => [
+ q(0040),
+ q(0),
+ ],
+ q(174) => [
+ q(0042),
+ q(0),
+ ],
+ q(188) => [
+ q(0045),
+ q(0),
+ ],
+ q(191) => [
+ q(0046),
+ q(0),
+ ],
+ q(192) => [
+ q(0048),
+ q(0),
+ ],
+ q(203) => [
+ q(0050),
+ q(0),
+ ],
+ q(208) => [
+ q(0051),
+ q(0),
+ ],
+ q(214) => [
+ q(0053),
+ q(0),
+ ],
+ q(222) => [
+ q(0055),
+ q(0),
+ ],
+ q(230) => [
+ q(0057),
+ q(0),
+ ],
+ q(232) => [
+ q(0056),
+ q(0),
+ ],
+ q(238) => [
+ q(0058),
+ q(0),
+ ],
+ q(242) => [
+ q(0059),
+ q(0),
+ ],
+ q(262) => [
+ q(0052),
+ q(0),
+ ],
+ q(270) => [
+ q(0061),
+ q(0),
+ ],
+ q(292) => [
+ q(0064),
+ q(0),
+ ],
+ q(320) => [
+ q(0065),
+ q(0),
+ ],
+ q(324) => [
+ q(0067),
+ q(0),
+ ],
+ q(328) => [
+ q(0068),
+ q(0),
+ ],
+ q(332) => [
+ q(0069),
+ q(0),
+ ],
+ q(340) => [
+ q(0070),
+ q(0),
+ ],
+ q(344) => [
+ q(0071),
+ q(0),
+ ],
+ q(348) => [
+ q(0072),
+ q(0),
+ ],
+ q(352) => [
+ q(0073),
+ q(0),
+ ],
+ q(356) => [
+ q(0022),
+ q(0),
+ ],
+ q(360) => [
+ q(0074),
+ q(0),
+ ],
+ q(364) => [
+ q(0075),
+ q(0),
+ ],
+ q(368) => [
+ q(0076),
+ q(0),
+ ],
+ q(376) => [
+ q(0077),
+ q(0),
+ ],
+ q(388) => [
+ q(0078),
+ q(0),
+ ],
+ q(392) => [
+ q(0079),
+ q(0),
+ ],
+ q(398) => [
+ q(0081),
+ q(0),
+ ],
+ q(400) => [
+ q(0080),
+ q(0),
+ ],
+ q(404) => [
+ q(0082),
+ q(0),
+ ],
+ q(408) => [
+ q(0083),
+ q(0),
+ ],
+ q(410) => [
+ q(0084),
+ q(0),
+ ],
+ q(414) => [
+ q(0085),
+ q(0),
+ ],
+ q(417) => [
+ q(0086),
+ q(0),
+ ],
+ q(418) => [
+ q(0087),
+ q(0),
+ ],
+ q(422) => [
+ q(0089),
+ q(0),
+ ],
+ q(426) => [
+ q(0090),
+ q(0),
+ ],
+ q(428) => [
+ q(0088),
+ q(0),
+ ],
+ q(430) => [
+ q(0092),
+ q(0),
+ ],
+ q(434) => [
+ q(0093),
+ q(0),
+ ],
+ q(440) => [
+ q(0095),
+ q(0),
+ ],
+ q(446) => [
+ q(0096),
+ q(0),
+ ],
+ q(454) => [
+ q(0099),
+ q(0),
+ ],
+ q(458) => [
+ q(0100),
+ q(0),
+ ],
+ q(462) => [
+ q(0101),
+ q(0),
+ ],
+ q(478) => [
+ q(0102),
+ q(0),
+ ],
+ q(480) => [
+ q(0103),
+ q(0),
+ ],
+ q(484) => [
+ q(0104),
+ q(0),
+ ],
+ q(496) => [
+ q(0107),
+ q(0),
+ ],
+ q(498) => [
+ q(0106),
+ q(0),
+ ],
+ q(504) => [
+ q(0108),
+ q(0),
+ ],
+ q(512) => [
+ q(0115),
+ q(0),
+ ],
+ q(516) => [
+ q(0111),
+ q(0),
+ ],
+ q(524) => [
+ q(0112),
+ q(0),
+ ],
+ q(532) => [
+ q(0049),
+ q(0),
+ ],
+ q(533) => [
+ q(0010),
+ q(0),
+ ],
+ q(548) => [
+ q(0163),
+ q(0),
+ ],
+ q(554) => [
+ q(0044),
+ q(0),
+ ],
+ q(558) => [
+ q(0113),
+ q(0),
+ ],
+ q(566) => [
+ q(0114),
+ q(0),
+ ],
+ q(578) => [
+ q(0027),
+ q(0),
+ ],
+ q(586) => [
+ q(0116),
+ q(0),
+ ],
+ q(590) => [
+ q(0117),
+ q(0),
+ ],
+ q(598) => [
+ q(0118),
+ q(0),
+ ],
+ q(600) => [
+ q(0119),
+ q(0),
+ ],
+ q(604) => [
+ q(0120),
+ q(0),
+ ],
+ q(608) => [
+ q(0121),
+ q(0),
+ ],
+ q(634) => [
+ q(0123),
+ q(0),
+ ],
+ q(643) => [
+ q(0125),
+ q(0),
+ ],
+ q(646) => [
+ q(0126),
+ q(0),
+ ],
+ q(654) => [
+ q(0127),
+ q(0),
+ ],
+ q(678) => [
+ q(0129),
+ q(0),
+ ],
+ q(682) => [
+ q(0130),
+ q(0),
+ ],
+ q(690) => [
+ q(0132),
+ q(0),
+ ],
+ q(694) => [
+ q(0133),
+ q(0),
+ ],
+ q(702) => [
+ q(0134),
+ q(0),
+ ],
+ q(704) => [
+ q(0165),
+ q(0),
+ ],
+ q(706) => [
+ q(0137),
+ q(0),
+ ],
+ q(710) => [
+ q(0091),
+ q(0),
+ ],
+ q(748) => [
+ q(0141),
+ q(0),
+ ],
+ q(752) => [
+ q(0142),
+ q(0),
+ ],
+ q(756) => [
+ q(0094),
+ q(0),
+ ],
+ q(760) => [
+ q(0145),
+ q(0),
+ ],
+ q(764) => [
+ q(0149),
+ q(0),
+ ],
+ q(776) => [
+ q(0150),
+ q(0),
+ ],
+ q(780) => [
+ q(0151),
+ q(0),
+ ],
+ q(784) => [
+ q(0157),
+ q(0),
+ ],
+ q(788) => [
+ q(0152),
+ q(0),
+ ],
+ q(800) => [
+ q(0155),
+ q(0),
+ ],
+ q(807) => [
+ q(0097),
+ q(0),
+ ],
+ q(818) => [
+ q(0054),
+ q(0),
+ ],
+ q(826) => [
+ q(0066),
+ q(0),
+ ],
+ q(834) => [
+ q(0148),
+ q(0),
+ ],
+ q(840) => [
+ q(0005),
+ q(0),
+ ],
+ q(858) => [
+ q(0161),
+ q(0),
+ ],
+ q(860) => [
+ q(0162),
+ q(0),
+ ],
+ q(882) => [
+ q(0128),
+ q(0),
+ ],
+ q(886) => [
+ q(0166),
+ q(0),
+ ],
+ q(894) => [
+ q(0167),
+ q(0),
+ ],
+ q(901) => [
+ q(0146),
+ q(0),
+ ],
+ q(931) => [
+ q(0047),
+ q(0),
+ ],
+ q(932) => [
+ q(0168),
+ q(0),
+ ],
+ q(934) => [
+ q(0154),
+ q(0),
+ ],
+ q(936) => [
+ q(0063),
+ q(0),
+ ],
+ q(937) => [
+ q(0164),
+ q(0),
+ ],
+ q(938) => [
+ q(0139),
+ q(0),
+ ],
+ q(940) => [
+ q(0160),
+ q(0),
+ ],
+ q(941) => [
+ q(0131),
+ q(0),
+ ],
+ q(943) => [
+ q(0109),
+ q(0),
+ ],
+ q(944) => [
+ q(0012),
+ q(0),
+ ],
+ q(946) => [
+ q(0124),
+ q(0),
+ ],
+ q(947) => [
+ q(0143),
+ q(0),
+ ],
+ q(948) => [
+ q(0144),
+ q(0),
+ ],
+ q(949) => [
+ q(0153),
+ q(0),
+ ],
+ q(950) => [
+ q(0033),
+ q(0),
+ ],
+ q(951) => [
+ q(0007),
+ q(0),
+ ],
+ q(952) => [
+ q(0019),
+ q(0),
+ ],
+ q(953) => [
+ q(0060),
+ q(0),
+ ],
+ q(959) => [
+ q(0169),
+ q(0),
+ ],
+ q(960) => [
+ q(0170),
+ q(0),
+ ],
+ q(968) => [
+ q(0140),
+ q(0),
+ ],
+ q(969) => [
+ q(0098),
+ q(0),
+ ],
+ q(970) => [
+ q(0041),
+ q(0),
+ ],
+ q(971) => [
+ q(0001),
+ q(0),
+ ],
+ q(972) => [
+ q(0147),
+ q(0),
+ ],
+ q(973) => [
+ q(0006),
+ q(0),
+ ],
+ q(974) => [
+ q(0017),
+ q(0),
+ ],
+ q(975) => [
+ q(0030),
+ q(0),
+ ],
+ q(976) => [
+ q(0043),
+ q(0),
+ ],
+ q(977) => [
+ q(0025),
+ q(0),
+ ],
+ q(978) => [
+ q(0002),
+ q(0),
+ ],
+ q(979) => [
+ q(0105),
+ q(0),
+ ],
+ q(980) => [
+ q(0156),
+ q(0),
+ ],
+ q(981) => [
+ q(0062),
+ q(0),
+ ],
+ q(984) => [
+ q(0024),
+ q(0),
+ ],
+ q(985) => [
+ q(0122),
+ q(0),
+ ],
+ q(986) => [
+ q(0028),
+ q(0),
+ ],
+ q(990) => [
+ q(0037),
+ q(0),
+ ],
+ q(994) => [
+ q(0135),
+ q(0),
+ ],
+ q(997) => [
+ q(0158),
+ q(0),
+ ],
+ q(998) => [
+ q(0159),
+ q(0),
+ ],
+ },
+};
+
+$Locale::Codes::Data{'currency'}{'id2code'} = {
+ q(alpha) => {
+ q(0001) => q(AFN),
+ q(0002) => q(EUR),
+ q(0003) => q(ALL),
+ q(0004) => q(DZD),
+ q(0005) => q(USD),
+ q(0006) => q(AOA),
+ q(0007) => q(XCD),
+ q(0008) => q(ARS),
+ q(0009) => q(AMD),
+ q(0010) => q(AWG),
+ q(0011) => q(AUD),
+ q(0012) => q(AZN),
+ q(0013) => q(BSD),
+ q(0014) => q(BHD),
+ q(0015) => q(BDT),
+ q(0016) => q(BBD),
+ q(0017) => q(BYR),
+ q(0018) => q(BZD),
+ q(0019) => q(XOF),
+ q(0020) => q(BMD),
+ q(0021) => q(BTN),
+ q(0022) => q(INR),
+ q(0023) => q(BOB),
+ q(0024) => q(BOV),
+ q(0025) => q(BAM),
+ q(0026) => q(BWP),
+ q(0027) => q(NOK),
+ q(0028) => q(BRL),
+ q(0029) => q(BND),
+ q(0030) => q(BGN),
+ q(0031) => q(BIF),
+ q(0032) => q(KHR),
+ q(0033) => q(XAF),
+ q(0034) => q(CAD),
+ q(0035) => q(CVE),
+ q(0036) => q(KYD),
+ q(0037) => q(CLF),
+ q(0038) => q(CLP),
+ q(0039) => q(CNY),
+ q(0040) => q(COP),
+ q(0041) => q(COU),
+ q(0042) => q(KMF),
+ q(0043) => q(CDF),
+ q(0044) => q(NZD),
+ q(0045) => q(CRC),
+ q(0046) => q(HRK),
+ q(0047) => q(CUC),
+ q(0048) => q(CUP),
+ q(0049) => q(ANG),
+ q(0050) => q(CZK),
+ q(0051) => q(DKK),
+ q(0052) => q(DJF),
+ q(0053) => q(DOP),
+ q(0054) => q(EGP),
+ q(0055) => q(SVC),
+ q(0056) => q(ERN),
+ q(0057) => q(ETB),
+ q(0058) => q(FKP),
+ q(0059) => q(FJD),
+ q(0060) => q(XPF),
+ q(0061) => q(GMD),
+ q(0062) => q(GEL),
+ q(0063) => q(GHS),
+ q(0064) => q(GIP),
+ q(0065) => q(GTQ),
+ q(0066) => q(GBP),
+ q(0067) => q(GNF),
+ q(0068) => q(GYD),
+ q(0069) => q(HTG),
+ q(0070) => q(HNL),
+ q(0071) => q(HKD),
+ q(0072) => q(HUF),
+ q(0073) => q(ISK),
+ q(0074) => q(IDR),
+ q(0075) => q(IRR),
+ q(0076) => q(IQD),
+ q(0077) => q(ILS),
+ q(0078) => q(JMD),
+ q(0079) => q(JPY),
+ q(0080) => q(JOD),
+ q(0081) => q(KZT),
+ q(0082) => q(KES),
+ q(0083) => q(KPW),
+ q(0084) => q(KRW),
+ q(0085) => q(KWD),
+ q(0086) => q(KGS),
+ q(0087) => q(LAK),
+ q(0088) => q(LVL),
+ q(0089) => q(LBP),
+ q(0090) => q(LSL),
+ q(0091) => q(ZAR),
+ q(0092) => q(LRD),
+ q(0093) => q(LYD),
+ q(0094) => q(CHF),
+ q(0095) => q(LTL),
+ q(0096) => q(MOP),
+ q(0097) => q(MKD),
+ q(0098) => q(MGA),
+ q(0099) => q(MWK),
+ q(0100) => q(MYR),
+ q(0101) => q(MVR),
+ q(0102) => q(MRO),
+ q(0103) => q(MUR),
+ q(0104) => q(MXN),
+ q(0105) => q(MXV),
+ q(0106) => q(MDL),
+ q(0107) => q(MNT),
+ q(0108) => q(MAD),
+ q(0109) => q(MZN),
+ q(0110) => q(MMK),
+ q(0111) => q(NAD),
+ q(0112) => q(NPR),
+ q(0113) => q(NIO),
+ q(0114) => q(NGN),
+ q(0115) => q(OMR),
+ q(0116) => q(PKR),
+ q(0117) => q(PAB),
+ q(0118) => q(PGK),
+ q(0119) => q(PYG),
+ q(0120) => q(PEN),
+ q(0121) => q(PHP),
+ q(0122) => q(PLN),
+ q(0123) => q(QAR),
+ q(0124) => q(RON),
+ q(0125) => q(RUB),
+ q(0126) => q(RWF),
+ q(0127) => q(SHP),
+ q(0128) => q(WST),
+ q(0129) => q(STD),
+ q(0130) => q(SAR),
+ q(0131) => q(RSD),
+ q(0132) => q(SCR),
+ q(0133) => q(SLL),
+ q(0134) => q(SGD),
+ q(0135) => q(XSU),
+ q(0136) => q(SBD),
+ q(0137) => q(SOS),
+ q(0138) => q(LKR),
+ q(0139) => q(SDG),
+ q(0140) => q(SRD),
+ q(0141) => q(SZL),
+ q(0142) => q(SEK),
+ q(0143) => q(CHE),
+ q(0144) => q(CHW),
+ q(0145) => q(SYP),
+ q(0146) => q(TWD),
+ q(0147) => q(TJS),
+ q(0148) => q(TZS),
+ q(0149) => q(THB),
+ q(0150) => q(TOP),
+ q(0151) => q(TTD),
+ q(0152) => q(TND),
+ q(0153) => q(TRY),
+ q(0154) => q(TMT),
+ q(0155) => q(UGX),
+ q(0156) => q(UAH),
+ q(0157) => q(AED),
+ q(0158) => q(USN),
+ q(0159) => q(USS),
+ q(0160) => q(UYI),
+ q(0161) => q(UYU),
+ q(0162) => q(UZS),
+ q(0163) => q(VUV),
+ q(0164) => q(VEF),
+ q(0165) => q(VND),
+ q(0166) => q(YER),
+ q(0167) => q(ZMK),
+ q(0168) => q(ZWL),
+ q(0169) => q(XAU),
+ q(0170) => q(XDR),
+ },
+ q(num) => {
+ q(0001) => q(971),
+ q(0002) => q(978),
+ q(0003) => q(008),
+ q(0004) => q(012),
+ q(0005) => q(840),
+ q(0006) => q(973),
+ q(0007) => q(951),
+ q(0008) => q(032),
+ q(0009) => q(051),
+ q(0010) => q(533),
+ q(0011) => q(036),
+ q(0012) => q(944),
+ q(0013) => q(044),
+ q(0014) => q(048),
+ q(0015) => q(050),
+ q(0016) => q(052),
+ q(0017) => q(974),
+ q(0018) => q(084),
+ q(0019) => q(952),
+ q(0020) => q(060),
+ q(0021) => q(064),
+ q(0022) => q(356),
+ q(0023) => q(068),
+ q(0024) => q(984),
+ q(0025) => q(977),
+ q(0026) => q(072),
+ q(0027) => q(578),
+ q(0028) => q(986),
+ q(0029) => q(096),
+ q(0030) => q(975),
+ q(0031) => q(108),
+ q(0032) => q(116),
+ q(0033) => q(950),
+ q(0034) => q(124),
+ q(0035) => q(132),
+ q(0036) => q(136),
+ q(0037) => q(990),
+ q(0038) => q(152),
+ q(0039) => q(156),
+ q(0040) => q(170),
+ q(0041) => q(970),
+ q(0042) => q(174),
+ q(0043) => q(976),
+ q(0044) => q(554),
+ q(0045) => q(188),
+ q(0046) => q(191),
+ q(0047) => q(931),
+ q(0048) => q(192),
+ q(0049) => q(532),
+ q(0050) => q(203),
+ q(0051) => q(208),
+ q(0052) => q(262),
+ q(0053) => q(214),
+ q(0054) => q(818),
+ q(0055) => q(222),
+ q(0056) => q(232),
+ q(0057) => q(230),
+ q(0058) => q(238),
+ q(0059) => q(242),
+ q(0060) => q(953),
+ q(0061) => q(270),
+ q(0062) => q(981),
+ q(0063) => q(936),
+ q(0064) => q(292),
+ q(0065) => q(320),
+ q(0066) => q(826),
+ q(0067) => q(324),
+ q(0068) => q(328),
+ q(0069) => q(332),
+ q(0070) => q(340),
+ q(0071) => q(344),
+ q(0072) => q(348),
+ q(0073) => q(352),
+ q(0074) => q(360),
+ q(0075) => q(364),
+ q(0076) => q(368),
+ q(0077) => q(376),
+ q(0078) => q(388),
+ q(0079) => q(392),
+ q(0080) => q(400),
+ q(0081) => q(398),
+ q(0082) => q(404),
+ q(0083) => q(408),
+ q(0084) => q(410),
+ q(0085) => q(414),
+ q(0086) => q(417),
+ q(0087) => q(418),
+ q(0088) => q(428),
+ q(0089) => q(422),
+ q(0090) => q(426),
+ q(0091) => q(710),
+ q(0092) => q(430),
+ q(0093) => q(434),
+ q(0094) => q(756),
+ q(0095) => q(440),
+ q(0096) => q(446),
+ q(0097) => q(807),
+ q(0098) => q(969),
+ q(0099) => q(454),
+ q(0100) => q(458),
+ q(0101) => q(462),
+ q(0102) => q(478),
+ q(0103) => q(480),
+ q(0104) => q(484),
+ q(0105) => q(979),
+ q(0106) => q(498),
+ q(0107) => q(496),
+ q(0108) => q(504),
+ q(0109) => q(943),
+ q(0110) => q(104),
+ q(0111) => q(516),
+ q(0112) => q(524),
+ q(0113) => q(558),
+ q(0114) => q(566),
+ q(0115) => q(512),
+ q(0116) => q(586),
+ q(0117) => q(590),
+ q(0118) => q(598),
+ q(0119) => q(600),
+ q(0120) => q(604),
+ q(0121) => q(608),
+ q(0122) => q(985),
+ q(0123) => q(634),
+ q(0124) => q(946),
+ q(0125) => q(643),
+ q(0126) => q(646),
+ q(0127) => q(654),
+ q(0128) => q(882),
+ q(0129) => q(678),
+ q(0130) => q(682),
+ q(0131) => q(941),
+ q(0132) => q(690),
+ q(0133) => q(694),
+ q(0134) => q(702),
+ q(0135) => q(994),
+ q(0136) => q(090),
+ q(0137) => q(706),
+ q(0138) => q(144),
+ q(0139) => q(938),
+ q(0140) => q(968),
+ q(0141) => q(748),
+ q(0142) => q(752),
+ q(0143) => q(947),
+ q(0144) => q(948),
+ q(0145) => q(760),
+ q(0146) => q(901),
+ q(0147) => q(972),
+ q(0148) => q(834),
+ q(0149) => q(764),
+ q(0150) => q(776),
+ q(0151) => q(780),
+ q(0152) => q(788),
+ q(0153) => q(949),
+ q(0154) => q(934),
+ q(0155) => q(800),
+ q(0156) => q(980),
+ q(0157) => q(784),
+ q(0158) => q(997),
+ q(0159) => q(998),
+ q(0160) => q(940),
+ q(0161) => q(858),
+ q(0162) => q(860),
+ q(0163) => q(548),
+ q(0164) => q(937),
+ q(0165) => q(704),
+ q(0166) => q(886),
+ q(0167) => q(894),
+ q(0168) => q(932),
+ q(0169) => q(959),
+ q(0170) => q(960),
+ },
+};
+
+1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes/Language.pm b/Master/tlpkg/tlperl/lib/Locale/Codes/Language.pm
new file mode 100644
index 00000000000..141d72297c9
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes/Language.pm
@@ -0,0 +1,7303 @@
+package Locale::Codes::Language;
+
+# This file was automatically generated. Any changes to this file will
+# be lost the next time 'get_codes' is run.
+# Generated on: Tue Mar 1 13:38:49 EST 2011
+
+=pod
+
+=head1 NAME
+
+Locale::Codes::Language - language codes for the Locale::Language module
+
+=head1 SYNOPSIS
+
+This module contains data used by the Locale::Language module. It is
+not intended to be used directly, and contains no calleable routines.
+
+=head1 AUTHOR
+
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
+
+=head1 COPYRIGHT
+
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
+
+use strict;
+use warnings;
+require 5.002;
+
+our($VERSION);
+$VERSION='3.16';
+
+$Locale::Codes::Data{'language'}{'id'} = '0486';
+
+$Locale::Codes::Data{'language'}{'id2names'} = {
+ q(0001) => [
+ q(Afar),
+ ],
+ q(0002) => [
+ q(Abkhazian),
+ ],
+ q(0003) => [
+ q(Achinese),
+ ],
+ q(0004) => [
+ q(Acoli),
+ ],
+ q(0005) => [
+ q(Adangme),
+ ],
+ q(0006) => [
+ q(Adyghe),
+ q(Adygei),
+ ],
+ q(0007) => [
+ q(Afro-Asiatic languages),
+ ],
+ q(0008) => [
+ q(Afrihili),
+ ],
+ q(0009) => [
+ q(Afrikaans),
+ ],
+ q(0010) => [
+ q(Ainu),
+ ],
+ q(0011) => [
+ q(Akan),
+ ],
+ q(0012) => [
+ q(Akkadian),
+ ],
+ q(0013) => [
+ q(Albanian),
+ ],
+ q(0014) => [
+ q(Aleut),
+ ],
+ q(0015) => [
+ q(Algonquian languages),
+ ],
+ q(0016) => [
+ q(Southern Altai),
+ ],
+ q(0017) => [
+ q(Amharic),
+ ],
+ q(0018) => [
+ q(English, Old (ca.450-1100)),
+ ],
+ q(0019) => [
+ q(Angika),
+ ],
+ q(0020) => [
+ q(Apache languages),
+ ],
+ q(0021) => [
+ q(Arabic),
+ ],
+ q(0022) => [
+ q(Official Aramaic (700-300 BCE)),
+ q(Imperial Aramaic (700-300 BCE)),
+ ],
+ q(0023) => [
+ q(Aragonese),
+ ],
+ q(0024) => [
+ q(Armenian),
+ ],
+ q(0025) => [
+ q(Mapudungun),
+ q(Mapuche),
+ ],
+ q(0026) => [
+ q(Arapaho),
+ ],
+ q(0027) => [
+ q(Artificial languages),
+ ],
+ q(0028) => [
+ q(Arawak),
+ ],
+ q(0029) => [
+ q(Assamese),
+ ],
+ q(0030) => [
+ q(Asturian),
+ q(Bable),
+ q(Leonese),
+ q(Asturleonese),
+ ],
+ q(0031) => [
+ q(Athapascan languages),
+ ],
+ q(0032) => [
+ q(Australian languages),
+ ],
+ q(0033) => [
+ q(Avaric),
+ ],
+ q(0034) => [
+ q(Avestan),
+ ],
+ q(0035) => [
+ q(Awadhi),
+ ],
+ q(0036) => [
+ q(Aymara),
+ ],
+ q(0037) => [
+ q(Azerbaijani),
+ ],
+ q(0038) => [
+ q(Banda languages),
+ ],
+ q(0039) => [
+ q(Bamileke languages),
+ ],
+ q(0040) => [
+ q(Bashkir),
+ ],
+ q(0041) => [
+ q(Baluchi),
+ ],
+ q(0042) => [
+ q(Bambara),
+ ],
+ q(0043) => [
+ q(Balinese),
+ ],
+ q(0044) => [
+ q(Basque),
+ ],
+ q(0045) => [
+ q(Basa),
+ ],
+ q(0046) => [
+ q(Baltic languages),
+ ],
+ q(0047) => [
+ q(Beja),
+ q(Bedawiyet),
+ ],
+ q(0048) => [
+ q(Belarusian),
+ ],
+ q(0049) => [
+ q(Bemba),
+ ],
+ q(0050) => [
+ q(Bengali),
+ ],
+ q(0051) => [
+ q(Berber languages),
+ ],
+ q(0052) => [
+ q(Bhojpuri),
+ ],
+ q(0053) => [
+ q(Bihari languages),
+ ],
+ q(0054) => [
+ q(Bikol),
+ ],
+ q(0055) => [
+ q(Bini),
+ q(Edo),
+ ],
+ q(0056) => [
+ q(Bislama),
+ ],
+ q(0057) => [
+ q(Siksika),
+ ],
+ q(0058) => [
+ q(Bantu (Other)),
+ ],
+ q(0059) => [
+ q(Bosnian),
+ ],
+ q(0060) => [
+ q(Braj),
+ ],
+ q(0061) => [
+ q(Breton),
+ ],
+ q(0062) => [
+ q(Batak languages),
+ ],
+ q(0063) => [
+ q(Buriat),
+ ],
+ q(0064) => [
+ q(Buginese),
+ ],
+ q(0065) => [
+ q(Bulgarian),
+ ],
+ q(0066) => [
+ q(Burmese),
+ ],
+ q(0067) => [
+ q(Blin),
+ q(Bilin),
+ ],
+ q(0068) => [
+ q(Caddo),
+ ],
+ q(0069) => [
+ q(Central American Indian languages),
+ ],
+ q(0070) => [
+ q(Galibi Carib),
+ ],
+ q(0071) => [
+ q(Catalan),
+ q(Valencian),
+ ],
+ q(0072) => [
+ q(Caucasian languages),
+ ],
+ q(0073) => [
+ q(Cebuano),
+ ],
+ q(0074) => [
+ q(Celtic languages),
+ ],
+ q(0075) => [
+ q(Chamorro),
+ ],
+ q(0076) => [
+ q(Chibcha),
+ ],
+ q(0077) => [
+ q(Chechen),
+ ],
+ q(0078) => [
+ q(Chagatai),
+ ],
+ q(0079) => [
+ q(Chinese),
+ ],
+ q(0080) => [
+ q(Chuukese),
+ ],
+ q(0081) => [
+ q(Mari),
+ ],
+ q(0082) => [
+ q(Chinook jargon),
+ ],
+ q(0083) => [
+ q(Choctaw),
+ ],
+ q(0084) => [
+ q(Chipewyan),
+ q(Dene Suline),
+ ],
+ q(0085) => [
+ q(Cherokee),
+ ],
+ q(0086) => [
+ q(Church Slavic),
+ q(Old Slavonic),
+ q(Church Slavonic),
+ q(Old Bulgarian),
+ q(Old Church Slavonic),
+ ],
+ q(0087) => [
+ q(Chuvash),
+ ],
+ q(0088) => [
+ q(Cheyenne),
+ ],
+ q(0089) => [
+ q(Chamic languages),
+ ],
+ q(0090) => [
+ q(Coptic),
+ ],
+ q(0091) => [
+ q(Cornish),
+ ],
+ q(0092) => [
+ q(Corsican),
+ ],
+ q(0093) => [
+ q(Creoles and pidgins, English based),
+ ],
+ q(0094) => [
+ q(Creoles and pidgins, French-based ),
+ ],
+ q(0095) => [
+ q(Creoles and pidgins, Portuguese-based ),
+ ],
+ q(0096) => [
+ q(Cree),
+ ],
+ q(0097) => [
+ q(Crimean Tatar),
+ q(Crimean Turkish),
+ ],
+ q(0098) => [
+ q(Creoles and pidgins ),
+ ],
+ q(0099) => [
+ q(Kashubian),
+ ],
+ q(0100) => [
+ q(Cushitic languages),
+ ],
+ q(0101) => [
+ q(Czech),
+ ],
+ q(0102) => [
+ q(Dakota),
+ ],
+ q(0103) => [
+ q(Danish),
+ ],
+ q(0104) => [
+ q(Dargwa),
+ ],
+ q(0105) => [
+ q(Land Dayak languages),
+ ],
+ q(0106) => [
+ q(Delaware),
+ ],
+ q(0107) => [
+ q(Slave (Athapascan)),
+ ],
+ q(0108) => [
+ q(Dogrib),
+ ],
+ q(0109) => [
+ q(Dinka),
+ ],
+ q(0110) => [
+ q(Divehi),
+ q(Dhivehi),
+ q(Maldivian),
+ ],
+ q(0111) => [
+ q(Dogri),
+ ],
+ q(0112) => [
+ q(Dravidian languages),
+ ],
+ q(0113) => [
+ q(Lower Sorbian),
+ ],
+ q(0114) => [
+ q(Duala),
+ ],
+ q(0115) => [
+ q(Dutch, Middle (ca.1050-1350)),
+ ],
+ q(0116) => [
+ q(Dutch),
+ q(Flemish),
+ ],
+ q(0117) => [
+ q(Dyula),
+ ],
+ q(0118) => [
+ q(Dzongkha),
+ ],
+ q(0119) => [
+ q(Efik),
+ ],
+ q(0120) => [
+ q(Egyptian (Ancient)),
+ ],
+ q(0121) => [
+ q(Ekajuk),
+ ],
+ q(0122) => [
+ q(Elamite),
+ ],
+ q(0123) => [
+ q(English),
+ ],
+ q(0124) => [
+ q(English, Middle (1100-1500)),
+ ],
+ q(0125) => [
+ q(Esperanto),
+ ],
+ q(0126) => [
+ q(Estonian),
+ ],
+ q(0127) => [
+ q(Ewe),
+ ],
+ q(0128) => [
+ q(Ewondo),
+ ],
+ q(0129) => [
+ q(Fang),
+ ],
+ q(0130) => [
+ q(Faroese),
+ ],
+ q(0131) => [
+ q(Fanti),
+ ],
+ q(0132) => [
+ q(Fijian),
+ ],
+ q(0133) => [
+ q(Filipino),
+ q(Pilipino),
+ ],
+ q(0134) => [
+ q(Finnish),
+ ],
+ q(0135) => [
+ q(Finno-Ugrian languages),
+ ],
+ q(0136) => [
+ q(Fon),
+ ],
+ q(0137) => [
+ q(French),
+ ],
+ q(0138) => [
+ q(French, Middle (ca.1400-1600)),
+ ],
+ q(0139) => [
+ q(French, Old (842-ca.1400)),
+ ],
+ q(0140) => [
+ q(Northern Frisian),
+ ],
+ q(0141) => [
+ q(Eastern Frisian),
+ ],
+ q(0142) => [
+ q(Western Frisian),
+ ],
+ q(0143) => [
+ q(Fulah),
+ ],
+ q(0144) => [
+ q(Friulian),
+ ],
+ q(0145) => [
+ q(Ga),
+ ],
+ q(0146) => [
+ q(Gayo),
+ ],
+ q(0147) => [
+ q(Gbaya),
+ ],
+ q(0148) => [
+ q(Germanic languages),
+ ],
+ q(0149) => [
+ q(Georgian),
+ ],
+ q(0150) => [
+ q(German),
+ ],
+ q(0151) => [
+ q(Geez),
+ ],
+ q(0152) => [
+ q(Gilbertese),
+ ],
+ q(0153) => [
+ q(Gaelic),
+ q(Scottish Gaelic),
+ ],
+ q(0154) => [
+ q(Irish),
+ ],
+ q(0155) => [
+ q(Galician),
+ ],
+ q(0156) => [
+ q(Manx),
+ ],
+ q(0157) => [
+ q(German, Middle High (ca.1050-1500)),
+ ],
+ q(0158) => [
+ q(German, Old High (ca.750-1050)),
+ ],
+ q(0159) => [
+ q(Gondi),
+ ],
+ q(0160) => [
+ q(Gorontalo),
+ ],
+ q(0161) => [
+ q(Gothic),
+ ],
+ q(0162) => [
+ q(Grebo),
+ ],
+ q(0163) => [
+ q(Greek, Ancient (to 1453)),
+ ],
+ q(0164) => [
+ q(Greek, Modern (1453-)),
+ q(Greek),
+ ],
+ q(0165) => [
+ q(Guarani),
+ ],
+ q(0166) => [
+ q(Swiss German),
+ q(Alemannic),
+ q(Alsatian),
+ ],
+ q(0167) => [
+ q(Gujarati),
+ ],
+ q(0168) => [
+ q(Gwich'in),
+ ],
+ q(0169) => [
+ q(Haida),
+ ],
+ q(0170) => [
+ q(Haitian),
+ q(Haitian Creole),
+ ],
+ q(0171) => [
+ q(Hausa),
+ ],
+ q(0172) => [
+ q(Hawaiian),
+ ],
+ q(0173) => [
+ q(Hebrew),
+ ],
+ q(0174) => [
+ q(Herero),
+ ],
+ q(0175) => [
+ q(Hiligaynon),
+ ],
+ q(0176) => [
+ q(Himachali languages),
+ q(Western Pahari languages),
+ ],
+ q(0177) => [
+ q(Hindi),
+ ],
+ q(0178) => [
+ q(Hittite),
+ ],
+ q(0179) => [
+ q(Hmong),
+ q(Mong),
+ ],
+ q(0180) => [
+ q(Hiri Motu),
+ ],
+ q(0181) => [
+ q(Croatian),
+ ],
+ q(0182) => [
+ q(Upper Sorbian),
+ ],
+ q(0183) => [
+ q(Hungarian),
+ ],
+ q(0184) => [
+ q(Hupa),
+ ],
+ q(0185) => [
+ q(Iban),
+ ],
+ q(0186) => [
+ q(Igbo),
+ ],
+ q(0187) => [
+ q(Icelandic),
+ ],
+ q(0188) => [
+ q(Ido),
+ ],
+ q(0189) => [
+ q(Sichuan Yi),
+ q(Nuosu),
+ ],
+ q(0190) => [
+ q(Ijo languages),
+ ],
+ q(0191) => [
+ q(Inuktitut),
+ ],
+ q(0192) => [
+ q(Interlingue),
+ q(Occidental),
+ ],
+ q(0193) => [
+ q(Iloko),
+ ],
+ q(0194) => [
+ q(Interlingua (International Auxiliary Language Association)),
+ ],
+ q(0195) => [
+ q(Indic languages),
+ ],
+ q(0196) => [
+ q(Indonesian),
+ ],
+ q(0197) => [
+ q(Indo-European languages),
+ ],
+ q(0198) => [
+ q(Ingush),
+ ],
+ q(0199) => [
+ q(Inupiaq),
+ ],
+ q(0200) => [
+ q(Iranian languages),
+ ],
+ q(0201) => [
+ q(Iroquoian languages),
+ ],
+ q(0202) => [
+ q(Italian),
+ ],
+ q(0203) => [
+ q(Javanese),
+ ],
+ q(0204) => [
+ q(Lojban),
+ ],
+ q(0205) => [
+ q(Japanese),
+ ],
+ q(0206) => [
+ q(Judeo-Persian),
+ ],
+ q(0207) => [
+ q(Judeo-Arabic),
+ ],
+ q(0208) => [
+ q(Kara-Kalpak),
+ ],
+ q(0209) => [
+ q(Kabyle),
+ ],
+ q(0210) => [
+ q(Kachin),
+ q(Jingpho),
+ ],
+ q(0211) => [
+ q(Kalaallisut),
+ q(Greenlandic),
+ ],
+ q(0212) => [
+ q(Kamba),
+ ],
+ q(0213) => [
+ q(Kannada),
+ ],
+ q(0214) => [
+ q(Karen languages),
+ ],
+ q(0215) => [
+ q(Kashmiri),
+ ],
+ q(0216) => [
+ q(Kanuri),
+ ],
+ q(0217) => [
+ q(Kawi),
+ ],
+ q(0218) => [
+ q(Kazakh),
+ ],
+ q(0219) => [
+ q(Kabardian),
+ ],
+ q(0220) => [
+ q(Khasi),
+ ],
+ q(0221) => [
+ q(Khoisan languages),
+ ],
+ q(0222) => [
+ q(Central Khmer),
+ ],
+ q(0223) => [
+ q(Khotanese),
+ q(Sakan),
+ ],
+ q(0224) => [
+ q(Kikuyu),
+ q(Gikuyu),
+ ],
+ q(0225) => [
+ q(Kinyarwanda),
+ ],
+ q(0226) => [
+ q(Kirghiz),
+ q(Kyrgyz),
+ ],
+ q(0227) => [
+ q(Kimbundu),
+ ],
+ q(0228) => [
+ q(Konkani),
+ ],
+ q(0229) => [
+ q(Komi),
+ ],
+ q(0230) => [
+ q(Kongo),
+ ],
+ q(0231) => [
+ q(Korean),
+ ],
+ q(0232) => [
+ q(Kosraean),
+ ],
+ q(0233) => [
+ q(Kpelle),
+ ],
+ q(0234) => [
+ q(Karachay-Balkar),
+ ],
+ q(0235) => [
+ q(Karelian),
+ ],
+ q(0236) => [
+ q(Kru languages),
+ ],
+ q(0237) => [
+ q(Kurukh),
+ ],
+ q(0238) => [
+ q(Kuanyama),
+ q(Kwanyama),
+ ],
+ q(0239) => [
+ q(Kumyk),
+ ],
+ q(0240) => [
+ q(Kurdish),
+ ],
+ q(0241) => [
+ q(Kutenai),
+ ],
+ q(0242) => [
+ q(Ladino),
+ ],
+ q(0243) => [
+ q(Lahnda),
+ ],
+ q(0244) => [
+ q(Lamba),
+ ],
+ q(0245) => [
+ q(Lao),
+ ],
+ q(0246) => [
+ q(Latin),
+ ],
+ q(0247) => [
+ q(Latvian),
+ ],
+ q(0248) => [
+ q(Lezghian),
+ ],
+ q(0249) => [
+ q(Limburgan),
+ q(Limburger),
+ q(Limburgish),
+ ],
+ q(0250) => [
+ q(Lingala),
+ ],
+ q(0251) => [
+ q(Lithuanian),
+ ],
+ q(0252) => [
+ q(Mongo),
+ ],
+ q(0253) => [
+ q(Lozi),
+ ],
+ q(0254) => [
+ q(Luxembourgish),
+ q(Letzeburgesch),
+ ],
+ q(0255) => [
+ q(Luba-Lulua),
+ ],
+ q(0256) => [
+ q(Luba-Katanga),
+ ],
+ q(0257) => [
+ q(Ganda),
+ ],
+ q(0258) => [
+ q(Luiseno),
+ ],
+ q(0259) => [
+ q(Lunda),
+ ],
+ q(0260) => [
+ q(Luo (Kenya and Tanzania)),
+ ],
+ q(0261) => [
+ q(Lushai),
+ ],
+ q(0262) => [
+ q(Macedonian),
+ ],
+ q(0263) => [
+ q(Madurese),
+ ],
+ q(0264) => [
+ q(Magahi),
+ ],
+ q(0265) => [
+ q(Marshallese),
+ ],
+ q(0266) => [
+ q(Maithili),
+ ],
+ q(0267) => [
+ q(Makasar),
+ ],
+ q(0268) => [
+ q(Malayalam),
+ ],
+ q(0269) => [
+ q(Mandingo),
+ ],
+ q(0270) => [
+ q(Maori),
+ ],
+ q(0271) => [
+ q(Austronesian languages),
+ ],
+ q(0272) => [
+ q(Marathi),
+ ],
+ q(0273) => [
+ q(Masai),
+ ],
+ q(0274) => [
+ q(Malay),
+ ],
+ q(0275) => [
+ q(Moksha),
+ ],
+ q(0276) => [
+ q(Mandar),
+ ],
+ q(0277) => [
+ q(Mende),
+ ],
+ q(0278) => [
+ q(Irish, Middle (900-1200)),
+ ],
+ q(0279) => [
+ q(Mi'kmaq),
+ q(Micmac),
+ ],
+ q(0280) => [
+ q(Minangkabau),
+ ],
+ q(0281) => [
+ q(Uncoded languages),
+ ],
+ q(0282) => [
+ q(Mon-Khmer languages),
+ ],
+ q(0283) => [
+ q(Malagasy),
+ ],
+ q(0284) => [
+ q(Maltese),
+ ],
+ q(0285) => [
+ q(Manchu),
+ ],
+ q(0286) => [
+ q(Manipuri),
+ ],
+ q(0287) => [
+ q(Manobo languages),
+ ],
+ q(0288) => [
+ q(Mohawk),
+ ],
+ q(0289) => [
+ q(Mongolian),
+ ],
+ q(0290) => [
+ q(Mossi),
+ ],
+ q(0291) => [
+ q(Multiple languages),
+ ],
+ q(0292) => [
+ q(Munda languages),
+ ],
+ q(0293) => [
+ q(Creek),
+ ],
+ q(0294) => [
+ q(Mirandese),
+ ],
+ q(0295) => [
+ q(Marwari),
+ ],
+ q(0296) => [
+ q(Mayan languages),
+ ],
+ q(0297) => [
+ q(Erzya),
+ ],
+ q(0298) => [
+ q(Nahuatl languages),
+ ],
+ q(0299) => [
+ q(North American Indian languages),
+ ],
+ q(0300) => [
+ q(Neapolitan),
+ ],
+ q(0301) => [
+ q(Nauru),
+ ],
+ q(0302) => [
+ q(Navajo),
+ q(Navaho),
+ ],
+ q(0303) => [
+ q(Ndebele, South),
+ q(South Ndebele),
+ ],
+ q(0304) => [
+ q(Ndebele, North),
+ q(North Ndebele),
+ ],
+ q(0305) => [
+ q(Ndonga),
+ ],
+ q(0306) => [
+ q(Low German),
+ q(Low Saxon),
+ q(German, Low),
+ q(Saxon, Low),
+ ],
+ q(0307) => [
+ q(Nepali),
+ ],
+ q(0308) => [
+ q(Nepal Bhasa),
+ q(Newari),
+ ],
+ q(0309) => [
+ q(Nias),
+ ],
+ q(0310) => [
+ q(Niger-Kordofanian languages),
+ ],
+ q(0311) => [
+ q(Niuean),
+ ],
+ q(0312) => [
+ q(Norwegian Nynorsk),
+ q(Nynorsk, Norwegian),
+ ],
+ q(0313) => [
+ q(Bokmal, Norwegian),
+ q(Norwegian Bokmal),
+ ],
+ q(0314) => [
+ q(Nogai),
+ ],
+ q(0315) => [
+ q(Norse, Old),
+ ],
+ q(0316) => [
+ q(Norwegian),
+ ],
+ q(0317) => [
+ q(N'Ko),
+ ],
+ q(0318) => [
+ q(Pedi),
+ q(Sepedi),
+ q(Northern Sotho),
+ ],
+ q(0319) => [
+ q(Nubian languages),
+ ],
+ q(0320) => [
+ q(Classical Newari),
+ q(Old Newari),
+ q(Classical Nepal Bhasa),
+ ],
+ q(0321) => [
+ q(Chichewa),
+ q(Chewa),
+ q(Nyanja),
+ ],
+ q(0322) => [
+ q(Nyamwezi),
+ ],
+ q(0323) => [
+ q(Nyankole),
+ ],
+ q(0324) => [
+ q(Nyoro),
+ ],
+ q(0325) => [
+ q(Nzima),
+ ],
+ q(0326) => [
+ q(Occitan (post 1500)),
+ q(Provencal),
+ ],
+ q(0327) => [
+ q(Ojibwa),
+ ],
+ q(0328) => [
+ q(Oriya),
+ ],
+ q(0329) => [
+ q(Oromo),
+ ],
+ q(0330) => [
+ q(Osage),
+ ],
+ q(0331) => [
+ q(Ossetian),
+ q(Ossetic),
+ ],
+ q(0332) => [
+ q(Turkish, Ottoman (1500-1928)),
+ ],
+ q(0333) => [
+ q(Otomian languages),
+ ],
+ q(0334) => [
+ q(Papuan languages),
+ ],
+ q(0335) => [
+ q(Pangasinan),
+ ],
+ q(0336) => [
+ q(Pahlavi),
+ ],
+ q(0337) => [
+ q(Pampanga),
+ q(Kapampangan),
+ ],
+ q(0338) => [
+ q(Panjabi),
+ q(Punjabi),
+ ],
+ q(0339) => [
+ q(Papiamento),
+ ],
+ q(0340) => [
+ q(Palauan),
+ ],
+ q(0341) => [
+ q(Persian, Old (ca.600-400 B.C.)),
+ ],
+ q(0342) => [
+ q(Persian),
+ ],
+ q(0343) => [
+ q(Philippine languages),
+ ],
+ q(0344) => [
+ q(Phoenician),
+ ],
+ q(0345) => [
+ q(Pali),
+ ],
+ q(0346) => [
+ q(Polish),
+ ],
+ q(0347) => [
+ q(Pohnpeian),
+ ],
+ q(0348) => [
+ q(Portuguese),
+ ],
+ q(0349) => [
+ q(Prakrit languages),
+ ],
+ q(0350) => [
+ q(Provencal, Old (to 1500)),
+ ],
+ q(0351) => [
+ q(Pushto),
+ q(Pashto),
+ ],
+ q(0352) => [
+ q(Reserved for local use),
+ ],
+ q(0353) => [
+ q(Quechua),
+ ],
+ q(0354) => [
+ q(Rajasthani),
+ ],
+ q(0355) => [
+ q(Rapanui),
+ ],
+ q(0356) => [
+ q(Rarotongan),
+ q(Cook Islands Maori),
+ ],
+ q(0357) => [
+ q(Romance languages),
+ ],
+ q(0358) => [
+ q(Romansh),
+ ],
+ q(0359) => [
+ q(Romany),
+ ],
+ q(0360) => [
+ q(Romanian),
+ q(Moldavian),
+ q(Moldovan),
+ ],
+ q(0361) => [
+ q(Rundi),
+ ],
+ q(0362) => [
+ q(Aromanian),
+ q(Arumanian),
+ q(Macedo-Romanian),
+ ],
+ q(0363) => [
+ q(Russian),
+ ],
+ q(0364) => [
+ q(Sandawe),
+ ],
+ q(0365) => [
+ q(Sango),
+ ],
+ q(0366) => [
+ q(Yakut),
+ ],
+ q(0367) => [
+ q(South American Indian (Other)),
+ ],
+ q(0368) => [
+ q(Salishan languages),
+ ],
+ q(0369) => [
+ q(Samaritan Aramaic),
+ ],
+ q(0370) => [
+ q(Sanskrit),
+ ],
+ q(0371) => [
+ q(Sasak),
+ ],
+ q(0372) => [
+ q(Santali),
+ ],
+ q(0373) => [
+ q(Sicilian),
+ ],
+ q(0374) => [
+ q(Scots),
+ ],
+ q(0375) => [
+ q(Selkup),
+ ],
+ q(0376) => [
+ q(Semitic languages),
+ ],
+ q(0377) => [
+ q(Irish, Old (to 900)),
+ ],
+ q(0378) => [
+ q(Sign Languages),
+ ],
+ q(0379) => [
+ q(Shan),
+ ],
+ q(0380) => [
+ q(Sidamo),
+ ],
+ q(0381) => [
+ q(Sinhala),
+ q(Sinhalese),
+ ],
+ q(0382) => [
+ q(Siouan languages),
+ ],
+ q(0383) => [
+ q(Sino-Tibetan languages),
+ ],
+ q(0384) => [
+ q(Slavic languages),
+ ],
+ q(0385) => [
+ q(Slovak),
+ ],
+ q(0386) => [
+ q(Slovenian),
+ ],
+ q(0387) => [
+ q(Southern Sami),
+ ],
+ q(0388) => [
+ q(Northern Sami),
+ ],
+ q(0389) => [
+ q(Sami languages),
+ ],
+ q(0390) => [
+ q(Lule Sami),
+ ],
+ q(0391) => [
+ q(Inari Sami),
+ ],
+ q(0392) => [
+ q(Samoan),
+ ],
+ q(0393) => [
+ q(Skolt Sami),
+ ],
+ q(0394) => [
+ q(Shona),
+ ],
+ q(0395) => [
+ q(Sindhi),
+ ],
+ q(0396) => [
+ q(Soninke),
+ ],
+ q(0397) => [
+ q(Sogdian),
+ ],
+ q(0398) => [
+ q(Somali),
+ ],
+ q(0399) => [
+ q(Songhai languages),
+ ],
+ q(0400) => [
+ q(Sotho, Southern),
+ ],
+ q(0401) => [
+ q(Spanish),
+ q(Castilian),
+ ],
+ q(0402) => [
+ q(Sardinian),
+ ],
+ q(0403) => [
+ q(Sranan Tongo),
+ ],
+ q(0404) => [
+ q(Serbian),
+ ],
+ q(0405) => [
+ q(Serer),
+ ],
+ q(0406) => [
+ q(Nilo-Saharan languages),
+ ],
+ q(0407) => [
+ q(Swati),
+ ],
+ q(0408) => [
+ q(Sukuma),
+ ],
+ q(0409) => [
+ q(Sundanese),
+ ],
+ q(0410) => [
+ q(Susu),
+ ],
+ q(0411) => [
+ q(Sumerian),
+ ],
+ q(0412) => [
+ q(Swahili),
+ ],
+ q(0413) => [
+ q(Swedish),
+ ],
+ q(0414) => [
+ q(Classical Syriac),
+ ],
+ q(0415) => [
+ q(Syriac),
+ ],
+ q(0416) => [
+ q(Tahitian),
+ ],
+ q(0417) => [
+ q(Tai languages),
+ ],
+ q(0418) => [
+ q(Tamil),
+ ],
+ q(0419) => [
+ q(Tatar),
+ ],
+ q(0420) => [
+ q(Telugu),
+ ],
+ q(0421) => [
+ q(Timne),
+ ],
+ q(0422) => [
+ q(Tereno),
+ ],
+ q(0423) => [
+ q(Tetum),
+ ],
+ q(0424) => [
+ q(Tajik),
+ ],
+ q(0425) => [
+ q(Tagalog),
+ ],
+ q(0426) => [
+ q(Thai),
+ ],
+ q(0427) => [
+ q(Tibetan),
+ ],
+ q(0428) => [
+ q(Tigre),
+ ],
+ q(0429) => [
+ q(Tigrinya),
+ ],
+ q(0430) => [
+ q(Tiv),
+ ],
+ q(0431) => [
+ q(Tokelau),
+ ],
+ q(0432) => [
+ q(Klingon),
+ q(tlhIngan-Hol),
+ ],
+ q(0433) => [
+ q(Tlingit),
+ ],
+ q(0434) => [
+ q(Tamashek),
+ ],
+ q(0435) => [
+ q(Tonga (Nyasa)),
+ ],
+ q(0436) => [
+ q(Tonga (Tonga Islands)),
+ q(Tonga),
+ ],
+ q(0437) => [
+ q(Tok Pisin),
+ ],
+ q(0438) => [
+ q(Tsimshian),
+ ],
+ q(0439) => [
+ q(Tswana),
+ ],
+ q(0440) => [
+ q(Tsonga),
+ ],
+ q(0441) => [
+ q(Turkmen),
+ ],
+ q(0442) => [
+ q(Tumbuka),
+ ],
+ q(0443) => [
+ q(Tupi languages),
+ ],
+ q(0444) => [
+ q(Turkish),
+ ],
+ q(0445) => [
+ q(Altaic languages),
+ ],
+ q(0446) => [
+ q(Tuvalu),
+ ],
+ q(0447) => [
+ q(Twi),
+ ],
+ q(0448) => [
+ q(Tuvinian),
+ ],
+ q(0449) => [
+ q(Udmurt),
+ ],
+ q(0450) => [
+ q(Ugaritic),
+ ],
+ q(0451) => [
+ q(Uighur),
+ q(Uyghur),
+ ],
+ q(0452) => [
+ q(Ukrainian),
+ ],
+ q(0453) => [
+ q(Umbundu),
+ ],
+ q(0454) => [
+ q(Undetermined),
+ ],
+ q(0455) => [
+ q(Urdu),
+ ],
+ q(0456) => [
+ q(Uzbek),
+ ],
+ q(0457) => [
+ q(Vai),
+ ],
+ q(0458) => [
+ q(Venda),
+ ],
+ q(0459) => [
+ q(Vietnamese),
+ ],
+ q(0460) => [
+ q(Volapuk),
+ ],
+ q(0461) => [
+ q(Votic),
+ ],
+ q(0462) => [
+ q(Wakashan languages),
+ ],
+ q(0463) => [
+ q(Walamo),
+ ],
+ q(0464) => [
+ q(Waray),
+ ],
+ q(0465) => [
+ q(Washo),
+ ],
+ q(0466) => [
+ q(Welsh),
+ ],
+ q(0467) => [
+ q(Sorbian languages),
+ ],
+ q(0468) => [
+ q(Walloon),
+ ],
+ q(0469) => [
+ q(Wolof),
+ ],
+ q(0470) => [
+ q(Kalmyk),
+ q(Oirat),
+ ],
+ q(0471) => [
+ q(Xhosa),
+ ],
+ q(0472) => [
+ q(Yao),
+ ],
+ q(0473) => [
+ q(Yapese),
+ ],
+ q(0474) => [
+ q(Yiddish),
+ ],
+ q(0475) => [
+ q(Yoruba),
+ ],
+ q(0476) => [
+ q(Yupik languages),
+ ],
+ q(0477) => [
+ q(Zapotec),
+ ],
+ q(0478) => [
+ q(Blissymbols),
+ q(Blissymbolics),
+ q(Bliss),
+ ],
+ q(0479) => [
+ q(Zenaga),
+ ],
+ q(0480) => [
+ q(Zhuang),
+ q(Chuang),
+ ],
+ q(0481) => [
+ q(Zande languages),
+ ],
+ q(0482) => [
+ q(Zulu),
+ ],
+ q(0483) => [
+ q(Zuni),
+ ],
+ q(0484) => [
+ q(No linguistic content),
+ q(Not applicable),
+ ],
+ q(0485) => [
+ q(Zaza),
+ q(Dimili),
+ q(Dimli),
+ q(Kirdki),
+ q(Kirmanjki),
+ q(Zazaki),
+ ],
+};
+
+$Locale::Codes::Data{'language'}{'alias2id'} = {
+ q(abkhazian) => [
+ q(0002),
+ q(0),
+ ],
+ q(achinese) => [
+ q(0003),
+ q(0),
+ ],
+ q(acoli) => [
+ q(0004),
+ q(0),
+ ],
+ q(adangme) => [
+ q(0005),
+ q(0),
+ ],
+ q(adygei) => [
+ q(0006),
+ q(1),
+ ],
+ q(adyghe) => [
+ q(0006),
+ q(0),
+ ],
+ q(afar) => [
+ q(0001),
+ q(0),
+ ],
+ q(afrihili) => [
+ q(0008),
+ q(0),
+ ],
+ q(afrikaans) => [
+ q(0009),
+ q(0),
+ ],
+ q(afro-asiatic languages) => [
+ q(0007),
+ q(0),
+ ],
+ q(ainu) => [
+ q(0010),
+ q(0),
+ ],
+ q(akan) => [
+ q(0011),
+ q(0),
+ ],
+ q(akkadian) => [
+ q(0012),
+ q(0),
+ ],
+ q(albanian) => [
+ q(0013),
+ q(0),
+ ],
+ q(alemannic) => [
+ q(0166),
+ q(1),
+ ],
+ q(aleut) => [
+ q(0014),
+ q(0),
+ ],
+ q(algonquian languages) => [
+ q(0015),
+ q(0),
+ ],
+ q(alsatian) => [
+ q(0166),
+ q(2),
+ ],
+ q(altaic languages) => [
+ q(0445),
+ q(0),
+ ],
+ q(amharic) => [
+ q(0017),
+ q(0),
+ ],
+ q(angika) => [
+ q(0019),
+ q(0),
+ ],
+ q(apache languages) => [
+ q(0020),
+ q(0),
+ ],
+ q(arabic) => [
+ q(0021),
+ q(0),
+ ],
+ q(aragonese) => [
+ q(0023),
+ q(0),
+ ],
+ q(arapaho) => [
+ q(0026),
+ q(0),
+ ],
+ q(arawak) => [
+ q(0028),
+ q(0),
+ ],
+ q(armenian) => [
+ q(0024),
+ q(0),
+ ],
+ q(aromanian) => [
+ q(0362),
+ q(0),
+ ],
+ q(artificial languages) => [
+ q(0027),
+ q(0),
+ ],
+ q(arumanian) => [
+ q(0362),
+ q(1),
+ ],
+ q(assamese) => [
+ q(0029),
+ q(0),
+ ],
+ q(asturian) => [
+ q(0030),
+ q(0),
+ ],
+ q(asturleonese) => [
+ q(0030),
+ q(3),
+ ],
+ q(athapascan languages) => [
+ q(0031),
+ q(0),
+ ],
+ q(australian languages) => [
+ q(0032),
+ q(0),
+ ],
+ q(austronesian languages) => [
+ q(0271),
+ q(0),
+ ],
+ q(avaric) => [
+ q(0033),
+ q(0),
+ ],
+ q(avestan) => [
+ q(0034),
+ q(0),
+ ],
+ q(awadhi) => [
+ q(0035),
+ q(0),
+ ],
+ q(aymara) => [
+ q(0036),
+ q(0),
+ ],
+ q(azerbaijani) => [
+ q(0037),
+ q(0),
+ ],
+ q(bable) => [
+ q(0030),
+ q(1),
+ ],
+ q(balinese) => [
+ q(0043),
+ q(0),
+ ],
+ q(baltic languages) => [
+ q(0046),
+ q(0),
+ ],
+ q(baluchi) => [
+ q(0041),
+ q(0),
+ ],
+ q(bambara) => [
+ q(0042),
+ q(0),
+ ],
+ q(bamileke languages) => [
+ q(0039),
+ q(0),
+ ],
+ q(banda languages) => [
+ q(0038),
+ q(0),
+ ],
+ q(bantu (other)) => [
+ q(0058),
+ q(0),
+ ],
+ q(basa) => [
+ q(0045),
+ q(0),
+ ],
+ q(bashkir) => [
+ q(0040),
+ q(0),
+ ],
+ q(basque) => [
+ q(0044),
+ q(0),
+ ],
+ q(batak languages) => [
+ q(0062),
+ q(0),
+ ],
+ q(bedawiyet) => [
+ q(0047),
+ q(1),
+ ],
+ q(beja) => [
+ q(0047),
+ q(0),
+ ],
+ q(belarusian) => [
+ q(0048),
+ q(0),
+ ],
+ q(bemba) => [
+ q(0049),
+ q(0),
+ ],
+ q(bengali) => [
+ q(0050),
+ q(0),
+ ],
+ q(berber languages) => [
+ q(0051),
+ q(0),
+ ],
+ q(bhojpuri) => [
+ q(0052),
+ q(0),
+ ],
+ q(bihari languages) => [
+ q(0053),
+ q(0),
+ ],
+ q(bikol) => [
+ q(0054),
+ q(0),
+ ],
+ q(bilin) => [
+ q(0067),
+ q(1),
+ ],
+ q(bini) => [
+ q(0055),
+ q(0),
+ ],
+ q(bislama) => [
+ q(0056),
+ q(0),
+ ],
+ q(blin) => [
+ q(0067),
+ q(0),
+ ],
+ q(bliss) => [
+ q(0478),
+ q(2),
+ ],
+ q(blissymbolics) => [
+ q(0478),
+ q(1),
+ ],
+ q(blissymbols) => [
+ q(0478),
+ q(0),
+ ],
+ q(bokmal, norwegian) => [
+ q(0313),
+ q(0),
+ ],
+ q(bosnian) => [
+ q(0059),
+ q(0),
+ ],
+ q(braj) => [
+ q(0060),
+ q(0),
+ ],
+ q(breton) => [
+ q(0061),
+ q(0),
+ ],
+ q(buginese) => [
+ q(0064),
+ q(0),
+ ],
+ q(bulgarian) => [
+ q(0065),
+ q(0),
+ ],
+ q(buriat) => [
+ q(0063),
+ q(0),
+ ],
+ q(burmese) => [
+ q(0066),
+ q(0),
+ ],
+ q(caddo) => [
+ q(0068),
+ q(0),
+ ],
+ q(castilian) => [
+ q(0401),
+ q(1),
+ ],
+ q(catalan) => [
+ q(0071),
+ q(0),
+ ],
+ q(caucasian languages) => [
+ q(0072),
+ q(0),
+ ],
+ q(cebuano) => [
+ q(0073),
+ q(0),
+ ],
+ q(celtic languages) => [
+ q(0074),
+ q(0),
+ ],
+ q(central american indian languages) => [
+ q(0069),
+ q(0),
+ ],
+ q(central khmer) => [
+ q(0222),
+ q(0),
+ ],
+ q(chagatai) => [
+ q(0078),
+ q(0),
+ ],
+ q(chamic languages) => [
+ q(0089),
+ q(0),
+ ],
+ q(chamorro) => [
+ q(0075),
+ q(0),
+ ],
+ q(chechen) => [
+ q(0077),
+ q(0),
+ ],
+ q(cherokee) => [
+ q(0085),
+ q(0),
+ ],
+ q(chewa) => [
+ q(0321),
+ q(1),
+ ],
+ q(cheyenne) => [
+ q(0088),
+ q(0),
+ ],
+ q(chibcha) => [
+ q(0076),
+ q(0),
+ ],
+ q(chichewa) => [
+ q(0321),
+ q(0),
+ ],
+ q(chinese) => [
+ q(0079),
+ q(0),
+ ],
+ q(chinook jargon) => [
+ q(0082),
+ q(0),
+ ],
+ q(chipewyan) => [
+ q(0084),
+ q(0),
+ ],
+ q(choctaw) => [
+ q(0083),
+ q(0),
+ ],
+ q(chuang) => [
+ q(0480),
+ q(1),
+ ],
+ q(church slavic) => [
+ q(0086),
+ q(0),
+ ],
+ q(church slavonic) => [
+ q(0086),
+ q(2),
+ ],
+ q(chuukese) => [
+ q(0080),
+ q(0),
+ ],
+ q(chuvash) => [
+ q(0087),
+ q(0),
+ ],
+ q(classical nepal bhasa) => [
+ q(0320),
+ q(2),
+ ],
+ q(classical newari) => [
+ q(0320),
+ q(0),
+ ],
+ q(classical syriac) => [
+ q(0414),
+ q(0),
+ ],
+ q(cook islands maori) => [
+ q(0356),
+ q(1),
+ ],
+ q(coptic) => [
+ q(0090),
+ q(0),
+ ],
+ q(cornish) => [
+ q(0091),
+ q(0),
+ ],
+ q(corsican) => [
+ q(0092),
+ q(0),
+ ],
+ q(cree) => [
+ q(0096),
+ q(0),
+ ],
+ q(creek) => [
+ q(0293),
+ q(0),
+ ],
+ q(creoles and pidgins ) => [
+ q(0098),
+ q(0),
+ ],
+ q(creoles and pidgins, english based) => [
+ q(0093),
+ q(0),
+ ],
+ q(creoles and pidgins, french-based ) => [
+ q(0094),
+ q(0),
+ ],
+ q(creoles and pidgins, portuguese-based ) => [
+ q(0095),
+ q(0),
+ ],
+ q(crimean tatar) => [
+ q(0097),
+ q(0),
+ ],
+ q(crimean turkish) => [
+ q(0097),
+ q(1),
+ ],
+ q(croatian) => [
+ q(0181),
+ q(0),
+ ],
+ q(cushitic languages) => [
+ q(0100),
+ q(0),
+ ],
+ q(czech) => [
+ q(0101),
+ q(0),
+ ],
+ q(dakota) => [
+ q(0102),
+ q(0),
+ ],
+ q(danish) => [
+ q(0103),
+ q(0),
+ ],
+ q(dargwa) => [
+ q(0104),
+ q(0),
+ ],
+ q(delaware) => [
+ q(0106),
+ q(0),
+ ],
+ q(dene suline) => [
+ q(0084),
+ q(1),
+ ],
+ q(dhivehi) => [
+ q(0110),
+ q(1),
+ ],
+ q(dimili) => [
+ q(0485),
+ q(1),
+ ],
+ q(dimli) => [
+ q(0485),
+ q(2),
+ ],
+ q(dinka) => [
+ q(0109),
+ q(0),
+ ],
+ q(divehi) => [
+ q(0110),
+ q(0),
+ ],
+ q(dogri) => [
+ q(0111),
+ q(0),
+ ],
+ q(dogrib) => [
+ q(0108),
+ q(0),
+ ],
+ q(dravidian languages) => [
+ q(0112),
+ q(0),
+ ],
+ q(duala) => [
+ q(0114),
+ q(0),
+ ],
+ q(dutch) => [
+ q(0116),
+ q(0),
+ ],
+ q(dutch, middle (ca.1050-1350)) => [
+ q(0115),
+ q(0),
+ ],
+ q(dyula) => [
+ q(0117),
+ q(0),
+ ],
+ q(dzongkha) => [
+ q(0118),
+ q(0),
+ ],
+ q(eastern frisian) => [
+ q(0141),
+ q(0),
+ ],
+ q(edo) => [
+ q(0055),
+ q(1),
+ ],
+ q(efik) => [
+ q(0119),
+ q(0),
+ ],
+ q(egyptian (ancient)) => [
+ q(0120),
+ q(0),
+ ],
+ q(ekajuk) => [
+ q(0121),
+ q(0),
+ ],
+ q(elamite) => [
+ q(0122),
+ q(0),
+ ],
+ q(english) => [
+ q(0123),
+ q(0),
+ ],
+ q(english, middle (1100-1500)) => [
+ q(0124),
+ q(0),
+ ],
+ q(english, old (ca.450-1100)) => [
+ q(0018),
+ q(0),
+ ],
+ q(erzya) => [
+ q(0297),
+ q(0),
+ ],
+ q(esperanto) => [
+ q(0125),
+ q(0),
+ ],
+ q(estonian) => [
+ q(0126),
+ q(0),
+ ],
+ q(ewe) => [
+ q(0127),
+ q(0),
+ ],
+ q(ewondo) => [
+ q(0128),
+ q(0),
+ ],
+ q(fang) => [
+ q(0129),
+ q(0),
+ ],
+ q(fanti) => [
+ q(0131),
+ q(0),
+ ],
+ q(faroese) => [
+ q(0130),
+ q(0),
+ ],
+ q(fijian) => [
+ q(0132),
+ q(0),
+ ],
+ q(filipino) => [
+ q(0133),
+ q(0),
+ ],
+ q(finnish) => [
+ q(0134),
+ q(0),
+ ],
+ q(finno-ugrian languages) => [
+ q(0135),
+ q(0),
+ ],
+ q(flemish) => [
+ q(0116),
+ q(1),
+ ],
+ q(fon) => [
+ q(0136),
+ q(0),
+ ],
+ q(french) => [
+ q(0137),
+ q(0),
+ ],
+ q(french, middle (ca.1400-1600)) => [
+ q(0138),
+ q(0),
+ ],
+ q(french, old (842-ca.1400)) => [
+ q(0139),
+ q(0),
+ ],
+ q(friulian) => [
+ q(0144),
+ q(0),
+ ],
+ q(fulah) => [
+ q(0143),
+ q(0),
+ ],
+ q(ga) => [
+ q(0145),
+ q(0),
+ ],
+ q(gaelic) => [
+ q(0153),
+ q(0),
+ ],
+ q(galibi carib) => [
+ q(0070),
+ q(0),
+ ],
+ q(galician) => [
+ q(0155),
+ q(0),
+ ],
+ q(ganda) => [
+ q(0257),
+ q(0),
+ ],
+ q(gayo) => [
+ q(0146),
+ q(0),
+ ],
+ q(gbaya) => [
+ q(0147),
+ q(0),
+ ],
+ q(geez) => [
+ q(0151),
+ q(0),
+ ],
+ q(georgian) => [
+ q(0149),
+ q(0),
+ ],
+ q(german) => [
+ q(0150),
+ q(0),
+ ],
+ q(german, low) => [
+ q(0306),
+ q(2),
+ ],
+ q(german, middle high (ca.1050-1500)) => [
+ q(0157),
+ q(0),
+ ],
+ q(german, old high (ca.750-1050)) => [
+ q(0158),
+ q(0),
+ ],
+ q(germanic languages) => [
+ q(0148),
+ q(0),
+ ],
+ q(gikuyu) => [
+ q(0224),
+ q(1),
+ ],
+ q(gilbertese) => [
+ q(0152),
+ q(0),
+ ],
+ q(gondi) => [
+ q(0159),
+ q(0),
+ ],
+ q(gorontalo) => [
+ q(0160),
+ q(0),
+ ],
+ q(gothic) => [
+ q(0161),
+ q(0),
+ ],
+ q(grebo) => [
+ q(0162),
+ q(0),
+ ],
+ q(greek) => [
+ q(0164),
+ q(1),
+ ],
+ q(greek, ancient (to 1453)) => [
+ q(0163),
+ q(0),
+ ],
+ q(greek, modern (1453-)) => [
+ q(0164),
+ q(0),
+ ],
+ q(greenlandic) => [
+ q(0211),
+ q(1),
+ ],
+ q(guarani) => [
+ q(0165),
+ q(0),
+ ],
+ q(gujarati) => [
+ q(0167),
+ q(0),
+ ],
+ q(gwich'in) => [
+ q(0168),
+ q(0),
+ ],
+ q(haida) => [
+ q(0169),
+ q(0),
+ ],
+ q(haitian) => [
+ q(0170),
+ q(0),
+ ],
+ q(haitian creole) => [
+ q(0170),
+ q(1),
+ ],
+ q(hausa) => [
+ q(0171),
+ q(0),
+ ],
+ q(hawaiian) => [
+ q(0172),
+ q(0),
+ ],
+ q(hebrew) => [
+ q(0173),
+ q(0),
+ ],
+ q(herero) => [
+ q(0174),
+ q(0),
+ ],
+ q(hiligaynon) => [
+ q(0175),
+ q(0),
+ ],
+ q(himachali languages) => [
+ q(0176),
+ q(0),
+ ],
+ q(hindi) => [
+ q(0177),
+ q(0),
+ ],
+ q(hiri motu) => [
+ q(0180),
+ q(0),
+ ],
+ q(hittite) => [
+ q(0178),
+ q(0),
+ ],
+ q(hmong) => [
+ q(0179),
+ q(0),
+ ],
+ q(hungarian) => [
+ q(0183),
+ q(0),
+ ],
+ q(hupa) => [
+ q(0184),
+ q(0),
+ ],
+ q(iban) => [
+ q(0185),
+ q(0),
+ ],
+ q(icelandic) => [
+ q(0187),
+ q(0),
+ ],
+ q(ido) => [
+ q(0188),
+ q(0),
+ ],
+ q(igbo) => [
+ q(0186),
+ q(0),
+ ],
+ q(ijo languages) => [
+ q(0190),
+ q(0),
+ ],
+ q(iloko) => [
+ q(0193),
+ q(0),
+ ],
+ q(imperial aramaic (700-300 bce)) => [
+ q(0022),
+ q(1),
+ ],
+ q(inari sami) => [
+ q(0391),
+ q(0),
+ ],
+ q(indic languages) => [
+ q(0195),
+ q(0),
+ ],
+ q(indo-european languages) => [
+ q(0197),
+ q(0),
+ ],
+ q(indonesian) => [
+ q(0196),
+ q(0),
+ ],
+ q(ingush) => [
+ q(0198),
+ q(0),
+ ],
+ q(interlingua (international auxiliary language association)) => [
+ q(0194),
+ q(0),
+ ],
+ q(interlingue) => [
+ q(0192),
+ q(0),
+ ],
+ q(inuktitut) => [
+ q(0191),
+ q(0),
+ ],
+ q(inupiaq) => [
+ q(0199),
+ q(0),
+ ],
+ q(iranian languages) => [
+ q(0200),
+ q(0),
+ ],
+ q(irish) => [
+ q(0154),
+ q(0),
+ ],
+ q(irish, middle (900-1200)) => [
+ q(0278),
+ q(0),
+ ],
+ q(irish, old (to 900)) => [
+ q(0377),
+ q(0),
+ ],
+ q(iroquoian languages) => [
+ q(0201),
+ q(0),
+ ],
+ q(italian) => [
+ q(0202),
+ q(0),
+ ],
+ q(japanese) => [
+ q(0205),
+ q(0),
+ ],
+ q(javanese) => [
+ q(0203),
+ q(0),
+ ],
+ q(jingpho) => [
+ q(0210),
+ q(1),
+ ],
+ q(judeo-arabic) => [
+ q(0207),
+ q(0),
+ ],
+ q(judeo-persian) => [
+ q(0206),
+ q(0),
+ ],
+ q(kabardian) => [
+ q(0219),
+ q(0),
+ ],
+ q(kabyle) => [
+ q(0209),
+ q(0),
+ ],
+ q(kachin) => [
+ q(0210),
+ q(0),
+ ],
+ q(kalaallisut) => [
+ q(0211),
+ q(0),
+ ],
+ q(kalmyk) => [
+ q(0470),
+ q(0),
+ ],
+ q(kamba) => [
+ q(0212),
+ q(0),
+ ],
+ q(kannada) => [
+ q(0213),
+ q(0),
+ ],
+ q(kanuri) => [
+ q(0216),
+ q(0),
+ ],
+ q(kapampangan) => [
+ q(0337),
+ q(1),
+ ],
+ q(kara-kalpak) => [
+ q(0208),
+ q(0),
+ ],
+ q(karachay-balkar) => [
+ q(0234),
+ q(0),
+ ],
+ q(karelian) => [
+ q(0235),
+ q(0),
+ ],
+ q(karen languages) => [
+ q(0214),
+ q(0),
+ ],
+ q(kashmiri) => [
+ q(0215),
+ q(0),
+ ],
+ q(kashubian) => [
+ q(0099),
+ q(0),
+ ],
+ q(kawi) => [
+ q(0217),
+ q(0),
+ ],
+ q(kazakh) => [
+ q(0218),
+ q(0),
+ ],
+ q(khasi) => [
+ q(0220),
+ q(0),
+ ],
+ q(khoisan languages) => [
+ q(0221),
+ q(0),
+ ],
+ q(khotanese) => [
+ q(0223),
+ q(0),
+ ],
+ q(kikuyu) => [
+ q(0224),
+ q(0),
+ ],
+ q(kimbundu) => [
+ q(0227),
+ q(0),
+ ],
+ q(kinyarwanda) => [
+ q(0225),
+ q(0),
+ ],
+ q(kirdki) => [
+ q(0485),
+ q(3),
+ ],
+ q(kirghiz) => [
+ q(0226),
+ q(0),
+ ],
+ q(kirmanjki) => [
+ q(0485),
+ q(4),
+ ],
+ q(klingon) => [
+ q(0432),
+ q(0),
+ ],
+ q(komi) => [
+ q(0229),
+ q(0),
+ ],
+ q(kongo) => [
+ q(0230),
+ q(0),
+ ],
+ q(konkani) => [
+ q(0228),
+ q(0),
+ ],
+ q(korean) => [
+ q(0231),
+ q(0),
+ ],
+ q(kosraean) => [
+ q(0232),
+ q(0),
+ ],
+ q(kpelle) => [
+ q(0233),
+ q(0),
+ ],
+ q(kru languages) => [
+ q(0236),
+ q(0),
+ ],
+ q(kuanyama) => [
+ q(0238),
+ q(0),
+ ],
+ q(kumyk) => [
+ q(0239),
+ q(0),
+ ],
+ q(kurdish) => [
+ q(0240),
+ q(0),
+ ],
+ q(kurukh) => [
+ q(0237),
+ q(0),
+ ],
+ q(kutenai) => [
+ q(0241),
+ q(0),
+ ],
+ q(kwanyama) => [
+ q(0238),
+ q(1),
+ ],
+ q(kyrgyz) => [
+ q(0226),
+ q(1),
+ ],
+ q(ladino) => [
+ q(0242),
+ q(0),
+ ],
+ q(lahnda) => [
+ q(0243),
+ q(0),
+ ],
+ q(lamba) => [
+ q(0244),
+ q(0),
+ ],
+ q(land dayak languages) => [
+ q(0105),
+ q(0),
+ ],
+ q(lao) => [
+ q(0245),
+ q(0),
+ ],
+ q(latin) => [
+ q(0246),
+ q(0),
+ ],
+ q(latvian) => [
+ q(0247),
+ q(0),
+ ],
+ q(leonese) => [
+ q(0030),
+ q(2),
+ ],
+ q(letzeburgesch) => [
+ q(0254),
+ q(1),
+ ],
+ q(lezghian) => [
+ q(0248),
+ q(0),
+ ],
+ q(limburgan) => [
+ q(0249),
+ q(0),
+ ],
+ q(limburger) => [
+ q(0249),
+ q(1),
+ ],
+ q(limburgish) => [
+ q(0249),
+ q(2),
+ ],
+ q(lingala) => [
+ q(0250),
+ q(0),
+ ],
+ q(lithuanian) => [
+ q(0251),
+ q(0),
+ ],
+ q(lojban) => [
+ q(0204),
+ q(0),
+ ],
+ q(low german) => [
+ q(0306),
+ q(0),
+ ],
+ q(low saxon) => [
+ q(0306),
+ q(1),
+ ],
+ q(lower sorbian) => [
+ q(0113),
+ q(0),
+ ],
+ q(lozi) => [
+ q(0253),
+ q(0),
+ ],
+ q(luba-katanga) => [
+ q(0256),
+ q(0),
+ ],
+ q(luba-lulua) => [
+ q(0255),
+ q(0),
+ ],
+ q(luiseno) => [
+ q(0258),
+ q(0),
+ ],
+ q(lule sami) => [
+ q(0390),
+ q(0),
+ ],
+ q(lunda) => [
+ q(0259),
+ q(0),
+ ],
+ q(luo (kenya and tanzania)) => [
+ q(0260),
+ q(0),
+ ],
+ q(lushai) => [
+ q(0261),
+ q(0),
+ ],
+ q(luxembourgish) => [
+ q(0254),
+ q(0),
+ ],
+ q(macedo-romanian) => [
+ q(0362),
+ q(2),
+ ],
+ q(macedonian) => [
+ q(0262),
+ q(0),
+ ],
+ q(madurese) => [
+ q(0263),
+ q(0),
+ ],
+ q(magahi) => [
+ q(0264),
+ q(0),
+ ],
+ q(maithili) => [
+ q(0266),
+ q(0),
+ ],
+ q(makasar) => [
+ q(0267),
+ q(0),
+ ],
+ q(malagasy) => [
+ q(0283),
+ q(0),
+ ],
+ q(malay) => [
+ q(0274),
+ q(0),
+ ],
+ q(malayalam) => [
+ q(0268),
+ q(0),
+ ],
+ q(maldivian) => [
+ q(0110),
+ q(2),
+ ],
+ q(maltese) => [
+ q(0284),
+ q(0),
+ ],
+ q(manchu) => [
+ q(0285),
+ q(0),
+ ],
+ q(mandar) => [
+ q(0276),
+ q(0),
+ ],
+ q(mandingo) => [
+ q(0269),
+ q(0),
+ ],
+ q(manipuri) => [
+ q(0286),
+ q(0),
+ ],
+ q(manobo languages) => [
+ q(0287),
+ q(0),
+ ],
+ q(manx) => [
+ q(0156),
+ q(0),
+ ],
+ q(maori) => [
+ q(0270),
+ q(0),
+ ],
+ q(mapuche) => [
+ q(0025),
+ q(1),
+ ],
+ q(mapudungun) => [
+ q(0025),
+ q(0),
+ ],
+ q(marathi) => [
+ q(0272),
+ q(0),
+ ],
+ q(mari) => [
+ q(0081),
+ q(0),
+ ],
+ q(marshallese) => [
+ q(0265),
+ q(0),
+ ],
+ q(marwari) => [
+ q(0295),
+ q(0),
+ ],
+ q(masai) => [
+ q(0273),
+ q(0),
+ ],
+ q(mayan languages) => [
+ q(0296),
+ q(0),
+ ],
+ q(mende) => [
+ q(0277),
+ q(0),
+ ],
+ q(mi'kmaq) => [
+ q(0279),
+ q(0),
+ ],
+ q(micmac) => [
+ q(0279),
+ q(1),
+ ],
+ q(minangkabau) => [
+ q(0280),
+ q(0),
+ ],
+ q(mirandese) => [
+ q(0294),
+ q(0),
+ ],
+ q(mohawk) => [
+ q(0288),
+ q(0),
+ ],
+ q(moksha) => [
+ q(0275),
+ q(0),
+ ],
+ q(moldavian) => [
+ q(0360),
+ q(1),
+ ],
+ q(moldovan) => [
+ q(0360),
+ q(2),
+ ],
+ q(mon-khmer languages) => [
+ q(0282),
+ q(0),
+ ],
+ q(mong) => [
+ q(0179),
+ q(1),
+ ],
+ q(mongo) => [
+ q(0252),
+ q(0),
+ ],
+ q(mongolian) => [
+ q(0289),
+ q(0),
+ ],
+ q(mossi) => [
+ q(0290),
+ q(0),
+ ],
+ q(multiple languages) => [
+ q(0291),
+ q(0),
+ ],
+ q(munda languages) => [
+ q(0292),
+ q(0),
+ ],
+ q(n'ko) => [
+ q(0317),
+ q(0),
+ ],
+ q(nahuatl languages) => [
+ q(0298),
+ q(0),
+ ],
+ q(nauru) => [
+ q(0301),
+ q(0),
+ ],
+ q(navaho) => [
+ q(0302),
+ q(1),
+ ],
+ q(navajo) => [
+ q(0302),
+ q(0),
+ ],
+ q(ndebele, north) => [
+ q(0304),
+ q(0),
+ ],
+ q(ndebele, south) => [
+ q(0303),
+ q(0),
+ ],
+ q(ndonga) => [
+ q(0305),
+ q(0),
+ ],
+ q(neapolitan) => [
+ q(0300),
+ q(0),
+ ],
+ q(nepal bhasa) => [
+ q(0308),
+ q(0),
+ ],
+ q(nepali) => [
+ q(0307),
+ q(0),
+ ],
+ q(newari) => [
+ q(0308),
+ q(1),
+ ],
+ q(nias) => [
+ q(0309),
+ q(0),
+ ],
+ q(niger-kordofanian languages) => [
+ q(0310),
+ q(0),
+ ],
+ q(nilo-saharan languages) => [
+ q(0406),
+ q(0),
+ ],
+ q(niuean) => [
+ q(0311),
+ q(0),
+ ],
+ q(no linguistic content) => [
+ q(0484),
+ q(0),
+ ],
+ q(nogai) => [
+ q(0314),
+ q(0),
+ ],
+ q(norse, old) => [
+ q(0315),
+ q(0),
+ ],
+ q(north american indian languages) => [
+ q(0299),
+ q(0),
+ ],
+ q(north ndebele) => [
+ q(0304),
+ q(1),
+ ],
+ q(northern frisian) => [
+ q(0140),
+ q(0),
+ ],
+ q(northern sami) => [
+ q(0388),
+ q(0),
+ ],
+ q(northern sotho) => [
+ q(0318),
+ q(2),
+ ],
+ q(norwegian) => [
+ q(0316),
+ q(0),
+ ],
+ q(norwegian bokmal) => [
+ q(0313),
+ q(1),
+ ],
+ q(norwegian nynorsk) => [
+ q(0312),
+ q(0),
+ ],
+ q(not applicable) => [
+ q(0484),
+ q(1),
+ ],
+ q(nubian languages) => [
+ q(0319),
+ q(0),
+ ],
+ q(nuosu) => [
+ q(0189),
+ q(1),
+ ],
+ q(nyamwezi) => [
+ q(0322),
+ q(0),
+ ],
+ q(nyanja) => [
+ q(0321),
+ q(2),
+ ],
+ q(nyankole) => [
+ q(0323),
+ q(0),
+ ],
+ q(nynorsk, norwegian) => [
+ q(0312),
+ q(1),
+ ],
+ q(nyoro) => [
+ q(0324),
+ q(0),
+ ],
+ q(nzima) => [
+ q(0325),
+ q(0),
+ ],
+ q(occidental) => [
+ q(0192),
+ q(1),
+ ],
+ q(occitan (post 1500)) => [
+ q(0326),
+ q(0),
+ ],
+ q(official aramaic (700-300 bce)) => [
+ q(0022),
+ q(0),
+ ],
+ q(oirat) => [
+ q(0470),
+ q(1),
+ ],
+ q(ojibwa) => [
+ q(0327),
+ q(0),
+ ],
+ q(old bulgarian) => [
+ q(0086),
+ q(3),
+ ],
+ q(old church slavonic) => [
+ q(0086),
+ q(4),
+ ],
+ q(old newari) => [
+ q(0320),
+ q(1),
+ ],
+ q(old slavonic) => [
+ q(0086),
+ q(1),
+ ],
+ q(oriya) => [
+ q(0328),
+ q(0),
+ ],
+ q(oromo) => [
+ q(0329),
+ q(0),
+ ],
+ q(osage) => [
+ q(0330),
+ q(0),
+ ],
+ q(ossetian) => [
+ q(0331),
+ q(0),
+ ],
+ q(ossetic) => [
+ q(0331),
+ q(1),
+ ],
+ q(otomian languages) => [
+ q(0333),
+ q(0),
+ ],
+ q(pahlavi) => [
+ q(0336),
+ q(0),
+ ],
+ q(palauan) => [
+ q(0340),
+ q(0),
+ ],
+ q(pali) => [
+ q(0345),
+ q(0),
+ ],
+ q(pampanga) => [
+ q(0337),
+ q(0),
+ ],
+ q(pangasinan) => [
+ q(0335),
+ q(0),
+ ],
+ q(panjabi) => [
+ q(0338),
+ q(0),
+ ],
+ q(papiamento) => [
+ q(0339),
+ q(0),
+ ],
+ q(papuan languages) => [
+ q(0334),
+ q(0),
+ ],
+ q(pashto) => [
+ q(0351),
+ q(1),
+ ],
+ q(pedi) => [
+ q(0318),
+ q(0),
+ ],
+ q(persian) => [
+ q(0342),
+ q(0),
+ ],
+ q(persian, old (ca.600-400 b.c.)) => [
+ q(0341),
+ q(0),
+ ],
+ q(philippine languages) => [
+ q(0343),
+ q(0),
+ ],
+ q(phoenician) => [
+ q(0344),
+ q(0),
+ ],
+ q(pilipino) => [
+ q(0133),
+ q(1),
+ ],
+ q(pohnpeian) => [
+ q(0347),
+ q(0),
+ ],
+ q(polish) => [
+ q(0346),
+ q(0),
+ ],
+ q(portuguese) => [
+ q(0348),
+ q(0),
+ ],
+ q(prakrit languages) => [
+ q(0349),
+ q(0),
+ ],
+ q(provencal) => [
+ q(0326),
+ q(1),
+ ],
+ q(provencal, old (to 1500)) => [
+ q(0350),
+ q(0),
+ ],
+ q(punjabi) => [
+ q(0338),
+ q(1),
+ ],
+ q(pushto) => [
+ q(0351),
+ q(0),
+ ],
+ q(quechua) => [
+ q(0353),
+ q(0),
+ ],
+ q(rajasthani) => [
+ q(0354),
+ q(0),
+ ],
+ q(rapanui) => [
+ q(0355),
+ q(0),
+ ],
+ q(rarotongan) => [
+ q(0356),
+ q(0),
+ ],
+ q(reserved for local use) => [
+ q(0352),
+ q(0),
+ ],
+ q(romance languages) => [
+ q(0357),
+ q(0),
+ ],
+ q(romanian) => [
+ q(0360),
+ q(0),
+ ],
+ q(romansh) => [
+ q(0358),
+ q(0),
+ ],
+ q(romany) => [
+ q(0359),
+ q(0),
+ ],
+ q(rundi) => [
+ q(0361),
+ q(0),
+ ],
+ q(russian) => [
+ q(0363),
+ q(0),
+ ],
+ q(sakan) => [
+ q(0223),
+ q(1),
+ ],
+ q(salishan languages) => [
+ q(0368),
+ q(0),
+ ],
+ q(samaritan aramaic) => [
+ q(0369),
+ q(0),
+ ],
+ q(sami languages) => [
+ q(0389),
+ q(0),
+ ],
+ q(samoan) => [
+ q(0392),
+ q(0),
+ ],
+ q(sandawe) => [
+ q(0364),
+ q(0),
+ ],
+ q(sango) => [
+ q(0365),
+ q(0),
+ ],
+ q(sanskrit) => [
+ q(0370),
+ q(0),
+ ],
+ q(santali) => [
+ q(0372),
+ q(0),
+ ],
+ q(sardinian) => [
+ q(0402),
+ q(0),
+ ],
+ q(sasak) => [
+ q(0371),
+ q(0),
+ ],
+ q(saxon, low) => [
+ q(0306),
+ q(3),
+ ],
+ q(scots) => [
+ q(0374),
+ q(0),
+ ],
+ q(scottish gaelic) => [
+ q(0153),
+ q(1),
+ ],
+ q(selkup) => [
+ q(0375),
+ q(0),
+ ],
+ q(semitic languages) => [
+ q(0376),
+ q(0),
+ ],
+ q(sepedi) => [
+ q(0318),
+ q(1),
+ ],
+ q(serbian) => [
+ q(0404),
+ q(0),
+ ],
+ q(serer) => [
+ q(0405),
+ q(0),
+ ],
+ q(shan) => [
+ q(0379),
+ q(0),
+ ],
+ q(shona) => [
+ q(0394),
+ q(0),
+ ],
+ q(sichuan yi) => [
+ q(0189),
+ q(0),
+ ],
+ q(sicilian) => [
+ q(0373),
+ q(0),
+ ],
+ q(sidamo) => [
+ q(0380),
+ q(0),
+ ],
+ q(sign languages) => [
+ q(0378),
+ q(0),
+ ],
+ q(siksika) => [
+ q(0057),
+ q(0),
+ ],
+ q(sindhi) => [
+ q(0395),
+ q(0),
+ ],
+ q(sinhala) => [
+ q(0381),
+ q(0),
+ ],
+ q(sinhalese) => [
+ q(0381),
+ q(1),
+ ],
+ q(sino-tibetan languages) => [
+ q(0383),
+ q(0),
+ ],
+ q(siouan languages) => [
+ q(0382),
+ q(0),
+ ],
+ q(skolt sami) => [
+ q(0393),
+ q(0),
+ ],
+ q(slave (athapascan)) => [
+ q(0107),
+ q(0),
+ ],
+ q(slavic languages) => [
+ q(0384),
+ q(0),
+ ],
+ q(slovak) => [
+ q(0385),
+ q(0),
+ ],
+ q(slovenian) => [
+ q(0386),
+ q(0),
+ ],
+ q(sogdian) => [
+ q(0397),
+ q(0),
+ ],
+ q(somali) => [
+ q(0398),
+ q(0),
+ ],
+ q(songhai languages) => [
+ q(0399),
+ q(0),
+ ],
+ q(soninke) => [
+ q(0396),
+ q(0),
+ ],
+ q(sorbian languages) => [
+ q(0467),
+ q(0),
+ ],
+ q(sotho, southern) => [
+ q(0400),
+ q(0),
+ ],
+ q(south american indian (other)) => [
+ q(0367),
+ q(0),
+ ],
+ q(south ndebele) => [
+ q(0303),
+ q(1),
+ ],
+ q(southern altai) => [
+ q(0016),
+ q(0),
+ ],
+ q(southern sami) => [
+ q(0387),
+ q(0),
+ ],
+ q(spanish) => [
+ q(0401),
+ q(0),
+ ],
+ q(sranan tongo) => [
+ q(0403),
+ q(0),
+ ],
+ q(sukuma) => [
+ q(0408),
+ q(0),
+ ],
+ q(sumerian) => [
+ q(0411),
+ q(0),
+ ],
+ q(sundanese) => [
+ q(0409),
+ q(0),
+ ],
+ q(susu) => [
+ q(0410),
+ q(0),
+ ],
+ q(swahili) => [
+ q(0412),
+ q(0),
+ ],
+ q(swati) => [
+ q(0407),
+ q(0),
+ ],
+ q(swedish) => [
+ q(0413),
+ q(0),
+ ],
+ q(swiss german) => [
+ q(0166),
+ q(0),
+ ],
+ q(syriac) => [
+ q(0415),
+ q(0),
+ ],
+ q(tagalog) => [
+ q(0425),
+ q(0),
+ ],
+ q(tahitian) => [
+ q(0416),
+ q(0),
+ ],
+ q(tai languages) => [
+ q(0417),
+ q(0),
+ ],
+ q(tajik) => [
+ q(0424),
+ q(0),
+ ],
+ q(tamashek) => [
+ q(0434),
+ q(0),
+ ],
+ q(tamil) => [
+ q(0418),
+ q(0),
+ ],
+ q(tatar) => [
+ q(0419),
+ q(0),
+ ],
+ q(telugu) => [
+ q(0420),
+ q(0),
+ ],
+ q(tereno) => [
+ q(0422),
+ q(0),
+ ],
+ q(tetum) => [
+ q(0423),
+ q(0),
+ ],
+ q(thai) => [
+ q(0426),
+ q(0),
+ ],
+ q(tibetan) => [
+ q(0427),
+ q(0),
+ ],
+ q(tigre) => [
+ q(0428),
+ q(0),
+ ],
+ q(tigrinya) => [
+ q(0429),
+ q(0),
+ ],
+ q(timne) => [
+ q(0421),
+ q(0),
+ ],
+ q(tiv) => [
+ q(0430),
+ q(0),
+ ],
+ q(tlhingan-hol) => [
+ q(0432),
+ q(1),
+ ],
+ q(tlingit) => [
+ q(0433),
+ q(0),
+ ],
+ q(tok pisin) => [
+ q(0437),
+ q(0),
+ ],
+ q(tokelau) => [
+ q(0431),
+ q(0),
+ ],
+ q(tonga) => [
+ q(0436),
+ q(1),
+ ],
+ q(tonga (nyasa)) => [
+ q(0435),
+ q(0),
+ ],
+ q(tonga (tonga islands)) => [
+ q(0436),
+ q(0),
+ ],
+ q(tsimshian) => [
+ q(0438),
+ q(0),
+ ],
+ q(tsonga) => [
+ q(0440),
+ q(0),
+ ],
+ q(tswana) => [
+ q(0439),
+ q(0),
+ ],
+ q(tumbuka) => [
+ q(0442),
+ q(0),
+ ],
+ q(tupi languages) => [
+ q(0443),
+ q(0),
+ ],
+ q(turkish) => [
+ q(0444),
+ q(0),
+ ],
+ q(turkish, ottoman (1500-1928)) => [
+ q(0332),
+ q(0),
+ ],
+ q(turkmen) => [
+ q(0441),
+ q(0),
+ ],
+ q(tuvalu) => [
+ q(0446),
+ q(0),
+ ],
+ q(tuvinian) => [
+ q(0448),
+ q(0),
+ ],
+ q(twi) => [
+ q(0447),
+ q(0),
+ ],
+ q(udmurt) => [
+ q(0449),
+ q(0),
+ ],
+ q(ugaritic) => [
+ q(0450),
+ q(0),
+ ],
+ q(uighur) => [
+ q(0451),
+ q(0),
+ ],
+ q(ukrainian) => [
+ q(0452),
+ q(0),
+ ],
+ q(umbundu) => [
+ q(0453),
+ q(0),
+ ],
+ q(uncoded languages) => [
+ q(0281),
+ q(0),
+ ],
+ q(undetermined) => [
+ q(0454),
+ q(0),
+ ],
+ q(upper sorbian) => [
+ q(0182),
+ q(0),
+ ],
+ q(urdu) => [
+ q(0455),
+ q(0),
+ ],
+ q(uyghur) => [
+ q(0451),
+ q(1),
+ ],
+ q(uzbek) => [
+ q(0456),
+ q(0),
+ ],
+ q(vai) => [
+ q(0457),
+ q(0),
+ ],
+ q(valencian) => [
+ q(0071),
+ q(1),
+ ],
+ q(venda) => [
+ q(0458),
+ q(0),
+ ],
+ q(vietnamese) => [
+ q(0459),
+ q(0),
+ ],
+ q(volapuk) => [
+ q(0460),
+ q(0),
+ ],
+ q(votic) => [
+ q(0461),
+ q(0),
+ ],
+ q(wakashan languages) => [
+ q(0462),
+ q(0),
+ ],
+ q(walamo) => [
+ q(0463),
+ q(0),
+ ],
+ q(walloon) => [
+ q(0468),
+ q(0),
+ ],
+ q(waray) => [
+ q(0464),
+ q(0),
+ ],
+ q(washo) => [
+ q(0465),
+ q(0),
+ ],
+ q(welsh) => [
+ q(0466),
+ q(0),
+ ],
+ q(western frisian) => [
+ q(0142),
+ q(0),
+ ],
+ q(western pahari languages) => [
+ q(0176),
+ q(1),
+ ],
+ q(wolof) => [
+ q(0469),
+ q(0),
+ ],
+ q(xhosa) => [
+ q(0471),
+ q(0),
+ ],
+ q(yakut) => [
+ q(0366),
+ q(0),
+ ],
+ q(yao) => [
+ q(0472),
+ q(0),
+ ],
+ q(yapese) => [
+ q(0473),
+ q(0),
+ ],
+ q(yiddish) => [
+ q(0474),
+ q(0),
+ ],
+ q(yoruba) => [
+ q(0475),
+ q(0),
+ ],
+ q(yupik languages) => [
+ q(0476),
+ q(0),
+ ],
+ q(zande languages) => [
+ q(0481),
+ q(0),
+ ],
+ q(zapotec) => [
+ q(0477),
+ q(0),
+ ],
+ q(zaza) => [
+ q(0485),
+ q(0),
+ ],
+ q(zazaki) => [
+ q(0485),
+ q(5),
+ ],
+ q(zenaga) => [
+ q(0479),
+ q(0),
+ ],
+ q(zhuang) => [
+ q(0480),
+ q(0),
+ ],
+ q(zulu) => [
+ q(0482),
+ q(0),
+ ],
+ q(zuni) => [
+ q(0483),
+ q(0),
+ ],
+};
+
+$Locale::Codes::Data{'language'}{'code2id'} = {
+ q(alpha2) => {
+ q(aa) => [
+ q(0001),
+ q(0),
+ ],
+ q(ab) => [
+ q(0002),
+ q(0),
+ ],
+ q(ae) => [
+ q(0034),
+ q(0),
+ ],
+ q(af) => [
+ q(0009),
+ q(0),
+ ],
+ q(ak) => [
+ q(0011),
+ q(0),
+ ],
+ q(am) => [
+ q(0017),
+ q(0),
+ ],
+ q(an) => [
+ q(0023),
+ q(0),
+ ],
+ q(ar) => [
+ q(0021),
+ q(0),
+ ],
+ q(as) => [
+ q(0029),
+ q(0),
+ ],
+ q(av) => [
+ q(0033),
+ q(0),
+ ],
+ q(ay) => [
+ q(0036),
+ q(0),
+ ],
+ q(az) => [
+ q(0037),
+ q(0),
+ ],
+ q(ba) => [
+ q(0040),
+ q(0),
+ ],
+ q(be) => [
+ q(0048),
+ q(0),
+ ],
+ q(bg) => [
+ q(0065),
+ q(0),
+ ],
+ q(bh) => [
+ q(0053),
+ q(0),
+ ],
+ q(bi) => [
+ q(0056),
+ q(0),
+ ],
+ q(bm) => [
+ q(0042),
+ q(0),
+ ],
+ q(bn) => [
+ q(0050),
+ q(0),
+ ],
+ q(bo) => [
+ q(0427),
+ q(0),
+ ],
+ q(br) => [
+ q(0061),
+ q(0),
+ ],
+ q(bs) => [
+ q(0059),
+ q(0),
+ ],
+ q(ca) => [
+ q(0071),
+ q(0),
+ ],
+ q(ce) => [
+ q(0077),
+ q(0),
+ ],
+ q(ch) => [
+ q(0075),
+ q(0),
+ ],
+ q(co) => [
+ q(0092),
+ q(0),
+ ],
+ q(cr) => [
+ q(0096),
+ q(0),
+ ],
+ q(cs) => [
+ q(0101),
+ q(0),
+ ],
+ q(cu) => [
+ q(0086),
+ q(0),
+ ],
+ q(cv) => [
+ q(0087),
+ q(0),
+ ],
+ q(cy) => [
+ q(0466),
+ q(0),
+ ],
+ q(da) => [
+ q(0103),
+ q(0),
+ ],
+ q(de) => [
+ q(0150),
+ q(0),
+ ],
+ q(dv) => [
+ q(0110),
+ q(0),
+ ],
+ q(dz) => [
+ q(0118),
+ q(0),
+ ],
+ q(ee) => [
+ q(0127),
+ q(0),
+ ],
+ q(el) => [
+ q(0164),
+ q(0),
+ ],
+ q(en) => [
+ q(0123),
+ q(0),
+ ],
+ q(eo) => [
+ q(0125),
+ q(0),
+ ],
+ q(es) => [
+ q(0401),
+ q(0),
+ ],
+ q(et) => [
+ q(0126),
+ q(0),
+ ],
+ q(eu) => [
+ q(0044),
+ q(0),
+ ],
+ q(fa) => [
+ q(0342),
+ q(0),
+ ],
+ q(ff) => [
+ q(0143),
+ q(0),
+ ],
+ q(fi) => [
+ q(0134),
+ q(0),
+ ],
+ q(fj) => [
+ q(0132),
+ q(0),
+ ],
+ q(fo) => [
+ q(0130),
+ q(0),
+ ],
+ q(fr) => [
+ q(0137),
+ q(0),
+ ],
+ q(fy) => [
+ q(0142),
+ q(0),
+ ],
+ q(ga) => [
+ q(0154),
+ q(0),
+ ],
+ q(gd) => [
+ q(0153),
+ q(0),
+ ],
+ q(gl) => [
+ q(0155),
+ q(0),
+ ],
+ q(gn) => [
+ q(0165),
+ q(0),
+ ],
+ q(gu) => [
+ q(0167),
+ q(0),
+ ],
+ q(gv) => [
+ q(0156),
+ q(0),
+ ],
+ q(ha) => [
+ q(0171),
+ q(0),
+ ],
+ q(he) => [
+ q(0173),
+ q(0),
+ ],
+ q(hi) => [
+ q(0177),
+ q(0),
+ ],
+ q(ho) => [
+ q(0180),
+ q(0),
+ ],
+ q(hr) => [
+ q(0181),
+ q(0),
+ ],
+ q(ht) => [
+ q(0170),
+ q(0),
+ ],
+ q(hu) => [
+ q(0183),
+ q(0),
+ ],
+ q(hy) => [
+ q(0024),
+ q(0),
+ ],
+ q(hz) => [
+ q(0174),
+ q(0),
+ ],
+ q(ia) => [
+ q(0194),
+ q(0),
+ ],
+ q(id) => [
+ q(0196),
+ q(0),
+ ],
+ q(ie) => [
+ q(0192),
+ q(0),
+ ],
+ q(ig) => [
+ q(0186),
+ q(0),
+ ],
+ q(ii) => [
+ q(0189),
+ q(0),
+ ],
+ q(ik) => [
+ q(0199),
+ q(0),
+ ],
+ q(io) => [
+ q(0188),
+ q(0),
+ ],
+ q(is) => [
+ q(0187),
+ q(0),
+ ],
+ q(it) => [
+ q(0202),
+ q(0),
+ ],
+ q(iu) => [
+ q(0191),
+ q(0),
+ ],
+ q(ja) => [
+ q(0205),
+ q(0),
+ ],
+ q(jv) => [
+ q(0203),
+ q(0),
+ ],
+ q(ka) => [
+ q(0149),
+ q(0),
+ ],
+ q(kg) => [
+ q(0230),
+ q(0),
+ ],
+ q(ki) => [
+ q(0224),
+ q(0),
+ ],
+ q(kj) => [
+ q(0238),
+ q(0),
+ ],
+ q(kk) => [
+ q(0218),
+ q(0),
+ ],
+ q(kl) => [
+ q(0211),
+ q(0),
+ ],
+ q(km) => [
+ q(0222),
+ q(0),
+ ],
+ q(kn) => [
+ q(0213),
+ q(0),
+ ],
+ q(ko) => [
+ q(0231),
+ q(0),
+ ],
+ q(kr) => [
+ q(0216),
+ q(0),
+ ],
+ q(ks) => [
+ q(0215),
+ q(0),
+ ],
+ q(ku) => [
+ q(0240),
+ q(0),
+ ],
+ q(kv) => [
+ q(0229),
+ q(0),
+ ],
+ q(kw) => [
+ q(0091),
+ q(0),
+ ],
+ q(ky) => [
+ q(0226),
+ q(0),
+ ],
+ q(la) => [
+ q(0246),
+ q(0),
+ ],
+ q(lb) => [
+ q(0254),
+ q(0),
+ ],
+ q(lg) => [
+ q(0257),
+ q(0),
+ ],
+ q(li) => [
+ q(0249),
+ q(0),
+ ],
+ q(ln) => [
+ q(0250),
+ q(0),
+ ],
+ q(lo) => [
+ q(0245),
+ q(0),
+ ],
+ q(lt) => [
+ q(0251),
+ q(0),
+ ],
+ q(lu) => [
+ q(0256),
+ q(0),
+ ],
+ q(lv) => [
+ q(0247),
+ q(0),
+ ],
+ q(mg) => [
+ q(0283),
+ q(0),
+ ],
+ q(mh) => [
+ q(0265),
+ q(0),
+ ],
+ q(mi) => [
+ q(0270),
+ q(0),
+ ],
+ q(mk) => [
+ q(0262),
+ q(0),
+ ],
+ q(ml) => [
+ q(0268),
+ q(0),
+ ],
+ q(mn) => [
+ q(0289),
+ q(0),
+ ],
+ q(mr) => [
+ q(0272),
+ q(0),
+ ],
+ q(ms) => [
+ q(0274),
+ q(0),
+ ],
+ q(mt) => [
+ q(0284),
+ q(0),
+ ],
+ q(my) => [
+ q(0066),
+ q(0),
+ ],
+ q(na) => [
+ q(0301),
+ q(0),
+ ],
+ q(nb) => [
+ q(0313),
+ q(0),
+ ],
+ q(nd) => [
+ q(0304),
+ q(0),
+ ],
+ q(ne) => [
+ q(0307),
+ q(0),
+ ],
+ q(ng) => [
+ q(0305),
+ q(0),
+ ],
+ q(nl) => [
+ q(0116),
+ q(0),
+ ],
+ q(nn) => [
+ q(0312),
+ q(0),
+ ],
+ q(no) => [
+ q(0316),
+ q(0),
+ ],
+ q(nr) => [
+ q(0303),
+ q(0),
+ ],
+ q(nv) => [
+ q(0302),
+ q(0),
+ ],
+ q(ny) => [
+ q(0321),
+ q(0),
+ ],
+ q(oc) => [
+ q(0326),
+ q(0),
+ ],
+ q(oj) => [
+ q(0327),
+ q(0),
+ ],
+ q(om) => [
+ q(0329),
+ q(0),
+ ],
+ q(or) => [
+ q(0328),
+ q(0),
+ ],
+ q(os) => [
+ q(0331),
+ q(0),
+ ],
+ q(pa) => [
+ q(0338),
+ q(0),
+ ],
+ q(pi) => [
+ q(0345),
+ q(0),
+ ],
+ q(pl) => [
+ q(0346),
+ q(0),
+ ],
+ q(ps) => [
+ q(0351),
+ q(0),
+ ],
+ q(pt) => [
+ q(0348),
+ q(0),
+ ],
+ q(qu) => [
+ q(0353),
+ q(0),
+ ],
+ q(rm) => [
+ q(0358),
+ q(0),
+ ],
+ q(rn) => [
+ q(0361),
+ q(0),
+ ],
+ q(ro) => [
+ q(0360),
+ q(0),
+ ],
+ q(ru) => [
+ q(0363),
+ q(0),
+ ],
+ q(rw) => [
+ q(0225),
+ q(0),
+ ],
+ q(sa) => [
+ q(0370),
+ q(0),
+ ],
+ q(sc) => [
+ q(0402),
+ q(0),
+ ],
+ q(sd) => [
+ q(0395),
+ q(0),
+ ],
+ q(se) => [
+ q(0388),
+ q(0),
+ ],
+ q(sg) => [
+ q(0365),
+ q(0),
+ ],
+ q(si) => [
+ q(0381),
+ q(0),
+ ],
+ q(sk) => [
+ q(0385),
+ q(0),
+ ],
+ q(sl) => [
+ q(0386),
+ q(0),
+ ],
+ q(sm) => [
+ q(0392),
+ q(0),
+ ],
+ q(sn) => [
+ q(0394),
+ q(0),
+ ],
+ q(so) => [
+ q(0398),
+ q(0),
+ ],
+ q(sq) => [
+ q(0013),
+ q(0),
+ ],
+ q(sr) => [
+ q(0404),
+ q(0),
+ ],
+ q(ss) => [
+ q(0407),
+ q(0),
+ ],
+ q(st) => [
+ q(0400),
+ q(0),
+ ],
+ q(su) => [
+ q(0409),
+ q(0),
+ ],
+ q(sv) => [
+ q(0413),
+ q(0),
+ ],
+ q(sw) => [
+ q(0412),
+ q(0),
+ ],
+ q(ta) => [
+ q(0418),
+ q(0),
+ ],
+ q(te) => [
+ q(0420),
+ q(0),
+ ],
+ q(tg) => [
+ q(0424),
+ q(0),
+ ],
+ q(th) => [
+ q(0426),
+ q(0),
+ ],
+ q(ti) => [
+ q(0429),
+ q(0),
+ ],
+ q(tk) => [
+ q(0441),
+ q(0),
+ ],
+ q(tl) => [
+ q(0425),
+ q(0),
+ ],
+ q(tn) => [
+ q(0439),
+ q(0),
+ ],
+ q(to) => [
+ q(0436),
+ q(0),
+ ],
+ q(tr) => [
+ q(0444),
+ q(0),
+ ],
+ q(ts) => [
+ q(0440),
+ q(0),
+ ],
+ q(tt) => [
+ q(0419),
+ q(0),
+ ],
+ q(tw) => [
+ q(0447),
+ q(0),
+ ],
+ q(ty) => [
+ q(0416),
+ q(0),
+ ],
+ q(ug) => [
+ q(0451),
+ q(0),
+ ],
+ q(uk) => [
+ q(0452),
+ q(0),
+ ],
+ q(ur) => [
+ q(0455),
+ q(0),
+ ],
+ q(uz) => [
+ q(0456),
+ q(0),
+ ],
+ q(ve) => [
+ q(0458),
+ q(0),
+ ],
+ q(vi) => [
+ q(0459),
+ q(0),
+ ],
+ q(vo) => [
+ q(0460),
+ q(0),
+ ],
+ q(wa) => [
+ q(0468),
+ q(0),
+ ],
+ q(wo) => [
+ q(0469),
+ q(0),
+ ],
+ q(xh) => [
+ q(0471),
+ q(0),
+ ],
+ q(yi) => [
+ q(0474),
+ q(0),
+ ],
+ q(yo) => [
+ q(0475),
+ q(0),
+ ],
+ q(za) => [
+ q(0480),
+ q(0),
+ ],
+ q(zh) => [
+ q(0079),
+ q(0),
+ ],
+ q(zu) => [
+ q(0482),
+ q(0),
+ ],
+ },
+ q(alpha3) => {
+ q(aar) => [
+ q(0001),
+ q(0),
+ ],
+ q(abk) => [
+ q(0002),
+ q(0),
+ ],
+ q(ace) => [
+ q(0003),
+ q(0),
+ ],
+ q(ach) => [
+ q(0004),
+ q(0),
+ ],
+ q(ada) => [
+ q(0005),
+ q(0),
+ ],
+ q(ady) => [
+ q(0006),
+ q(0),
+ ],
+ q(afa) => [
+ q(0007),
+ q(0),
+ ],
+ q(afh) => [
+ q(0008),
+ q(0),
+ ],
+ q(afr) => [
+ q(0009),
+ q(0),
+ ],
+ q(ain) => [
+ q(0010),
+ q(0),
+ ],
+ q(aka) => [
+ q(0011),
+ q(0),
+ ],
+ q(akk) => [
+ q(0012),
+ q(0),
+ ],
+ q(alb) => [
+ q(0013),
+ q(0),
+ ],
+ q(ale) => [
+ q(0014),
+ q(0),
+ ],
+ q(alg) => [
+ q(0015),
+ q(0),
+ ],
+ q(alt) => [
+ q(0016),
+ q(0),
+ ],
+ q(amh) => [
+ q(0017),
+ q(0),
+ ],
+ q(ang) => [
+ q(0018),
+ q(0),
+ ],
+ q(anp) => [
+ q(0019),
+ q(0),
+ ],
+ q(apa) => [
+ q(0020),
+ q(0),
+ ],
+ q(ara) => [
+ q(0021),
+ q(0),
+ ],
+ q(arc) => [
+ q(0022),
+ q(0),
+ ],
+ q(arg) => [
+ q(0023),
+ q(0),
+ ],
+ q(arm) => [
+ q(0024),
+ q(0),
+ ],
+ q(arn) => [
+ q(0025),
+ q(0),
+ ],
+ q(arp) => [
+ q(0026),
+ q(0),
+ ],
+ q(art) => [
+ q(0027),
+ q(0),
+ ],
+ q(arw) => [
+ q(0028),
+ q(0),
+ ],
+ q(asm) => [
+ q(0029),
+ q(0),
+ ],
+ q(ast) => [
+ q(0030),
+ q(0),
+ ],
+ q(ath) => [
+ q(0031),
+ q(0),
+ ],
+ q(aus) => [
+ q(0032),
+ q(0),
+ ],
+ q(ava) => [
+ q(0033),
+ q(0),
+ ],
+ q(ave) => [
+ q(0034),
+ q(0),
+ ],
+ q(awa) => [
+ q(0035),
+ q(0),
+ ],
+ q(aym) => [
+ q(0036),
+ q(0),
+ ],
+ q(aze) => [
+ q(0037),
+ q(0),
+ ],
+ q(bad) => [
+ q(0038),
+ q(0),
+ ],
+ q(bai) => [
+ q(0039),
+ q(0),
+ ],
+ q(bak) => [
+ q(0040),
+ q(0),
+ ],
+ q(bal) => [
+ q(0041),
+ q(0),
+ ],
+ q(bam) => [
+ q(0042),
+ q(0),
+ ],
+ q(ban) => [
+ q(0043),
+ q(0),
+ ],
+ q(baq) => [
+ q(0044),
+ q(0),
+ ],
+ q(bas) => [
+ q(0045),
+ q(0),
+ ],
+ q(bat) => [
+ q(0046),
+ q(0),
+ ],
+ q(bej) => [
+ q(0047),
+ q(0),
+ ],
+ q(bel) => [
+ q(0048),
+ q(0),
+ ],
+ q(bem) => [
+ q(0049),
+ q(0),
+ ],
+ q(ben) => [
+ q(0050),
+ q(0),
+ ],
+ q(ber) => [
+ q(0051),
+ q(0),
+ ],
+ q(bho) => [
+ q(0052),
+ q(0),
+ ],
+ q(bih) => [
+ q(0053),
+ q(0),
+ ],
+ q(bik) => [
+ q(0054),
+ q(0),
+ ],
+ q(bin) => [
+ q(0055),
+ q(0),
+ ],
+ q(bis) => [
+ q(0056),
+ q(0),
+ ],
+ q(bla) => [
+ q(0057),
+ q(0),
+ ],
+ q(bnt) => [
+ q(0058),
+ q(0),
+ ],
+ q(bos) => [
+ q(0059),
+ q(0),
+ ],
+ q(bra) => [
+ q(0060),
+ q(0),
+ ],
+ q(bre) => [
+ q(0061),
+ q(0),
+ ],
+ q(btk) => [
+ q(0062),
+ q(0),
+ ],
+ q(bua) => [
+ q(0063),
+ q(0),
+ ],
+ q(bug) => [
+ q(0064),
+ q(0),
+ ],
+ q(bul) => [
+ q(0065),
+ q(0),
+ ],
+ q(bur) => [
+ q(0066),
+ q(0),
+ ],
+ q(byn) => [
+ q(0067),
+ q(0),
+ ],
+ q(cad) => [
+ q(0068),
+ q(0),
+ ],
+ q(cai) => [
+ q(0069),
+ q(0),
+ ],
+ q(car) => [
+ q(0070),
+ q(0),
+ ],
+ q(cat) => [
+ q(0071),
+ q(0),
+ ],
+ q(cau) => [
+ q(0072),
+ q(0),
+ ],
+ q(ceb) => [
+ q(0073),
+ q(0),
+ ],
+ q(cel) => [
+ q(0074),
+ q(0),
+ ],
+ q(cha) => [
+ q(0075),
+ q(0),
+ ],
+ q(chb) => [
+ q(0076),
+ q(0),
+ ],
+ q(che) => [
+ q(0077),
+ q(0),
+ ],
+ q(chg) => [
+ q(0078),
+ q(0),
+ ],
+ q(chi) => [
+ q(0079),
+ q(0),
+ ],
+ q(chk) => [
+ q(0080),
+ q(0),
+ ],
+ q(chm) => [
+ q(0081),
+ q(0),
+ ],
+ q(chn) => [
+ q(0082),
+ q(0),
+ ],
+ q(cho) => [
+ q(0083),
+ q(0),
+ ],
+ q(chp) => [
+ q(0084),
+ q(0),
+ ],
+ q(chr) => [
+ q(0085),
+ q(0),
+ ],
+ q(chu) => [
+ q(0086),
+ q(0),
+ ],
+ q(chv) => [
+ q(0087),
+ q(0),
+ ],
+ q(chy) => [
+ q(0088),
+ q(0),
+ ],
+ q(cmc) => [
+ q(0089),
+ q(0),
+ ],
+ q(cop) => [
+ q(0090),
+ q(0),
+ ],
+ q(cor) => [
+ q(0091),
+ q(0),
+ ],
+ q(cos) => [
+ q(0092),
+ q(0),
+ ],
+ q(cpe) => [
+ q(0093),
+ q(0),
+ ],
+ q(cpf) => [
+ q(0094),
+ q(0),
+ ],
+ q(cpp) => [
+ q(0095),
+ q(0),
+ ],
+ q(cre) => [
+ q(0096),
+ q(0),
+ ],
+ q(crh) => [
+ q(0097),
+ q(0),
+ ],
+ q(crp) => [
+ q(0098),
+ q(0),
+ ],
+ q(csb) => [
+ q(0099),
+ q(0),
+ ],
+ q(cus) => [
+ q(0100),
+ q(0),
+ ],
+ q(cze) => [
+ q(0101),
+ q(0),
+ ],
+ q(dak) => [
+ q(0102),
+ q(0),
+ ],
+ q(dan) => [
+ q(0103),
+ q(0),
+ ],
+ q(dar) => [
+ q(0104),
+ q(0),
+ ],
+ q(day) => [
+ q(0105),
+ q(0),
+ ],
+ q(del) => [
+ q(0106),
+ q(0),
+ ],
+ q(den) => [
+ q(0107),
+ q(0),
+ ],
+ q(dgr) => [
+ q(0108),
+ q(0),
+ ],
+ q(din) => [
+ q(0109),
+ q(0),
+ ],
+ q(div) => [
+ q(0110),
+ q(0),
+ ],
+ q(doi) => [
+ q(0111),
+ q(0),
+ ],
+ q(dra) => [
+ q(0112),
+ q(0),
+ ],
+ q(dsb) => [
+ q(0113),
+ q(0),
+ ],
+ q(dua) => [
+ q(0114),
+ q(0),
+ ],
+ q(dum) => [
+ q(0115),
+ q(0),
+ ],
+ q(dut) => [
+ q(0116),
+ q(0),
+ ],
+ q(dyu) => [
+ q(0117),
+ q(0),
+ ],
+ q(dzo) => [
+ q(0118),
+ q(0),
+ ],
+ q(efi) => [
+ q(0119),
+ q(0),
+ ],
+ q(egy) => [
+ q(0120),
+ q(0),
+ ],
+ q(eka) => [
+ q(0121),
+ q(0),
+ ],
+ q(elx) => [
+ q(0122),
+ q(0),
+ ],
+ q(eng) => [
+ q(0123),
+ q(0),
+ ],
+ q(enm) => [
+ q(0124),
+ q(0),
+ ],
+ q(epo) => [
+ q(0125),
+ q(0),
+ ],
+ q(est) => [
+ q(0126),
+ q(0),
+ ],
+ q(ewe) => [
+ q(0127),
+ q(0),
+ ],
+ q(ewo) => [
+ q(0128),
+ q(0),
+ ],
+ q(fan) => [
+ q(0129),
+ q(0),
+ ],
+ q(fao) => [
+ q(0130),
+ q(0),
+ ],
+ q(fat) => [
+ q(0131),
+ q(0),
+ ],
+ q(fij) => [
+ q(0132),
+ q(0),
+ ],
+ q(fil) => [
+ q(0133),
+ q(0),
+ ],
+ q(fin) => [
+ q(0134),
+ q(0),
+ ],
+ q(fiu) => [
+ q(0135),
+ q(0),
+ ],
+ q(fon) => [
+ q(0136),
+ q(0),
+ ],
+ q(fre) => [
+ q(0137),
+ q(0),
+ ],
+ q(frm) => [
+ q(0138),
+ q(0),
+ ],
+ q(fro) => [
+ q(0139),
+ q(0),
+ ],
+ q(frr) => [
+ q(0140),
+ q(0),
+ ],
+ q(frs) => [
+ q(0141),
+ q(0),
+ ],
+ q(fry) => [
+ q(0142),
+ q(0),
+ ],
+ q(ful) => [
+ q(0143),
+ q(0),
+ ],
+ q(fur) => [
+ q(0144),
+ q(0),
+ ],
+ q(gaa) => [
+ q(0145),
+ q(0),
+ ],
+ q(gay) => [
+ q(0146),
+ q(0),
+ ],
+ q(gba) => [
+ q(0147),
+ q(0),
+ ],
+ q(gem) => [
+ q(0148),
+ q(0),
+ ],
+ q(geo) => [
+ q(0149),
+ q(0),
+ ],
+ q(ger) => [
+ q(0150),
+ q(0),
+ ],
+ q(gez) => [
+ q(0151),
+ q(0),
+ ],
+ q(gil) => [
+ q(0152),
+ q(0),
+ ],
+ q(gla) => [
+ q(0153),
+ q(0),
+ ],
+ q(gle) => [
+ q(0154),
+ q(0),
+ ],
+ q(glg) => [
+ q(0155),
+ q(0),
+ ],
+ q(glv) => [
+ q(0156),
+ q(0),
+ ],
+ q(gmh) => [
+ q(0157),
+ q(0),
+ ],
+ q(goh) => [
+ q(0158),
+ q(0),
+ ],
+ q(gon) => [
+ q(0159),
+ q(0),
+ ],
+ q(gor) => [
+ q(0160),
+ q(0),
+ ],
+ q(got) => [
+ q(0161),
+ q(0),
+ ],
+ q(grb) => [
+ q(0162),
+ q(0),
+ ],
+ q(grc) => [
+ q(0163),
+ q(0),
+ ],
+ q(gre) => [
+ q(0164),
+ q(0),
+ ],
+ q(grn) => [
+ q(0165),
+ q(0),
+ ],
+ q(gsw) => [
+ q(0166),
+ q(0),
+ ],
+ q(guj) => [
+ q(0167),
+ q(0),
+ ],
+ q(gwi) => [
+ q(0168),
+ q(0),
+ ],
+ q(hai) => [
+ q(0169),
+ q(0),
+ ],
+ q(hat) => [
+ q(0170),
+ q(0),
+ ],
+ q(hau) => [
+ q(0171),
+ q(0),
+ ],
+ q(haw) => [
+ q(0172),
+ q(0),
+ ],
+ q(heb) => [
+ q(0173),
+ q(0),
+ ],
+ q(her) => [
+ q(0174),
+ q(0),
+ ],
+ q(hil) => [
+ q(0175),
+ q(0),
+ ],
+ q(him) => [
+ q(0176),
+ q(0),
+ ],
+ q(hin) => [
+ q(0177),
+ q(0),
+ ],
+ q(hit) => [
+ q(0178),
+ q(0),
+ ],
+ q(hmn) => [
+ q(0179),
+ q(0),
+ ],
+ q(hmo) => [
+ q(0180),
+ q(0),
+ ],
+ q(hrv) => [
+ q(0181),
+ q(0),
+ ],
+ q(hsb) => [
+ q(0182),
+ q(0),
+ ],
+ q(hun) => [
+ q(0183),
+ q(0),
+ ],
+ q(hup) => [
+ q(0184),
+ q(0),
+ ],
+ q(iba) => [
+ q(0185),
+ q(0),
+ ],
+ q(ibo) => [
+ q(0186),
+ q(0),
+ ],
+ q(ice) => [
+ q(0187),
+ q(0),
+ ],
+ q(ido) => [
+ q(0188),
+ q(0),
+ ],
+ q(iii) => [
+ q(0189),
+ q(0),
+ ],
+ q(ijo) => [
+ q(0190),
+ q(0),
+ ],
+ q(iku) => [
+ q(0191),
+ q(0),
+ ],
+ q(ile) => [
+ q(0192),
+ q(0),
+ ],
+ q(ilo) => [
+ q(0193),
+ q(0),
+ ],
+ q(ina) => [
+ q(0194),
+ q(0),
+ ],
+ q(inc) => [
+ q(0195),
+ q(0),
+ ],
+ q(ind) => [
+ q(0196),
+ q(0),
+ ],
+ q(ine) => [
+ q(0197),
+ q(0),
+ ],
+ q(inh) => [
+ q(0198),
+ q(0),
+ ],
+ q(ipk) => [
+ q(0199),
+ q(0),
+ ],
+ q(ira) => [
+ q(0200),
+ q(0),
+ ],
+ q(iro) => [
+ q(0201),
+ q(0),
+ ],
+ q(ita) => [
+ q(0202),
+ q(0),
+ ],
+ q(jav) => [
+ q(0203),
+ q(0),
+ ],
+ q(jbo) => [
+ q(0204),
+ q(0),
+ ],
+ q(jpn) => [
+ q(0205),
+ q(0),
+ ],
+ q(jpr) => [
+ q(0206),
+ q(0),
+ ],
+ q(jrb) => [
+ q(0207),
+ q(0),
+ ],
+ q(kaa) => [
+ q(0208),
+ q(0),
+ ],
+ q(kab) => [
+ q(0209),
+ q(0),
+ ],
+ q(kac) => [
+ q(0210),
+ q(0),
+ ],
+ q(kal) => [
+ q(0211),
+ q(0),
+ ],
+ q(kam) => [
+ q(0212),
+ q(0),
+ ],
+ q(kan) => [
+ q(0213),
+ q(0),
+ ],
+ q(kar) => [
+ q(0214),
+ q(0),
+ ],
+ q(kas) => [
+ q(0215),
+ q(0),
+ ],
+ q(kau) => [
+ q(0216),
+ q(0),
+ ],
+ q(kaw) => [
+ q(0217),
+ q(0),
+ ],
+ q(kaz) => [
+ q(0218),
+ q(0),
+ ],
+ q(kbd) => [
+ q(0219),
+ q(0),
+ ],
+ q(kha) => [
+ q(0220),
+ q(0),
+ ],
+ q(khi) => [
+ q(0221),
+ q(0),
+ ],
+ q(khm) => [
+ q(0222),
+ q(0),
+ ],
+ q(kho) => [
+ q(0223),
+ q(0),
+ ],
+ q(kik) => [
+ q(0224),
+ q(0),
+ ],
+ q(kin) => [
+ q(0225),
+ q(0),
+ ],
+ q(kir) => [
+ q(0226),
+ q(0),
+ ],
+ q(kmb) => [
+ q(0227),
+ q(0),
+ ],
+ q(kok) => [
+ q(0228),
+ q(0),
+ ],
+ q(kom) => [
+ q(0229),
+ q(0),
+ ],
+ q(kon) => [
+ q(0230),
+ q(0),
+ ],
+ q(kor) => [
+ q(0231),
+ q(0),
+ ],
+ q(kos) => [
+ q(0232),
+ q(0),
+ ],
+ q(kpe) => [
+ q(0233),
+ q(0),
+ ],
+ q(krc) => [
+ q(0234),
+ q(0),
+ ],
+ q(krl) => [
+ q(0235),
+ q(0),
+ ],
+ q(kro) => [
+ q(0236),
+ q(0),
+ ],
+ q(kru) => [
+ q(0237),
+ q(0),
+ ],
+ q(kua) => [
+ q(0238),
+ q(0),
+ ],
+ q(kum) => [
+ q(0239),
+ q(0),
+ ],
+ q(kur) => [
+ q(0240),
+ q(0),
+ ],
+ q(kut) => [
+ q(0241),
+ q(0),
+ ],
+ q(lad) => [
+ q(0242),
+ q(0),
+ ],
+ q(lah) => [
+ q(0243),
+ q(0),
+ ],
+ q(lam) => [
+ q(0244),
+ q(0),
+ ],
+ q(lao) => [
+ q(0245),
+ q(0),
+ ],
+ q(lat) => [
+ q(0246),
+ q(0),
+ ],
+ q(lav) => [
+ q(0247),
+ q(0),
+ ],
+ q(lez) => [
+ q(0248),
+ q(0),
+ ],
+ q(lim) => [
+ q(0249),
+ q(0),
+ ],
+ q(lin) => [
+ q(0250),
+ q(0),
+ ],
+ q(lit) => [
+ q(0251),
+ q(0),
+ ],
+ q(lol) => [
+ q(0252),
+ q(0),
+ ],
+ q(loz) => [
+ q(0253),
+ q(0),
+ ],
+ q(ltz) => [
+ q(0254),
+ q(0),
+ ],
+ q(lua) => [
+ q(0255),
+ q(0),
+ ],
+ q(lub) => [
+ q(0256),
+ q(0),
+ ],
+ q(lug) => [
+ q(0257),
+ q(0),
+ ],
+ q(lui) => [
+ q(0258),
+ q(0),
+ ],
+ q(lun) => [
+ q(0259),
+ q(0),
+ ],
+ q(luo) => [
+ q(0260),
+ q(0),
+ ],
+ q(lus) => [
+ q(0261),
+ q(0),
+ ],
+ q(mac) => [
+ q(0262),
+ q(0),
+ ],
+ q(mad) => [
+ q(0263),
+ q(0),
+ ],
+ q(mag) => [
+ q(0264),
+ q(0),
+ ],
+ q(mah) => [
+ q(0265),
+ q(0),
+ ],
+ q(mai) => [
+ q(0266),
+ q(0),
+ ],
+ q(mak) => [
+ q(0267),
+ q(0),
+ ],
+ q(mal) => [
+ q(0268),
+ q(0),
+ ],
+ q(man) => [
+ q(0269),
+ q(0),
+ ],
+ q(mao) => [
+ q(0270),
+ q(0),
+ ],
+ q(map) => [
+ q(0271),
+ q(0),
+ ],
+ q(mar) => [
+ q(0272),
+ q(0),
+ ],
+ q(mas) => [
+ q(0273),
+ q(0),
+ ],
+ q(may) => [
+ q(0274),
+ q(0),
+ ],
+ q(mdf) => [
+ q(0275),
+ q(0),
+ ],
+ q(mdr) => [
+ q(0276),
+ q(0),
+ ],
+ q(men) => [
+ q(0277),
+ q(0),
+ ],
+ q(mga) => [
+ q(0278),
+ q(0),
+ ],
+ q(mic) => [
+ q(0279),
+ q(0),
+ ],
+ q(min) => [
+ q(0280),
+ q(0),
+ ],
+ q(mis) => [
+ q(0281),
+ q(0),
+ ],
+ q(mkh) => [
+ q(0282),
+ q(0),
+ ],
+ q(mlg) => [
+ q(0283),
+ q(0),
+ ],
+ q(mlt) => [
+ q(0284),
+ q(0),
+ ],
+ q(mnc) => [
+ q(0285),
+ q(0),
+ ],
+ q(mni) => [
+ q(0286),
+ q(0),
+ ],
+ q(mno) => [
+ q(0287),
+ q(0),
+ ],
+ q(moh) => [
+ q(0288),
+ q(0),
+ ],
+ q(mon) => [
+ q(0289),
+ q(0),
+ ],
+ q(mos) => [
+ q(0290),
+ q(0),
+ ],
+ q(mul) => [
+ q(0291),
+ q(0),
+ ],
+ q(mun) => [
+ q(0292),
+ q(0),
+ ],
+ q(mus) => [
+ q(0293),
+ q(0),
+ ],
+ q(mwl) => [
+ q(0294),
+ q(0),
+ ],
+ q(mwr) => [
+ q(0295),
+ q(0),
+ ],
+ q(myn) => [
+ q(0296),
+ q(0),
+ ],
+ q(myv) => [
+ q(0297),
+ q(0),
+ ],
+ q(nah) => [
+ q(0298),
+ q(0),
+ ],
+ q(nai) => [
+ q(0299),
+ q(0),
+ ],
+ q(nap) => [
+ q(0300),
+ q(0),
+ ],
+ q(nau) => [
+ q(0301),
+ q(0),
+ ],
+ q(nav) => [
+ q(0302),
+ q(0),
+ ],
+ q(nbl) => [
+ q(0303),
+ q(0),
+ ],
+ q(nde) => [
+ q(0304),
+ q(0),
+ ],
+ q(ndo) => [
+ q(0305),
+ q(0),
+ ],
+ q(nds) => [
+ q(0306),
+ q(0),
+ ],
+ q(nep) => [
+ q(0307),
+ q(0),
+ ],
+ q(new) => [
+ q(0308),
+ q(0),
+ ],
+ q(nia) => [
+ q(0309),
+ q(0),
+ ],
+ q(nic) => [
+ q(0310),
+ q(0),
+ ],
+ q(niu) => [
+ q(0311),
+ q(0),
+ ],
+ q(nno) => [
+ q(0312),
+ q(0),
+ ],
+ q(nob) => [
+ q(0313),
+ q(0),
+ ],
+ q(nog) => [
+ q(0314),
+ q(0),
+ ],
+ q(non) => [
+ q(0315),
+ q(0),
+ ],
+ q(nor) => [
+ q(0316),
+ q(0),
+ ],
+ q(nqo) => [
+ q(0317),
+ q(0),
+ ],
+ q(nso) => [
+ q(0318),
+ q(0),
+ ],
+ q(nub) => [
+ q(0319),
+ q(0),
+ ],
+ q(nwc) => [
+ q(0320),
+ q(0),
+ ],
+ q(nya) => [
+ q(0321),
+ q(0),
+ ],
+ q(nym) => [
+ q(0322),
+ q(0),
+ ],
+ q(nyn) => [
+ q(0323),
+ q(0),
+ ],
+ q(nyo) => [
+ q(0324),
+ q(0),
+ ],
+ q(nzi) => [
+ q(0325),
+ q(0),
+ ],
+ q(oci) => [
+ q(0326),
+ q(0),
+ ],
+ q(oji) => [
+ q(0327),
+ q(0),
+ ],
+ q(ori) => [
+ q(0328),
+ q(0),
+ ],
+ q(orm) => [
+ q(0329),
+ q(0),
+ ],
+ q(osa) => [
+ q(0330),
+ q(0),
+ ],
+ q(oss) => [
+ q(0331),
+ q(0),
+ ],
+ q(ota) => [
+ q(0332),
+ q(0),
+ ],
+ q(oto) => [
+ q(0333),
+ q(0),
+ ],
+ q(paa) => [
+ q(0334),
+ q(0),
+ ],
+ q(pag) => [
+ q(0335),
+ q(0),
+ ],
+ q(pal) => [
+ q(0336),
+ q(0),
+ ],
+ q(pam) => [
+ q(0337),
+ q(0),
+ ],
+ q(pan) => [
+ q(0338),
+ q(0),
+ ],
+ q(pap) => [
+ q(0339),
+ q(0),
+ ],
+ q(pau) => [
+ q(0340),
+ q(0),
+ ],
+ q(peo) => [
+ q(0341),
+ q(0),
+ ],
+ q(per) => [
+ q(0342),
+ q(0),
+ ],
+ q(phi) => [
+ q(0343),
+ q(0),
+ ],
+ q(phn) => [
+ q(0344),
+ q(0),
+ ],
+ q(pli) => [
+ q(0345),
+ q(0),
+ ],
+ q(pol) => [
+ q(0346),
+ q(0),
+ ],
+ q(pon) => [
+ q(0347),
+ q(0),
+ ],
+ q(por) => [
+ q(0348),
+ q(0),
+ ],
+ q(pra) => [
+ q(0349),
+ q(0),
+ ],
+ q(pro) => [
+ q(0350),
+ q(0),
+ ],
+ q(pus) => [
+ q(0351),
+ q(0),
+ ],
+ q(qtz) => [
+ q(0352),
+ q(0),
+ ],
+ q(que) => [
+ q(0353),
+ q(0),
+ ],
+ q(raj) => [
+ q(0354),
+ q(0),
+ ],
+ q(rap) => [
+ q(0355),
+ q(0),
+ ],
+ q(rar) => [
+ q(0356),
+ q(0),
+ ],
+ q(roa) => [
+ q(0357),
+ q(0),
+ ],
+ q(roh) => [
+ q(0358),
+ q(0),
+ ],
+ q(rom) => [
+ q(0359),
+ q(0),
+ ],
+ q(rum) => [
+ q(0360),
+ q(0),
+ ],
+ q(run) => [
+ q(0361),
+ q(0),
+ ],
+ q(rup) => [
+ q(0362),
+ q(0),
+ ],
+ q(rus) => [
+ q(0363),
+ q(0),
+ ],
+ q(sad) => [
+ q(0364),
+ q(0),
+ ],
+ q(sag) => [
+ q(0365),
+ q(0),
+ ],
+ q(sah) => [
+ q(0366),
+ q(0),
+ ],
+ q(sai) => [
+ q(0367),
+ q(0),
+ ],
+ q(sal) => [
+ q(0368),
+ q(0),
+ ],
+ q(sam) => [
+ q(0369),
+ q(0),
+ ],
+ q(san) => [
+ q(0370),
+ q(0),
+ ],
+ q(sas) => [
+ q(0371),
+ q(0),
+ ],
+ q(sat) => [
+ q(0372),
+ q(0),
+ ],
+ q(scn) => [
+ q(0373),
+ q(0),
+ ],
+ q(sco) => [
+ q(0374),
+ q(0),
+ ],
+ q(sel) => [
+ q(0375),
+ q(0),
+ ],
+ q(sem) => [
+ q(0376),
+ q(0),
+ ],
+ q(sga) => [
+ q(0377),
+ q(0),
+ ],
+ q(sgn) => [
+ q(0378),
+ q(0),
+ ],
+ q(shn) => [
+ q(0379),
+ q(0),
+ ],
+ q(sid) => [
+ q(0380),
+ q(0),
+ ],
+ q(sin) => [
+ q(0381),
+ q(0),
+ ],
+ q(sio) => [
+ q(0382),
+ q(0),
+ ],
+ q(sit) => [
+ q(0383),
+ q(0),
+ ],
+ q(sla) => [
+ q(0384),
+ q(0),
+ ],
+ q(slo) => [
+ q(0385),
+ q(0),
+ ],
+ q(slv) => [
+ q(0386),
+ q(0),
+ ],
+ q(sma) => [
+ q(0387),
+ q(0),
+ ],
+ q(sme) => [
+ q(0388),
+ q(0),
+ ],
+ q(smi) => [
+ q(0389),
+ q(0),
+ ],
+ q(smj) => [
+ q(0390),
+ q(0),
+ ],
+ q(smn) => [
+ q(0391),
+ q(0),
+ ],
+ q(smo) => [
+ q(0392),
+ q(0),
+ ],
+ q(sms) => [
+ q(0393),
+ q(0),
+ ],
+ q(sna) => [
+ q(0394),
+ q(0),
+ ],
+ q(snd) => [
+ q(0395),
+ q(0),
+ ],
+ q(snk) => [
+ q(0396),
+ q(0),
+ ],
+ q(sog) => [
+ q(0397),
+ q(0),
+ ],
+ q(som) => [
+ q(0398),
+ q(0),
+ ],
+ q(son) => [
+ q(0399),
+ q(0),
+ ],
+ q(sot) => [
+ q(0400),
+ q(0),
+ ],
+ q(spa) => [
+ q(0401),
+ q(0),
+ ],
+ q(srd) => [
+ q(0402),
+ q(0),
+ ],
+ q(srn) => [
+ q(0403),
+ q(0),
+ ],
+ q(srp) => [
+ q(0404),
+ q(0),
+ ],
+ q(srr) => [
+ q(0405),
+ q(0),
+ ],
+ q(ssa) => [
+ q(0406),
+ q(0),
+ ],
+ q(ssw) => [
+ q(0407),
+ q(0),
+ ],
+ q(suk) => [
+ q(0408),
+ q(0),
+ ],
+ q(sun) => [
+ q(0409),
+ q(0),
+ ],
+ q(sus) => [
+ q(0410),
+ q(0),
+ ],
+ q(sux) => [
+ q(0411),
+ q(0),
+ ],
+ q(swa) => [
+ q(0412),
+ q(0),
+ ],
+ q(swe) => [
+ q(0413),
+ q(0),
+ ],
+ q(syc) => [
+ q(0414),
+ q(0),
+ ],
+ q(syr) => [
+ q(0415),
+ q(0),
+ ],
+ q(tah) => [
+ q(0416),
+ q(0),
+ ],
+ q(tai) => [
+ q(0417),
+ q(0),
+ ],
+ q(tam) => [
+ q(0418),
+ q(0),
+ ],
+ q(tat) => [
+ q(0419),
+ q(0),
+ ],
+ q(tel) => [
+ q(0420),
+ q(0),
+ ],
+ q(tem) => [
+ q(0421),
+ q(0),
+ ],
+ q(ter) => [
+ q(0422),
+ q(0),
+ ],
+ q(tet) => [
+ q(0423),
+ q(0),
+ ],
+ q(tgk) => [
+ q(0424),
+ q(0),
+ ],
+ q(tgl) => [
+ q(0425),
+ q(0),
+ ],
+ q(tha) => [
+ q(0426),
+ q(0),
+ ],
+ q(tib) => [
+ q(0427),
+ q(0),
+ ],
+ q(tig) => [
+ q(0428),
+ q(0),
+ ],
+ q(tir) => [
+ q(0429),
+ q(0),
+ ],
+ q(tiv) => [
+ q(0430),
+ q(0),
+ ],
+ q(tkl) => [
+ q(0431),
+ q(0),
+ ],
+ q(tlh) => [
+ q(0432),
+ q(0),
+ ],
+ q(tli) => [
+ q(0433),
+ q(0),
+ ],
+ q(tmh) => [
+ q(0434),
+ q(0),
+ ],
+ q(tog) => [
+ q(0435),
+ q(0),
+ ],
+ q(ton) => [
+ q(0436),
+ q(0),
+ ],
+ q(tpi) => [
+ q(0437),
+ q(0),
+ ],
+ q(tsi) => [
+ q(0438),
+ q(0),
+ ],
+ q(tsn) => [
+ q(0439),
+ q(0),
+ ],
+ q(tso) => [
+ q(0440),
+ q(0),
+ ],
+ q(tuk) => [
+ q(0441),
+ q(0),
+ ],
+ q(tum) => [
+ q(0442),
+ q(0),
+ ],
+ q(tup) => [
+ q(0443),
+ q(0),
+ ],
+ q(tur) => [
+ q(0444),
+ q(0),
+ ],
+ q(tut) => [
+ q(0445),
+ q(0),
+ ],
+ q(tvl) => [
+ q(0446),
+ q(0),
+ ],
+ q(twi) => [
+ q(0447),
+ q(0),
+ ],
+ q(tyv) => [
+ q(0448),
+ q(0),
+ ],
+ q(udm) => [
+ q(0449),
+ q(0),
+ ],
+ q(uga) => [
+ q(0450),
+ q(0),
+ ],
+ q(uig) => [
+ q(0451),
+ q(0),
+ ],
+ q(ukr) => [
+ q(0452),
+ q(0),
+ ],
+ q(umb) => [
+ q(0453),
+ q(0),
+ ],
+ q(und) => [
+ q(0454),
+ q(0),
+ ],
+ q(urd) => [
+ q(0455),
+ q(0),
+ ],
+ q(uzb) => [
+ q(0456),
+ q(0),
+ ],
+ q(vai) => [
+ q(0457),
+ q(0),
+ ],
+ q(ven) => [
+ q(0458),
+ q(0),
+ ],
+ q(vie) => [
+ q(0459),
+ q(0),
+ ],
+ q(vol) => [
+ q(0460),
+ q(0),
+ ],
+ q(vot) => [
+ q(0461),
+ q(0),
+ ],
+ q(wak) => [
+ q(0462),
+ q(0),
+ ],
+ q(wal) => [
+ q(0463),
+ q(0),
+ ],
+ q(war) => [
+ q(0464),
+ q(0),
+ ],
+ q(was) => [
+ q(0465),
+ q(0),
+ ],
+ q(wel) => [
+ q(0466),
+ q(0),
+ ],
+ q(wen) => [
+ q(0467),
+ q(0),
+ ],
+ q(wln) => [
+ q(0468),
+ q(0),
+ ],
+ q(wol) => [
+ q(0469),
+ q(0),
+ ],
+ q(xal) => [
+ q(0470),
+ q(0),
+ ],
+ q(xho) => [
+ q(0471),
+ q(0),
+ ],
+ q(yao) => [
+ q(0472),
+ q(0),
+ ],
+ q(yap) => [
+ q(0473),
+ q(0),
+ ],
+ q(yid) => [
+ q(0474),
+ q(0),
+ ],
+ q(yor) => [
+ q(0475),
+ q(0),
+ ],
+ q(ypk) => [
+ q(0476),
+ q(0),
+ ],
+ q(zap) => [
+ q(0477),
+ q(0),
+ ],
+ q(zbl) => [
+ q(0478),
+ q(0),
+ ],
+ q(zen) => [
+ q(0479),
+ q(0),
+ ],
+ q(zha) => [
+ q(0480),
+ q(0),
+ ],
+ q(znd) => [
+ q(0481),
+ q(0),
+ ],
+ q(zul) => [
+ q(0482),
+ q(0),
+ ],
+ q(zun) => [
+ q(0483),
+ q(0),
+ ],
+ q(zxx) => [
+ q(0484),
+ q(0),
+ ],
+ q(zza) => [
+ q(0485),
+ q(0),
+ ],
+ },
+ q(term) => {
+ q(bod) => [
+ q(0427),
+ q(0),
+ ],
+ q(ces) => [
+ q(0101),
+ q(0),
+ ],
+ q(cym) => [
+ q(0466),
+ q(0),
+ ],
+ q(deu) => [
+ q(0150),
+ q(0),
+ ],
+ q(ell) => [
+ q(0164),
+ q(0),
+ ],
+ q(eus) => [
+ q(0044),
+ q(0),
+ ],
+ q(fas) => [
+ q(0342),
+ q(0),
+ ],
+ q(fra) => [
+ q(0137),
+ q(0),
+ ],
+ q(hye) => [
+ q(0024),
+ q(0),
+ ],
+ q(isl) => [
+ q(0187),
+ q(0),
+ ],
+ q(kat) => [
+ q(0149),
+ q(0),
+ ],
+ q(mkd) => [
+ q(0262),
+ q(0),
+ ],
+ q(mri) => [
+ q(0270),
+ q(0),
+ ],
+ q(msa) => [
+ q(0274),
+ q(0),
+ ],
+ q(mya) => [
+ q(0066),
+ q(0),
+ ],
+ q(nld) => [
+ q(0116),
+ q(0),
+ ],
+ q(ron) => [
+ q(0360),
+ q(0),
+ ],
+ q(slk) => [
+ q(0385),
+ q(0),
+ ],
+ q(sqi) => [
+ q(0013),
+ q(0),
+ ],
+ q(zho) => [
+ q(0079),
+ q(0),
+ ],
+ },
+};
+
+$Locale::Codes::Data{'language'}{'id2code'} = {
+ q(alpha2) => {
+ q(0001) => q(aa),
+ q(0002) => q(ab),
+ q(0009) => q(af),
+ q(0011) => q(ak),
+ q(0013) => q(sq),
+ q(0017) => q(am),
+ q(0021) => q(ar),
+ q(0023) => q(an),
+ q(0024) => q(hy),
+ q(0029) => q(as),
+ q(0033) => q(av),
+ q(0034) => q(ae),
+ q(0036) => q(ay),
+ q(0037) => q(az),
+ q(0040) => q(ba),
+ q(0042) => q(bm),
+ q(0044) => q(eu),
+ q(0048) => q(be),
+ q(0050) => q(bn),
+ q(0053) => q(bh),
+ q(0056) => q(bi),
+ q(0059) => q(bs),
+ q(0061) => q(br),
+ q(0065) => q(bg),
+ q(0066) => q(my),
+ q(0071) => q(ca),
+ q(0075) => q(ch),
+ q(0077) => q(ce),
+ q(0079) => q(zh),
+ q(0086) => q(cu),
+ q(0087) => q(cv),
+ q(0091) => q(kw),
+ q(0092) => q(co),
+ q(0096) => q(cr),
+ q(0101) => q(cs),
+ q(0103) => q(da),
+ q(0110) => q(dv),
+ q(0116) => q(nl),
+ q(0118) => q(dz),
+ q(0123) => q(en),
+ q(0125) => q(eo),
+ q(0126) => q(et),
+ q(0127) => q(ee),
+ q(0130) => q(fo),
+ q(0132) => q(fj),
+ q(0134) => q(fi),
+ q(0137) => q(fr),
+ q(0142) => q(fy),
+ q(0143) => q(ff),
+ q(0149) => q(ka),
+ q(0150) => q(de),
+ q(0153) => q(gd),
+ q(0154) => q(ga),
+ q(0155) => q(gl),
+ q(0156) => q(gv),
+ q(0164) => q(el),
+ q(0165) => q(gn),
+ q(0167) => q(gu),
+ q(0170) => q(ht),
+ q(0171) => q(ha),
+ q(0173) => q(he),
+ q(0174) => q(hz),
+ q(0177) => q(hi),
+ q(0180) => q(ho),
+ q(0181) => q(hr),
+ q(0183) => q(hu),
+ q(0186) => q(ig),
+ q(0187) => q(is),
+ q(0188) => q(io),
+ q(0189) => q(ii),
+ q(0191) => q(iu),
+ q(0192) => q(ie),
+ q(0194) => q(ia),
+ q(0196) => q(id),
+ q(0199) => q(ik),
+ q(0202) => q(it),
+ q(0203) => q(jv),
+ q(0205) => q(ja),
+ q(0211) => q(kl),
+ q(0213) => q(kn),
+ q(0215) => q(ks),
+ q(0216) => q(kr),
+ q(0218) => q(kk),
+ q(0222) => q(km),
+ q(0224) => q(ki),
+ q(0225) => q(rw),
+ q(0226) => q(ky),
+ q(0229) => q(kv),
+ q(0230) => q(kg),
+ q(0231) => q(ko),
+ q(0238) => q(kj),
+ q(0240) => q(ku),
+ q(0245) => q(lo),
+ q(0246) => q(la),
+ q(0247) => q(lv),
+ q(0249) => q(li),
+ q(0250) => q(ln),
+ q(0251) => q(lt),
+ q(0254) => q(lb),
+ q(0256) => q(lu),
+ q(0257) => q(lg),
+ q(0262) => q(mk),
+ q(0265) => q(mh),
+ q(0268) => q(ml),
+ q(0270) => q(mi),
+ q(0272) => q(mr),
+ q(0274) => q(ms),
+ q(0283) => q(mg),
+ q(0284) => q(mt),
+ q(0289) => q(mn),
+ q(0301) => q(na),
+ q(0302) => q(nv),
+ q(0303) => q(nr),
+ q(0304) => q(nd),
+ q(0305) => q(ng),
+ q(0307) => q(ne),
+ q(0312) => q(nn),
+ q(0313) => q(nb),
+ q(0316) => q(no),
+ q(0321) => q(ny),
+ q(0326) => q(oc),
+ q(0327) => q(oj),
+ q(0328) => q(or),
+ q(0329) => q(om),
+ q(0331) => q(os),
+ q(0338) => q(pa),
+ q(0342) => q(fa),
+ q(0345) => q(pi),
+ q(0346) => q(pl),
+ q(0348) => q(pt),
+ q(0351) => q(ps),
+ q(0353) => q(qu),
+ q(0358) => q(rm),
+ q(0360) => q(ro),
+ q(0361) => q(rn),
+ q(0363) => q(ru),
+ q(0365) => q(sg),
+ q(0370) => q(sa),
+ q(0381) => q(si),
+ q(0385) => q(sk),
+ q(0386) => q(sl),
+ q(0388) => q(se),
+ q(0392) => q(sm),
+ q(0394) => q(sn),
+ q(0395) => q(sd),
+ q(0398) => q(so),
+ q(0400) => q(st),
+ q(0401) => q(es),
+ q(0402) => q(sc),
+ q(0404) => q(sr),
+ q(0407) => q(ss),
+ q(0409) => q(su),
+ q(0412) => q(sw),
+ q(0413) => q(sv),
+ q(0416) => q(ty),
+ q(0418) => q(ta),
+ q(0419) => q(tt),
+ q(0420) => q(te),
+ q(0424) => q(tg),
+ q(0425) => q(tl),
+ q(0426) => q(th),
+ q(0427) => q(bo),
+ q(0429) => q(ti),
+ q(0436) => q(to),
+ q(0439) => q(tn),
+ q(0440) => q(ts),
+ q(0441) => q(tk),
+ q(0444) => q(tr),
+ q(0447) => q(tw),
+ q(0451) => q(ug),
+ q(0452) => q(uk),
+ q(0455) => q(ur),
+ q(0456) => q(uz),
+ q(0458) => q(ve),
+ q(0459) => q(vi),
+ q(0460) => q(vo),
+ q(0466) => q(cy),
+ q(0468) => q(wa),
+ q(0469) => q(wo),
+ q(0471) => q(xh),
+ q(0474) => q(yi),
+ q(0475) => q(yo),
+ q(0480) => q(za),
+ q(0482) => q(zu),
+ },
+ q(alpha3) => {
+ q(0001) => q(aar),
+ q(0002) => q(abk),
+ q(0003) => q(ace),
+ q(0004) => q(ach),
+ q(0005) => q(ada),
+ q(0006) => q(ady),
+ q(0007) => q(afa),
+ q(0008) => q(afh),
+ q(0009) => q(afr),
+ q(0010) => q(ain),
+ q(0011) => q(aka),
+ q(0012) => q(akk),
+ q(0013) => q(alb),
+ q(0014) => q(ale),
+ q(0015) => q(alg),
+ q(0016) => q(alt),
+ q(0017) => q(amh),
+ q(0018) => q(ang),
+ q(0019) => q(anp),
+ q(0020) => q(apa),
+ q(0021) => q(ara),
+ q(0022) => q(arc),
+ q(0023) => q(arg),
+ q(0024) => q(arm),
+ q(0025) => q(arn),
+ q(0026) => q(arp),
+ q(0027) => q(art),
+ q(0028) => q(arw),
+ q(0029) => q(asm),
+ q(0030) => q(ast),
+ q(0031) => q(ath),
+ q(0032) => q(aus),
+ q(0033) => q(ava),
+ q(0034) => q(ave),
+ q(0035) => q(awa),
+ q(0036) => q(aym),
+ q(0037) => q(aze),
+ q(0038) => q(bad),
+ q(0039) => q(bai),
+ q(0040) => q(bak),
+ q(0041) => q(bal),
+ q(0042) => q(bam),
+ q(0043) => q(ban),
+ q(0044) => q(baq),
+ q(0045) => q(bas),
+ q(0046) => q(bat),
+ q(0047) => q(bej),
+ q(0048) => q(bel),
+ q(0049) => q(bem),
+ q(0050) => q(ben),
+ q(0051) => q(ber),
+ q(0052) => q(bho),
+ q(0053) => q(bih),
+ q(0054) => q(bik),
+ q(0055) => q(bin),
+ q(0056) => q(bis),
+ q(0057) => q(bla),
+ q(0058) => q(bnt),
+ q(0059) => q(bos),
+ q(0060) => q(bra),
+ q(0061) => q(bre),
+ q(0062) => q(btk),
+ q(0063) => q(bua),
+ q(0064) => q(bug),
+ q(0065) => q(bul),
+ q(0066) => q(bur),
+ q(0067) => q(byn),
+ q(0068) => q(cad),
+ q(0069) => q(cai),
+ q(0070) => q(car),
+ q(0071) => q(cat),
+ q(0072) => q(cau),
+ q(0073) => q(ceb),
+ q(0074) => q(cel),
+ q(0075) => q(cha),
+ q(0076) => q(chb),
+ q(0077) => q(che),
+ q(0078) => q(chg),
+ q(0079) => q(chi),
+ q(0080) => q(chk),
+ q(0081) => q(chm),
+ q(0082) => q(chn),
+ q(0083) => q(cho),
+ q(0084) => q(chp),
+ q(0085) => q(chr),
+ q(0086) => q(chu),
+ q(0087) => q(chv),
+ q(0088) => q(chy),
+ q(0089) => q(cmc),
+ q(0090) => q(cop),
+ q(0091) => q(cor),
+ q(0092) => q(cos),
+ q(0093) => q(cpe),
+ q(0094) => q(cpf),
+ q(0095) => q(cpp),
+ q(0096) => q(cre),
+ q(0097) => q(crh),
+ q(0098) => q(crp),
+ q(0099) => q(csb),
+ q(0100) => q(cus),
+ q(0101) => q(cze),
+ q(0102) => q(dak),
+ q(0103) => q(dan),
+ q(0104) => q(dar),
+ q(0105) => q(day),
+ q(0106) => q(del),
+ q(0107) => q(den),
+ q(0108) => q(dgr),
+ q(0109) => q(din),
+ q(0110) => q(div),
+ q(0111) => q(doi),
+ q(0112) => q(dra),
+ q(0113) => q(dsb),
+ q(0114) => q(dua),
+ q(0115) => q(dum),
+ q(0116) => q(dut),
+ q(0117) => q(dyu),
+ q(0118) => q(dzo),
+ q(0119) => q(efi),
+ q(0120) => q(egy),
+ q(0121) => q(eka),
+ q(0122) => q(elx),
+ q(0123) => q(eng),
+ q(0124) => q(enm),
+ q(0125) => q(epo),
+ q(0126) => q(est),
+ q(0127) => q(ewe),
+ q(0128) => q(ewo),
+ q(0129) => q(fan),
+ q(0130) => q(fao),
+ q(0131) => q(fat),
+ q(0132) => q(fij),
+ q(0133) => q(fil),
+ q(0134) => q(fin),
+ q(0135) => q(fiu),
+ q(0136) => q(fon),
+ q(0137) => q(fre),
+ q(0138) => q(frm),
+ q(0139) => q(fro),
+ q(0140) => q(frr),
+ q(0141) => q(frs),
+ q(0142) => q(fry),
+ q(0143) => q(ful),
+ q(0144) => q(fur),
+ q(0145) => q(gaa),
+ q(0146) => q(gay),
+ q(0147) => q(gba),
+ q(0148) => q(gem),
+ q(0149) => q(geo),
+ q(0150) => q(ger),
+ q(0151) => q(gez),
+ q(0152) => q(gil),
+ q(0153) => q(gla),
+ q(0154) => q(gle),
+ q(0155) => q(glg),
+ q(0156) => q(glv),
+ q(0157) => q(gmh),
+ q(0158) => q(goh),
+ q(0159) => q(gon),
+ q(0160) => q(gor),
+ q(0161) => q(got),
+ q(0162) => q(grb),
+ q(0163) => q(grc),
+ q(0164) => q(gre),
+ q(0165) => q(grn),
+ q(0166) => q(gsw),
+ q(0167) => q(guj),
+ q(0168) => q(gwi),
+ q(0169) => q(hai),
+ q(0170) => q(hat),
+ q(0171) => q(hau),
+ q(0172) => q(haw),
+ q(0173) => q(heb),
+ q(0174) => q(her),
+ q(0175) => q(hil),
+ q(0176) => q(him),
+ q(0177) => q(hin),
+ q(0178) => q(hit),
+ q(0179) => q(hmn),
+ q(0180) => q(hmo),
+ q(0181) => q(hrv),
+ q(0182) => q(hsb),
+ q(0183) => q(hun),
+ q(0184) => q(hup),
+ q(0185) => q(iba),
+ q(0186) => q(ibo),
+ q(0187) => q(ice),
+ q(0188) => q(ido),
+ q(0189) => q(iii),
+ q(0190) => q(ijo),
+ q(0191) => q(iku),
+ q(0192) => q(ile),
+ q(0193) => q(ilo),
+ q(0194) => q(ina),
+ q(0195) => q(inc),
+ q(0196) => q(ind),
+ q(0197) => q(ine),
+ q(0198) => q(inh),
+ q(0199) => q(ipk),
+ q(0200) => q(ira),
+ q(0201) => q(iro),
+ q(0202) => q(ita),
+ q(0203) => q(jav),
+ q(0204) => q(jbo),
+ q(0205) => q(jpn),
+ q(0206) => q(jpr),
+ q(0207) => q(jrb),
+ q(0208) => q(kaa),
+ q(0209) => q(kab),
+ q(0210) => q(kac),
+ q(0211) => q(kal),
+ q(0212) => q(kam),
+ q(0213) => q(kan),
+ q(0214) => q(kar),
+ q(0215) => q(kas),
+ q(0216) => q(kau),
+ q(0217) => q(kaw),
+ q(0218) => q(kaz),
+ q(0219) => q(kbd),
+ q(0220) => q(kha),
+ q(0221) => q(khi),
+ q(0222) => q(khm),
+ q(0223) => q(kho),
+ q(0224) => q(kik),
+ q(0225) => q(kin),
+ q(0226) => q(kir),
+ q(0227) => q(kmb),
+ q(0228) => q(kok),
+ q(0229) => q(kom),
+ q(0230) => q(kon),
+ q(0231) => q(kor),
+ q(0232) => q(kos),
+ q(0233) => q(kpe),
+ q(0234) => q(krc),
+ q(0235) => q(krl),
+ q(0236) => q(kro),
+ q(0237) => q(kru),
+ q(0238) => q(kua),
+ q(0239) => q(kum),
+ q(0240) => q(kur),
+ q(0241) => q(kut),
+ q(0242) => q(lad),
+ q(0243) => q(lah),
+ q(0244) => q(lam),
+ q(0245) => q(lao),
+ q(0246) => q(lat),
+ q(0247) => q(lav),
+ q(0248) => q(lez),
+ q(0249) => q(lim),
+ q(0250) => q(lin),
+ q(0251) => q(lit),
+ q(0252) => q(lol),
+ q(0253) => q(loz),
+ q(0254) => q(ltz),
+ q(0255) => q(lua),
+ q(0256) => q(lub),
+ q(0257) => q(lug),
+ q(0258) => q(lui),
+ q(0259) => q(lun),
+ q(0260) => q(luo),
+ q(0261) => q(lus),
+ q(0262) => q(mac),
+ q(0263) => q(mad),
+ q(0264) => q(mag),
+ q(0265) => q(mah),
+ q(0266) => q(mai),
+ q(0267) => q(mak),
+ q(0268) => q(mal),
+ q(0269) => q(man),
+ q(0270) => q(mao),
+ q(0271) => q(map),
+ q(0272) => q(mar),
+ q(0273) => q(mas),
+ q(0274) => q(may),
+ q(0275) => q(mdf),
+ q(0276) => q(mdr),
+ q(0277) => q(men),
+ q(0278) => q(mga),
+ q(0279) => q(mic),
+ q(0280) => q(min),
+ q(0281) => q(mis),
+ q(0282) => q(mkh),
+ q(0283) => q(mlg),
+ q(0284) => q(mlt),
+ q(0285) => q(mnc),
+ q(0286) => q(mni),
+ q(0287) => q(mno),
+ q(0288) => q(moh),
+ q(0289) => q(mon),
+ q(0290) => q(mos),
+ q(0291) => q(mul),
+ q(0292) => q(mun),
+ q(0293) => q(mus),
+ q(0294) => q(mwl),
+ q(0295) => q(mwr),
+ q(0296) => q(myn),
+ q(0297) => q(myv),
+ q(0298) => q(nah),
+ q(0299) => q(nai),
+ q(0300) => q(nap),
+ q(0301) => q(nau),
+ q(0302) => q(nav),
+ q(0303) => q(nbl),
+ q(0304) => q(nde),
+ q(0305) => q(ndo),
+ q(0306) => q(nds),
+ q(0307) => q(nep),
+ q(0308) => q(new),
+ q(0309) => q(nia),
+ q(0310) => q(nic),
+ q(0311) => q(niu),
+ q(0312) => q(nno),
+ q(0313) => q(nob),
+ q(0314) => q(nog),
+ q(0315) => q(non),
+ q(0316) => q(nor),
+ q(0317) => q(nqo),
+ q(0318) => q(nso),
+ q(0319) => q(nub),
+ q(0320) => q(nwc),
+ q(0321) => q(nya),
+ q(0322) => q(nym),
+ q(0323) => q(nyn),
+ q(0324) => q(nyo),
+ q(0325) => q(nzi),
+ q(0326) => q(oci),
+ q(0327) => q(oji),
+ q(0328) => q(ori),
+ q(0329) => q(orm),
+ q(0330) => q(osa),
+ q(0331) => q(oss),
+ q(0332) => q(ota),
+ q(0333) => q(oto),
+ q(0334) => q(paa),
+ q(0335) => q(pag),
+ q(0336) => q(pal),
+ q(0337) => q(pam),
+ q(0338) => q(pan),
+ q(0339) => q(pap),
+ q(0340) => q(pau),
+ q(0341) => q(peo),
+ q(0342) => q(per),
+ q(0343) => q(phi),
+ q(0344) => q(phn),
+ q(0345) => q(pli),
+ q(0346) => q(pol),
+ q(0347) => q(pon),
+ q(0348) => q(por),
+ q(0349) => q(pra),
+ q(0350) => q(pro),
+ q(0351) => q(pus),
+ q(0352) => q(qtz),
+ q(0353) => q(que),
+ q(0354) => q(raj),
+ q(0355) => q(rap),
+ q(0356) => q(rar),
+ q(0357) => q(roa),
+ q(0358) => q(roh),
+ q(0359) => q(rom),
+ q(0360) => q(rum),
+ q(0361) => q(run),
+ q(0362) => q(rup),
+ q(0363) => q(rus),
+ q(0364) => q(sad),
+ q(0365) => q(sag),
+ q(0366) => q(sah),
+ q(0367) => q(sai),
+ q(0368) => q(sal),
+ q(0369) => q(sam),
+ q(0370) => q(san),
+ q(0371) => q(sas),
+ q(0372) => q(sat),
+ q(0373) => q(scn),
+ q(0374) => q(sco),
+ q(0375) => q(sel),
+ q(0376) => q(sem),
+ q(0377) => q(sga),
+ q(0378) => q(sgn),
+ q(0379) => q(shn),
+ q(0380) => q(sid),
+ q(0381) => q(sin),
+ q(0382) => q(sio),
+ q(0383) => q(sit),
+ q(0384) => q(sla),
+ q(0385) => q(slo),
+ q(0386) => q(slv),
+ q(0387) => q(sma),
+ q(0388) => q(sme),
+ q(0389) => q(smi),
+ q(0390) => q(smj),
+ q(0391) => q(smn),
+ q(0392) => q(smo),
+ q(0393) => q(sms),
+ q(0394) => q(sna),
+ q(0395) => q(snd),
+ q(0396) => q(snk),
+ q(0397) => q(sog),
+ q(0398) => q(som),
+ q(0399) => q(son),
+ q(0400) => q(sot),
+ q(0401) => q(spa),
+ q(0402) => q(srd),
+ q(0403) => q(srn),
+ q(0404) => q(srp),
+ q(0405) => q(srr),
+ q(0406) => q(ssa),
+ q(0407) => q(ssw),
+ q(0408) => q(suk),
+ q(0409) => q(sun),
+ q(0410) => q(sus),
+ q(0411) => q(sux),
+ q(0412) => q(swa),
+ q(0413) => q(swe),
+ q(0414) => q(syc),
+ q(0415) => q(syr),
+ q(0416) => q(tah),
+ q(0417) => q(tai),
+ q(0418) => q(tam),
+ q(0419) => q(tat),
+ q(0420) => q(tel),
+ q(0421) => q(tem),
+ q(0422) => q(ter),
+ q(0423) => q(tet),
+ q(0424) => q(tgk),
+ q(0425) => q(tgl),
+ q(0426) => q(tha),
+ q(0427) => q(tib),
+ q(0428) => q(tig),
+ q(0429) => q(tir),
+ q(0430) => q(tiv),
+ q(0431) => q(tkl),
+ q(0432) => q(tlh),
+ q(0433) => q(tli),
+ q(0434) => q(tmh),
+ q(0435) => q(tog),
+ q(0436) => q(ton),
+ q(0437) => q(tpi),
+ q(0438) => q(tsi),
+ q(0439) => q(tsn),
+ q(0440) => q(tso),
+ q(0441) => q(tuk),
+ q(0442) => q(tum),
+ q(0443) => q(tup),
+ q(0444) => q(tur),
+ q(0445) => q(tut),
+ q(0446) => q(tvl),
+ q(0447) => q(twi),
+ q(0448) => q(tyv),
+ q(0449) => q(udm),
+ q(0450) => q(uga),
+ q(0451) => q(uig),
+ q(0452) => q(ukr),
+ q(0453) => q(umb),
+ q(0454) => q(und),
+ q(0455) => q(urd),
+ q(0456) => q(uzb),
+ q(0457) => q(vai),
+ q(0458) => q(ven),
+ q(0459) => q(vie),
+ q(0460) => q(vol),
+ q(0461) => q(vot),
+ q(0462) => q(wak),
+ q(0463) => q(wal),
+ q(0464) => q(war),
+ q(0465) => q(was),
+ q(0466) => q(wel),
+ q(0467) => q(wen),
+ q(0468) => q(wln),
+ q(0469) => q(wol),
+ q(0470) => q(xal),
+ q(0471) => q(xho),
+ q(0472) => q(yao),
+ q(0473) => q(yap),
+ q(0474) => q(yid),
+ q(0475) => q(yor),
+ q(0476) => q(ypk),
+ q(0477) => q(zap),
+ q(0478) => q(zbl),
+ q(0479) => q(zen),
+ q(0480) => q(zha),
+ q(0481) => q(znd),
+ q(0482) => q(zul),
+ q(0483) => q(zun),
+ q(0484) => q(zxx),
+ q(0485) => q(zza),
+ },
+ q(term) => {
+ q(0013) => q(sqi),
+ q(0024) => q(hye),
+ q(0044) => q(eus),
+ q(0066) => q(mya),
+ q(0079) => q(zho),
+ q(0101) => q(ces),
+ q(0116) => q(nld),
+ q(0137) => q(fra),
+ q(0149) => q(kat),
+ q(0150) => q(deu),
+ q(0164) => q(ell),
+ q(0187) => q(isl),
+ q(0262) => q(mkd),
+ q(0270) => q(mri),
+ q(0274) => q(msa),
+ q(0342) => q(fas),
+ q(0360) => q(ron),
+ q(0385) => q(slk),
+ q(0427) => q(bod),
+ q(0466) => q(cym),
+ },
+};
+
+1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Codes/Script.pm b/Master/tlpkg/tlperl/lib/Locale/Codes/Script.pm
new file mode 100644
index 00000000000..1eb4bd537fb
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Codes/Script.pm
@@ -0,0 +1,2699 @@
+package Locale::Codes::Script;
+
+# This file was automatically generated. Any changes to this file will
+# be lost the next time 'get_codes' is run.
+# Generated on: Tue Mar 1 15:02:24 EST 2011
+
+=pod
+
+=head1 NAME
+
+Locale::Codes::Script - script codes for the Locale::Script module
+
+=head1 SYNOPSIS
+
+This module contains data used by the Locale::Script module. It is
+not intended to be used directly, and contains no calleable routines.
+
+=head1 AUTHOR
+
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
+
+=head1 COPYRIGHT
+
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
+
+This module is free software; you can redistribute it and/or
+modify it under the same terms as Perl itself.
+
+=cut
+
+use strict;
+use warnings;
+require 5.002;
+
+our($VERSION);
+$VERSION='3.16';
+
+$Locale::Codes::Data{'script'}{'id'} = '0156';
+
+$Locale::Codes::Data{'script'}{'id2names'} = {
+ q(0001) => [
+ q(Afaka),
+ ],
+ q(0002) => [
+ q(Arabic),
+ ],
+ q(0003) => [
+ q(Imperial Aramaic),
+ ],
+ q(0004) => [
+ q(Armenian),
+ ],
+ q(0005) => [
+ q(Avestan),
+ ],
+ q(0006) => [
+ q(Balinese),
+ ],
+ q(0007) => [
+ q(Bamum),
+ ],
+ q(0008) => [
+ q(Bassa Vah),
+ ],
+ q(0009) => [
+ q(Batak),
+ ],
+ q(0010) => [
+ q(Bengali),
+ ],
+ q(0011) => [
+ q(Blissymbols),
+ ],
+ q(0012) => [
+ q(Bopomofo),
+ ],
+ q(0013) => [
+ q(Brahmi),
+ ],
+ q(0014) => [
+ q(Braille),
+ ],
+ q(0015) => [
+ q(Buginese),
+ ],
+ q(0016) => [
+ q(Buhid),
+ ],
+ q(0017) => [
+ q(Chakma),
+ ],
+ q(0018) => [
+ q(Unified Canadian Aboriginal Syllabics),
+ ],
+ q(0019) => [
+ q(Carian),
+ ],
+ q(0020) => [
+ q(Cham),
+ ],
+ q(0021) => [
+ q(Cherokee),
+ ],
+ q(0022) => [
+ q(Cirth),
+ ],
+ q(0023) => [
+ q(Coptic),
+ ],
+ q(0024) => [
+ q(Cypriot),
+ ],
+ q(0025) => [
+ q(Cyrillic),
+ ],
+ q(0026) => [
+ q(Cyrillic (Old Church Slavonic variant)),
+ ],
+ q(0027) => [
+ q(Devanagari (Nagari)),
+ ],
+ q(0028) => [
+ q(Deseret (Mormon)),
+ ],
+ q(0029) => [
+ q(Duployan shorthand, Duployan stenography),
+ ],
+ q(0030) => [
+ q(Egyptian demotic),
+ ],
+ q(0031) => [
+ q(Egyptian hieratic),
+ ],
+ q(0032) => [
+ q(Egyptian hieroglyphs),
+ ],
+ q(0033) => [
+ q(Elbasan),
+ ],
+ q(0034) => [
+ q(Ethiopic (Geez)),
+ ],
+ q(0035) => [
+ q(Georgian (Mkhedruli)),
+ ],
+ q(0036) => [
+ q(Khutsuri (Asomtavruli and Nuskhuri)),
+ ],
+ q(0037) => [
+ q(Glagolitic),
+ ],
+ q(0038) => [
+ q(Gothic),
+ ],
+ q(0039) => [
+ q(Grantha),
+ ],
+ q(0040) => [
+ q(Greek),
+ ],
+ q(0041) => [
+ q(Gujarati),
+ ],
+ q(0042) => [
+ q(Gurmukhi),
+ ],
+ q(0043) => [
+ q(Hangul (Hangul, Hangeul)),
+ ],
+ q(0044) => [
+ q(Han (Hanzi, Kanji, Hanja)),
+ ],
+ q(0045) => [
+ q(Hanunoo (Hanunoo)),
+ ],
+ q(0046) => [
+ q(Han (Simplified variant)),
+ ],
+ q(0047) => [
+ q(Han (Traditional variant)),
+ ],
+ q(0048) => [
+ q(Hebrew),
+ ],
+ q(0049) => [
+ q(Hiragana),
+ ],
+ q(0050) => [
+ q(Pahawh Hmong),
+ ],
+ q(0051) => [
+ q((alias for Hiragana + Katakana)),
+ ],
+ q(0052) => [
+ q(Old Hungarian),
+ ],
+ q(0053) => [
+ q(Indus (Harappan)),
+ ],
+ q(0054) => [
+ q(Old Italic (Etruscan, Oscan, etc.)),
+ ],
+ q(0055) => [
+ q(Javanese),
+ ],
+ q(0056) => [
+ q(Japanese (alias for Han + Hiragana + Katakana)),
+ ],
+ q(0057) => [
+ q(Jurchen),
+ ],
+ q(0058) => [
+ q(Kayah Li),
+ ],
+ q(0059) => [
+ q(Katakana),
+ ],
+ q(0060) => [
+ q(Kharoshthi),
+ ],
+ q(0061) => [
+ q(Khmer),
+ ],
+ q(0062) => [
+ q(Kannada),
+ ],
+ q(0063) => [
+ q(Korean (alias for Hangul + Han)),
+ ],
+ q(0064) => [
+ q(Kpelle),
+ ],
+ q(0065) => [
+ q(Kaithi),
+ ],
+ q(0066) => [
+ q(Tai Tham (Lanna)),
+ ],
+ q(0067) => [
+ q(Lao),
+ ],
+ q(0068) => [
+ q(Latin (Fraktur variant)),
+ ],
+ q(0069) => [
+ q(Latin (Gaelic variant)),
+ ],
+ q(0070) => [
+ q(Latin),
+ ],
+ q(0071) => [
+ q(Lepcha (Rong)),
+ ],
+ q(0072) => [
+ q(Limbu),
+ ],
+ q(0073) => [
+ q(Linear A),
+ ],
+ q(0074) => [
+ q(Linear B),
+ ],
+ q(0075) => [
+ q(Lisu (Fraser)),
+ ],
+ q(0076) => [
+ q(Loma),
+ ],
+ q(0077) => [
+ q(Lycian),
+ ],
+ q(0078) => [
+ q(Lydian),
+ ],
+ q(0079) => [
+ q(Mandaic, Mandaean),
+ ],
+ q(0080) => [
+ q(Manichaean),
+ ],
+ q(0081) => [
+ q(Mayan hieroglyphs),
+ ],
+ q(0082) => [
+ q(Mende),
+ ],
+ q(0083) => [
+ q(Meroitic Cursive),
+ ],
+ q(0084) => [
+ q(Meroitic Hieroglyphs),
+ ],
+ q(0085) => [
+ q(Malayalam),
+ ],
+ q(0086) => [
+ q(Moon (Moon code, Moon script, Moon type)),
+ ],
+ q(0087) => [
+ q(Mongolian),
+ ],
+ q(0088) => [
+ q(Mro, Mru),
+ ],
+ q(0089) => [
+ q(Meitei Mayek (Meithei, Meetei)),
+ ],
+ q(0090) => [
+ q(Myanmar (Burmese)),
+ ],
+ q(0091) => [
+ q(Old North Arabian (Ancient North Arabian)),
+ ],
+ q(0092) => [
+ q(Nabataean),
+ ],
+ q(0093) => [
+ q(Nakhi Geba ('Na-'Khi Ggo-baw, Naxi Geba)),
+ ],
+ q(0094) => [
+ q(N'Ko),
+ ],
+ q(0095) => [
+ q(Nushu),
+ ],
+ q(0096) => [
+ q(Ogham),
+ ],
+ q(0097) => [
+ q(Ol Chiki (Ol Cemet, Ol, Santali)),
+ ],
+ q(0098) => [
+ q(Old Turkic, Orkhon Runic),
+ ],
+ q(0099) => [
+ q(Oriya),
+ ],
+ q(0100) => [
+ q(Osmanya),
+ ],
+ q(0101) => [
+ q(Palmyrene),
+ ],
+ q(0102) => [
+ q(Old Permic),
+ ],
+ q(0103) => [
+ q(Phags-pa),
+ ],
+ q(0104) => [
+ q(Inscriptional Pahlavi),
+ ],
+ q(0105) => [
+ q(Psalter Pahlavi),
+ ],
+ q(0106) => [
+ q(Book Pahlavi),
+ ],
+ q(0107) => [
+ q(Phoenician),
+ ],
+ q(0108) => [
+ q(Miao (Pollard)),
+ ],
+ q(0109) => [
+ q(Inscriptional Parthian),
+ ],
+ q(0110) => [
+ q(Reserved for private use (start)),
+ ],
+ q(0111) => [
+ q(Reserved for private use (end)),
+ ],
+ q(0112) => [
+ q(Rejang (Redjang, Kaganga)),
+ ],
+ q(0113) => [
+ q(Rongorongo),
+ ],
+ q(0114) => [
+ q(Runic),
+ ],
+ q(0115) => [
+ q(Samaritan),
+ ],
+ q(0116) => [
+ q(Sarati),
+ ],
+ q(0117) => [
+ q(Old South Arabian),
+ ],
+ q(0118) => [
+ q(Saurashtra),
+ ],
+ q(0119) => [
+ q(SignWriting),
+ ],
+ q(0120) => [
+ q(Shavian (Shaw)),
+ ],
+ q(0121) => [
+ q(Sharada, Sarada),
+ ],
+ q(0122) => [
+ q(Khudawadi, Sindhi),
+ ],
+ q(0123) => [
+ q(Sinhala),
+ ],
+ q(0124) => [
+ q(Sora Sompeng),
+ ],
+ q(0125) => [
+ q(Sundanese),
+ ],
+ q(0126) => [
+ q(Syloti Nagri),
+ ],
+ q(0127) => [
+ q(Syriac),
+ ],
+ q(0128) => [
+ q(Syriac (Estrangelo variant)),
+ ],
+ q(0129) => [
+ q(Syriac (Western variant)),
+ ],
+ q(0130) => [
+ q(Syriac (Eastern variant)),
+ ],
+ q(0131) => [
+ q(Tagbanwa),
+ ],
+ q(0132) => [
+ q(Takri, Takri, Tankri),
+ ],
+ q(0133) => [
+ q(Tai Le),
+ ],
+ q(0134) => [
+ q(New Tai Lue),
+ ],
+ q(0135) => [
+ q(Tamil),
+ ],
+ q(0136) => [
+ q(Tangut),
+ ],
+ q(0137) => [
+ q(Tai Viet),
+ ],
+ q(0138) => [
+ q(Telugu),
+ ],
+ q(0139) => [
+ q(Tengwar),
+ ],
+ q(0140) => [
+ q(Tifinagh (Berber)),
+ ],
+ q(0141) => [
+ q(Tagalog (Baybayin, Alibata)),
+ ],
+ q(0142) => [
+ q(Thaana),
+ ],
+ q(0143) => [
+ q(Thai),
+ ],
+ q(0144) => [
+ q(Tibetan),
+ ],
+ q(0145) => [
+ q(Ugaritic),
+ ],
+ q(0146) => [
+ q(Vai),
+ ],
+ q(0147) => [
+ q(Visible Speech),
+ ],
+ q(0148) => [
+ q(Warang Citi (Varang Kshiti)),
+ ],
+ q(0149) => [
+ q(Woleai),
+ ],
+ q(0150) => [
+ q(Old Persian),
+ ],
+ q(0151) => [
+ q(Cuneiform, Sumero-Akkadian),
+ ],
+ q(0152) => [
+ q(Yi),
+ ],
+ q(0153) => [
+ q(Code for inherited script),
+ ],
+ q(0154) => [
+ q(Mathematical notation),
+ ],
+ q(0155) => [
+ q(Symbols),
+ ],
+};
+
+$Locale::Codes::Data{'script'}{'alias2id'} = {
+ q((alias for hiragana + katakana)) => [
+ q(0051),
+ q(0),
+ ],
+ q(afaka) => [
+ q(0001),
+ q(0),
+ ],
+ q(arabic) => [
+ q(0002),
+ q(0),
+ ],
+ q(armenian) => [
+ q(0004),
+ q(0),
+ ],
+ q(avestan) => [
+ q(0005),
+ q(0),
+ ],
+ q(balinese) => [
+ q(0006),
+ q(0),
+ ],
+ q(bamum) => [
+ q(0007),
+ q(0),
+ ],
+ q(bassa vah) => [
+ q(0008),
+ q(0),
+ ],
+ q(batak) => [
+ q(0009),
+ q(0),
+ ],
+ q(bengali) => [
+ q(0010),
+ q(0),
+ ],
+ q(blissymbols) => [
+ q(0011),
+ q(0),
+ ],
+ q(book pahlavi) => [
+ q(0106),
+ q(0),
+ ],
+ q(bopomofo) => [
+ q(0012),
+ q(0),
+ ],
+ q(brahmi) => [
+ q(0013),
+ q(0),
+ ],
+ q(braille) => [
+ q(0014),
+ q(0),
+ ],
+ q(buginese) => [
+ q(0015),
+ q(0),
+ ],
+ q(buhid) => [
+ q(0016),
+ q(0),
+ ],
+ q(carian) => [
+ q(0019),
+ q(0),
+ ],
+ q(chakma) => [
+ q(0017),
+ q(0),
+ ],
+ q(cham) => [
+ q(0020),
+ q(0),
+ ],
+ q(cherokee) => [
+ q(0021),
+ q(0),
+ ],
+ q(cirth) => [
+ q(0022),
+ q(0),
+ ],
+ q(code for inherited script) => [
+ q(0153),
+ q(0),
+ ],
+ q(coptic) => [
+ q(0023),
+ q(0),
+ ],
+ q(cuneiform, sumero-akkadian) => [
+ q(0151),
+ q(0),
+ ],
+ q(cypriot) => [
+ q(0024),
+ q(0),
+ ],
+ q(cyrillic) => [
+ q(0025),
+ q(0),
+ ],
+ q(cyrillic (old church slavonic variant)) => [
+ q(0026),
+ q(0),
+ ],
+ q(deseret (mormon)) => [
+ q(0028),
+ q(0),
+ ],
+ q(devanagari (nagari)) => [
+ q(0027),
+ q(0),
+ ],
+ q(duployan shorthand, duployan stenography) => [
+ q(0029),
+ q(0),
+ ],
+ q(egyptian demotic) => [
+ q(0030),
+ q(0),
+ ],
+ q(egyptian hieratic) => [
+ q(0031),
+ q(0),
+ ],
+ q(egyptian hieroglyphs) => [
+ q(0032),
+ q(0),
+ ],
+ q(elbasan) => [
+ q(0033),
+ q(0),
+ ],
+ q(ethiopic (geez)) => [
+ q(0034),
+ q(0),
+ ],
+ q(georgian (mkhedruli)) => [
+ q(0035),
+ q(0),
+ ],
+ q(glagolitic) => [
+ q(0037),
+ q(0),
+ ],
+ q(gothic) => [
+ q(0038),
+ q(0),
+ ],
+ q(grantha) => [
+ q(0039),
+ q(0),
+ ],
+ q(greek) => [
+ q(0040),
+ q(0),
+ ],
+ q(gujarati) => [
+ q(0041),
+ q(0),
+ ],
+ q(gurmukhi) => [
+ q(0042),
+ q(0),
+ ],
+ q(han (hanzi, kanji, hanja)) => [
+ q(0044),
+ q(0),
+ ],
+ q(han (simplified variant)) => [
+ q(0046),
+ q(0),
+ ],
+ q(han (traditional variant)) => [
+ q(0047),
+ q(0),
+ ],
+ q(hangul (hangul, hangeul)) => [
+ q(0043),
+ q(0),
+ ],
+ q(hanunoo (hanunoo)) => [
+ q(0045),
+ q(0),
+ ],
+ q(hebrew) => [
+ q(0048),
+ q(0),
+ ],
+ q(hiragana) => [
+ q(0049),
+ q(0),
+ ],
+ q(imperial aramaic) => [
+ q(0003),
+ q(0),
+ ],
+ q(indus (harappan)) => [
+ q(0053),
+ q(0),
+ ],
+ q(inscriptional pahlavi) => [
+ q(0104),
+ q(0),
+ ],
+ q(inscriptional parthian) => [
+ q(0109),
+ q(0),
+ ],
+ q(japanese (alias for han + hiragana + katakana)) => [
+ q(0056),
+ q(0),
+ ],
+ q(javanese) => [
+ q(0055),
+ q(0),
+ ],
+ q(jurchen) => [
+ q(0057),
+ q(0),
+ ],
+ q(kaithi) => [
+ q(0065),
+ q(0),
+ ],
+ q(kannada) => [
+ q(0062),
+ q(0),
+ ],
+ q(katakana) => [
+ q(0059),
+ q(0),
+ ],
+ q(kayah li) => [
+ q(0058),
+ q(0),
+ ],
+ q(kharoshthi) => [
+ q(0060),
+ q(0),
+ ],
+ q(khmer) => [
+ q(0061),
+ q(0),
+ ],
+ q(khudawadi, sindhi) => [
+ q(0122),
+ q(0),
+ ],
+ q(khutsuri (asomtavruli and nuskhuri)) => [
+ q(0036),
+ q(0),
+ ],
+ q(korean (alias for hangul + han)) => [
+ q(0063),
+ q(0),
+ ],
+ q(kpelle) => [
+ q(0064),
+ q(0),
+ ],
+ q(lao) => [
+ q(0067),
+ q(0),
+ ],
+ q(latin) => [
+ q(0070),
+ q(0),
+ ],
+ q(latin (fraktur variant)) => [
+ q(0068),
+ q(0),
+ ],
+ q(latin (gaelic variant)) => [
+ q(0069),
+ q(0),
+ ],
+ q(lepcha (rong)) => [
+ q(0071),
+ q(0),
+ ],
+ q(limbu) => [
+ q(0072),
+ q(0),
+ ],
+ q(linear a) => [
+ q(0073),
+ q(0),
+ ],
+ q(linear b) => [
+ q(0074),
+ q(0),
+ ],
+ q(lisu (fraser)) => [
+ q(0075),
+ q(0),
+ ],
+ q(loma) => [
+ q(0076),
+ q(0),
+ ],
+ q(lycian) => [
+ q(0077),
+ q(0),
+ ],
+ q(lydian) => [
+ q(0078),
+ q(0),
+ ],
+ q(malayalam) => [
+ q(0085),
+ q(0),
+ ],
+ q(mandaic, mandaean) => [
+ q(0079),
+ q(0),
+ ],
+ q(manichaean) => [
+ q(0080),
+ q(0),
+ ],
+ q(mathematical notation) => [
+ q(0154),
+ q(0),
+ ],
+ q(mayan hieroglyphs) => [
+ q(0081),
+ q(0),
+ ],
+ q(meitei mayek (meithei, meetei)) => [
+ q(0089),
+ q(0),
+ ],
+ q(mende) => [
+ q(0082),
+ q(0),
+ ],
+ q(meroitic cursive) => [
+ q(0083),
+ q(0),
+ ],
+ q(meroitic hieroglyphs) => [
+ q(0084),
+ q(0),
+ ],
+ q(miao (pollard)) => [
+ q(0108),
+ q(0),
+ ],
+ q(mongolian) => [
+ q(0087),
+ q(0),
+ ],
+ q(moon (moon code, moon script, moon type)) => [
+ q(0086),
+ q(0),
+ ],
+ q(mro, mru) => [
+ q(0088),
+ q(0),
+ ],
+ q(myanmar (burmese)) => [
+ q(0090),
+ q(0),
+ ],
+ q(n'ko) => [
+ q(0094),
+ q(0),
+ ],
+ q(nabataean) => [
+ q(0092),
+ q(0),
+ ],
+ q(nakhi geba ('na-'khi ggo-baw, naxi geba)) => [
+ q(0093),
+ q(0),
+ ],
+ q(new tai lue) => [
+ q(0134),
+ q(0),
+ ],
+ q(nushu) => [
+ q(0095),
+ q(0),
+ ],
+ q(ogham) => [
+ q(0096),
+ q(0),
+ ],
+ q(ol chiki (ol cemet, ol, santali)) => [
+ q(0097),
+ q(0),
+ ],
+ q(old hungarian) => [
+ q(0052),
+ q(0),
+ ],
+ q(old italic (etruscan, oscan, etc.)) => [
+ q(0054),
+ q(0),
+ ],
+ q(old north arabian (ancient north arabian)) => [
+ q(0091),
+ q(0),
+ ],
+ q(old permic) => [
+ q(0102),
+ q(0),
+ ],
+ q(old persian) => [
+ q(0150),
+ q(0),
+ ],
+ q(old south arabian) => [
+ q(0117),
+ q(0),
+ ],
+ q(old turkic, orkhon runic) => [
+ q(0098),
+ q(0),
+ ],
+ q(oriya) => [
+ q(0099),
+ q(0),
+ ],
+ q(osmanya) => [
+ q(0100),
+ q(0),
+ ],
+ q(pahawh hmong) => [
+ q(0050),
+ q(0),
+ ],
+ q(palmyrene) => [
+ q(0101),
+ q(0),
+ ],
+ q(phags-pa) => [
+ q(0103),
+ q(0),
+ ],
+ q(phoenician) => [
+ q(0107),
+ q(0),
+ ],
+ q(psalter pahlavi) => [
+ q(0105),
+ q(0),
+ ],
+ q(rejang (redjang, kaganga)) => [
+ q(0112),
+ q(0),
+ ],
+ q(reserved for private use (end)) => [
+ q(0111),
+ q(0),
+ ],
+ q(reserved for private use (start)) => [
+ q(0110),
+ q(0),
+ ],
+ q(rongorongo) => [
+ q(0113),
+ q(0),
+ ],
+ q(runic) => [
+ q(0114),
+ q(0),
+ ],
+ q(samaritan) => [
+ q(0115),
+ q(0),
+ ],
+ q(sarati) => [
+ q(0116),
+ q(0),
+ ],
+ q(saurashtra) => [
+ q(0118),
+ q(0),
+ ],
+ q(sharada, sarada) => [
+ q(0121),
+ q(0),
+ ],
+ q(shavian (shaw)) => [
+ q(0120),
+ q(0),
+ ],
+ q(signwriting) => [
+ q(0119),
+ q(0),
+ ],
+ q(sinhala) => [
+ q(0123),
+ q(0),
+ ],
+ q(sora sompeng) => [
+ q(0124),
+ q(0),
+ ],
+ q(sundanese) => [
+ q(0125),
+ q(0),
+ ],
+ q(syloti nagri) => [
+ q(0126),
+ q(0),
+ ],
+ q(symbols) => [
+ q(0155),
+ q(0),
+ ],
+ q(syriac) => [
+ q(0127),
+ q(0),
+ ],
+ q(syriac (eastern variant)) => [
+ q(0130),
+ q(0),
+ ],
+ q(syriac (estrangelo variant)) => [
+ q(0128),
+ q(0),
+ ],
+ q(syriac (western variant)) => [
+ q(0129),
+ q(0),
+ ],
+ q(tagalog (baybayin, alibata)) => [
+ q(0141),
+ q(0),
+ ],
+ q(tagbanwa) => [
+ q(0131),
+ q(0),
+ ],
+ q(tai le) => [
+ q(0133),
+ q(0),
+ ],
+ q(tai tham (lanna)) => [
+ q(0066),
+ q(0),
+ ],
+ q(tai viet) => [
+ q(0137),
+ q(0),
+ ],
+ q(takri, takri, tankri) => [
+ q(0132),
+ q(0),
+ ],
+ q(tamil) => [
+ q(0135),
+ q(0),
+ ],
+ q(tangut) => [
+ q(0136),
+ q(0),
+ ],
+ q(telugu) => [
+ q(0138),
+ q(0),
+ ],
+ q(tengwar) => [
+ q(0139),
+ q(0),
+ ],
+ q(thaana) => [
+ q(0142),
+ q(0),
+ ],
+ q(thai) => [
+ q(0143),
+ q(0),
+ ],
+ q(tibetan) => [
+ q(0144),
+ q(0),
+ ],
+ q(tifinagh (berber)) => [
+ q(0140),
+ q(0),
+ ],
+ q(ugaritic) => [
+ q(0145),
+ q(0),
+ ],
+ q(unified canadian aboriginal syllabics) => [
+ q(0018),
+ q(0),
+ ],
+ q(vai) => [
+ q(0146),
+ q(0),
+ ],
+ q(visible speech) => [
+ q(0147),
+ q(0),
+ ],
+ q(warang citi (varang kshiti)) => [
+ q(0148),
+ q(0),
+ ],
+ q(woleai) => [
+ q(0149),
+ q(0),
+ ],
+ q(yi) => [
+ q(0152),
+ q(0),
+ ],
+};
+
+$Locale::Codes::Data{'script'}{'code2id'} = {
+ q(alpha) => {
+ q(Afak) => [
+ q(0001),
+ q(0),
+ ],
+ q(Arab) => [
+ q(0002),
+ q(0),
+ ],
+ q(Armi) => [
+ q(0003),
+ q(0),
+ ],
+ q(Armn) => [
+ q(0004),
+ q(0),
+ ],
+ q(Avst) => [
+ q(0005),
+ q(0),
+ ],
+ q(Bali) => [
+ q(0006),
+ q(0),
+ ],
+ q(Bamu) => [
+ q(0007),
+ q(0),
+ ],
+ q(Bass) => [
+ q(0008),
+ q(0),
+ ],
+ q(Batk) => [
+ q(0009),
+ q(0),
+ ],
+ q(Beng) => [
+ q(0010),
+ q(0),
+ ],
+ q(Blis) => [
+ q(0011),
+ q(0),
+ ],
+ q(Bopo) => [
+ q(0012),
+ q(0),
+ ],
+ q(Brah) => [
+ q(0013),
+ q(0),
+ ],
+ q(Brai) => [
+ q(0014),
+ q(0),
+ ],
+ q(Bugi) => [
+ q(0015),
+ q(0),
+ ],
+ q(Buhd) => [
+ q(0016),
+ q(0),
+ ],
+ q(Cakm) => [
+ q(0017),
+ q(0),
+ ],
+ q(Cans) => [
+ q(0018),
+ q(0),
+ ],
+ q(Cari) => [
+ q(0019),
+ q(0),
+ ],
+ q(Cham) => [
+ q(0020),
+ q(0),
+ ],
+ q(Cher) => [
+ q(0021),
+ q(0),
+ ],
+ q(Cirt) => [
+ q(0022),
+ q(0),
+ ],
+ q(Copt) => [
+ q(0023),
+ q(0),
+ ],
+ q(Cprt) => [
+ q(0024),
+ q(0),
+ ],
+ q(Cyrl) => [
+ q(0025),
+ q(0),
+ ],
+ q(Cyrs) => [
+ q(0026),
+ q(0),
+ ],
+ q(Deva) => [
+ q(0027),
+ q(0),
+ ],
+ q(Dsrt) => [
+ q(0028),
+ q(0),
+ ],
+ q(Dupl) => [
+ q(0029),
+ q(0),
+ ],
+ q(Egyd) => [
+ q(0030),
+ q(0),
+ ],
+ q(Egyh) => [
+ q(0031),
+ q(0),
+ ],
+ q(Egyp) => [
+ q(0032),
+ q(0),
+ ],
+ q(Elba) => [
+ q(0033),
+ q(0),
+ ],
+ q(Ethi) => [
+ q(0034),
+ q(0),
+ ],
+ q(Geok) => [
+ q(0036),
+ q(0),
+ ],
+ q(Geor) => [
+ q(0035),
+ q(0),
+ ],
+ q(Glag) => [
+ q(0037),
+ q(0),
+ ],
+ q(Goth) => [
+ q(0038),
+ q(0),
+ ],
+ q(Gran) => [
+ q(0039),
+ q(0),
+ ],
+ q(Grek) => [
+ q(0040),
+ q(0),
+ ],
+ q(Gujr) => [
+ q(0041),
+ q(0),
+ ],
+ q(Guru) => [
+ q(0042),
+ q(0),
+ ],
+ q(Hang) => [
+ q(0043),
+ q(0),
+ ],
+ q(Hani) => [
+ q(0044),
+ q(0),
+ ],
+ q(Hano) => [
+ q(0045),
+ q(0),
+ ],
+ q(Hans) => [
+ q(0046),
+ q(0),
+ ],
+ q(Hant) => [
+ q(0047),
+ q(0),
+ ],
+ q(Hebr) => [
+ q(0048),
+ q(0),
+ ],
+ q(Hira) => [
+ q(0049),
+ q(0),
+ ],
+ q(Hmng) => [
+ q(0050),
+ q(0),
+ ],
+ q(Hrkt) => [
+ q(0051),
+ q(0),
+ ],
+ q(Hung) => [
+ q(0052),
+ q(0),
+ ],
+ q(Inds) => [
+ q(0053),
+ q(0),
+ ],
+ q(Ital) => [
+ q(0054),
+ q(0),
+ ],
+ q(Java) => [
+ q(0055),
+ q(0),
+ ],
+ q(Jpan) => [
+ q(0056),
+ q(0),
+ ],
+ q(Jurc) => [
+ q(0057),
+ q(0),
+ ],
+ q(Kali) => [
+ q(0058),
+ q(0),
+ ],
+ q(Kana) => [
+ q(0059),
+ q(0),
+ ],
+ q(Khar) => [
+ q(0060),
+ q(0),
+ ],
+ q(Khmr) => [
+ q(0061),
+ q(0),
+ ],
+ q(Knda) => [
+ q(0062),
+ q(0),
+ ],
+ q(Kore) => [
+ q(0063),
+ q(0),
+ ],
+ q(Kpel) => [
+ q(0064),
+ q(0),
+ ],
+ q(Kthi) => [
+ q(0065),
+ q(0),
+ ],
+ q(Lana) => [
+ q(0066),
+ q(0),
+ ],
+ q(Laoo) => [
+ q(0067),
+ q(0),
+ ],
+ q(Latf) => [
+ q(0068),
+ q(0),
+ ],
+ q(Latg) => [
+ q(0069),
+ q(0),
+ ],
+ q(Latn) => [
+ q(0070),
+ q(0),
+ ],
+ q(Lepc) => [
+ q(0071),
+ q(0),
+ ],
+ q(Limb) => [
+ q(0072),
+ q(0),
+ ],
+ q(Lina) => [
+ q(0073),
+ q(0),
+ ],
+ q(Linb) => [
+ q(0074),
+ q(0),
+ ],
+ q(Lisu) => [
+ q(0075),
+ q(0),
+ ],
+ q(Loma) => [
+ q(0076),
+ q(0),
+ ],
+ q(Lyci) => [
+ q(0077),
+ q(0),
+ ],
+ q(Lydi) => [
+ q(0078),
+ q(0),
+ ],
+ q(Mand) => [
+ q(0079),
+ q(0),
+ ],
+ q(Mani) => [
+ q(0080),
+ q(0),
+ ],
+ q(Maya) => [
+ q(0081),
+ q(0),
+ ],
+ q(Mend) => [
+ q(0082),
+ q(0),
+ ],
+ q(Merc) => [
+ q(0083),
+ q(0),
+ ],
+ q(Mero) => [
+ q(0084),
+ q(0),
+ ],
+ q(Mlym) => [
+ q(0085),
+ q(0),
+ ],
+ q(Mong) => [
+ q(0087),
+ q(0),
+ ],
+ q(Moon) => [
+ q(0086),
+ q(0),
+ ],
+ q(Mroo) => [
+ q(0088),
+ q(0),
+ ],
+ q(Mtei) => [
+ q(0089),
+ q(0),
+ ],
+ q(Mymr) => [
+ q(0090),
+ q(0),
+ ],
+ q(Narb) => [
+ q(0091),
+ q(0),
+ ],
+ q(Nbat) => [
+ q(0092),
+ q(0),
+ ],
+ q(Nkgb) => [
+ q(0093),
+ q(0),
+ ],
+ q(Nkoo) => [
+ q(0094),
+ q(0),
+ ],
+ q(Nshu) => [
+ q(0095),
+ q(0),
+ ],
+ q(Ogam) => [
+ q(0096),
+ q(0),
+ ],
+ q(Olck) => [
+ q(0097),
+ q(0),
+ ],
+ q(Orkh) => [
+ q(0098),
+ q(0),
+ ],
+ q(Orya) => [
+ q(0099),
+ q(0),
+ ],
+ q(Osma) => [
+ q(0100),
+ q(0),
+ ],
+ q(Palm) => [
+ q(0101),
+ q(0),
+ ],
+ q(Perm) => [
+ q(0102),
+ q(0),
+ ],
+ q(Phag) => [
+ q(0103),
+ q(0),
+ ],
+ q(Phli) => [
+ q(0104),
+ q(0),
+ ],
+ q(Phlp) => [
+ q(0105),
+ q(0),
+ ],
+ q(Phlv) => [
+ q(0106),
+ q(0),
+ ],
+ q(Phnx) => [
+ q(0107),
+ q(0),
+ ],
+ q(Plrd) => [
+ q(0108),
+ q(0),
+ ],
+ q(Prti) => [
+ q(0109),
+ q(0),
+ ],
+ q(Qaaa) => [
+ q(0110),
+ q(0),
+ ],
+ q(Qabx) => [
+ q(0111),
+ q(0),
+ ],
+ q(Rjng) => [
+ q(0112),
+ q(0),
+ ],
+ q(Roro) => [
+ q(0113),
+ q(0),
+ ],
+ q(Runr) => [
+ q(0114),
+ q(0),
+ ],
+ q(Samr) => [
+ q(0115),
+ q(0),
+ ],
+ q(Sara) => [
+ q(0116),
+ q(0),
+ ],
+ q(Sarb) => [
+ q(0117),
+ q(0),
+ ],
+ q(Saur) => [
+ q(0118),
+ q(0),
+ ],
+ q(Sgnw) => [
+ q(0119),
+ q(0),
+ ],
+ q(Shaw) => [
+ q(0120),
+ q(0),
+ ],
+ q(Shrd) => [
+ q(0121),
+ q(0),
+ ],
+ q(Sind) => [
+ q(0122),
+ q(0),
+ ],
+ q(Sinh) => [
+ q(0123),
+ q(0),
+ ],
+ q(Sora) => [
+ q(0124),
+ q(0),
+ ],
+ q(Sund) => [
+ q(0125),
+ q(0),
+ ],
+ q(Sylo) => [
+ q(0126),
+ q(0),
+ ],
+ q(Syrc) => [
+ q(0127),
+ q(0),
+ ],
+ q(Syre) => [
+ q(0128),
+ q(0),
+ ],
+ q(Syrj) => [
+ q(0129),
+ q(0),
+ ],
+ q(Syrn) => [
+ q(0130),
+ q(0),
+ ],
+ q(Tagb) => [
+ q(0131),
+ q(0),
+ ],
+ q(Takr) => [
+ q(0132),
+ q(0),
+ ],
+ q(Tale) => [
+ q(0133),
+ q(0),
+ ],
+ q(Talu) => [
+ q(0134),
+ q(0),
+ ],
+ q(Taml) => [
+ q(0135),
+ q(0),
+ ],
+ q(Tang) => [
+ q(0136),
+ q(0),
+ ],
+ q(Tavt) => [
+ q(0137),
+ q(0),
+ ],
+ q(Telu) => [
+ q(0138),
+ q(0),
+ ],
+ q(Teng) => [
+ q(0139),
+ q(0),
+ ],
+ q(Tfng) => [
+ q(0140),
+ q(0),
+ ],
+ q(Tglg) => [
+ q(0141),
+ q(0),
+ ],
+ q(Thaa) => [
+ q(0142),
+ q(0),
+ ],
+ q(Thai) => [
+ q(0143),
+ q(0),
+ ],
+ q(Tibt) => [
+ q(0144),
+ q(0),
+ ],
+ q(Ugar) => [
+ q(0145),
+ q(0),
+ ],
+ q(Vaii) => [
+ q(0146),
+ q(0),
+ ],
+ q(Visp) => [
+ q(0147),
+ q(0),
+ ],
+ q(Wara) => [
+ q(0148),
+ q(0),
+ ],
+ q(Wole) => [
+ q(0149),
+ q(0),
+ ],
+ q(Xpeo) => [
+ q(0150),
+ q(0),
+ ],
+ q(Xsux) => [
+ q(0151),
+ q(0),
+ ],
+ q(Yiii) => [
+ q(0152),
+ q(0),
+ ],
+ q(Zinh) => [
+ q(0153),
+ q(0),
+ ],
+ q(Zmth) => [
+ q(0154),
+ q(0),
+ ],
+ q(Zsym) => [
+ q(0155),
+ q(0),
+ ],
+ },
+ q(num) => {
+ q(020) => [
+ q(0151),
+ q(0),
+ ],
+ q(030) => [
+ q(0150),
+ q(0),
+ ],
+ q(040) => [
+ q(0145),
+ q(0),
+ ],
+ q(050) => [
+ q(0032),
+ q(0),
+ ],
+ q(060) => [
+ q(0031),
+ q(0),
+ ],
+ q(070) => [
+ q(0030),
+ q(0),
+ ],
+ q(090) => [
+ q(0081),
+ q(0),
+ ],
+ q(095) => [
+ q(0119),
+ q(0),
+ ],
+ q(100) => [
+ q(0084),
+ q(0),
+ ],
+ q(101) => [
+ q(0083),
+ q(0),
+ ],
+ q(105) => [
+ q(0117),
+ q(0),
+ ],
+ q(106) => [
+ q(0091),
+ q(0),
+ ],
+ q(115) => [
+ q(0107),
+ q(0),
+ ],
+ q(116) => [
+ q(0078),
+ q(0),
+ ],
+ q(120) => [
+ q(0140),
+ q(0),
+ ],
+ q(123) => [
+ q(0115),
+ q(0),
+ ],
+ q(124) => [
+ q(0003),
+ q(0),
+ ],
+ q(125) => [
+ q(0048),
+ q(0),
+ ],
+ q(126) => [
+ q(0101),
+ q(0),
+ ],
+ q(130) => [
+ q(0109),
+ q(0),
+ ],
+ q(131) => [
+ q(0104),
+ q(0),
+ ],
+ q(132) => [
+ q(0105),
+ q(0),
+ ],
+ q(133) => [
+ q(0106),
+ q(0),
+ ],
+ q(134) => [
+ q(0005),
+ q(0),
+ ],
+ q(135) => [
+ q(0127),
+ q(0),
+ ],
+ q(136) => [
+ q(0130),
+ q(0),
+ ],
+ q(137) => [
+ q(0129),
+ q(0),
+ ],
+ q(138) => [
+ q(0128),
+ q(0),
+ ],
+ q(139) => [
+ q(0080),
+ q(0),
+ ],
+ q(140) => [
+ q(0079),
+ q(0),
+ ],
+ q(145) => [
+ q(0087),
+ q(0),
+ ],
+ q(159) => [
+ q(0092),
+ q(0),
+ ],
+ q(160) => [
+ q(0002),
+ q(0),
+ ],
+ q(165) => [
+ q(0094),
+ q(0),
+ ],
+ q(170) => [
+ q(0142),
+ q(0),
+ ],
+ q(175) => [
+ q(0098),
+ q(0),
+ ],
+ q(176) => [
+ q(0052),
+ q(0),
+ ],
+ q(199) => [
+ q(0088),
+ q(0),
+ ],
+ q(200) => [
+ q(0040),
+ q(0),
+ ],
+ q(201) => [
+ q(0019),
+ q(0),
+ ],
+ q(202) => [
+ q(0077),
+ q(0),
+ ],
+ q(204) => [
+ q(0023),
+ q(0),
+ ],
+ q(206) => [
+ q(0038),
+ q(0),
+ ],
+ q(210) => [
+ q(0054),
+ q(0),
+ ],
+ q(211) => [
+ q(0114),
+ q(0),
+ ],
+ q(212) => [
+ q(0096),
+ q(0),
+ ],
+ q(215) => [
+ q(0070),
+ q(0),
+ ],
+ q(216) => [
+ q(0069),
+ q(0),
+ ],
+ q(217) => [
+ q(0068),
+ q(0),
+ ],
+ q(218) => [
+ q(0086),
+ q(0),
+ ],
+ q(220) => [
+ q(0025),
+ q(0),
+ ],
+ q(221) => [
+ q(0026),
+ q(0),
+ ],
+ q(225) => [
+ q(0037),
+ q(0),
+ ],
+ q(226) => [
+ q(0033),
+ q(0),
+ ],
+ q(227) => [
+ q(0102),
+ q(0),
+ ],
+ q(230) => [
+ q(0004),
+ q(0),
+ ],
+ q(240) => [
+ q(0035),
+ q(0),
+ ],
+ q(241) => [
+ q(0036),
+ q(0),
+ ],
+ q(250) => [
+ q(0028),
+ q(0),
+ ],
+ q(259) => [
+ q(0008),
+ q(0),
+ ],
+ q(260) => [
+ q(0100),
+ q(0),
+ ],
+ q(261) => [
+ q(0097),
+ q(0),
+ ],
+ q(262) => [
+ q(0148),
+ q(0),
+ ],
+ q(280) => [
+ q(0147),
+ q(0),
+ ],
+ q(281) => [
+ q(0120),
+ q(0),
+ ],
+ q(282) => [
+ q(0108),
+ q(0),
+ ],
+ q(285) => [
+ q(0012),
+ q(0),
+ ],
+ q(286) => [
+ q(0043),
+ q(0),
+ ],
+ q(287) => [
+ q(0063),
+ q(0),
+ ],
+ q(290) => [
+ q(0139),
+ q(0),
+ ],
+ q(291) => [
+ q(0022),
+ q(0),
+ ],
+ q(292) => [
+ q(0116),
+ q(0),
+ ],
+ q(300) => [
+ q(0013),
+ q(0),
+ ],
+ q(305) => [
+ q(0060),
+ q(0),
+ ],
+ q(310) => [
+ q(0042),
+ q(0),
+ ],
+ q(315) => [
+ q(0027),
+ q(0),
+ ],
+ q(316) => [
+ q(0126),
+ q(0),
+ ],
+ q(317) => [
+ q(0065),
+ q(0),
+ ],
+ q(318) => [
+ q(0122),
+ q(0),
+ ],
+ q(319) => [
+ q(0121),
+ q(0),
+ ],
+ q(320) => [
+ q(0041),
+ q(0),
+ ],
+ q(321) => [
+ q(0132),
+ q(0),
+ ],
+ q(325) => [
+ q(0010),
+ q(0),
+ ],
+ q(327) => [
+ q(0099),
+ q(0),
+ ],
+ q(330) => [
+ q(0144),
+ q(0),
+ ],
+ q(331) => [
+ q(0103),
+ q(0),
+ ],
+ q(335) => [
+ q(0071),
+ q(0),
+ ],
+ q(336) => [
+ q(0072),
+ q(0),
+ ],
+ q(337) => [
+ q(0089),
+ q(0),
+ ],
+ q(340) => [
+ q(0138),
+ q(0),
+ ],
+ q(343) => [
+ q(0039),
+ q(0),
+ ],
+ q(344) => [
+ q(0118),
+ q(0),
+ ],
+ q(345) => [
+ q(0062),
+ q(0),
+ ],
+ q(346) => [
+ q(0135),
+ q(0),
+ ],
+ q(347) => [
+ q(0085),
+ q(0),
+ ],
+ q(348) => [
+ q(0123),
+ q(0),
+ ],
+ q(349) => [
+ q(0017),
+ q(0),
+ ],
+ q(350) => [
+ q(0090),
+ q(0),
+ ],
+ q(351) => [
+ q(0066),
+ q(0),
+ ],
+ q(352) => [
+ q(0143),
+ q(0),
+ ],
+ q(353) => [
+ q(0133),
+ q(0),
+ ],
+ q(354) => [
+ q(0134),
+ q(0),
+ ],
+ q(355) => [
+ q(0061),
+ q(0),
+ ],
+ q(356) => [
+ q(0067),
+ q(0),
+ ],
+ q(357) => [
+ q(0058),
+ q(0),
+ ],
+ q(358) => [
+ q(0020),
+ q(0),
+ ],
+ q(359) => [
+ q(0137),
+ q(0),
+ ],
+ q(360) => [
+ q(0006),
+ q(0),
+ ],
+ q(361) => [
+ q(0055),
+ q(0),
+ ],
+ q(362) => [
+ q(0125),
+ q(0),
+ ],
+ q(363) => [
+ q(0112),
+ q(0),
+ ],
+ q(365) => [
+ q(0009),
+ q(0),
+ ],
+ q(367) => [
+ q(0015),
+ q(0),
+ ],
+ q(370) => [
+ q(0141),
+ q(0),
+ ],
+ q(371) => [
+ q(0045),
+ q(0),
+ ],
+ q(372) => [
+ q(0016),
+ q(0),
+ ],
+ q(373) => [
+ q(0131),
+ q(0),
+ ],
+ q(398) => [
+ q(0124),
+ q(0),
+ ],
+ q(399) => [
+ q(0075),
+ q(0),
+ ],
+ q(400) => [
+ q(0073),
+ q(0),
+ ],
+ q(401) => [
+ q(0074),
+ q(0),
+ ],
+ q(403) => [
+ q(0024),
+ q(0),
+ ],
+ q(410) => [
+ q(0049),
+ q(0),
+ ],
+ q(411) => [
+ q(0059),
+ q(0),
+ ],
+ q(412) => [
+ q(0051),
+ q(0),
+ ],
+ q(413) => [
+ q(0056),
+ q(0),
+ ],
+ q(420) => [
+ q(0093),
+ q(0),
+ ],
+ q(430) => [
+ q(0034),
+ q(0),
+ ],
+ q(435) => [
+ q(0007),
+ q(0),
+ ],
+ q(436) => [
+ q(0064),
+ q(0),
+ ],
+ q(437) => [
+ q(0076),
+ q(0),
+ ],
+ q(438) => [
+ q(0082),
+ q(0),
+ ],
+ q(439) => [
+ q(0001),
+ q(0),
+ ],
+ q(440) => [
+ q(0018),
+ q(0),
+ ],
+ q(445) => [
+ q(0021),
+ q(0),
+ ],
+ q(450) => [
+ q(0050),
+ q(0),
+ ],
+ q(460) => [
+ q(0152),
+ q(0),
+ ],
+ q(470) => [
+ q(0146),
+ q(0),
+ ],
+ q(480) => [
+ q(0149),
+ q(0),
+ ],
+ q(499) => [
+ q(0095),
+ q(0),
+ ],
+ q(500) => [
+ q(0044),
+ q(0),
+ ],
+ q(501) => [
+ q(0046),
+ q(0),
+ ],
+ q(502) => [
+ q(0047),
+ q(0),
+ ],
+ q(510) => [
+ q(0057),
+ q(0),
+ ],
+ q(520) => [
+ q(0136),
+ q(0),
+ ],
+ q(550) => [
+ q(0011),
+ q(0),
+ ],
+ q(570) => [
+ q(0014),
+ q(0),
+ ],
+ q(610) => [
+ q(0053),
+ q(0),
+ ],
+ q(620) => [
+ q(0113),
+ q(0),
+ ],
+ q(755) => [
+ q(0029),
+ q(0),
+ ],
+ q(900) => [
+ q(0110),
+ q(0),
+ ],
+ q(949) => [
+ q(0111),
+ q(0),
+ ],
+ q(994) => [
+ q(0153),
+ q(0),
+ ],
+ q(995) => [
+ q(0154),
+ q(0),
+ ],
+ q(996) => [
+ q(0155),
+ q(0),
+ ],
+ },
+};
+
+$Locale::Codes::Data{'script'}{'id2code'} = {
+ q(alpha) => {
+ q(0001) => q(Afak),
+ q(0002) => q(Arab),
+ q(0003) => q(Armi),
+ q(0004) => q(Armn),
+ q(0005) => q(Avst),
+ q(0006) => q(Bali),
+ q(0007) => q(Bamu),
+ q(0008) => q(Bass),
+ q(0009) => q(Batk),
+ q(0010) => q(Beng),
+ q(0011) => q(Blis),
+ q(0012) => q(Bopo),
+ q(0013) => q(Brah),
+ q(0014) => q(Brai),
+ q(0015) => q(Bugi),
+ q(0016) => q(Buhd),
+ q(0017) => q(Cakm),
+ q(0018) => q(Cans),
+ q(0019) => q(Cari),
+ q(0020) => q(Cham),
+ q(0021) => q(Cher),
+ q(0022) => q(Cirt),
+ q(0023) => q(Copt),
+ q(0024) => q(Cprt),
+ q(0025) => q(Cyrl),
+ q(0026) => q(Cyrs),
+ q(0027) => q(Deva),
+ q(0028) => q(Dsrt),
+ q(0029) => q(Dupl),
+ q(0030) => q(Egyd),
+ q(0031) => q(Egyh),
+ q(0032) => q(Egyp),
+ q(0033) => q(Elba),
+ q(0034) => q(Ethi),
+ q(0035) => q(Geor),
+ q(0036) => q(Geok),
+ q(0037) => q(Glag),
+ q(0038) => q(Goth),
+ q(0039) => q(Gran),
+ q(0040) => q(Grek),
+ q(0041) => q(Gujr),
+ q(0042) => q(Guru),
+ q(0043) => q(Hang),
+ q(0044) => q(Hani),
+ q(0045) => q(Hano),
+ q(0046) => q(Hans),
+ q(0047) => q(Hant),
+ q(0048) => q(Hebr),
+ q(0049) => q(Hira),
+ q(0050) => q(Hmng),
+ q(0051) => q(Hrkt),
+ q(0052) => q(Hung),
+ q(0053) => q(Inds),
+ q(0054) => q(Ital),
+ q(0055) => q(Java),
+ q(0056) => q(Jpan),
+ q(0057) => q(Jurc),
+ q(0058) => q(Kali),
+ q(0059) => q(Kana),
+ q(0060) => q(Khar),
+ q(0061) => q(Khmr),
+ q(0062) => q(Knda),
+ q(0063) => q(Kore),
+ q(0064) => q(Kpel),
+ q(0065) => q(Kthi),
+ q(0066) => q(Lana),
+ q(0067) => q(Laoo),
+ q(0068) => q(Latf),
+ q(0069) => q(Latg),
+ q(0070) => q(Latn),
+ q(0071) => q(Lepc),
+ q(0072) => q(Limb),
+ q(0073) => q(Lina),
+ q(0074) => q(Linb),
+ q(0075) => q(Lisu),
+ q(0076) => q(Loma),
+ q(0077) => q(Lyci),
+ q(0078) => q(Lydi),
+ q(0079) => q(Mand),
+ q(0080) => q(Mani),
+ q(0081) => q(Maya),
+ q(0082) => q(Mend),
+ q(0083) => q(Merc),
+ q(0084) => q(Mero),
+ q(0085) => q(Mlym),
+ q(0086) => q(Moon),
+ q(0087) => q(Mong),
+ q(0088) => q(Mroo),
+ q(0089) => q(Mtei),
+ q(0090) => q(Mymr),
+ q(0091) => q(Narb),
+ q(0092) => q(Nbat),
+ q(0093) => q(Nkgb),
+ q(0094) => q(Nkoo),
+ q(0095) => q(Nshu),
+ q(0096) => q(Ogam),
+ q(0097) => q(Olck),
+ q(0098) => q(Orkh),
+ q(0099) => q(Orya),
+ q(0100) => q(Osma),
+ q(0101) => q(Palm),
+ q(0102) => q(Perm),
+ q(0103) => q(Phag),
+ q(0104) => q(Phli),
+ q(0105) => q(Phlp),
+ q(0106) => q(Phlv),
+ q(0107) => q(Phnx),
+ q(0108) => q(Plrd),
+ q(0109) => q(Prti),
+ q(0110) => q(Qaaa),
+ q(0111) => q(Qabx),
+ q(0112) => q(Rjng),
+ q(0113) => q(Roro),
+ q(0114) => q(Runr),
+ q(0115) => q(Samr),
+ q(0116) => q(Sara),
+ q(0117) => q(Sarb),
+ q(0118) => q(Saur),
+ q(0119) => q(Sgnw),
+ q(0120) => q(Shaw),
+ q(0121) => q(Shrd),
+ q(0122) => q(Sind),
+ q(0123) => q(Sinh),
+ q(0124) => q(Sora),
+ q(0125) => q(Sund),
+ q(0126) => q(Sylo),
+ q(0127) => q(Syrc),
+ q(0128) => q(Syre),
+ q(0129) => q(Syrj),
+ q(0130) => q(Syrn),
+ q(0131) => q(Tagb),
+ q(0132) => q(Takr),
+ q(0133) => q(Tale),
+ q(0134) => q(Talu),
+ q(0135) => q(Taml),
+ q(0136) => q(Tang),
+ q(0137) => q(Tavt),
+ q(0138) => q(Telu),
+ q(0139) => q(Teng),
+ q(0140) => q(Tfng),
+ q(0141) => q(Tglg),
+ q(0142) => q(Thaa),
+ q(0143) => q(Thai),
+ q(0144) => q(Tibt),
+ q(0145) => q(Ugar),
+ q(0146) => q(Vaii),
+ q(0147) => q(Visp),
+ q(0148) => q(Wara),
+ q(0149) => q(Wole),
+ q(0150) => q(Xpeo),
+ q(0151) => q(Xsux),
+ q(0152) => q(Yiii),
+ q(0153) => q(Zinh),
+ q(0154) => q(Zmth),
+ q(0155) => q(Zsym),
+ },
+ q(num) => {
+ q(0001) => q(439),
+ q(0002) => q(160),
+ q(0003) => q(124),
+ q(0004) => q(230),
+ q(0005) => q(134),
+ q(0006) => q(360),
+ q(0007) => q(435),
+ q(0008) => q(259),
+ q(0009) => q(365),
+ q(0010) => q(325),
+ q(0011) => q(550),
+ q(0012) => q(285),
+ q(0013) => q(300),
+ q(0014) => q(570),
+ q(0015) => q(367),
+ q(0016) => q(372),
+ q(0017) => q(349),
+ q(0018) => q(440),
+ q(0019) => q(201),
+ q(0020) => q(358),
+ q(0021) => q(445),
+ q(0022) => q(291),
+ q(0023) => q(204),
+ q(0024) => q(403),
+ q(0025) => q(220),
+ q(0026) => q(221),
+ q(0027) => q(315),
+ q(0028) => q(250),
+ q(0029) => q(755),
+ q(0030) => q(070),
+ q(0031) => q(060),
+ q(0032) => q(050),
+ q(0033) => q(226),
+ q(0034) => q(430),
+ q(0035) => q(240),
+ q(0036) => q(241),
+ q(0037) => q(225),
+ q(0038) => q(206),
+ q(0039) => q(343),
+ q(0040) => q(200),
+ q(0041) => q(320),
+ q(0042) => q(310),
+ q(0043) => q(286),
+ q(0044) => q(500),
+ q(0045) => q(371),
+ q(0046) => q(501),
+ q(0047) => q(502),
+ q(0048) => q(125),
+ q(0049) => q(410),
+ q(0050) => q(450),
+ q(0051) => q(412),
+ q(0052) => q(176),
+ q(0053) => q(610),
+ q(0054) => q(210),
+ q(0055) => q(361),
+ q(0056) => q(413),
+ q(0057) => q(510),
+ q(0058) => q(357),
+ q(0059) => q(411),
+ q(0060) => q(305),
+ q(0061) => q(355),
+ q(0062) => q(345),
+ q(0063) => q(287),
+ q(0064) => q(436),
+ q(0065) => q(317),
+ q(0066) => q(351),
+ q(0067) => q(356),
+ q(0068) => q(217),
+ q(0069) => q(216),
+ q(0070) => q(215),
+ q(0071) => q(335),
+ q(0072) => q(336),
+ q(0073) => q(400),
+ q(0074) => q(401),
+ q(0075) => q(399),
+ q(0076) => q(437),
+ q(0077) => q(202),
+ q(0078) => q(116),
+ q(0079) => q(140),
+ q(0080) => q(139),
+ q(0081) => q(090),
+ q(0082) => q(438),
+ q(0083) => q(101),
+ q(0084) => q(100),
+ q(0085) => q(347),
+ q(0086) => q(218),
+ q(0087) => q(145),
+ q(0088) => q(199),
+ q(0089) => q(337),
+ q(0090) => q(350),
+ q(0091) => q(106),
+ q(0092) => q(159),
+ q(0093) => q(420),
+ q(0094) => q(165),
+ q(0095) => q(499),
+ q(0096) => q(212),
+ q(0097) => q(261),
+ q(0098) => q(175),
+ q(0099) => q(327),
+ q(0100) => q(260),
+ q(0101) => q(126),
+ q(0102) => q(227),
+ q(0103) => q(331),
+ q(0104) => q(131),
+ q(0105) => q(132),
+ q(0106) => q(133),
+ q(0107) => q(115),
+ q(0108) => q(282),
+ q(0109) => q(130),
+ q(0110) => q(900),
+ q(0111) => q(949),
+ q(0112) => q(363),
+ q(0113) => q(620),
+ q(0114) => q(211),
+ q(0115) => q(123),
+ q(0116) => q(292),
+ q(0117) => q(105),
+ q(0118) => q(344),
+ q(0119) => q(095),
+ q(0120) => q(281),
+ q(0121) => q(319),
+ q(0122) => q(318),
+ q(0123) => q(348),
+ q(0124) => q(398),
+ q(0125) => q(362),
+ q(0126) => q(316),
+ q(0127) => q(135),
+ q(0128) => q(138),
+ q(0129) => q(137),
+ q(0130) => q(136),
+ q(0131) => q(373),
+ q(0132) => q(321),
+ q(0133) => q(353),
+ q(0134) => q(354),
+ q(0135) => q(346),
+ q(0136) => q(520),
+ q(0137) => q(359),
+ q(0138) => q(340),
+ q(0139) => q(290),
+ q(0140) => q(120),
+ q(0141) => q(370),
+ q(0142) => q(170),
+ q(0143) => q(352),
+ q(0144) => q(330),
+ q(0145) => q(040),
+ q(0146) => q(470),
+ q(0147) => q(280),
+ q(0148) => q(262),
+ q(0149) => q(480),
+ q(0150) => q(030),
+ q(0151) => q(020),
+ q(0152) => q(460),
+ q(0153) => q(994),
+ q(0154) => q(995),
+ q(0155) => q(996),
+ },
+};
+
+1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Constants.pm b/Master/tlpkg/tlperl/lib/Locale/Constants.pm
index d8ef8f7e21a..56cefe3dec5 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Constants.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Constants.pm
@@ -1,31 +1,80 @@
-#
-# Locale::Constants - defined constants for identifying codesets
-#
-# $Id: Constants.pm,v 2.7 2004/06/10 21:19:34 neilb Exp $
-#
-
package Locale::Constants;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
use strict;
+use warnings;
require Exporter;
#-----------------------------------------------------------------------
# Public Global Variables
#-----------------------------------------------------------------------
-use vars qw($VERSION @ISA @EXPORT);
-$VERSION = sprintf("%d.%02d", q$Revision: 2.7 $ =~ /(\d+)\.(\d+)/);
-@ISA = qw(Exporter);
-@EXPORT = qw(LOCALE_CODE_ALPHA_2 LOCALE_CODE_ALPHA_3 LOCALE_CODE_NUMERIC
- LOCALE_CODE_DEFAULT);
+
+our($VERSION,@ISA,@EXPORT);
+
+$VERSION='3.16';
+@ISA = qw(Exporter);
+@EXPORT = qw(LOCALE_CODE_ALPHA_2
+ LOCALE_CODE_ALPHA_3
+ LOCALE_CODE_NUMERIC
+ LOCALE_CODE_FIPS
+ LOCALE_CODE_DOM
+ LOCALE_CODE_DEFAULT
+
+ LOCALE_LANG_ALPHA_2
+ LOCALE_LANG_ALPHA_3
+ LOCALE_LANG_TERM
+ LOCALE_LANG_DEFAULT
+
+ LOCALE_CURR_ALPHA
+ LOCALE_CURR_NUMERIC
+ LOCALE_CURR_DEFAULT
+
+ LOCALE_SCRIPT_ALPHA
+ LOCALE_SCRIPT_NUMERIC
+ LOCALE_SCRIPT_DEFAULT
+ );
#-----------------------------------------------------------------------
# Constants
#-----------------------------------------------------------------------
-use constant LOCALE_CODE_ALPHA_2 => 1;
-use constant LOCALE_CODE_ALPHA_3 => 2;
-use constant LOCALE_CODE_NUMERIC => 3;
-use constant LOCALE_CODE_DEFAULT => LOCALE_CODE_ALPHA_2;
+use constant LOCALE_CODE_ALPHA_2 => 1;
+use constant LOCALE_CODE_ALPHA_3 => 2;
+use constant LOCALE_CODE_NUMERIC => 3;
+use constant LOCALE_CODE_FIPS => 4;
+use constant LOCALE_CODE_DOM => 5;
-1;
+use constant LOCALE_CODE_DEFAULT => LOCALE_CODE_ALPHA_2;
+use constant LOCALE_LANG_ALPHA_2 => 1;
+use constant LOCALE_LANG_ALPHA_3 => 2;
+use constant LOCALE_LANG_TERM => 3;
+
+use constant LOCALE_LANG_DEFAULT => LOCALE_LANG_ALPHA_2;
+
+use constant LOCALE_CURR_ALPHA => 1;
+use constant LOCALE_CURR_NUMERIC => 2;
+
+use constant LOCALE_CURR_DEFAULT => LOCALE_CURR_ALPHA;
+
+use constant LOCALE_SCRIPT_ALPHA => 1;
+use constant LOCALE_SCRIPT_NUMERIC => 2;
+
+use constant LOCALE_SCRIPT_DEFAULT => LOCALE_SCRIPT_ALPHA;
+
+1;
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Constants.pod b/Master/tlpkg/tlperl/lib/Locale/Constants.pod
index ae42abbec97..53b4996a968 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Constants.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Constants.pod
@@ -1,73 +1,38 @@
+=pod
=head1 NAME
Locale::Constants - constants for Locale codes
-=head1 SYNOPSIS
-
- use Locale::Constants;
-
- $codeset = LOCALE_CODE_ALPHA_2;
-
=head1 DESCRIPTION
-B<Locale::Constants> defines symbols which are used in
-the four modules from the Locale-Codes distribution:
-
- Locale::Language
- Locale::Country
- Locale::Currency
- Locale::Script
-
-B<Note:> at the moment only Locale::Country and Locale::Script
-support more than one code set.
+B<Locale::Constants> defines symbols which are used in the other
+modules from the Locale-Codes distribution.
-The symbols defined are used to specify which codes you
-want to be used:
+You shouldn't have to C<use> this module directly yourself - it is
+used by the other Locale modules, which in turn export the symbols.
- LOCALE_CODE_ALPHA_2
- LOCALE_CODE_ALPHA_3
- LOCALE_CODE_NUMERIC
-
-You shouldn't have to C<use> this module directly yourself -
-it is used by the three Locale modules, which in turn export
-the symbols.
+The constants are documented in each of the Locale modules.
=head1 KNOWN BUGS AND LIMITATIONS
-None at the moment.
+None known.
=head1 SEE ALSO
-=over 4
-
-=item Locale::Language
-
-Codes for identification of languages.
-
-=item Locale::Country
-
-Codes for identification of countries.
-
-=item Locale::Script
-
-Codes for identification of scripts.
-
-=item Locale::Currency
-
-Codes for identification of currencies and funds.
-
-=back
+Locale::Codes
=head1 AUTHOR
-Neil Bowers E<lt>neil@bowers.comE<gt>
+See Locale::Codes for full author history.
-=head1 COPYRIGHT
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
-Copyright (C) 2002-2004, Neil Bowers.
+=head1 COPYRIGHT
-Copyright (C) 2001, Canon Research Centre Europe (CRE).
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
diff --git a/Master/tlpkg/tlperl/lib/Locale/Country.pm b/Master/tlpkg/tlperl/lib/Locale/Country.pm
index 2ecd1305c0d..85f33fc985d 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Country.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Country.pm
@@ -1,550 +1,310 @@
-#
-# Locale::Country - ISO codes for country identification (ISO 3166)
-#
-# $Id: Country.pm,v 2.7 2004/06/10 21:19:34 neilb Exp $
-#
-
package Locale::Country;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
use strict;
+use warnings;
require 5.002;
require Exporter;
use Carp;
+use Locale::Codes;
use Locale::Constants;
+use Locale::Codes::Country;
+
+#=======================================================================
+# Public Global Variables
+#=======================================================================
+our($VERSION,@ISA,@EXPORT,@EXPORT_OK);
-#-----------------------------------------------------------------------
-# Public Global Variables
-#-----------------------------------------------------------------------
-use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
-$VERSION = sprintf("%d.%02d", q$Revision: 2.7 $ =~ /(\d+)\.(\d+)/);
+$VERSION='3.16';
@ISA = qw(Exporter);
-@EXPORT = qw(code2country country2code
- all_country_codes all_country_names
- country_code2code
- LOCALE_CODE_ALPHA_2 LOCALE_CODE_ALPHA_3 LOCALE_CODE_NUMERIC);
+@EXPORT = qw(code2country
+ country2code
+ all_country_codes
+ all_country_names
+ country_code2code
+ LOCALE_CODE_ALPHA_2
+ LOCALE_CODE_ALPHA_3
+ LOCALE_CODE_NUMERIC
+ LOCALE_CODE_FIPS
+ LOCALE_CODE_DOM
+ );
+
+sub _code {
+ my($code,$codeset) = @_;
+ $code = "" if (! $code);
+
+ $codeset = LOCALE_CODE_DEFAULT if (! defined($codeset) || $codeset eq "");
+
+ if ($codeset =~ /^\d+$/) {
+ if ($codeset == LOCALE_CODE_ALPHA_2) {
+ $codeset = "alpha2";
+ } elsif ($codeset == LOCALE_CODE_ALPHA_3) {
+ $codeset = "alpha3";
+ } elsif ($codeset == LOCALE_CODE_NUMERIC) {
+ $codeset = "num";
+ } elsif ($codeset == LOCALE_CODE_FIPS) {
+ $codeset = "fips";
+ } elsif ($codeset == LOCALE_CODE_DOM) {
+ $codeset = "dom";
+ } else {
+ return (1);
+ }
+ }
+
+ if ($codeset eq "alpha2" ||
+ $codeset eq "alpha3") {
+ $code = lc($code);
+ } elsif ($codeset eq "num") {
+ if (defined($code) && $code ne "") {
+ return (1) unless ($code =~ /^\d+$/);
+ $code = sprintf("%.3d", $code);
+ }
+ } elsif ($codeset eq "fips" ||
+ $codeset eq "dom") {
+ $code = uc($code);
+ } else {
+ return (1);
+ }
+
+ return (0,$code,$codeset);
+}
-#-----------------------------------------------------------------------
-# Private Global Variables
-#-----------------------------------------------------------------------
-my $CODES = [];
-my $COUNTRIES = [];
+#=======================================================================
+#
+# code2country ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub code2country {
+ my($err,$code,$codeset) = _code(@_);
+ return undef if ($err ||
+ ! defined $code);
+ return Locale::Codes::_code2name("country",$code,$codeset);
+}
#=======================================================================
#
-# code2country ( CODE [, CODESET ] )
+# country2code ( COUNTRY [,CODESET] )
#
#=======================================================================
-sub code2country
-{
- my $code = shift;
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
-
-
- return undef unless defined $code;
-
- #-------------------------------------------------------------------
- # Make sure the code is in the right form before we use it
- # to look up the corresponding country.
- # We have to sprintf because the codes are given as 3-digits,
- # with leading 0's. Eg 052 for Barbados.
- #-------------------------------------------------------------------
- if ($codeset == LOCALE_CODE_NUMERIC)
- {
- return undef if ($code =~ /\D/);
- $code = sprintf("%.3d", $code);
- }
- else
- {
- $code = lc($code);
- }
-
- if (exists $CODES->[$codeset]->{$code})
- {
- return $CODES->[$codeset]->{$code};
- }
- else
- {
- #---------------------------------------------------------------
- # no such country code!
- #---------------------------------------------------------------
- return undef;
- }
-}
+sub country2code {
+ my($country,$codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err ||
+ ! defined $country);
+
+ return Locale::Codes::_name2code("country",$country,$codeset);
+}
#=======================================================================
#
-# country2code ( NAME [, CODESET ] )
+# country_code2code ( CODE,CODESET_IN,CODESET_OUT )
#
#=======================================================================
-sub country2code
-{
- my $country = shift;
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
-
-
- return undef unless defined $country;
- $country = lc($country);
- if (exists $COUNTRIES->[$codeset]->{$country})
- {
- return $COUNTRIES->[$codeset]->{$country};
- }
- else
- {
- #---------------------------------------------------------------
- # no such country!
- #---------------------------------------------------------------
- return undef;
- }
-}
+sub country_code2code {
+ (@_ == 3) or croak "country_code2code() takes 3 arguments!";
+ my($code,$inset,$outset) = @_;
+ my($err,$tmp);
+ ($err,$code,$inset) = _code($code,$inset);
+ return undef if ($err);
+ ($err,$tmp,$outset) = _code("",$outset);
+ return undef if ($err);
+
+ return Locale::Codes::_code2code("country",$code,$inset,$outset);
+}
#=======================================================================
#
-# country_code2code ( NAME [, CODESET ] )
+# all_country_codes ( [CODESET] )
#
#=======================================================================
-sub country_code2code
-{
- (@_ == 3) or croak "country_code2code() takes 3 arguments!";
-
- my $code = shift;
- my $inset = shift;
- my $outset = shift;
- my $outcode;
- my $country;
-
-
- return undef if $inset == $outset;
- $country = code2country($code, $inset);
- return undef if not defined $country;
- $outcode = country2code($country, $outset);
- return $outcode;
+
+sub all_country_codes {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_codes("country",$codeset);
}
#=======================================================================
#
-# all_country_codes ( [ CODESET ] )
+# all_country_names ( [CODESET] )
#
#=======================================================================
-sub all_country_codes
-{
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
- return keys %{ $CODES->[$codeset] };
-}
+sub all_country_names {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+ return Locale::Codes::_all_names("country",$codeset);
+}
#=======================================================================
#
-# all_country_names ( [ CODESET ] )
+# rename_country ( CODE,NAME [,CODESET] )
#
#=======================================================================
-sub all_country_names
-{
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
- return values %{ $CODES->[$codeset] };
-}
+sub rename_country {
+ my($code,$new_name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ return Locale::Codes::_rename("country",$code,$new_name,$codeset,$nowarn);
+}
#=======================================================================
#
-# alias_code ( ALIAS => CODE [ , CODESET ] )
+# add_country ( CODE,NAME [,CODESET] )
#
-# Add an alias for an existing code. If the CODESET isn't specified,
-# then we use the default (currently the alpha-2 codeset).
+#=======================================================================
+
+sub add_country {
+ my($code,$name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_add_code("country",$code,$name,$codeset,$nowarn);
+}
+
+#=======================================================================
#
-# Locale::Country::alias_code('uk' => 'gb');
+# delete_country ( CODE [,CODESET] )
#
#=======================================================================
-sub alias_code
-{
- my $alias = shift;
- my $real = shift;
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
- my $country;
+sub delete_country {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ return Locale::Codes::_delete_code("country",$code,$codeset,$nowarn);
+}
- if (not exists $CODES->[$codeset]->{$real})
- {
- carp "attempt to alias \"$alias\" to unknown country code \"$real\"\n";
- return undef;
- }
- $country = $CODES->[$codeset]->{$real};
- $CODES->[$codeset]->{$alias} = $country;
- $COUNTRIES->[$codeset]->{"\L$country"} = $alias;
+#=======================================================================
+#
+# add_country_alias ( NAME,NEW_NAME )
+#
+#=======================================================================
- return $alias;
+sub add_country_alias {
+ my($name,$new_name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_add_alias("country",$name,$new_name,$nowarn);
}
-# old name of function for backwards compatibility
-*_alias_code = *alias_code;
+#=======================================================================
+#
+# delete_country_alias ( NAME )
+#
+#=======================================================================
+
+sub delete_country_alias {
+ my($name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+ return Locale::Codes::_delete_alias("country",$name,$nowarn);
+}
#=======================================================================
#
-# rename_country
-#
-# change the official name for a country, eg:
-# gb => 'Great Britain'
-# rather than the standard 'United Kingdom'. The original is retained
-# as an alias, but the new name will be returned if you lookup the
-# name from code.
+# rename_country_code ( CODE,NEW_CODE [,CODESET] )
#
#=======================================================================
-sub rename_country
-{
- my $code = shift;
- my $new_name = shift;
- my $codeset = @_ > 0 ? shift : _code2codeset($code);
- my $country;
- my $c;
-
-
- if (not defined $codeset)
- {
- carp "rename_country(): unknown country code \"$code\"\n";
- return 0;
- }
-
- $country = $CODES->[$codeset]->{$code};
-
- foreach my $cset (LOCALE_CODE_ALPHA_2,
- LOCALE_CODE_ALPHA_3,
- LOCALE_CODE_NUMERIC)
- {
- if ($cset == $codeset)
- {
- $c = $code;
- }
- else
- {
- $c = country_code2code($code, $codeset, $cset);
- }
-
- $CODES->[$cset]->{$c} = $new_name;
- $COUNTRIES->[$cset]->{"\L$new_name"} = $c;
- }
-
- return 1;
-}
+sub rename_country_code {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
+
+ return Locale::Codes::_rename_code("country",$code,$new_code,$codeset,$nowarn);
+}
#=======================================================================
#
-# _code2codeset
-#
-# given a country code in an unknown codeset, return the codeset
-# it is from, or undef.
+# add_country_code_alias ( CODE,NEW_CODE [,CODESET] )
#
#=======================================================================
-sub _code2codeset
-{
- my $code = shift;
-
- foreach my $codeset (LOCALE_CODE_ALPHA_2, LOCALE_CODE_ALPHA_3,
- LOCALE_CODE_NUMERIC)
- {
- return $codeset if (exists $CODES->[$codeset]->{$code})
- }
+sub add_country_code_alias {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
- return undef;
+ return Locale::Codes::_add_code_alias("country",$code,$new_code,$codeset,$nowarn);
}
+#=======================================================================
+#
+# delete_country_code_alias ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_country_code_alias {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code_alias("country",$code,$codeset,$nowarn);
+}
#=======================================================================
#
-# initialisation code - stuff the DATA into the ALPHA2 hash
+# Old function for backward compatibility
#
#=======================================================================
-{
- my ($alpha2, $alpha3, $numeric);
- my ($country, @countries);
- local $_;
-
-
- while (<DATA>)
- {
- next unless /\S/;
- chop;
- ($alpha2, $alpha3, $numeric, @countries) = split(/:/, $_);
-
- $CODES->[LOCALE_CODE_ALPHA_2]->{$alpha2} = $countries[0];
- foreach $country (@countries)
- {
- $COUNTRIES->[LOCALE_CODE_ALPHA_2]->{"\L$country"} = $alpha2;
- }
-
- if ($alpha3)
- {
- $CODES->[LOCALE_CODE_ALPHA_3]->{$alpha3} = $countries[0];
- foreach $country (@countries)
- {
- $COUNTRIES->[LOCALE_CODE_ALPHA_3]->{"\L$country"} = $alpha3;
- }
- }
-
- if ($numeric)
- {
- $CODES->[LOCALE_CODE_NUMERIC]->{$numeric} = $countries[0];
- foreach $country (@countries)
- {
- $COUNTRIES->[LOCALE_CODE_NUMERIC]->{"\L$country"} = $numeric;
- }
- }
-
- }
-
- close(DATA);
+
+sub alias_code {
+ my($alias,$code,@args) = @_;
+ my $success = rename_country_code($code,$alias,@args);
+ return 0 if (! $success);
+ return $alias;
}
1;
-
-__DATA__
-ad:and:020:Andorra
-ae:are:784:United Arab Emirates
-af:afg:004:Afghanistan
-ag:atg:028:Antigua and Barbuda
-ai:aia:660:Anguilla
-al:alb:008:Albania
-am:arm:051:Armenia
-an:ant:530:Netherlands Antilles
-ao:ago:024:Angola
-aq:ata:010:Antarctica
-ar:arg:032:Argentina
-as:asm:016:American Samoa
-at:aut:040:Austria
-au:aus:036:Australia
-aw:abw:533:Aruba
-ax:ala:248:Aland Islands
-az:aze:031:Azerbaijan
-ba:bih:070:Bosnia and Herzegovina
-bb:brb:052:Barbados
-bd:bgd:050:Bangladesh
-be:bel:056:Belgium
-bf:bfa:854:Burkina Faso
-bg:bgr:100:Bulgaria
-bh:bhr:048:Bahrain
-bi:bdi:108:Burundi
-bj:ben:204:Benin
-bm:bmu:060:Bermuda
-bn:brn:096:Brunei Darussalam
-bo:bol:068:Bolivia
-br:bra:076:Brazil
-bs:bhs:044:Bahamas
-bt:btn:064:Bhutan
-bv:bvt:074:Bouvet Island
-bw:bwa:072:Botswana
-by:blr:112:Belarus
-bz:blz:084:Belize
-ca:can:124:Canada
-cc:cck:166:Cocos (Keeling) Islands
-cd:cod:180:Congo, The Democratic Republic of the:Zaire:Congo, Democratic Republic of the
-cf:caf:140:Central African Republic
-cg:cog:178:Congo:Congo, Republic of the
-ch:che:756:Switzerland
-ci:civ:384:Cote D'Ivoire
-ck:cok:184:Cook Islands
-cl:chl:152:Chile
-cm:cmr:120:Cameroon
-cn:chn:156:China
-co:col:170:Colombia
-cr:cri:188:Costa Rica
-cs:scg:891:Serbia and Montenegro:Yugoslavia
-cu:cub:192:Cuba
-cv:cpv:132:Cape Verde
-cx:cxr:162:Christmas Island
-cy:cyp:196:Cyprus
-cz:cze:203:Czech Republic
-de:deu:276:Germany
-dj:dji:262:Djibouti
-dk:dnk:208:Denmark
-dm:dma:212:Dominica
-do:dom:214:Dominican Republic
-dz:dza:012:Algeria
-ec:ecu:218:Ecuador
-ee:est:233:Estonia
-eg:egy:818:Egypt
-eh:esh:732:Western Sahara
-er:eri:232:Eritrea
-es:esp:724:Spain
-et:eth:231:Ethiopia
-fi:fin:246:Finland
-fj:fji:242:Fiji
-fk:flk:238:Falkland Islands (Malvinas):Falkland Islands (Islas Malvinas)
-fm:fsm:583:Micronesia, Federated States of
-fo:fro:234:Faroe Islands
-fr:fra:250:France
-fx:fxx:249:France, Metropolitan
-ga:gab:266:Gabon
-gb:gbr:826:United Kingdom:Great Britain
-gd:grd:308:Grenada
-ge:geo:268:Georgia
-gf:guf:254:French Guiana
-gh:gha:288:Ghana
-gi:gib:292:Gibraltar
-gl:grl:304:Greenland
-gm:gmb:270:Gambia
-gn:gin:324:Guinea
-gp:glp:312:Guadeloupe
-gq:gnq:226:Equatorial Guinea
-gr:grc:300:Greece
-gs:sgs:239:South Georgia and the South Sandwich Islands
-gt:gtm:320:Guatemala
-gu:gum:316:Guam
-gw:gnb:624:Guinea-Bissau
-gy:guy:328:Guyana
-hk:hkg:344:Hong Kong
-hm:hmd:334:Heard Island and McDonald Islands
-hn:hnd:340:Honduras
-hr:hrv:191:Croatia
-ht:hti:332:Haiti
-hu:hun:348:Hungary
-id:idn:360:Indonesia
-ie:irl:372:Ireland
-il:isr:376:Israel
-in:ind:356:India
-io:iot:086:British Indian Ocean Territory
-iq:irq:368:Iraq
-ir:irn:364:Iran, Islamic Republic of:Iran
-is:isl:352:Iceland
-it:ita:380:Italy
-jm:jam:388:Jamaica
-jo:jor:400:Jordan
-jp:jpn:392:Japan
-ke:ken:404:Kenya
-kg:kgz:417:Kyrgyzstan
-kh:khm:116:Cambodia
-ki:kir:296:Kiribati
-km:com:174:Comoros
-kn:kna:659:Saint Kitts and Nevis
-kp:prk:408:Korea, Democratic People's Republic of:Korea, North:North Korea
-kr:kor:410:Korea, Republic of:Korea, South:South Korea
-kw:kwt:414:Kuwait
-ky:cym:136:Cayman Islands
-kz:kaz:398:Kazakhstan:Kazakstan
-la:lao:418:Lao People's Democratic Republic
-lb:lbn:422:Lebanon
-lc:lca:662:Saint Lucia
-li:lie:438:Liechtenstein
-lk:lka:144:Sri Lanka
-lr:lbr:430:Liberia
-ls:lso:426:Lesotho
-lt:ltu:440:Lithuania
-lu:lux:442:Luxembourg
-lv:lva:428:Latvia
-ly:lby:434:Libyan Arab Jamahiriya:Libya
-ma:mar:504:Morocco
-mc:mco:492:Monaco
-md:mda:498:Moldova, Republic of:Moldova
-mg:mdg:450:Madagascar
-mh:mhl:584:Marshall Islands
-mk:mkd:807:Macedonia, the Former Yugoslav Republic of:Macedonia, Former Yugoslav Republic of:Macedonia
-ml:mli:466:Mali
-mm:mmr:104:Myanmar:Burma
-mn:mng:496:Mongolia
-mo:mac:446:Macao:Macau
-mp:mnp:580:Northern Mariana Islands
-mq:mtq:474:Martinique
-mr:mrt:478:Mauritania
-ms:msr:500:Montserrat
-mt:mlt:470:Malta
-mu:mus:480:Mauritius
-mv:mdv:462:Maldives
-mw:mwi:454:Malawi
-mx:mex:484:Mexico
-my:mys:458:Malaysia
-mz:moz:508:Mozambique
-na:nam:516:Namibia
-nc:ncl:540:New Caledonia
-ne:ner:562:Niger
-nf:nfk:574:Norfolk Island
-ng:nga:566:Nigeria
-ni:nic:558:Nicaragua
-nl:nld:528:Netherlands
-no:nor:578:Norway
-np:npl:524:Nepal
-nr:nru:520:Nauru
-nu:niu:570:Niue
-nz:nzl:554:New Zealand
-om:omn:512:Oman
-pa:pan:591:Panama
-pe:per:604:Peru
-pf:pyf:258:French Polynesia
-pg:png:598:Papua New Guinea
-ph:phl:608:Philippines
-pk:pak:586:Pakistan
-pl:pol:616:Poland
-pm:spm:666:Saint Pierre and Miquelon
-pn:pcn:612:Pitcairn:Pitcairn Island
-pr:pri:630:Puerto Rico
-ps:pse:275:Palestinian Territory, Occupied
-pt:prt:620:Portugal
-pw:plw:585:Palau
-py:pry:600:Paraguay
-qa:qat:634:Qatar
-re:reu:638:Reunion
-ro:rou:642:Romania
-ru:rus:643:Russian Federation:Russia
-rw:rwa:646:Rwanda
-sa:sau:682:Saudi Arabia
-sb:slb:090:Solomon Islands
-sc:syc:690:Seychelles
-sd:sdn:736:Sudan
-se:swe:752:Sweden
-sg:sgp:702:Singapore
-sh:shn:654:Saint Helena
-si:svn:705:Slovenia
-sj:sjm:744:Svalbard and Jan Mayen:Jan Mayen:Svalbard
-sk:svk:703:Slovakia
-sl:sle:694:Sierra Leone
-sm:smr:674:San Marino
-sn:sen:686:Senegal
-so:som:706:Somalia
-sr:sur:740:Suriname
-st:stp:678:Sao Tome and Principe
-sv:slv:222:El Salvador
-sy:syr:760:Syrian Arab Republic:Syria
-sz:swz:748:Swaziland
-tc:tca:796:Turks and Caicos Islands
-td:tcd:148:Chad
-tf:atf:260:French Southern Territories:French Southern and Antarctic Lands
-tg:tgo:768:Togo
-th:tha:764:Thailand
-tj:tjk:762:Tajikistan
-tk:tkl:772:Tokelau
-tm:tkm:795:Turkmenistan
-tn:tun:788:Tunisia
-to:ton:776:Tonga
-tl:tls:626:Timor-Leste:East Timor
-tr:tur:792:Turkey
-tt:tto:780:Trinidad and Tobago
-tv:tuv:798:Tuvalu
-tw:twn:158:Taiwan, Province of China:Taiwan
-tz:tza:834:Tanzania, United Republic of:Tanzania
-ua:ukr:804:Ukraine
-ug:uga:800:Uganda
-um:umi:581:United States Minor Outlying Islands
-us:usa:840:United States:USA:United States of America
-uy:ury:858:Uruguay
-uz:uzb:860:Uzbekistan
-va:vat:336:Holy See (Vatican City State):Holy See (Vatican City)
-vc:vct:670:Saint Vincent and the Grenadines
-ve:ven:862:Venezuela
-vg:vgb:092:Virgin Islands, British:British Virgin Islands
-vi:vir:850:Virgin Islands, U.S.
-vn:vnm:704:Vietnam
-vu:vut:548:Vanuatu
-wf:wlf:876:Wallis and Futuna
-ws:wsm:882:Samoa
-ye:yem:887:Yemen
-yt:myt:175:Mayotte
-za:zaf:710:South Africa
-zm:zmb:894:Zambia
-zw:zwe:716:Zimbabwe
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Country.pod b/Master/tlpkg/tlperl/lib/Locale/Country.pod
index b13cd22a4a7..509dff846d7 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Country.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Country.pod
@@ -1,306 +1,216 @@
+=pod
=head1 NAME
-Locale::Country - ISO codes for country identification (ISO 3166)
+Locale::Country - standard codes for country identification
=head1 SYNOPSIS
- use Locale::Country;
-
- $country = code2country('jp'); # $country gets 'Japan'
- $code = country2code('Norway'); # $code gets 'no'
-
- @codes = all_country_codes();
- @names = all_country_names();
-
- # semi-private routines
- Locale::Country::alias_code('uk' => 'gb');
- Locale::Country::rename_country('gb' => 'Great Britain');
+ use Locale::Country;
+ $country = code2country('jp' [,CODESET]); # $country gets 'Japan'
+ $code = country2code('Norway' [,CODESET]); # $code gets 'no'
-=head1 DESCRIPTION
-
-The C<Locale::Country> module provides access to the ISO
-codes for identifying countries, as defined in ISO 3166-1.
-You can either access the codes via the L<conversion routines>
-(described below), or with the two functions which return lists
-of all country codes or all country names.
-
-There are three different code sets you can use for identifying
-countries:
-
-=over 4
-
-=item B<alpha-2>
-
-Two letter codes, such as 'tv' for Tuvalu.
-This code set is identified with the symbol C<LOCALE_CODE_ALPHA_2>.
+ @codes = all_country_codes( [CODESET]);
+ @names = all_country_names();
-=item B<alpha-3>
+ # semi-private routines
+ Locale::Country::alias_code('uk' => 'gb');
+ Locale::Country::rename_country('gb' => 'Great Britain');
-Three letter codes, such as 'brb' for Barbados.
-This code set is identified with the symbol C<LOCALE_CODE_ALPHA_3>.
+=head1 DESCRIPTION
-=item B<numeric>
+The C<Locale::Country> module provides access to several code sets
+that can be used for identifying countries, such as those defined in
+ISO 3166-1.
-Numeric codes, such as 064 for Bhutan.
-This code set is identified with the symbol C<LOCALE_CODE_NUMERIC>.
+Most of the routines take an optional additional argument which
+specifies the code set to use. If not specified, the default ISO
+3166-1 two-letter codes will be used.
-=back
+=head1 SUPPORTED CODE SETS
-All of the routines take an optional additional argument
-which specifies the code set to use.
-If not specified, it defaults to the two-letter codes.
-This is partly for backwards compatibility (previous versions
-of this module only supported the alpha-2 codes), and
-partly because they are the most widely used codes.
+There are several different code sets you can use for identifying
+countries. The ones currently supported are:
-The alpha-2 and alpha-3 codes are not case-dependent,
-so you can use 'BO', 'Bo', 'bO' or 'bo' for Bolivia.
-When a code is returned by one of the functions in
-this module, it will always be lower-case.
+=over 4
-As of version 2.00, Locale::Country supports variant
-names for countries. So, for example, the country code for "United States"
-is "us", so country2code('United States') returns 'us'.
-Now the following will also return 'us':
+=item B<alpha-2>
- country2code('United States of America')
- country2code('USA')
+This is the set of two-letter (lowercase) codes from ISO 3166-1, such
+as 'tv' for Tuvalu.
+This code set is identified with the symbol C<LOCALE_CODE_ALPHA_2>.
-=head1 CONVERSION ROUTINES
+This is the default code set.
-There are three conversion routines: C<code2country()>, C<country2code()>,
-and C<country_code2code()>.
+=item B<alpha-3>
-=over 4
+This is the set of three-letter (lowercase) codes from ISO 3166-1,
+such as 'brb' for Barbados. These codes are actually defined and
+maintained by the U.N. Statistics division.
-=item code2country( CODE, [ CODESET ] )
+This code set is identified with the symbol C<LOCALE_CODE_ALPHA_3>.
-This function takes a country code and returns a string
-which contains the name of the country identified.
-If the code is not a valid country code, as defined by ISO 3166,
-then C<undef> will be returned:
+=item B<numeric>
- $country = code2country('fi');
+This is the set of three-digit numeric codes from ISO 3166-1, such as
+064 for Bhutan. These codes are actually defined and maintained by the
+U.N. Statistics division.
-=item country2code( STRING, [ CODESET ] )
+If a 2-digit code is entered, it is converted to 3 digits by prepending
+a 0.
-This function takes a country name and returns the corresponding
-country code, if such exists.
-If the argument could not be identified as a country name,
-then C<undef> will be returned:
+This code set is identified with the symbol C<LOCALE_CODE_NUMERIC>.
- $code = country2code('Norway', LOCALE_CODE_ALPHA_3);
- # $code will now be 'nor'
+=item B<fips-10>
-The case of the country name is not important.
-See the section L<KNOWN BUGS AND LIMITATIONS> below.
+The FIPS 10 data are two-letter (uppercase) codes assigned by the
+National Geospatial-Intelligence Agency.
-=item country_code2code( CODE, CODESET, CODESET )
+This code set is identified with the symbol C<LOCALE_CODE_FIPS>.
-This function takes a country code from one code set,
-and returns the corresponding code from another code set.
+=item B<dom>
- $alpha2 = country_code2code('fin',
- LOCALE_CODE_ALPHA_3, LOCALE_CODE_ALPHA_2);
- # $alpha2 will now be 'fi'
+The IANA is responsible for assigning two-letter (uppercase) top-level
+domain names to each country.
-If the code passed is not a valid country code in
-the first code set, or if there isn't a code for the
-corresponding country in the second code set,
-then C<undef> will be returned.
+This code set is identified with the symbol C<LOCALE_CODE_DOM>.
=back
-
-=head1 QUERY ROUTINES
-
-There are two function which can be used to obtain a list of all codes,
-or all country names:
+=head1 ROUTINES
=over 4
-=item C<all_country_codes( [ CODESET ] )>
-
-Returns a list of all two-letter country codes.
-The codes are guaranteed to be all lower-case,
-and not in any particular order.
-
-=item C<all_country_names( [ CODESET ] )>
-
-Returns a list of all country names for which there is a corresponding
-country code in the specified code set.
-The names are capitalised, and not returned in any particular order.
-
-Not all countries have alpha-3 and numeric codes -
-some just have an alpha-2 code,
-so you'll get a different number of countries
-depending on which code set you specify.
-
-=back
+=item B<code2country ( CODE [,CODESET] )>
+=item B<country2code ( NAME [,CODESET] )>
-=head1 SEMI-PRIVATE ROUTINES
+=item B<country_code2code ( CODE ,CODESET ,CODESET2 )>
-Locale::Country provides two semi-private routines for modifying
-the internal data.
-Given their status, they aren't exported by default,
-and so need to be called by prefixing the function name with the
-package name.
+=item B<all_country_codes ( [CODESET] )>
-=head2 alias_code
+=item B<all_country_names ( [CODESET] )>
-Define a new code as an alias for an existing code:
+=item B<Locale::Country::rename_country ( CODE ,NEW_NAME [,CODESET] )>
- Locale::Country::alias_code( ALIAS => CODE [, CODESET ] )
+=item B<Locale::Country::add_country ( CODE ,NAME [,CODESET] )>
-This feature was added as a mechanism for handling
-a "uk" code. The ISO standard says that the two-letter code for
-"United Kingdom" is "gb", whereas domain names are all .uk.
+=item B<Locale::Country::delete_country ( CODE [,CODESET] )>
-By default the module does not understand "uk", since it is implementing
-an ISO standard. If you would like 'uk' to work as the two-letter
-code for United Kingdom, use the following:
+=item B<Locale::Country::add_country_alias ( NAME ,NEW_NAME )>
- Locale::Country::alias_code('uk' => 'gb');
+=item B<Locale::Country::delete_country_alias ( NAME )>
-With this code, both "uk" and "gb" are valid codes for United Kingdom,
-with the reverse lookup returning "uk" rather than the usual "gb".
+=item B<Locale::Country::rename_country_code ( CODE ,NEW_CODE [,CODESET] )>
-B<Note:> this function was previously called _alias_code,
-but the leading underscore has been dropped.
-The old name will be supported for all 2.X releases for
-backwards compatibility.
+=item B<Locale::Country::add_country_code_alias ( CODE ,NEW_CODE [,CODESET] )>
-=head2 rename_country
+=item B<Locale::Country::delete_country_code_alias ( CODE [,CODESET] )>
-If the official country name just isn't good enough for you,
-you can rename a country. For example, the official country
-name for code 'gb' is 'United Kingdom'.
-If you want to change that, you might call:
+These routines are all documented in the Locale::Codes man page.
- Locale::Country::rename_country('gb' => 'Great Britain');
+=item B<alias_code ( ALIAS, CODE [,CODESET] )>
-This means that calling code2country('gb') will now return
-'Great Britain' instead of 'United Kingdom'.
-The original country name is retained as an alias,
-so for the above example, country2code('United Kingdom')
-will still return 'gb'.
+Version 2.07 included 2 functions for modifying the internal data:
+rename_country and alias_code. Both of these could be used only to
+modify the internal data for country codes.
+As of 3.10, the internal data for all types of codes can be modified.
-=head1 EXAMPLES
+The alias_code function is preserved for backwards compatibility, but
+the following two are identical:
-The following example illustrates use of the C<code2country()> function.
-The user is prompted for a country code, and then told the corresponding
-country name:
+ alias_code(ALIAS,CODE [,CODESET]);
+ rename_country_code(CODE,ALIAS [,CODESET]);
- $| = 1; # turn off buffering
-
- print "Enter country code: ";
- chop($code = <STDIN>);
- $country = code2country($code, LOCALE_CODE_ALPHA_2);
- if (defined $country)
- {
- print "$code = $country\n";
- }
- else
- {
- print "'$code' is not a valid country code!\n";
- }
+and the latter should be used for consistency.
-=head1 DOMAIN NAMES
+The alias_code function is deprecated (though there is no currently no
+plan to remove it).
-Most top-level domain names are based on these codes,
-but there are certain codes which aren't.
-If you are using this module to identify country from hostname,
-your best bet is to preprocess the country code.
+B<Note:> this function was previously called _alias_code, but the
+leading underscore has been dropped. The old name was supported for
+all 2.X releases, but has been dropped as of 3.00.
-For example, B<edu>, B<com>, B<gov> and friends would map to B<us>;
-B<uk> would map to B<gb>. Any others?
+=back
-=head1 KNOWN BUGS AND LIMITATIONS
+=head1 SEE ALSO
=over 4
-=item *
+=item B<Locale::Codes>
-When using C<country2code()>, the country name must currently appear
-exactly as it does in the source of the module. The module now supports
-a small number of variants.
+=item B<Locale::Constants>
-Possible extensions to this are: an interface for getting at the
-list of variant names, and regular expression matches.
+The Locale-Codes distribution.
-=item *
+=item B<Locale::SubCountry>
-In the current implementation, all data is read in when the
-module is loaded, and then held in memory.
-A lazy implementation would be more memory friendly.
+ISO codes for country sub-divisions (states, counties, provinces,
+etc), as defined in ISO 3166-2. This module is not part of the
+Locale-Codes distribution, but is available from CPAN in
+CPAN/modules/by-module/Locale/
-=item *
-
-Support for country names in different languages.
-
-=back
+=item B<http://www.iso.org/iso/country_codes>
-=head1 SEE ALSO
-
-=over 4
-
-=item Locale::Language
+Official home page for the ISO 3166 maintenance agency.
-ISO two letter codes for identification of language (ISO 639).
+Unfortunately, they do not make the actual ISO available for free,
+so I cannot check the alpha-3 and numerical codes here.
-=item Locale::Script
+=item B<http://www.iso.org/iso/list-en1-semic-3.txt>
-ISO codes for identification of scripts (ISO 15924).
+The source of ISO 3166-1 two-letter codes used by this
+module.
-=item Locale::Currency
+=item B<http://unstats.un.org/unsd/methods/m49/m49alpha.htm>
-ISO three letter codes for identification of currencies
-and funds (ISO 4217).
+The source of the official ISO 3166-1 three-letter codes and
+three-digit codes.
-=item Locale::SubCountry
+For some reason, this table is incomplete! Several countries are
+missing from it, and I cannot find them anywhere on the UN site. I
+get as much of the data from here as I can.
-ISO codes for country sub-divisions (states, counties, provinces, etc),
-as defined in ISO 3166-2.
-This module is not part of the Locale-Codes distribution,
-but is available from CPAN in CPAN/modules/by-module/Locale/
+=item B<http://earth-info.nga.mil/gns/html/digraphs.htm>
-=item ISO 3166-1
+The official list of the FIPS 10 codes.
-The ISO standard which defines these codes.
+=item B<http://www.iana.org/domains/>
-=item http://www.iso.org/iso/en/prods-services/iso3166ma/index.html
+Official source of the top-level domain names.
-Official home page for the ISO 3166 maintenance agency.
+=item B<https://www.cia.gov/library/publications/the-world-factbook/appendix/print_appendix-d.html>
-=item http://www.egt.ie/standards/iso3166/iso3166-1-en.html
+Although not the official source of any of the data, the World
+Factbook maintained by the CIA is a great source of the data,
+especially since I can't get the official data from the ISO. Since
+it's maintained by the CIA, and since it's updated every two weeks, I
+use this as the source for some missing data.
-Another useful, but not official, home page.
+=item B<http://www.statoids.com/wab.html>
-=item http://www.cia.gov/cia/publications/factbook/docs/app-d-1.html
-
-An appendix in the CIA world fact book which lists country codes
-as defined by ISO 3166, FIPS 10-4, and internet domain names.
+Another unofficial source of data. Currently, it is not used to get
+data, but the notes and explanatory material were very useful for
+understanding discrepancies between the sources.
=back
-
=head1 AUTHOR
-Neil Bowers E<lt>neil@bowers.comE<gt>
+See Locale::Codes for full author history.
-=head1 COPYRIGHT
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
-Copyright (C) 2002-2004, Neil Bowers.
+=head1 COPYRIGHT
-Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
=cut
-
diff --git a/Master/tlpkg/tlperl/lib/Locale/Currency.pm b/Master/tlpkg/tlperl/lib/Locale/Currency.pm
index 13cd0482ba7..10828653218 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Currency.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Currency.pm
@@ -1,356 +1,284 @@
-#
-# Locale::Currency - ISO three letter codes for currency identification
-# (ISO 4217)
-#
-# $Id: Currency.pm,v 2.7 2004/06/10 21:19:34 neilb Exp $
-#
-
package Locale::Currency;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
use strict;
+use warnings;
require 5.002;
require Exporter;
+use Carp;
+use Locale::Codes;
+use Locale::Constants;
+use Locale::Codes::Currency;
-#-----------------------------------------------------------------------
-# Public Global Variables
-#-----------------------------------------------------------------------
-use vars qw($VERSION @ISA @EXPORT);
-$VERSION = sprintf("%d.%02d", q$Revision: 2.7 $ =~ /(\d+)\.(\d+)/);
-@ISA = qw(Exporter);
-@EXPORT = qw(&code2currency &currency2code
- &all_currency_codes &all_currency_names );
+#=======================================================================
+# Public Global Variables
+#=======================================================================
-#-----------------------------------------------------------------------
-# Private Global Variables
-#-----------------------------------------------------------------------
-my %CODES = ();
-my %CURRENCIES = ();
+our($VERSION,@ISA,@EXPORT,@EXPORT_OK);
+
+$VERSION='3.16';
+@ISA = qw(Exporter);
+@EXPORT = qw(code2currency
+ currency2code
+ all_currency_codes
+ all_currency_names
+ currency_code2code
+ LOCALE_CURR_ALPHA
+ LOCALE_CURR_NUMERIC
+ );
+
+sub _code {
+ my($code,$codeset) = @_;
+ $code = "" if (! $code);
+
+ $codeset = LOCALE_CURR_DEFAULT if (! defined($codeset) || $codeset eq "");
+
+ if ($codeset =~ /^\d+$/) {
+ if ($codeset == LOCALE_CURR_ALPHA) {
+ $codeset = "alpha";
+ } elsif ($codeset == LOCALE_CURR_NUMERIC) {
+ $codeset = "num";
+ } else {
+ return (1);
+ }
+ }
+
+ if ($codeset eq "alpha") {
+ $code = uc($code);
+ } elsif ($codeset eq "num") {
+ if (defined($code) && $code ne "") {
+ return (1) unless ($code =~ /^\d+$/);
+ $code = sprintf("%.3d", $code);
+ }
+ } else {
+ return (1);
+ }
+
+ return (0,$code,$codeset);
+}
+#=======================================================================
+#
+# code2currency ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub code2currency {
+ my($err,$code,$codeset) = _code(@_);
+ return undef if ($err ||
+ ! defined $code);
+
+ return Locale::Codes::_code2name("currency",$code,$codeset);
+}
#=======================================================================
#
-# code2currency( CODE )
+# currency2code ( CURRENCY [,CODESET] )
#
#=======================================================================
-sub code2currency
-{
- my $code = shift;
-
-
- return undef unless defined $code;
- $code = lc($code);
- if (exists $CODES{$code})
- {
- return $CODES{$code};
- }
- else
- {
- #---------------------------------------------------------------
- # no such currency code!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub currency2code {
+ my($currency,$codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err ||
+ ! defined $currency);
+
+ return Locale::Codes::_name2code("currency",$currency,$codeset);
}
+#=======================================================================
+#
+# currency_code2code ( CODE,CODESET_IN,CODESET_OUT )
+#
+#=======================================================================
+
+sub currency_code2code {
+ (@_ == 3) or croak "currency_code2code() takes 3 arguments!";
+ my($code,$inset,$outset) = @_;
+ my($err,$tmp);
+ ($err,$code,$inset) = _code($code,$inset);
+ return undef if ($err);
+ ($err,$tmp,$outset) = _code("",$outset);
+ return undef if ($err);
+
+ return Locale::Codes::_code2code("currency",$code,$inset,$outset);
+}
#=======================================================================
#
-# currency2code ( CURRENCY )
+# all_currency_codes ( [CODESET] )
#
#=======================================================================
-sub currency2code
-{
- my $curr = shift;
-
-
- return undef unless defined $curr;
- $curr = lc($curr);
- if (exists $CURRENCIES{$curr})
- {
- return $CURRENCIES{$curr};
- }
- else
- {
- #---------------------------------------------------------------
- # no such currency!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub all_currency_codes {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_codes("currency",$codeset);
}
#=======================================================================
#
-# all_currency_codes()
+# all_currency_names ( [CODESET] )
#
#=======================================================================
-sub all_currency_codes
-{
- return keys %CODES;
+
+sub all_currency_names {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_names("currency",$codeset);
}
+#=======================================================================
+#
+# rename_currency ( CODE,NAME [,CODESET] )
+#
+#=======================================================================
+
+sub rename_currency {
+ my($code,$new_name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_rename("currency",$code,$new_name,$codeset,$nowarn);
+}
#=======================================================================
#
-# all_currency_names()
+# add_currency ( CODE,NAME [,CODESET] )
#
#=======================================================================
-sub all_currency_names
-{
- return values %CODES;
+
+sub add_currency {
+ my($code,$name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_add_code("currency",$code,$name,$codeset,$nowarn);
}
+#=======================================================================
+#
+# delete_currency ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_currency {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code("currency",$code,$codeset,$nowarn);
+}
#=======================================================================
-# initialisation code - stuff the DATA into the CODES hash
+#
+# add_currency_alias ( NAME,NEW_NAME )
+#
#=======================================================================
-{
- my $code;
- my $currency;
- local $_;
-
-
- while (<DATA>)
- {
- next unless /\S/;
- chop;
- ($code, $currency) = split(/:/, $_, 2);
- $CODES{$code} = $currency;
- $CURRENCIES{"\L$currency"} = $code;
- }
-
- close(DATA);
+
+sub add_currency_alias {
+ my($name,$new_name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_add_alias("currency",$name,$new_name,$nowarn);
}
-1;
+#=======================================================================
+#
+# delete_currency_alias ( NAME )
+#
+#=======================================================================
+
+sub delete_currency_alias {
+ my($name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_delete_alias("currency",$name,$nowarn);
+}
+
+#=======================================================================
+#
+# rename_currency_code ( CODE,NEW_CODE [,CODESET] )
+#
+#=======================================================================
-__DATA__
-adp:Andorran Peseta
-aed:UAE Dirham
-afa:Afghani
-all:Lek
-amd:Armenian Dram
-ang:Netherlands Antillean Guilder
-aoa:Kwanza
-aon:New Kwanza
-aor:Kwanza Reajustado
-ars:Argentine Peso
-ats:Schilling
-aud:Australian Dollar
-awg:Aruban Guilder
-azm:Azerbaijanian Manat
-
-bam:Convertible Marks
-bbd:Barbados Dollar
-bdt:Taka
-bef:Belgian Franc
-bgl:Lev
-bgn:Bulgarian Lev
-bhd:Bahraini Dinar
-bhd:Dinar
-bif:Burundi Franc
-bmd:Bermudian Dollar
-bnd:Brunei Dollar
-bob:Boliviano
-bov:MVDol
-brl:Brazilian Real
-bsd:Bahamian Dollar
-btn:Ngultrum
-bwp:Pula
-byb:Belarussian Ruble
-byr:Belarussian Ruble
-bzd:Belize Dollar
-
-cad:Canadian Dollar
-cdf:Franc Congolais
-chf:Swiss Franc
-clf:Unidades de Formento
-clp:Chilean Peso
-cny:Yuan Renminbi
-cop:Colombian Peso
-crc:Costa Rican Colon
-cup:Cuban Peso
-cve:Cape Verde Escudo
-cyp:Cyprus Pound
-czk:Czech Koruna
-
-dem:German Mark
-djf:Djibouti Franc
-dkk:Danish Krone
-dop:Dominican Peso
-dzd:Algerian Dinar
-
-ecs:Sucre
-ecv:Unidad de Valor Constante (UVC)
-eek:Kroon
-egp:Egyptian Pound
-ern:Nakfa
-esp:Spanish Peseta
-etb:Ethiopian Birr
-eur:Euro
-
-fim:Markka
-fjd:Fiji Dollar
-fkp:Falkland Islands Pound
-frf:French Franc
-
-gbp:Pound Sterling
-gel:Lari
-ghc:Cedi
-gip:Gibraltar Pound
-gmd:Dalasi
-gnf:Guinea Franc
-grd:Drachma
-gtq:Quetzal
-gwp:Guinea-Bissau Peso
-gyd:Guyana Dollar
-
-hkd:Hong Kong Dollar
-hnl:Lempira
-hrk:Kuna
-htg:Gourde
-huf:Forint
-
-idr:Rupiah
-iep:Irish Pound
-ils:Shekel
-inr:Indian Rupee
-iqd:Iraqi Dinar
-irr:Iranian Rial
-isk:Iceland Krona
-itl:Italian Lira
-
-jmd:Jamaican Dollar
-jod:Jordanian Dinar
-jpy:Yen
-
-kes:Kenyan Shilling
-kgs:Som
-khr:Riel
-kmf:Comoro Franc
-kpw:North Korean Won
-krw:Won
-kwd:Kuwaiti Dinar
-kyd:Cayman Islands Dollar
-kzt:Tenge
-
-lak:Kip
-lbp:Lebanese Pound
-lkr:Sri Lanka Rupee
-lrd:Liberian Dollar
-lsl:Loti
-ltl:Lithuanian Litas
-luf:Luxembourg Franc
-lvl:Latvian Lats
-lyd:Libyan Dinar
-
-mad:Moroccan Dirham
-mdl:Moldovan Leu
-mgf:Malagasy Franc
-mkd:Denar
-mmk:Kyat
-mnt:Tugrik
-mop:Pataca
-mro:Ouguiya
-mtl:Maltese Lira
-mur:Mauritius Rupee
-mvr:Rufiyaa
-mwk:Kwacha
-mxn:Mexican Nuevo Peso
-myr:Malaysian Ringgit
-mzm:Metical
-
-nad:Namibia Dollar
-ngn:Naira
-nio:Cordoba Oro
-nlg:Netherlands Guilder
-nok:Norwegian Krone
-npr:Nepalese Rupee
-nzd:New Zealand Dollar
-
-omr:Rial Omani
-
-pab:Balboa
-pen:Nuevo Sol
-pgk:Kina
-php:Philippine Peso
-pkr:Pakistan Rupee
-pln:Zloty
-pte:Portuguese Escudo
-pyg:Guarani
-
-qar:Qatari Rial
-
-rol:Leu
-rub:Russian Ruble
-rur:Russian Ruble
-rwf:Rwanda Franc
-
-sar:Saudi Riyal
-sbd:Solomon Islands Dollar
-scr:Seychelles Rupee
-sdd:Sudanese Dinar
-sek:Swedish Krona
-sgd:Singapore Dollar
-shp:St. Helena Pound
-sit:Tolar
-skk:Slovak Koruna
-sll:Leone
-sos:Somali Shilling
-srg:Surinam Guilder
-std:Dobra
-svc:El Salvador Colon
-syp:Syrian Pound
-szl:Lilangeni
-
-thb:Baht
-tjr:Tajik Ruble
-tmm:Manat
-tnd:Tunisian Dollar
-top:Pa'anga
-tpe:Timor Escudo
-trl:Turkish Lira
-ttd:Trinidad and Tobago Dollar
-twd:New Taiwan Dollar
-tzs:Tanzanian Shilling
-
-uah:Hryvnia
-uak:Karbovanets
-ugx:Uganda Shilling
-usd:US Dollar
-usn:US Dollar (Next day)
-uss:US Dollar (Same day)
-uyu:Peso Uruguayo
-uzs:Uzbekistan Sum
-
-veb:Bolivar
-vnd:Dong
-vuv:Vatu
-
-wst:Tala
-
-xaf:CFA Franc BEAC
-xag:Silver
-xau:Gold
-xba:European Composite Unit
-xbb:European Monetary Unit
-xbc:European Unit of Account 9
-xb5:European Unit of Account 17
-xcd:East Caribbean Dollar
-xdr:SDR
-xeu:ECU (until 1998-12-31)
-xfu:UIC-Franc
-xfo:Gold-Franc
-xof:CFA Franc BCEAO
-xpd:Palladium
-xpf:CFP Franc
-xpt:Platinum
-
-yer:Yemeni Rial
-yum:New Dinar
-
-zal:Financial Rand
-zar:Rand
-zmk:Kwacha
-zrn:New Zaire
-zwd:Zimbabwe Dollar
+sub rename_currency_code {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
+
+ return Locale::Codes::_rename_code("currency",$code,$new_code,$codeset,$nowarn);
+}
+
+#=======================================================================
+#
+# add_currency_code_alias ( CODE,NEW_CODE [,CODESET] )
+#
+#=======================================================================
+
+sub add_currency_code_alias {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
+
+ return Locale::Codes::_add_code_alias("currency",$code,$new_code,$codeset,$nowarn);
+}
+
+#=======================================================================
+#
+# delete_currency_code_alias ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_currency_code_alias {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code_alias("currency",$code,$codeset,$nowarn);
+}
+
+1;
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Currency.pod b/Master/tlpkg/tlperl/lib/Locale/Currency.pod
index dce32612949..25512b85603 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Currency.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Currency.pod
@@ -1,7 +1,8 @@
+=pod
=head1 NAME
-Locale::Currency - ISO three letter codes for currency identification (ISO 4217)
+Locale::Currency - standard codes for currency identification
=head1 SYNOPSIS
@@ -16,135 +17,72 @@ Locale::Currency - ISO three letter codes for currency identification (ISO 4217)
=head1 DESCRIPTION
-The C<Locale::Currency> module provides access to the ISO three-letter
-codes for identifying currencies and funds, as defined in ISO 4217.
-You can either access the codes via the L<conversion routines>
-(described below),
-or with the two functions which return lists of all currency codes or
-all currency names.
+The C<Locale::Currency> module provides access to standard codes used
+for identifying currencies and funds, such as those defined in ISO 4217.
-There are two special codes defined by the standard which aren't
-understood by this module:
+Most of the routines take an optional additional argument which
+specifies the code set to use. If not specified, the default ISO
+4217 three-letter codes will be used.
-=over 4
-
-=item XTS
-
-Specifically reserved for testing purposes.
-
-=item XXX
-
-For transactions where no currency is involved.
-
-=back
+=head1 SUPPORTED CODE SETS
-
-=head1 CONVERSION ROUTINES
-
-There are two conversion routines: C<code2currency()> and C<currency2code()>.
+There are several different code sets you can use for identifying
+currencies. The ones currently supported are:
=over 4
-=item code2currency()
+=item B<alpha>
-This function takes a three letter currency code and returns a string
-which contains the name of the currency identified. If the code is
-not a valid currency code, as defined by ISO 4217, then C<undef>
-will be returned.
+This is a set of three-letter (uppercase) codes from ISO 4217 such
+as EUR for Euro.
- $curr = code2currency($code);
+Two of the codes specified by the standard (XTS which is reserved
+for testing purposes and XXX which is for transactions where no
+currency is involved) are omitted.
-=item currency2code()
+This code set is identified with the symbol C<LOCALE_CURR_ALPHA>.
-This function takes a currency name and returns the corresponding
-three letter currency code, if such exists.
-If the argument could not be identified as a currency name,
-then C<undef> will be returned.
+This is the default code set.
- $code = currency2code('French Franc');
+=item B<num>
-The case of the currency name is not important.
-See the section L<KNOWN BUGS AND LIMITATIONS> below.
-
-=back
+This is the set of three-digit numeric codes from ISO 4217.
+This code set is identified with the symbol C<LOCALE_CURR_NUMERIC>.
-=head1 QUERY ROUTINES
+=back
-There are two function which can be used to obtain a list of all
-currency codes, or all currency names:
+=head1 ROUTINES
=over 4
-=item C<all_currency_codes()>
+=item B<code2currency ( CODE [,CODESET] )>
-Returns a list of all three-letter currency codes.
-The codes are guaranteed to be all lower-case,
-and not in any particular order.
+=item B<currency2code ( NAME [,CODESET] )>
-=item C<all_currency_names()>
+=item B<currency_code2code ( CODE ,CODESET ,CODESET2 )>
-Returns a list of all currency names for which there is a corresponding
-three-letter currency code. The names are capitalised, and not returned
-in any particular order.
+=item B<all_currency_codes ( [CODESET] )>
-=back
+=item B<all_currency_names ( [CODESET] )>
+=item B<Locale::Currency::rename_currency ( CODE ,NEW_NAME [,CODESET] )>
-=head1 EXAMPLES
+=item B<Locale::Currency::add_currency ( CODE ,NAME [,CODESET] )>
-The following example illustrates use of the C<code2currency()> function.
-The user is prompted for a currency code, and then told the corresponding
-currency name:
+=item B<Locale::Currency::delete_currency ( CODE [,CODESET] )>
- $| = 1; # turn off buffering
+=item B<Locale::Currency::add_currency_alias ( NAME ,NEW_NAME )>
- print "Enter currency code: ";
- chop($code = <STDIN>);
- $curr = code2currency($code);
- if (defined $curr)
- {
- print "$code = $curr\n";
- }
- else
- {
- print "'$code' is not a valid currency code!\n";
- }
+=item B<Locale::Currency::delete_currency_alias ( NAME )>
-=head1 KNOWN BUGS AND LIMITATIONS
+=item B<Locale::Currency::rename_currency_code ( CODE ,NEW_CODE [,CODESET] )>
-=over 4
+=item B<Locale::Currency::add_currency_code_alias ( CODE ,NEW_CODE [,CODESET] )>
-=item *
+=item B<Locale::Currency::delete_currency_code_alias ( CODE [,CODESET] )>
-In the current implementation, all data is read in when the
-module is loaded, and then held in memory.
-A lazy implementation would be more memory friendly.
-
-=item *
-
-This module also includes the special codes which are
-not for a currency, such as Gold, Platinum, etc.
-This might cause a problem if you're using this module
-to display a list of currencies.
-Let Neil know if this does cause a problem, and we can
-do something about it.
-
-=item *
-
-ISO 4217 also defines a numeric code for each currency.
-Currency codes are not currently supported by this module,
-in the same way Locale::Country supports multiple codesets.
-
-=item *
-
-There are three cases where there is more than one
-code for the same currency name.
-Kwacha has two codes: mwk for Malawi, and zmk for Zambia.
-The Russian Ruble has two codes: rub and rur.
-The Belarussian Ruble has two codes: byr and byb.
-The currency2code() function only returns one code, so
-you might not get back the code you expected.
+These routines are all documented in the Locale::Codes man page.
=back
@@ -152,40 +90,30 @@ you might not get back the code you expected.
=over 4
-=item Locale::Country
-
-ISO codes for identification of country (ISO 3166).
+=item B<Locale::Codes>
-=item Locale::Script
+=item B<Locale::Constants>
-ISO codes for identification of written scripts (ISO 15924).
+=item B<http://www.iso.org/iso/support/currency_codes_list-1.htm>
-=item ISO 4217:1995
-
-Code for the representation of currencies and funds.
-
-=item http://www.bsi-global.com/iso4217currency
-
-Official web page for the ISO 4217 maintenance agency.
-This has the latest list of codes, in MS Word format. Boo.
+The ISO 4217 data.
=back
=head1 AUTHOR
-Michael Hennecke E<lt>hennecke@rz.uni-karlsruhe.deE<gt>
-and
-Neil Bowers E<lt>neil@bowers.comE<gt>
+See Locale::Codes for full author history.
-=head1 COPYRIGHT
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
-Copyright (C) 2002-2004, Neil Bowers.
+=head1 COPYRIGHT
-Copyright (c) 2001 Michael Hennecke and
-Canon Research Centre Europe (CRE).
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001 Michael Hennecke
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
=cut
-
diff --git a/Master/tlpkg/tlperl/lib/Locale/Language.pm b/Master/tlpkg/tlperl/lib/Locale/Language.pm
index e8454c39b4a..c30ff8840cf 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Language.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Language.pm
@@ -1,315 +1,284 @@
-#
-# Locale::Language - ISO two letter codes for language identification (ISO 639)
-#
-# $Id: Language.pm,v 2.7 2004/06/10 21:19:34 neilb Exp $
-#
-
package Locale::Language;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
use strict;
+use warnings;
require 5.002;
require Exporter;
+use Carp;
+use Locale::Codes;
+use Locale::Constants;
+use Locale::Codes::Language;
-#-----------------------------------------------------------------------
-# Public Global Variables
-#-----------------------------------------------------------------------
-use vars qw($VERSION @ISA @EXPORT);
-$VERSION = sprintf("%d.%02d", q$Revision: 2.7 $ =~ /(\d+)\.(\d+)/);
-@ISA = qw(Exporter);
-@EXPORT = qw(&code2language &language2code
- &all_language_codes &all_language_names );
+#=======================================================================
+# Public Global Variables
+#=======================================================================
-#-----------------------------------------------------------------------
-# Private Global Variables
-#-----------------------------------------------------------------------
-my %CODES = ();
-my %LANGUAGES = ();
+our($VERSION,@ISA,@EXPORT,@EXPORT_OK);
+
+$VERSION='3.16';
+@ISA = qw(Exporter);
+@EXPORT = qw(code2language
+ language2code
+ all_language_codes
+ all_language_names
+ language_code2code
+ LOCALE_LANG_ALPHA_2
+ LOCALE_LANG_ALPHA_3
+ LOCALE_LANG_TERM
+ );
+
+sub _code {
+ my($code,$codeset) = @_;
+ $code = "" if (! $code);
+
+ $codeset = LOCALE_LANG_DEFAULT if (! defined($codeset) || $codeset eq "");
+
+ if ($codeset =~ /^\d+$/) {
+ if ($codeset == LOCALE_LANG_ALPHA_2) {
+ $codeset = "alpha2";
+ } elsif ($codeset == LOCALE_LANG_ALPHA_3) {
+ $codeset = "alpha3";
+ } elsif ($codeset == LOCALE_LANG_TERM) {
+ $codeset = "term";
+ } else {
+ return (1);
+ }
+ }
+
+ if ($codeset eq "alpha2" ||
+ $codeset eq "alpha3" ||
+ $codeset eq "term") {
+ $code = lc($code);
+ } else {
+ return (1);
+ }
+
+ return (0,$code,$codeset);
+}
+#=======================================================================
+#
+# code2language ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub code2language {
+ my($err,$code,$codeset) = _code(@_);
+ return undef if ($err ||
+ ! defined $code);
+
+ return Locale::Codes::_code2name("language",$code,$codeset);
+}
#=======================================================================
#
-# code2language ( CODE )
+# language2code ( LANGUAGE [,CODESET] )
#
#=======================================================================
-sub code2language
-{
- my $code = shift;
-
-
- return undef unless defined $code;
- $code = lc($code);
- if (exists $CODES{$code})
- {
- return $CODES{$code};
- }
- else
- {
- #---------------------------------------------------------------
- # no such language code!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub language2code {
+ my($language,$codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err ||
+ ! defined $language);
+
+ return Locale::Codes::_name2code("language",$language,$codeset);
}
+#=======================================================================
+#
+# language_code2code ( CODE,CODESET_IN,CODESET_OUT )
+#
+#=======================================================================
+
+sub language_code2code {
+ (@_ == 3) or croak "language_code2code() takes 3 arguments!";
+ my($code,$inset,$outset) = @_;
+ my($err,$tmp);
+ ($err,$code,$inset) = _code($code,$inset);
+ return undef if ($err);
+ ($err,$tmp,$outset) = _code("",$outset);
+ return undef if ($err);
+
+ return Locale::Codes::_code2code("language",$code,$inset,$outset);
+}
#=======================================================================
#
-# language2code ( LANGUAGE )
+# all_language_codes ( [CODESET] )
#
#=======================================================================
-sub language2code
-{
- my $lang = shift;
-
-
- return undef unless defined $lang;
- $lang = lc($lang);
- if (exists $LANGUAGES{$lang})
- {
- return $LANGUAGES{$lang};
- }
- else
- {
- #---------------------------------------------------------------
- # no such language!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub all_language_codes {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_codes("language",$codeset);
}
#=======================================================================
#
-# all_language_codes()
+# all_language_names ( [CODESET] )
#
#=======================================================================
-sub all_language_codes
-{
- return keys %CODES;
+
+sub all_language_names {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_names("language",$codeset);
}
+#=======================================================================
+#
+# rename_language ( CODE,NAME [,CODESET] )
+#
+#=======================================================================
+
+sub rename_language {
+ my($code,$new_name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_rename("language",$code,$new_name,$codeset,$nowarn);
+}
#=======================================================================
#
-# all_language_names()
+# add_language ( CODE,NAME [,CODESET] )
#
#=======================================================================
-sub all_language_names
-{
- return values %CODES;
+
+sub add_language {
+ my($code,$name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_add_code("language",$code,$name,$codeset,$nowarn);
}
+#=======================================================================
+#
+# delete_language ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_language {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code("language",$code,$codeset,$nowarn);
+}
#=======================================================================
-# initialisation code - stuff the DATA into the CODES hash
+#
+# add_language_alias ( NAME,NEW_NAME )
+#
#=======================================================================
-{
- my $code;
- my $language;
- local $_;
-
-
- while (<DATA>)
- {
- next unless /\S/;
- chop;
- ($code, $language) = split(/:/, $_, 2);
- $CODES{$code} = $language;
- $LANGUAGES{"\L$language"} = $code;
- }
-
- close(DATA);
+
+sub add_language_alias {
+ my($name,$new_name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_add_alias("language",$name,$new_name,$nowarn);
}
-1;
+#=======================================================================
+#
+# delete_language_alias ( NAME )
+#
+#=======================================================================
+
+sub delete_language_alias {
+ my($name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_delete_alias("language",$name,$nowarn);
+}
+
+#=======================================================================
+#
+# rename_language_code ( CODE,NEW_CODE [,CODESET] )
+#
+#=======================================================================
-__DATA__
-aa:Afar
-ab:Abkhazian
-ae:Avestan
-af:Afrikaans
-am:Amharic
-ar:Arabic
-as:Assamese
-ay:Aymara
-az:Azerbaijani
-
-ba:Bashkir
-be:Belarusian
-bg:Bulgarian
-bh:Bihari
-bi:Bislama
-bn:Bengali
-bo:Tibetan
-br:Breton
-bs:Bosnian
-
-ca:Catalan
-ce:Chechen
-ch:Chamorro
-co:Corsican
-cs:Czech
-cu:Church Slavic
-cv:Chuvash
-cy:Welsh
-
-da:Danish
-de:German
-dz:Dzongkha
-
-el:Greek
-en:English
-eo:Esperanto
-es:Spanish
-et:Estonian
-eu:Basque
-
-fa:Persian
-fi:Finnish
-fj:Fijian
-fo:Faeroese
-fr:French
-fy:Frisian
-
-ga:Irish
-gd:Gaelic (Scots)
-gl:Gallegan
-gn:Guarani
-gu:Gujarati
-gv:Manx
-
-ha:Hausa
-he:Hebrew
-hi:Hindi
-ho:Hiri Motu
-hr:Croatian
-hu:Hungarian
-hy:Armenian
-hz:Herero
-
-ia:Interlingua
-id:Indonesian
-ie:Interlingue
-ik:Inupiaq
-is:Icelandic
-it:Italian
-iu:Inuktitut
-
-ja:Japanese
-jw:Javanese
-
-ka:Georgian
-ki:Kikuyu
-kj:Kuanyama
-kk:Kazakh
-kl:Kalaallisut
-km:Khmer
-kn:Kannada
-ko:Korean
-ks:Kashmiri
-ku:Kurdish
-kv:Komi
-kw:Cornish
-ky:Kirghiz
-
-la:Latin
-lb:Letzeburgesch
-ln:Lingala
-lo:Lao
-lt:Lithuanian
-lv:Latvian
-
-mg:Malagasy
-mh:Marshall
-mi:Maori
-mk:Macedonian
-ml:Malayalam
-mn:Mongolian
-mo:Moldavian
-mr:Marathi
-ms:Malay
-mt:Maltese
-my:Burmese
-
-na:Nauru
-nb:Norwegian Bokmal
-nd:Ndebele, North
-ne:Nepali
-ng:Ndonga
-nl:Dutch
-nn:Norwegian Nynorsk
-no:Norwegian
-nr:Ndebele, South
-nv:Navajo
-ny:Chichewa; Nyanja
-
-oc:Occitan (post 1500)
-om:Oromo
-or:Oriya
-os:Ossetian; Ossetic
-
-pa:Panjabi
-pi:Pali
-pl:Polish
-ps:Pushto
-pt:Portuguese
-
-qu:Quechua
-
-rm:Rhaeto-Romance
-rn:Rundi
-ro:Romanian
-ru:Russian
-rw:Kinyarwanda
-
-sa:Sanskrit
-sc:Sardinian
-sd:Sindhi
-se:Sami
-sg:Sango
-si:Sinhalese
-sk:Slovak
-sl:Slovenian
-sm:Samoan
-sn:Shona
-so:Somali
-sq:Albanian
-sr:Serbian
-ss:Swati
-st:Sotho
-su:Sundanese
-sv:Swedish
-sw:Swahili
-
-ta:Tamil
-te:Telugu
-tg:Tajik
-th:Thai
-ti:Tigrinya
-tk:Turkmen
-tl:Tagalog
-tn:Tswana
-to:Tonga
-tr:Turkish
-ts:Tsonga
-tt:Tatar
-tw:Twi
-
-ug:Uighur
-uk:Ukrainian
-ur:Urdu
-uz:Uzbek
-
-vi:Vietnamese
-vo:Volapuk
-
-wo:Wolof
-
-xh:Xhosa
-
-yi:Yiddish
-yo:Yoruba
-
-za:Zhuang
-zh:Chinese
-zu:Zulu
+sub rename_language_code {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
+
+ return Locale::Codes::_rename_code("language",$code,$new_code,$codeset,$nowarn);
+}
+
+#=======================================================================
+#
+# add_language_code_alias ( CODE,NEW_CODE [,CODESET] )
+#
+#=======================================================================
+
+sub add_language_code_alias {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
+
+ return Locale::Codes::_add_code_alias("language",$code,$new_code,$codeset,$nowarn);
+}
+
+#=======================================================================
+#
+# delete_language_code_alias ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_language_code_alias {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code_alias("language",$code,$codeset,$nowarn);
+}
+
+1;
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Language.pod b/Master/tlpkg/tlperl/lib/Locale/Language.pod
index ce7b378e5d9..df9c1472fbd 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Language.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Language.pod
@@ -1,115 +1,91 @@
+=pod
=head1 NAME
-Locale::Language - ISO two letter codes for language identification (ISO 639)
+Locale::Language - standard codes for language identification
=head1 SYNOPSIS
- use Locale::Language;
-
- $lang = code2language('en'); # $lang gets 'English'
- $code = language2code('French'); # $code gets 'fr'
-
- @codes = all_language_codes();
- @names = all_language_names();
+ use Locale::Language;
+ $lang = code2language('en'); # $lang gets 'English'
+ $code = language2code('French'); # $code gets 'fr'
+
+ @codes = all_language_codes();
+ @names = all_language_names();
=head1 DESCRIPTION
-The C<Locale::Language> module provides access to the ISO two-letter
-codes for identifying languages, as defined in ISO 639. You can either
-access the codes via the L<conversion routines> (described below),
-or via the two functions which return lists of all language codes or
-all language names.
+The C<Locale::Language> module provides access to standard codes used
+for identifying languages, such as those as defined in ISO 639.
+Most of the routines take an optional additional argument which
+specifies the code set to use. If not specified, the default ISO
+639 two-letter codes will be used.
-=head1 CONVERSION ROUTINES
+=head1 SUPPORTED CODE SETS
-There are two conversion routines: C<code2language()> and C<language2code()>.
+There are several different code sets you can use for identifying
+languages. The ones currently supported are:
=over 4
-=item code2language()
+=item B<alpha-2>
-This function takes a two letter language code and returns a string
-which contains the name of the language identified. If the code is
-not a valid language code, as defined by ISO 639, then C<undef>
-will be returned.
+This is the set of two-letter (lowercase) codes from ISO 639, such
+as 'he' for Hebrew.
- $lang = code2language($code);
+This code set is identified with the symbol C<LOCALE_LANG_ALPHA_2>.
-=item language2code()
+This is the default code set.
-This function takes a language name and returns the corresponding
-two letter language code, if such exists.
-If the argument could not be identified as a language name,
-then C<undef> will be returned.
+=item B<alpha-3>
- $code = language2code('French');
+This is the set of three-letter (lowercase) bibliographic codes from
+ISO 639, such as 'heb' for Hebrew.
-The case of the language name is not important.
-See the section L<KNOWN BUGS AND LIMITATIONS> below.
+This code set is identified with the symbol C<LOCALE_LANG_ALPHA_3>.
-=back
+=item B<term>
+This is the set of three-letter (lowercase) terminologic codes from
+ISO 639.
-=head1 QUERY ROUTINES
+This code set is identified with the symbol C<LOCALE_LANG_TERM>.
-There are two function which can be used to obtain a list of all
-language codes, or all language names:
+=back
+
+=head1 ROUTINES
=over 4
-=item C<all_language_codes()>
+=item B<code2language ( CODE [,CODESET] )>
-Returns a list of all two-letter language codes.
-The codes are guaranteed to be all lower-case,
-and not in any particular order.
+=item B<language2code ( NAME [,CODESET] )>
-=item C<all_language_names()>
+=item B<language_code2code ( CODE ,CODESET ,CODESET2 )>
-Returns a list of all language names for which there is a corresponding
-two-letter language code. The names are capitalised, and not returned
-in any particular order.
+=item B<all_language_codes ( [CODESET] )>
-=back
+=item B<all_language_names ( [CODESET] )>
+=item B<Locale::Language::rename_language ( CODE ,NEW_NAME [,CODESET] )>
-=head1 EXAMPLES
+=item B<Locale::Language::add_language ( CODE ,NAME [,CODESET] )>
-The following example illustrates use of the C<code2language()> function.
-The user is prompted for a language code, and then told the corresponding
-language name:
+=item B<Locale::Language::delete_language ( CODE [,CODESET] )>
- $| = 1; # turn off buffering
-
- print "Enter language code: ";
- chop($code = <STDIN>);
- $lang = code2language($code);
- if (defined $lang)
- {
- print "$code = $lang\n";
- }
- else
- {
- print "'$code' is not a valid language code!\n";
- }
+=item B<Locale::Language::add_language_alias ( NAME ,NEW_NAME )>
-=head1 KNOWN BUGS AND LIMITATIONS
+=item B<Locale::Language::delete_language_alias ( NAME )>
-=over 4
-
-=item *
+=item B<Locale::Language::rename_language_code ( CODE ,NEW_CODE [,CODESET] )>
-In the current implementation, all data is read in when the
-module is loaded, and then held in memory.
-A lazy implementation would be more memory friendly.
+=item B<Locale::Language::add_language_code_alias ( CODE ,NEW_CODE [,CODESET] )>
-=item *
+=item B<Locale::Language::delete_language_code_alias ( CODE [,CODESET] )>
-Currently just supports the two letter language codes -
-there are also three-letter codes, and numbers.
-Would these be of any use to anyone?
+These routines are all documented in the Locale::Codes man page.
=back
@@ -117,42 +93,29 @@ Would these be of any use to anyone?
=over 4
-=item Locale::Country
-
-ISO codes for identification of country (ISO 3166).
-Supports 2-letter, 3-letter, and numeric country codes.
-
-=item Locale::Script
+=item B<Locale::Codes>
-ISO codes for identification of written scripts (ISO 15924).
+=item B<Locale::Constants>
-=item Locale::Currency
+=item B<http://www.loc.gov/standards/iso639-2/>
-ISO three letter codes for identification of currencies and funds (ISO 4217).
-
-=item ISO 639:1988 (E/F)
-
-Code for the representation of names of languages.
-
-=item http://lcweb.loc.gov/standards/iso639-2/langhome.html
-
-Home page for ISO 639-2.
+Source of the ISO 639 codes.
=back
-
=head1 AUTHOR
-Neil Bowers E<lt>neil@bowers.comE<gt>
+See Locale::Codes for full author history.
-=head1 COPYRIGHT
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
-Copyright (C) 2002-2004, Neil Bowers.
+=head1 COPYRIGHT
-Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
=cut
-
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext.pm b/Master/tlpkg/tlperl/lib/Locale/Maketext.pm
index 1bfbbc9bba4..af5d21a78a9 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Maketext.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext.pm
@@ -1,16 +1,33 @@
+
package Locale::Maketext;
use strict;
use vars qw( @ISA $VERSION $MATCH_SUPERS $USING_LANGUAGE_TAGS
$USE_LITERALS $MATCH_SUPERS_TIGHTLY);
use Carp ();
-use I18N::LangTags 0.30 ();
+use I18N::LangTags ();
+use I18N::LangTags::Detect ();
#--------------------------------------------------------------------------
BEGIN { unless(defined &DEBUG) { *DEBUG = sub () {0} } }
# define the constant 'DEBUG' at compile-time
-$VERSION = '1.14';
+# turn on utf8 if we have it (this is what GutsLoader.pm used to do essentially )
+# use if (exists $INC{'utf8.pm'} || eval 'use utf8'), 'utf8';
+BEGIN {
+
+ # if we have it || we can load it
+ if ( exists $INC{'utf8.pm'} || eval { local $SIG{'__DIE__'};require utf8; } ) {
+ utf8->import();
+ DEBUG and warn " utf8 on for _compile()\n";
+ }
+ else {
+ DEBUG and warn " utf8 not available for _compile() ($INC{'utf8.pm'})\n$@\n";
+ }
+}
+
+
+$VERSION = '1.19';
@ISA = ();
$MATCH_SUPERS = 1;
@@ -131,8 +148,7 @@ sub failure_handler_auto {
$handle->{'failure_lex'} ||= {};
my $lex = $handle->{'failure_lex'};
- my $value;
- $lex->{$phrase} ||= ($value = $handle->_compile($phrase));
+ my $value ||= ($lex->{$phrase} ||= $handle->_compile($phrase));
# Dumbly copied from sub maketext:
return ${$value} if ref($value) eq 'SCALAR';
@@ -144,12 +160,11 @@ sub failure_handler_auto {
# If we make it here, there was an exception thrown in the
# call to $value, and so scream:
if($@) {
- my $err = $@;
# pretty up the error message
- $err =~ s{\s+at\s+\(eval\s+\d+\)\s+line\s+(\d+)\.?\n?}
+ $@ =~ s{\s+at\s+\(eval\s+\d+\)\s+line\s+(\d+)\.?\n?}
{\n in bracket code [compiled line $1],}s;
#$err =~ s/\n?$/\n/s;
- Carp::croak "Error in maketexting \"$phrase\":\n$err as used";
+ Carp::croak "Error in maketexting \"$phrase\":\n$@ as used";
# Rather unexpected, but suppose that the sub tried calling
# a method that didn't exist.
}
@@ -179,34 +194,54 @@ sub maketext {
my($handle, $phrase) = splice(@_,0,2);
Carp::confess('No handle/phrase') unless (defined($handle) && defined($phrase));
+ # backup $@ in case it it's still being used in the calling code.
+ # If no failures, we'll re-set it back to what it was later.
+ my $at = $@;
- # Don't interefere with $@ in case that's being interpolated into the msg.
- local $@;
+ # Copy @_ case one of its elements is $@.
+ @_ = @_;
# Look up the value:
my $value;
- foreach my $h_r (
- @{ $isa_scan{ref($handle) || $handle} || $handle->_lex_refs }
- ) {
- DEBUG and warn "* Looking up \"$phrase\" in $h_r\n";
- if(exists $h_r->{$phrase}) {
- DEBUG and warn " Found \"$phrase\" in $h_r\n";
- unless(ref($value = $h_r->{$phrase})) {
- # Nonref means it's not yet compiled. Compile and replace.
- $value = $h_r->{$phrase} = $handle->_compile($value);
+ if (exists $handle->{'_external_lex_cache'}{$phrase}) {
+ DEBUG and warn "* Using external lex cache version of \"$phrase\"\n";
+ $value = $handle->{'_external_lex_cache'}{$phrase};
+ }
+ else {
+ foreach my $h_r (
+ @{ $isa_scan{ref($handle) || $handle} || $handle->_lex_refs }
+ ) {
+ DEBUG and warn "* Looking up \"$phrase\" in $h_r\n";
+ if(exists $h_r->{$phrase}) {
+ DEBUG and warn " Found \"$phrase\" in $h_r\n";
+ unless(ref($value = $h_r->{$phrase})) {
+ # Nonref means it's not yet compiled. Compile and replace.
+ if ($handle->{'use_external_lex_cache'}) {
+ $value = $handle->{'_external_lex_cache'}{$phrase} = $handle->_compile($value);
+ }
+ else {
+ $value = $h_r->{$phrase} = $handle->_compile($value);
+ }
+ }
+ last;
}
- last;
- }
- elsif($phrase !~ m/^_/s and $h_r->{'_AUTO'}) {
- # it's an auto lex, and this is an autoable key!
- DEBUG and warn " Automaking \"$phrase\" into $h_r\n";
-
- $value = $h_r->{$phrase} = $handle->_compile($phrase);
- last;
+ # extending packages need to be able to localize _AUTO and if readonly can't "local $h_r->{'_AUTO'} = 1;"
+ # but they can "local $handle->{'_external_lex_cache'}{'_AUTO'} = 1;"
+ elsif($phrase !~ m/^_/s and ($handle->{'use_external_lex_cache'} ? ( exists $handle->{'_external_lex_cache'}{'_AUTO'} ? $handle->{'_external_lex_cache'}{'_AUTO'} : $h_r->{'_AUTO'} ) : $h_r->{'_AUTO'})) {
+ # it's an auto lex, and this is an autoable key!
+ DEBUG and warn " Automaking \"$phrase\" into $h_r\n";
+ if ($handle->{'use_external_lex_cache'}) {
+ $value = $handle->{'_external_lex_cache'}{$phrase} = $handle->_compile($phrase);
+ }
+ else {
+ $value = $h_r->{$phrase} = $handle->_compile($phrase);
+ }
+ last;
+ }
+ DEBUG>1 and print " Not found in $h_r, nor automakable\n";
+ # else keep looking
}
- DEBUG>1 and print " Not found in $h_r, nor automakable\n";
- # else keep looking
}
unless(defined($value)) {
@@ -215,10 +250,12 @@ sub maketext {
DEBUG and warn "WARNING0: maketext fails looking for <$phrase>\n";
my $fail;
if(ref($fail = $handle->{'fail'}) eq 'CODE') { # it's a sub reference
+ $@ = $at; # Put $@ back in case we altered it along the way.
return &{$fail}($handle, $phrase, @_);
# If it ever returns, it should return a good value.
}
else { # It's a method name
+ $@ = $at; # Put $@ back in case we altered it along the way.
return $handle->$fail($phrase, @_);
# If it ever returns, it should return a good value.
}
@@ -229,8 +266,14 @@ sub maketext {
}
}
- return $$value if ref($value) eq 'SCALAR';
- return $value unless ref($value) eq 'CODE';
+ if(ref($value) eq 'SCALAR'){
+ $@ = $at; # Put $@ back in case we altered it along the way.
+ return $$value ;
+ }
+ if(ref($value) ne 'CODE'){
+ $@ = $at; # Put $@ back in case we altered it along the way.
+ return $value ;
+ }
{
local $SIG{'__DIE__'};
@@ -239,18 +282,19 @@ sub maketext {
# If we make it here, there was an exception thrown in the
# call to $value, and so scream:
if ($@) {
- my $err = $@;
# pretty up the error message
- $err =~ s{\s+at\s+\(eval\s+\d+\)\s+line\s+(\d+)\.?\n?}
+ $@ =~ s{\s+at\s+\(eval\s+\d+\)\s+line\s+(\d+)\.?\n?}
{\n in bracket code [compiled line $1],}s;
#$err =~ s/\n?$/\n/s;
- Carp::croak "Error in maketexting \"$phrase\":\n$err as used";
+ Carp::croak "Error in maketexting \"$phrase\":\n$@ as used";
# Rather unexpected, but suppose that the sub tried calling
# a method that didn't exist.
}
else {
+ $@ = $at; # Put $@ back in case we altered it along the way.
return $value;
}
+ $@ = $at; # Put $@ back in case we altered it along the way.
}
###########################################################################
@@ -347,7 +391,6 @@ sub _langtag_munging {
###########################################################################
sub _ambient_langprefs {
- require I18N::LangTags::Detect;
return I18N::LangTags::Detect::detect();
}
@@ -387,10 +430,6 @@ sub _add_supers {
#
###########################################################################
-use Locale::Maketext::GutsLoader;
-
-###########################################################################
-
my %tried = ();
# memoization of whether we've used this module, or found it unusable.
@@ -400,16 +439,18 @@ sub _try_use { # Basically a wrapper around "require Modulename"
my $module = $_[0]; # ASSUME sane module name!
{ no strict 'refs';
+ no warnings 'once';
return($tried{$module} = 1)
if %{$module . '::Lexicon'} or @{$module . '::ISA'};
# weird case: we never use'd it, but there it is!
}
DEBUG and warn " About to use $module ...\n";
- {
- local $SIG{'__DIE__'};
- eval "require $module"; # used to be "use $module", but no point in that.
- }
+
+ local $SIG{'__DIE__'};
+ local $@;
+ eval "require $module"; # used to be "use $module", but no point in that.
+
if($@) {
DEBUG and warn "Error using $module \: $@\n";
return $tried{$module} = 0;
@@ -453,4 +494,319 @@ sub _lex_refs { # report the lexicon references for this handle's class
sub clear_isa_scan { %isa_scan = (); return; } # end on a note of simplicity!
+#--------------------------------------------------------------------------
+
+sub _compile {
+ # This big scary routine compiles an entry.
+ # It returns either a coderef if there's brackety bits in this, or
+ # otherwise a ref to a scalar.
+
+ my $string_to_compile = $_[1]; # There are taint issues using regex on @_ - perlbug 60378,27344
+
+ # The while() regex is more expensive than this check on strings that don't need a compile.
+ # this op causes a ~2% speed hit for strings that need compile and a 250% speed improvement
+ # on strings that don't need compiling.
+ return \"$string_to_compile" if($string_to_compile !~ m/[\[~\]]/ms); # return a string ref if chars [~] are not in the string
+
+ my $target = ref($_[0]) || $_[0];
+
+ my(@code);
+ my(@c) = (''); # "chunks" -- scratch.
+ my $call_count = 0;
+ my $big_pile = '';
+ {
+ my $in_group = 0; # start out outside a group
+ my($m, @params); # scratch
+
+ while($string_to_compile =~ # Iterate over chunks.
+ m/(
+ [^\~\[\]]+ # non-~[] stuff (Capture everything else here)
+ |
+ ~. # ~[, ~], ~~, ~other
+ |
+ \[ # [ presumably opening a group
+ |
+ \] # ] presumably closing a group
+ |
+ ~ # terminal ~ ?
+ |
+ $
+ )/xgs
+ ) {
+ DEBUG>2 and warn qq{ "$1"\n};
+
+ if($1 eq '[' or $1 eq '') { # "[" or end
+ # Whether this is "[" or end, force processing of any
+ # preceding literal.
+ if($in_group) {
+ if($1 eq '') {
+ $target->_die_pointing($string_to_compile, 'Unterminated bracket group');
+ }
+ else {
+ $target->_die_pointing($string_to_compile, 'You can\'t nest bracket groups');
+ }
+ }
+ else {
+ if ($1 eq '') {
+ DEBUG>2 and warn " [end-string]\n";
+ }
+ else {
+ $in_group = 1;
+ }
+ die "How come \@c is empty?? in <$string_to_compile>" unless @c; # sanity
+ if(length $c[-1]) {
+ # Now actually processing the preceding literal
+ $big_pile .= $c[-1];
+ if($USE_LITERALS and (
+ (ord('A') == 65)
+ ? $c[-1] !~ m/[^\x20-\x7E]/s
+ # ASCII very safe chars
+ : $c[-1] !~ m/[^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~\x07]/s
+ # EBCDIC very safe chars
+ )) {
+ # normal case -- all very safe chars
+ $c[-1] =~ s/'/\\'/g;
+ push @code, q{ '} . $c[-1] . "',\n";
+ $c[-1] = ''; # reuse this slot
+ }
+ else {
+ push @code, ' $c[' . $#c . "],\n";
+ push @c, ''; # new chunk
+ }
+ }
+ # else just ignore the empty string.
+ }
+
+ }
+ elsif($1 eq ']') { # "]"
+ # close group -- go back in-band
+ if($in_group) {
+ $in_group = 0;
+
+ DEBUG>2 and warn " --Closing group [$c[-1]]\n";
+
+ # And now process the group...
+
+ if(!length($c[-1]) or $c[-1] =~ m/^\s+$/s) {
+ DEBUG>2 and warn " -- (Ignoring)\n";
+ $c[-1] = ''; # reset out chink
+ next;
+ }
+
+ #$c[-1] =~ s/^\s+//s;
+ #$c[-1] =~ s/\s+$//s;
+ ($m,@params) = split(/,/, $c[-1], -1); # was /\s*,\s*/
+
+ # A bit of a hack -- we've turned "~,"'s into DELs, so turn
+ # 'em into real commas here.
+ if (ord('A') == 65) { # ASCII, etc
+ foreach($m, @params) { tr/\x7F/,/ }
+ }
+ else { # EBCDIC (1047, 0037, POSIX-BC)
+ # Thanks to Peter Prymmer for the EBCDIC handling
+ foreach($m, @params) { tr/\x07/,/ }
+ }
+
+ # Special-case handling of some method names:
+ if($m eq '_*' or $m =~ m/^_(-?\d+)$/s) {
+ # Treat [_1,...] as [,_1,...], etc.
+ unshift @params, $m;
+ $m = '';
+ }
+ elsif($m eq '*') {
+ $m = 'quant'; # "*" for "times": "4 cars" is 4 times "cars"
+ }
+ elsif($m eq '#') {
+ $m = 'numf'; # "#" for "number": [#,_1] for "the number _1"
+ }
+
+ # Most common case: a simple, legal-looking method name
+ if($m eq '') {
+ # 0-length method name means to just interpolate:
+ push @code, ' (';
+ }
+ elsif($m =~ /^\w+(?:\:\:\w+)*$/s
+ and $m !~ m/(?:^|\:)\d/s
+ # exclude starting a (sub)package or symbol with a digit
+ ) {
+ # Yes, it even supports the demented (and undocumented?)
+ # $obj->Foo::bar(...) syntax.
+ $target->_die_pointing(
+ $string_to_compile, q{Can't use "SUPER::" in a bracket-group method},
+ 2 + length($c[-1])
+ )
+ if $m =~ m/^SUPER::/s;
+ # Because for SUPER:: to work, we'd have to compile this into
+ # the right package, and that seems just not worth the bother,
+ # unless someone convinces me otherwise.
+
+ push @code, ' $_[0]->' . $m . '(';
+ }
+ else {
+ # TODO: implement something? or just too icky to consider?
+ $target->_die_pointing(
+ $string_to_compile,
+ "Can't use \"$m\" as a method name in bracket group",
+ 2 + length($c[-1])
+ );
+ }
+
+ pop @c; # we don't need that chunk anymore
+ ++$call_count;
+
+ foreach my $p (@params) {
+ if($p eq '_*') {
+ # Meaning: all parameters except $_[0]
+ $code[-1] .= ' @_[1 .. $#_], ';
+ # and yes, that does the right thing for all @_ < 3
+ }
+ elsif($p =~ m/^_(-?\d+)$/s) {
+ # _3 meaning $_[3]
+ $code[-1] .= '$_[' . (0 + $1) . '], ';
+ }
+ elsif($USE_LITERALS and (
+ (ord('A') == 65)
+ ? $p !~ m/[^\x20-\x7E]/s
+ # ASCII very safe chars
+ : $p !~ m/[^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~\x07]/s
+ # EBCDIC very safe chars
+ )) {
+ # Normal case: a literal containing only safe characters
+ $p =~ s/'/\\'/g;
+ $code[-1] .= q{'} . $p . q{', };
+ }
+ else {
+ # Stow it on the chunk-stack, and just refer to that.
+ push @c, $p;
+ push @code, ' $c[' . $#c . '], ';
+ }
+ }
+ $code[-1] .= "),\n";
+
+ push @c, '';
+ }
+ else {
+ $target->_die_pointing($string_to_compile, q{Unbalanced ']'});
+ }
+
+ }
+ elsif(substr($1,0,1) ne '~') {
+ # it's stuff not containing "~" or "[" or "]"
+ # i.e., a literal blob
+ $c[-1] .= $1;
+
+ }
+ elsif($1 eq '~~') { # "~~"
+ $c[-1] .= '~';
+
+ }
+ elsif($1 eq '~[') { # "~["
+ $c[-1] .= '[';
+
+ }
+ elsif($1 eq '~]') { # "~]"
+ $c[-1] .= ']';
+
+ }
+ elsif($1 eq '~,') { # "~,"
+ if($in_group) {
+ # This is a hack, based on the assumption that no-one will actually
+ # want a DEL inside a bracket group. Let's hope that's it's true.
+ if (ord('A') == 65) { # ASCII etc
+ $c[-1] .= "\x7F";
+ }
+ else { # EBCDIC (cp 1047, 0037, POSIX-BC)
+ $c[-1] .= "\x07";
+ }
+ }
+ else {
+ $c[-1] .= '~,';
+ }
+
+ }
+ elsif($1 eq '~') { # possible only at string-end, it seems.
+ $c[-1] .= '~';
+
+ }
+ else {
+ # It's a "~X" where X is not a special character.
+ # Consider it a literal ~ and X.
+ $c[-1] .= $1;
+ }
+ }
+ }
+
+ if($call_count) {
+ undef $big_pile; # Well, nevermind that.
+ }
+ else {
+ # It's all literals! Ahwell, that can happen.
+ # So don't bother with the eval. Return a SCALAR reference.
+ return \$big_pile;
+ }
+
+ die q{Last chunk isn't null??} if @c and length $c[-1]; # sanity
+ DEBUG and warn scalar(@c), " chunks under closure\n";
+ if(@code == 0) { # not possible?
+ DEBUG and warn "Empty code\n";
+ return \'';
+ }
+ elsif(@code > 1) { # most cases, presumably!
+ unshift @code, "join '',\n";
+ }
+ unshift @code, "use strict; sub {\n";
+ push @code, "}\n";
+
+ DEBUG and warn @code;
+ my $sub = eval(join '', @code);
+ die "$@ while evalling" . join('', @code) if $@; # Should be impossible.
+ return $sub;
+}
+
+#--------------------------------------------------------------------------
+
+sub _die_pointing {
+ # This is used by _compile to throw a fatal error
+ my $target = shift; # class name
+ # ...leaving $_[0] the error-causing text, and $_[1] the error message
+
+ my $i = index($_[0], "\n");
+
+ my $pointy;
+ my $pos = pos($_[0]) - (defined($_[2]) ? $_[2] : 0) - 1;
+ if($pos < 1) {
+ $pointy = "^=== near there\n";
+ }
+ else { # we need to space over
+ my $first_tab = index($_[0], "\t");
+ if($pos > 2 and ( -1 == $first_tab or $first_tab > pos($_[0]))) {
+ # No tabs, or the first tab is harmlessly after where we will point to,
+ # AND we're far enough from the margin that we can draw a proper arrow.
+ $pointy = ('=' x $pos) . "^ near there\n";
+ }
+ else {
+ # tabs screw everything up!
+ $pointy = substr($_[0],0,$pos);
+ $pointy =~ tr/\t //cd;
+ # make everything into whitespace, but preserving tabs
+ $pointy .= "^=== near there\n";
+ }
+ }
+
+ my $errmsg = "$_[1], in\:\n$_[0]";
+
+ if($i == -1) {
+ # No newline.
+ $errmsg .= "\n" . $pointy;
+ }
+ elsif($i == (length($_[0]) - 1) ) {
+ # Already has a newline at end.
+ $errmsg .= $pointy;
+ }
+ else {
+ # don't bother with the pointy bit, I guess.
+ }
+ Carp::croak( "$errmsg via $target, as used" );
+}
+
1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext.pod b/Master/tlpkg/tlperl/lib/Locale/Maketext.pod
index 15533e4e870..14b47c884e8 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Maketext.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext.pod
@@ -937,6 +937,25 @@ lexicon keys be autoable, except for possibly a few, and I
arbitrarily decided to use a leading underscore as a signal
to distinguish those few.
+=head1 READONLY LEXICONS
+
+If your lexicon is a tied hash the simple act of caching the compiled value can be fatal.
+
+For example a L<GDBM_File> GDBM_READER tied hash will die with something like:
+
+ gdbm store returned -1, errno 2, key "..." at ...
+
+All you need to do is turn on caching outside of the lexicon hash itself like so:
+
+ sub init {
+ my ($lh) = @_;
+ ...
+ $lh->{'use_external_lex_cache'} = 1;
+ ...
+ }
+
+And then instead of storing the compiled value in the lexicon hash it will store it in $lh->{'_external_lex_cache'}
+
=head1 CONTROLLING LOOKUP FAILURE
If you call $lh->maketext(I<key>, ...parameters...),
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext/Cookbook.pod b/Master/tlpkg/tlperl/lib/Locale/Maketext/Cookbook.pod
new file mode 100644
index 00000000000..3457f7ca12a
--- /dev/null
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext/Cookbook.pod
@@ -0,0 +1,150 @@
+# This document contains text in Perl "POD" format.
+# Use a POD viewer like perldoc or perlman to render it.
+
+=encoding utf-8
+
+=head1 NAME
+
+Locale::Maketext::Cookbook - recipes for using Locale::Maketext
+
+=head1 INTRODUCTION
+
+This is a work in progress. Not much progress by now :-)
+
+=head1 ONESIDED LEXICONS
+
+I<Adapted from a suggestion by Dan Muey>
+
+It may be common (for example at your main lexicon) that
+the hash keys and values coincide. Like that
+
+ q{Hello, tell me your name}
+ => q{Hello, tell me your name}
+
+It would be nice to just write:
+
+ q{Hello, tell me your name} => ''
+
+and have this magically inflated to the first form.
+Among the advantages of such representation, that would
+lead to
+smaller files, less prone to mistyping or mispasting,
+and handy to someone translating it which can simply
+copy the main lexicon and enter the translation
+instead of having to remove the value first.
+
+That can be achieved by overriding C<init>
+in your class and working on the main lexicon
+with code like that:
+
+ package My::I18N;
+ ...
+
+ sub init {
+ my $lh = shift; # a newborn handle
+ $lh->SUPER::init();
+ inflate_lexicon(\%My::I18N::en::Lexicon);
+ return;
+ }
+
+ sub inflate_lexicon {
+ my $lex = shift;
+ while (my ($k, $v) = each %$lex) {
+ $v = $k if !defined $v || $v eq '';
+ }
+ }
+
+Here we are assuming C<My::I18N::en> to own the
+main lexicon.
+
+There are some downsides here: the size economy
+will not stand at runtime after this C<init()>
+runs. But it should not be that critical, since
+if you don't have space for that, you won't have
+space for any other language besides the main one
+as well. You could do that too with ties,
+expanding the value at lookup time which
+should be more time expensive as an option.
+
+=head1 DECIMAL PLACES IN NUMBER FORMATTING
+
+I<After CPAN RT #36136 (https://rt.cpan.org/Ticket/Display.html?id=36136)>
+
+The documentation of L<Locale::Maketext> advises that
+the standard bracket method C<numf> is limited and that
+you must override that for better results. It even
+suggests the use of L<Number::Format>.
+
+One such defect of standard C<numf> is to not be
+able to use a certain decimal precision.
+For example,
+
+ $lh->maketext('pi is [numf,_1]', 355/113);
+
+outputs
+
+ pi is 3.14159292035398
+
+Since pi ≈ 355/116 is only accurate
+to 6 decimal places, you would want to say:
+
+ $lh->maketext('pi is [numf,_1,6]', 355/113);
+
+and get "pi is 3.141592".
+
+One solution for that could use C<Number::Format>
+like that:
+
+ package Wuu;
+
+ use base qw(Locale::Maketext);
+
+ use Number::Format;
+
+ # can be overridden according to language conventions
+ sub _numf_params {
+ return (
+ -thousands_sep => '.',
+ -decimal_point => ',',
+ -decimal_digits => 2,
+ );
+ }
+
+ # builds a Number::Format
+ sub _numf_formatter {
+ my ($lh, $scale) = @_;
+ my @params = $lh->_numf_params;
+ if ($scale) { # use explicit scale rather than default
+ push @params, (-decimal_digits => $scale);
+ }
+ return Number::Format->new(@params);
+ }
+
+ sub numf {
+ my ($lh, $n, $scale) = @_;
+ # get the (cached) formatter
+ my $nf = $lh->{__nf}{$scale} ||= $lh->_numf_formatter($scale);
+ # format the number itself
+ return $nf->format_number($n);
+ }
+
+ package Wuu::pt;
+
+ use base qw(Wuu);
+
+and then
+
+ my $lh = Wuu->get_handle('pt');
+ $lh->maketext('A [numf,_1,3] km de distância', 1550.2222);
+
+would return "A 1.550,222 km de distância".
+
+Notice that the standard utility methods of
+C<Locale::Maketext> are irremediably limited
+because they could not aim to do everything
+that could be expected from them in different languages,
+cultures and applications. So extending C<numf>,
+C<quant>, and C<sprintf> is natural as soon
+as your needs exceed what the standard ones do.
+
+
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext/Guts.pm b/Master/tlpkg/tlperl/lib/Locale/Maketext/Guts.pm
index 9af292c61cc..75c993caee5 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Maketext/Guts.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext/Guts.pm
@@ -1,328 +1,24 @@
package Locale::Maketext::Guts;
-$VERSION = '1.13';
+use Locale::Maketext;
-BEGIN {
- # Just so we're nice and define SOMETHING in "our" package.
- *zorp = sub { return scalar @_ } unless defined &zorp;
-}
+our $VERSION = '1.17';
-package Locale::Maketext;
-use strict;
-use vars qw($USE_LITERALS $GUTSPATH);
+=head1 NAME
-BEGIN {
- $GUTSPATH = __FILE__;
- *DEBUG = sub () {0} unless defined &DEBUG;
-}
+Locale::Maketext::Guts - Deprecated module to load Locale::Maketext utf8 code
-use utf8;
+=head1 SYNOPSIS
-sub _compile {
- # This big scary routine compiles an entry.
- # It returns either a coderef if there's brackety bits in this, or
- # otherwise a ref to a scalar.
+ # Do this instead please
+ use Locale::Maketext
- my $target = ref($_[0]) || $_[0];
+=head1 DESCRIPTION
- my(@code);
- my(@c) = (''); # "chunks" -- scratch.
- my $call_count = 0;
- my $big_pile = '';
- {
- my $in_group = 0; # start out outside a group
- my($m, @params); # scratch
+Previously Local::Maketext::GutsLoader performed some magic to load
+Locale::Maketext when utf8 was unavailable. The subs this module provided
+were merged back into Locale::Maketext
- while($_[1] =~ # Iterate over chunks.
- m/\G(
- [^\~\[\]]+ # non-~[] stuff
- |
- ~. # ~[, ~], ~~, ~other
- |
- \[ # [ presumably opening a group
- |
- \] # ] presumably closing a group
- |
- ~ # terminal ~ ?
- |
- $
- )/xgs
- ) {
- DEBUG>2 and print qq{ "$1"\n};
-
- if($1 eq '[' or $1 eq '') { # "[" or end
- # Whether this is "[" or end, force processing of any
- # preceding literal.
- if($in_group) {
- if($1 eq '') {
- $target->_die_pointing($_[1], 'Unterminated bracket group');
- }
- else {
- $target->_die_pointing($_[1], 'You can\'t nest bracket groups');
- }
- }
- else {
- if ($1 eq '') {
- DEBUG>2 and print " [end-string]\n";
- }
- else {
- $in_group = 1;
- }
- die "How come \@c is empty?? in <$_[1]>" unless @c; # sanity
- if(length $c[-1]) {
- # Now actually processing the preceding literal
- $big_pile .= $c[-1];
- if($USE_LITERALS and (
- (ord('A') == 65)
- ? $c[-1] !~ m/[^\x20-\x7E]/s
- # ASCII very safe chars
- : $c[-1] !~ m/[^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~\x07]/s
- # EBCDIC very safe chars
- )) {
- # normal case -- all very safe chars
- $c[-1] =~ s/'/\\'/g;
- push @code, q{ '} . $c[-1] . "',\n";
- $c[-1] = ''; # reuse this slot
- }
- else {
- push @code, ' $c[' . $#c . "],\n";
- push @c, ''; # new chunk
- }
- }
- # else just ignore the empty string.
- }
-
- }
- elsif($1 eq ']') { # "]"
- # close group -- go back in-band
- if($in_group) {
- $in_group = 0;
-
- DEBUG>2 and print " --Closing group [$c[-1]]\n";
-
- # And now process the group...
-
- if(!length($c[-1]) or $c[-1] =~ m/^\s+$/s) {
- DEBUG > 2 and print " -- (Ignoring)\n";
- $c[-1] = ''; # reset out chink
- next;
- }
-
- #$c[-1] =~ s/^\s+//s;
- #$c[-1] =~ s/\s+$//s;
- ($m,@params) = split(/,/, $c[-1], -1); # was /\s*,\s*/
-
- # A bit of a hack -- we've turned "~,"'s into DELs, so turn
- # 'em into real commas here.
- if (ord('A') == 65) { # ASCII, etc
- foreach($m, @params) { tr/\x7F/,/ }
- }
- else { # EBCDIC (1047, 0037, POSIX-BC)
- # Thanks to Peter Prymmer for the EBCDIC handling
- foreach($m, @params) { tr/\x07/,/ }
- }
-
- # Special-case handling of some method names:
- if($m eq '_*' or $m =~ m/^_(-?\d+)$/s) {
- # Treat [_1,...] as [,_1,...], etc.
- unshift @params, $m;
- $m = '';
- }
- elsif($m eq '*') {
- $m = 'quant'; # "*" for "times": "4 cars" is 4 times "cars"
- }
- elsif($m eq '#') {
- $m = 'numf'; # "#" for "number": [#,_1] for "the number _1"
- }
-
- # Most common case: a simple, legal-looking method name
- if($m eq '') {
- # 0-length method name means to just interpolate:
- push @code, ' (';
- }
- elsif($m =~ /^\w+(?:\:\:\w+)*$/s
- and $m !~ m/(?:^|\:)\d/s
- # exclude starting a (sub)package or symbol with a digit
- ) {
- # Yes, it even supports the demented (and undocumented?)
- # $obj->Foo::bar(...) syntax.
- $target->_die_pointing(
- $_[1], q{Can't use "SUPER::" in a bracket-group method},
- 2 + length($c[-1])
- )
- if $m =~ m/^SUPER::/s;
- # Because for SUPER:: to work, we'd have to compile this into
- # the right package, and that seems just not worth the bother,
- # unless someone convinces me otherwise.
-
- push @code, ' $_[0]->' . $m . '(';
- }
- else {
- # TODO: implement something? or just too icky to consider?
- $target->_die_pointing(
- $_[1],
- "Can't use \"$m\" as a method name in bracket group",
- 2 + length($c[-1])
- );
- }
-
- pop @c; # we don't need that chunk anymore
- ++$call_count;
-
- foreach my $p (@params) {
- if($p eq '_*') {
- # Meaning: all parameters except $_[0]
- $code[-1] .= ' @_[1 .. $#_], ';
- # and yes, that does the right thing for all @_ < 3
- }
- elsif($p =~ m/^_(-?\d+)$/s) {
- # _3 meaning $_[3]
- $code[-1] .= '$_[' . (0 + $1) . '], ';
- }
- elsif($USE_LITERALS and (
- (ord('A') == 65)
- ? $p !~ m/[^\x20-\x7E]/s
- # ASCII very safe chars
- : $p !~ m/[^ !"\#\$%&'()*+,\-.\/0-9:;<=>?\@A-Z[\\\]^_`a-z{|}~\x07]/s
- # EBCDIC very safe chars
- )) {
- # Normal case: a literal containing only safe characters
- $p =~ s/'/\\'/g;
- $code[-1] .= q{'} . $p . q{', };
- }
- else {
- # Stow it on the chunk-stack, and just refer to that.
- push @c, $p;
- push @code, ' $c[' . $#c . '], ';
- }
- }
- $code[-1] .= "),\n";
-
- push @c, '';
- }
- else {
- $target->_die_pointing($_[1], q{Unbalanced ']'});
- }
-
- }
- elsif(substr($1,0,1) ne '~') {
- # it's stuff not containing "~" or "[" or "]"
- # i.e., a literal blob
- $c[-1] .= $1;
-
- }
- elsif($1 eq '~~') { # "~~"
- $c[-1] .= '~';
-
- }
- elsif($1 eq '~[') { # "~["
- $c[-1] .= '[';
-
- }
- elsif($1 eq '~]') { # "~]"
- $c[-1] .= ']';
-
- }
- elsif($1 eq '~,') { # "~,"
- if($in_group) {
- # This is a hack, based on the assumption that no-one will actually
- # want a DEL inside a bracket group. Let's hope that's it's true.
- if (ord('A') == 65) { # ASCII etc
- $c[-1] .= "\x7F";
- }
- else { # EBCDIC (cp 1047, 0037, POSIX-BC)
- $c[-1] .= "\x07";
- }
- }
- else {
- $c[-1] .= '~,';
- }
-
- }
- elsif($1 eq '~') { # possible only at string-end, it seems.
- $c[-1] .= '~';
-
- }
- else {
- # It's a "~X" where X is not a special character.
- # Consider it a literal ~ and X.
- $c[-1] .= $1;
- }
- }
- }
-
- if($call_count) {
- undef $big_pile; # Well, nevermind that.
- }
- else {
- # It's all literals! Ahwell, that can happen.
- # So don't bother with the eval. Return a SCALAR reference.
- return \$big_pile;
- }
-
- die q{Last chunk isn't null??} if @c and length $c[-1]; # sanity
- DEBUG and warn scalar(@c), " chunks under closure\n";
- if(@code == 0) { # not possible?
- DEBUG and warn "Empty code\n";
- return \'';
- }
- elsif(@code > 1) { # most cases, presumably!
- unshift @code, "join '',\n";
- }
- unshift @code, "use strict; sub {\n";
- push @code, "}\n";
-
- DEBUG and warn @code;
- my $sub = eval(join '', @code);
- die "$@ while evalling" . join('', @code) if $@; # Should be impossible.
- return $sub;
-}
-
-# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-sub _die_pointing {
- # This is used by _compile to throw a fatal error
- my $target = shift; # class name
- # ...leaving $_[0] the error-causing text, and $_[1] the error message
-
- my $i = index($_[0], "\n");
-
- my $pointy;
- my $pos = pos($_[0]) - (defined($_[2]) ? $_[2] : 0) - 1;
- if($pos < 1) {
- $pointy = "^=== near there\n";
- }
- else { # we need to space over
- my $first_tab = index($_[0], "\t");
- if($pos > 2 and ( -1 == $first_tab or $first_tab > pos($_[0]))) {
- # No tabs, or the first tab is harmlessly after where we will point to,
- # AND we're far enough from the margin that we can draw a proper arrow.
- $pointy = ('=' x $pos) . "^ near there\n";
- }
- else {
- # tabs screw everything up!
- $pointy = substr($_[0],0,$pos);
- $pointy =~ tr/\t //cd;
- # make everything into whitespace, but preseving tabs
- $pointy .= "^=== near there\n";
- }
- }
-
- my $errmsg = "$_[1], in\:\n$_[0]";
-
- if($i == -1) {
- # No newline.
- $errmsg .= "\n" . $pointy;
- }
- elsif($i == (length($_[0]) - 1) ) {
- # Already has a newline at end.
- $errmsg .= $pointy;
- }
- else {
- # don't bother with the pointy bit, I guess.
- }
- Carp::croak( "$errmsg via $target, as used" );
-}
+=cut
1;
-
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext/GutsLoader.pm b/Master/tlpkg/tlperl/lib/Locale/Maketext/GutsLoader.pm
index daa9840260a..858fcf7663a 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Maketext/GutsLoader.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext/GutsLoader.pm
@@ -1,49 +1,26 @@
package Locale::Maketext::GutsLoader;
-$VERSION = '1.13';
+use Locale::Maketext;
+
+our $VERSION = '1.17';
-use strict;
sub zorp { return scalar @_ }
-BEGIN {
- $Locale::Maketext::GutsLoader::GUTSPATH = __FILE__;
- *Locale::Maketext::DEBUG = sub () {0}
- unless defined &Locale::Maketext::DEBUG;
-}
-
-#
-# This whole drama is so that we can load the utf8'd code
-# in Locale::Maketext::Guts, but if that fails, snip the
-# utf8 and then try THAT.
-#
-
-$Locale::Maketext::GUTSPATH = '';
-Locale::Maketext::DEBUG and warn "Requiring Locale::Maketext::Guts...\n";
-eval 'require Locale::Maketext::Guts';
-
-if ($@) {
- my $path = $Locale::Maketext::GUTSPATH;
-
- die "Can't load Locale::Maketext::Guts\nAborting" unless $path;
-
- die "No readable file $Locale::Maketext::GutsLoader::GUTSPATH\nAborting"
- unless -e $path and -f _ and -r _;
-
- open(IN, $path) or die "Can't read-open $path\nAborting";
-
- my $source;
- { local $/; $source = <IN>; }
- close(IN);
- unless( $source =~ s/\b(use utf8)/# $1/ ) {
- Locale::Maketext::DEBUG and
- print "I didn't see 'use utf8' in $path\n";
- }
- eval $source;
- die "Can't compile $path\n...The error I got was:\n$@\nAborting" if $@;
- Locale::Maketext::DEBUG and warn "Non-utf8'd Locale::Maketext::Guts fine\n";
-}
-else {
- Locale::Maketext::DEBUG and warn "Loaded Locale::Maketext::Guts fine\n";
-}
+=head1 NAME
+
+Locale::Maketext::GutsLoader - Deprecated module to load Locale::Maketext utf8 code
+
+=head1 SYNOPSIS
+
+ # Do this instead please
+ use Locale::Maketext
+
+=head1 DESCRIPTION
+
+Previously Locale::Maketext::Guts performed some magic to load
+Locale::Maketext when utf8 was unavailable. The subs this module provided
+were merged back into Locale::Maketext.
+
+=cut
1;
diff --git a/Master/tlpkg/tlperl/lib/Locale/Maketext/TPJ13.pod b/Master/tlpkg/tlperl/lib/Locale/Maketext/TPJ13.pod
index b5e2c0b972b..0bbe6e33d22 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Maketext/TPJ13.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Maketext/TPJ13.pod
@@ -181,7 +181,7 @@ for "I I<didn't> scan I<any> directories.". And ditto for "I didn't
match any files in any directories", although he says the last part
about "in any directories" should probably just be left off.
-You wonder how you'll get gettext to handle this; to accomodate the
+You wonder how you'll get gettext to handle this; to accommodate the
ways Arabic, Chinese, and Italian deal with numbers in just these few
very simple phrases, you need to write code that will ask gettext for
different queries depending on whether the numerical values in
@@ -277,7 +277,7 @@ another language -- for example, strictly speaking, in Arabic, the
depending on whether the user is male or female; so the Arabic
translation "your[feminine] query" is applicable in fewer cases than
the corresponding English phrase, which doesn't distinguish the user's
-gender. (In practice, it's not feasable to have a program know the
+gender. (In practice, it's not feasible to have a program know the
user's gender, so the masculine "you" in Arabic is usually used, by
default.)
@@ -450,7 +450,7 @@ possibly minor rewording. In that case, you should be able to put in
the UK English localization module I<only> those phrases that are
UK-specific, and for all the rest, I<inherit> from the American
English module. (And I expect this same situation would apply with
-Brazilian and Continental Portugese, possbily with some I<very>
+Brazilian and Continental Portugese, possibly with some I<very>
closely related languages like Czech and Slovak, and possibly with the
slightly different "versions" of written Mandarin Chinese, as I hear exist in
Taiwan and mainland China.)
@@ -458,7 +458,7 @@ Taiwan and mainland China.)
As to sharing of auxiliary functions, consider the problem of Russian
numbers from the beginning of this article; obviously, you'd want to
write only once the hairy code that, given a numeric value, would
-return some specification of which case and number a given quanitified
+return some specification of which case and number a given quantified
noun should use. But suppose that you discover, while localizing an
interface for, say, Ukranian (a Slavic language related to Russian,
spoken by several million people, many of whom would be relieved to
@@ -470,7 +470,7 @@ Ukranian, you could still choose to have the Ukranian module inherit
from the Russian module, just for the sake of inheriting all the
various grammatical methods. Or, probably better organizationally,
you could move those functions to a module called C<_E_Slavic> or
-something, which Russian and Ukranian could inherit useful functions
+something, which Russian and Ukrainian could inherit useful functions
from, but which would (presumably) provide no lexicon.
=head2 Buzzword: Concision
@@ -589,7 +589,7 @@ A string with no brackety calls, like this:
"Your search expression was malformed."
-is somewhat of a degerate case, and just gets turned into:
+is somewhat of a degenerate case, and just gets turned into:
sub { return "Your search expression was malformed." }
@@ -696,7 +696,7 @@ maintaining individual language modules.
That is all covered in the documentation for Locale::Maketext and the
modules that come with it, available in CPAN. After having read this
article, which covers the why's of Maketext, the documentation,
-which covers the how's of it, should be quite straightfoward.
+which covers the how's of it, should be quite straightforward.
=head2 The Proof in the Pudding: Localizing Web Sites
diff --git a/Master/tlpkg/tlperl/lib/Locale/Script.pm b/Master/tlpkg/tlperl/lib/Locale/Script.pm
index f5fdbab05c9..e83ad23c059 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Script.pm
+++ b/Master/tlpkg/tlperl/lib/Locale/Script.pm
@@ -1,294 +1,284 @@
-#
-# Locale::Script - ISO codes for script identification (ISO 15924)
-#
-# $Id: Script.pm,v 2.7 2004/06/10 21:19:34 neilb Exp $
-#
-
package Locale::Script;
+# Copyright (C) 2001 Canon Research Centre Europe (CRE).
+# Copyright (C) 2002-2009 Neil Bowers
+# Copyright (c) 2010-2011 Sullivan Beck
+# This program is free software; you can redistribute it and/or modify it
+# under the same terms as Perl itself.
+
use strict;
+use warnings;
require 5.002;
require Exporter;
use Carp;
+use Locale::Codes;
use Locale::Constants;
+use Locale::Codes::Script;
+
+#=======================================================================
+# Public Global Variables
+#=======================================================================
+our($VERSION,@ISA,@EXPORT,@EXPORT_OK);
-#-----------------------------------------------------------------------
-# Public Global Variables
-#-----------------------------------------------------------------------
-use vars qw($VERSION @ISA @EXPORT @EXPORT_OK);
-$VERSION = sprintf("%d.%02d", q$Revision: 2.7 $ =~ /(\d+)\.(\d+)/);
+$VERSION='3.16';
@ISA = qw(Exporter);
-@EXPORT = qw(code2script script2code
- all_script_codes all_script_names
- script_code2code
- LOCALE_CODE_ALPHA_2 LOCALE_CODE_ALPHA_3 LOCALE_CODE_NUMERIC);
+@EXPORT = qw(code2script
+ script2code
+ all_script_codes
+ all_script_names
+ script_code2code
+ LOCALE_SCRIPT_ALPHA
+ LOCALE_SCRIPT_NUMERIC
+ );
+
+sub _code {
+ my($code,$codeset) = @_;
+ $code = "" if (! $code);
+
+ $codeset = LOCALE_SCRIPT_DEFAULT if (! defined($codeset) || $codeset eq "");
+
+ if ($codeset =~ /^\d+$/) {
+ if ($codeset == LOCALE_SCRIPT_ALPHA) {
+ $codeset = "alpha";
+ } elsif ($codeset == LOCALE_SCRIPT_NUMERIC) {
+ $codeset = "num";
+ } else {
+ return (1);
+ }
+ }
+
+ if ($codeset eq "alpha") {
+ $code = ucfirst(lc($code));
+ } elsif ($codeset eq "num") {
+ if (defined($code) && $code ne "") {
+ return (1) unless ($code =~ /^\d+$/);
+ $code = sprintf("%.3d", $code);
+ }
+ } else {
+ return (1);
+ }
+
+ return (0,$code,$codeset);
+}
+
+#=======================================================================
+#
+# code2script ( CODE [,CODESET] )
+#
+#=======================================================================
-#-----------------------------------------------------------------------
-# Private Global Variables
-#-----------------------------------------------------------------------
-my $CODES = [];
-my $COUNTRIES = [];
+sub code2script {
+ my($err,$code,$codeset) = _code(@_);
+ return undef if ($err ||
+ ! defined $code);
+ return Locale::Codes::_code2name("script",$code,$codeset);
+}
#=======================================================================
#
-# code2script ( CODE [, CODESET ] )
+# script2code ( SCRIPT [,CODESET] )
#
#=======================================================================
-sub code2script
-{
- my $code = shift;
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
-
-
- return undef unless defined $code;
-
- #-------------------------------------------------------------------
- # Make sure the code is in the right form before we use it
- # to look up the corresponding script.
- # We have to sprintf because the codes are given as 3-digits,
- # with leading 0's. Eg 070 for Egyptian demotic.
- #-------------------------------------------------------------------
- if ($codeset == LOCALE_CODE_NUMERIC)
- {
- return undef if ($code =~ /\D/);
- $code = sprintf("%.3d", $code);
- }
- else
- {
- $code = lc($code);
- }
-
- if (exists $CODES->[$codeset]->{$code})
- {
- return $CODES->[$codeset]->{$code};
- }
- else
- {
- #---------------------------------------------------------------
- # no such script code!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub script2code {
+ my($script,$codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err ||
+ ! defined $script);
+
+ return Locale::Codes::_name2code("script",$script,$codeset);
}
+#=======================================================================
+#
+# script_code2code ( CODE,CODESET_IN,CODESET_OUT )
+#
+#=======================================================================
+
+sub script_code2code {
+ (@_ == 3) or croak "script_code2code() takes 3 arguments!";
+ my($code,$inset,$outset) = @_;
+ my($err,$tmp);
+ ($err,$code,$inset) = _code($code,$inset);
+ return undef if ($err);
+ ($err,$tmp,$outset) = _code("",$outset);
+ return undef if ($err);
+
+ return Locale::Codes::_code2code("script",$code,$inset,$outset);
+}
#=======================================================================
#
-# script2code ( SCRIPT [, CODESET ] )
+# all_script_codes ( [CODESET] )
#
#=======================================================================
-sub script2code
-{
- my $script = shift;
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
-
-
- return undef unless defined $script;
- $script = lc($script);
- if (exists $COUNTRIES->[$codeset]->{$script})
- {
- return $COUNTRIES->[$codeset]->{$script};
- }
- else
- {
- #---------------------------------------------------------------
- # no such script!
- #---------------------------------------------------------------
- return undef;
- }
+
+sub all_script_codes {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_codes("script",$codeset);
}
#=======================================================================
#
-# script_code2code ( CODE, IN-CODESET, OUT-CODESET )
+# all_script_names ( [CODESET] )
#
#=======================================================================
-sub script_code2code
-{
- (@_ == 3) or croak "script_code2code() takes 3 arguments!";
-
- my $code = shift;
- my $inset = shift;
- my $outset = shift;
- my $outcode;
- my $script;
-
-
- return undef if $inset == $outset;
- $script = code2script($code, $inset);
- return undef if not defined $script;
- $outcode = script2code($script, $outset);
- return $outcode;
+
+sub all_script_names {
+ my($codeset) = @_;
+ my($err,$tmp);
+ ($err,$tmp,$codeset) = _code("",$codeset);
+ return undef if ($err);
+
+ return Locale::Codes::_all_names("script",$codeset);
}
+#=======================================================================
+#
+# rename_script ( CODE,NAME [,CODESET] )
+#
+#=======================================================================
+
+sub rename_script {
+ my($code,$new_name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_rename("script",$code,$new_name,$codeset,$nowarn);
+}
#=======================================================================
#
-# all_script_codes()
+# add_script ( CODE,NAME [,CODESET] )
#
#=======================================================================
-sub all_script_codes
-{
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
- return keys %{ $CODES->[$codeset] };
+sub add_script {
+ my($code,$name,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_add_code("script",$code,$name,$codeset,$nowarn);
}
+#=======================================================================
+#
+# delete_script ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_script {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+
+ return Locale::Codes::_delete_code("script",$code,$codeset,$nowarn);
+}
#=======================================================================
#
-# all_script_names()
+# add_script_alias ( NAME,NEW_NAME )
#
#=======================================================================
-sub all_script_names
-{
- my $codeset = @_ > 0 ? shift : LOCALE_CODE_DEFAULT;
- return values %{ $CODES->[$codeset] };
+sub add_script_alias {
+ my($name,$new_name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_add_alias("script",$name,$new_name,$nowarn);
}
+#=======================================================================
+#
+# delete_script_alias ( NAME )
+#
+#=======================================================================
+
+sub delete_script_alias {
+ my($name,$nowarn) = @_;
+ $nowarn = (defined($nowarn) && $nowarn eq "nowarn" ? 1 : 0);
+
+ return Locale::Codes::_delete_alias("script",$name,$nowarn);
+}
#=======================================================================
#
-# initialisation code - stuff the DATA into the ALPHA2 hash
+# rename_script_code ( CODE,NEW_CODE [,CODESET] )
#
#=======================================================================
-{
- my ($alpha2, $alpha3, $numeric);
- my $script;
- local $_;
+sub rename_script_code {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
- while (<DATA>)
- {
- next unless /\S/;
- chop;
- ($alpha2, $alpha3, $numeric, $script) = split(/:/, $_, 4);
+ return Locale::Codes::_rename_code("script",$code,$new_code,$codeset,$nowarn);
+}
- $CODES->[LOCALE_CODE_ALPHA_2]->{$alpha2} = $script;
- $COUNTRIES->[LOCALE_CODE_ALPHA_2]->{"\L$script"} = $alpha2;
+#=======================================================================
+#
+# add_script_code_alias ( CODE,NEW_CODE [,CODESET] )
+#
+#=======================================================================
- if ($alpha3)
- {
- $CODES->[LOCALE_CODE_ALPHA_3]->{$alpha3} = $script;
- $COUNTRIES->[LOCALE_CODE_ALPHA_3]->{"\L$script"} = $alpha3;
- }
+sub add_script_code_alias {
+ my($code,$new_code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
+ ($err,$new_code,$codeset) = _code($new_code,$codeset) if (! $err);
- if ($numeric)
- {
- $CODES->[LOCALE_CODE_NUMERIC]->{$numeric} = $script;
- $COUNTRIES->[LOCALE_CODE_NUMERIC]->{"\L$script"} = $numeric;
- }
+ return Locale::Codes::_add_code_alias("script",$code,$new_code,$codeset,$nowarn);
+}
- }
+#=======================================================================
+#
+# delete_script_code_alias ( CODE [,CODESET] )
+#
+#=======================================================================
+
+sub delete_script_code_alias {
+ my($code,@args) = @_;
+ my $nowarn = 0;
+ $nowarn = 1, pop(@args) if ($args[$#args] eq "nowarn");
+ my $codeset = shift(@args);
+ my $err;
+ ($err,$code,$codeset) = _code($code,$codeset);
- close(DATA);
+ return Locale::Codes::_delete_code_alias("script",$code,$codeset,$nowarn);
}
1;
-
-__DATA__
-am:ama:130:Aramaic
-ar:ara:160:Arabic
-av:ave:151:Avestan
-bh:bhm:300:Brahmi (Ashoka)
-bi:bid:372:Buhid
-bn:ben:325:Bengali
-bo:bod:330:Tibetan
-bp:bpm:285:Bopomofo
-br:brl:570:Braille
-bt:btk:365:Batak
-bu:bug:367:Buginese (Makassar)
-by:bys:550:Blissymbols
-ca:cam:358:Cham
-ch:chu:221:Old Church Slavonic
-ci:cir:291:Cirth
-cm:cmn:402:Cypro-Minoan
-co:cop:205:Coptic
-cp:cpr:403:Cypriote syllabary
-cy:cyr:220:Cyrillic
-ds:dsr:250:Deserel (Mormon)
-dv:dvn:315:Devanagari (Nagari)
-ed:egd:070:Egyptian demotic
-eg:egy:050:Egyptian hieroglyphs
-eh:egh:060:Egyptian hieratic
-el:ell:200:Greek
-eo:eos:210:Etruscan and Oscan
-et:eth:430:Ethiopic
-gl:glg:225:Glagolitic
-gm:gmu:310:Gurmukhi
-gt:gth:206:Gothic
-gu:guj:320:Gujarati
-ha:han:500:Han ideographs
-he:heb:125:Hebrew
-hg:hgl:420:Hangul
-hm:hmo:450:Pahawh Hmong
-ho:hoo:371:Hanunoo
-hr:hrg:410:Hiragana
-hu:hun:176:Old Hungarian runic
-hv:hvn:175:Kok Turki runic
-hy:hye:230:Armenian
-iv:ivl:610:Indus Valley
-ja:jap:930:(alias for Han + Hiragana + Katakana)
-jl:jlg:445:Cherokee syllabary
-jw:jwi:360:Javanese
-ka:kam:241:Georgian (Mxedruli)
-kh:khn:931:(alias for Hangul + Han)
-kk:kkn:411:Katakana
-km:khm:354:Khmer
-kn:kan:345:Kannada
-kr:krn:357:Karenni (Kayah Li)
-ks:kst:305:Kharoshthi
-kx:kax:240:Georgian (Xucuri)
-la:lat:217:Latin
-lf:laf:215:Latin (Fraktur variant)
-lg:lag:216:Latin (Gaelic variant)
-lo:lao:356:Lao
-lp:lpc:335:Lepcha (Rong)
-md:mda:140:Mandaean
-me:mer:100:Meroitic
-mh:may:090:Mayan hieroglyphs
-ml:mlm:347:Malayalam
-mn:mon:145:Mongolian
-my:mya:350:Burmese
-na:naa:400:Linear A
-nb:nbb:401:Linear B
-og:ogm:212:Ogham
-or:ory:327:Oriya
-os:osm:260:Osmanya
-ph:phx:115:Phoenician
-ph:pah:150:Pahlavi
-pl:pld:282:Pollard Phonetic
-pq:pqd:295:Klingon plQaD
-pr:prm:227:Old Permic
-ps:pst:600:Phaistos Disk
-rn:rnr:211:Runic (Germanic)
-rr:rro:620:Rongo-rongo
-sa:sar:110:South Arabian
-si:sin:348:Sinhala
-sj:syj:137:Syriac (Jacobite variant)
-sl:slb:440:Unified Canadian Aboriginal Syllabics
-sn:syn:136:Syriac (Nestorian variant)
-sw:sww:281:Shavian (Shaw)
-sy:syr:135:Syriac (Estrangelo)
-ta:tam:346:Tamil
-tb:tbw:373:Tagbanwa
-te:tel:340:Telugu
-tf:tfn:120:Tifnagh
-tg:tag:370:Tagalog
-th:tha:352:Thai
-tn:tna:170:Thaana
-tw:twr:290:Tengwar
-va:vai:470:Vai
-vs:vsp:280:Visible Speech
-xa:xas:000:Cuneiform, Sumero-Akkadian
-xf:xfa:105:Cuneiform, Old Persian
-xk:xkn:412:(alias for Hiragana + Katakana)
-xu:xug:106:Cuneiform, Ugaritic
-yi:yii:460:Yi
-zx:zxx:997:Unwritten language
-zy:zyy:998:Undetermined script
-zz:zzz:999:Uncoded script
+# Local Variables:
+# mode: cperl
+# indent-tabs-mode: nil
+# cperl-indent-level: 3
+# cperl-continued-statement-offset: 2
+# cperl-continued-brace-offset: 0
+# cperl-brace-offset: 0
+# cperl-brace-imaginary-offset: 0
+# cperl-label-offset: -2
+# End:
diff --git a/Master/tlpkg/tlperl/lib/Locale/Script.pod b/Master/tlpkg/tlperl/lib/Locale/Script.pod
index 93ff88245ea..c4c9d745bfe 100644
--- a/Master/tlpkg/tlperl/lib/Locale/Script.pod
+++ b/Master/tlpkg/tlperl/lib/Locale/Script.pod
@@ -1,211 +1,88 @@
+=pod
=head1 NAME
-Locale::Script - ISO codes for script identification (ISO 15924)
+Locale::Script - standard codes for script identification
=head1 SYNOPSIS
- use Locale::Script;
- use Locale::Constants;
-
- $script = code2script('ph'); # 'Phoenician'
- $code = script2code('Tibetan'); # 'bo'
- $code3 = script2code('Tibetan',
- LOCALE_CODE_ALPHA_3); # 'bod'
- $codeN = script2code('Tibetan',
- LOCALE_CODE_ALPHA_NUMERIC); # 330
-
- @codes = all_script_codes();
- @scripts = all_script_names();
-
+ use Locale::Script;
-=head1 DESCRIPTION
-
-The C<Locale::Script> module provides access to the ISO
-codes for identifying scripts, as defined in ISO 15924.
-For example, Egyptian hieroglyphs are denoted by the two-letter
-code 'eg', the three-letter code 'egy', and the numeric code 050.
-
-You can either access the codes via the conversion routines
-(described below), or with the two functions which return lists
-of all script codes or all script names.
-
-There are three different code sets you can use for identifying
-scripts:
-
-=over 4
-
-=item B<alpha-2>
-
-Two letter codes, such as 'bo' for Tibetan.
-This code set is identified with the symbol C<LOCALE_CODE_ALPHA_2>.
-
-=item B<alpha-3>
-
-Three letter codes, such as 'ell' for Greek.
-This code set is identified with the symbol C<LOCALE_CODE_ALPHA_3>.
-
-=item B<numeric>
-
-Numeric codes, such as 410 for Hiragana.
-This code set is identified with the symbol C<LOCALE_CODE_NUMERIC>.
-
-=back
-
-All of the routines take an optional additional argument
-which specifies the code set to use.
-If not specified, it defaults to the two-letter codes.
-This is partly for backwards compatibility (previous versions
-of Locale modules only supported the alpha-2 codes), and
-partly because they are the most widely used codes.
-
-The alpha-2 and alpha-3 codes are not case-dependent,
-so you can use 'BO', 'Bo', 'bO' or 'bo' for Tibetan.
-When a code is returned by one of the functions in
-this module, it will always be lower-case.
-
-=head2 SPECIAL CODES
-
-The standard defines various special codes.
-
-=over 4
-
-=item *
-
-The standard reserves codes in the ranges B<qa> - B<qt>,
-B<qaa> - B<qat>, and B<900> - B<919>, for private use.
-
-=item *
-
-B<zx>, B<zxx>, and B<997>, are the codes for unwritten languages.
-
-=item *
-
-B<zy>, B<zyy>, and B<998>, are the codes for an undetermined script.
+ $script = code2script('phnx'); # 'Phoenician'
+ $code = script2code('Phoenician'); # 'Phnx'
+ $code = script2code('Phoenician',
+ LOCALE_CODE_NUMERIC); # 115
-=item *
+ @codes = all_script_codes();
+ @scripts = all_script_names();
-B<zz>, B<zzz>, and B<999>, are the codes for an uncoded script.
-
-=back
+=head1 DESCRIPTION
-The private codes are not recognised by Locale::Script,
-but the others are.
+The C<Locale::Script> module provides access to standards codes used
+for identifying scripts, such as those defined in ISO 15924.
+Most of the routines take an optional additional argument which
+specifies the code set to use. If not specified, the default ISO
+15924 four-letter codes will be used.
-=head1 CONVERSION ROUTINES
+=head1 SUPPORTED CODE SETS
-There are three conversion routines: C<code2script()>, C<script2code()>,
-and C<script_code2code()>.
+There are several different code sets you can use for identifying
+scripts. The ones currently supported are:
=over 4
-=item code2script( CODE, [ CODESET ] )
-
-This function takes a script code and returns a string
-which contains the name of the script identified.
-If the code is not a valid script code, as defined by ISO 15924,
-then C<undef> will be returned:
+=item B<alpha>
- $script = code2script('cy'); # Cyrillic
+This is a set of four-letter (capitalized) codes from ISO 15924
+such as 'Phnx' for Phoenician.
-=item script2code( STRING, [ CODESET ] )
+This code set is identified with the symbol C<LOCALE_SCRIPT_ALPHA>.
-This function takes a script name and returns the corresponding
-script code, if such exists.
-If the argument could not be identified as a script name,
-then C<undef> will be returned:
+The Zxxx, Zyyy, and Zzzz codes are not used.
- $code = script2code('Gothic', LOCALE_CODE_ALPHA_3);
- # $code will now be 'gth'
+This is the default code set.
-The case of the script name is not important.
-See the section L<KNOWN BUGS AND LIMITATIONS> below.
-
-=item script_code2code( CODE, CODESET, CODESET )
-
-This function takes a script code from one code set,
-and returns the corresponding code from another code set.
+=item B<numeric>
- $alpha2 = script_code2code('jwi',
- LOCALE_CODE_ALPHA_3 => LOCALE_CODE_ALPHA_2);
- # $alpha2 will now be 'jw' (Javanese)
+This is a set of three-digit numeric codes from ISO 15924 such as 115
+for Phoenician.
-If the code passed is not a valid script code in
-the first code set, or if there isn't a code for the
-corresponding script in the second code set,
-then C<undef> will be returned.
+This code set is identified with the symbol C<LOCALE_SCRIPT_NUMERIC>.
=back
-
-=head1 QUERY ROUTINES
-
-There are two function which can be used to obtain a list of all codes,
-or all script names:
+=head1 ROUTINES
=over 4
-=item C<all_script_codes ( [ CODESET ] )>
+=item B<code2script ( CODE [,CODESET] )>
-Returns a list of all two-letter script codes.
-The codes are guaranteed to be all lower-case,
-and not in any particular order.
+=item B<script2code ( NAME [,CODESET] )>
-=item C<all_script_names ( [ CODESET ] )>
+=item B<script_code2code ( CODE ,CODESET ,CODESET2 )>
-Returns a list of all script names for which there is a corresponding
-script code in the specified code set.
-The names are capitalised, and not returned in any particular order.
-
-=back
+=item B<all_script_codes ( [CODESET] )>
+=item B<all_script_names ( [CODESET] )>
-=head1 EXAMPLES
+=item B<Locale::Script::rename_script ( CODE ,NEW_NAME [,CODESET] )>
-The following example illustrates use of the C<code2script()> function.
-The user is prompted for a script code, and then told the corresponding
-script name:
+=item B<Locale::Script::add_script ( CODE ,NAME [,CODESET] )>
- $| = 1; # turn off buffering
-
- print "Enter script code: ";
- chop($code = <STDIN>);
- $script = code2script($code, LOCALE_CODE_ALPHA_2);
- if (defined $script)
- {
- print "$code = $script\n";
- }
- else
- {
- print "'$code' is not a valid script code!\n";
- }
+=item B<Locale::Script::delete_script ( CODE [,CODESET] )>
+=item B<Locale::Script::add_script_alias ( NAME ,NEW_NAME )>
-=head1 KNOWN BUGS AND LIMITATIONS
-
-=over 4
-
-=item *
+=item B<Locale::Script::delete_script_alias ( NAME )>
-When using C<script2code()>, the script name must currently appear
-exactly as it does in the source of the module. For example,
+=item B<Locale::Script::rename_script_code ( CODE ,NEW_CODE [,CODESET] )>
- script2code('Egyptian hieroglyphs')
+=item B<Locale::Script::add_script_code_alias ( CODE ,NEW_CODE [,CODESET] )>
-will return B<eg>, as expected. But the following will all return C<undef>:
+=item B<Locale::Script::delete_script_code_alias ( CODE [,CODESET] )>
- script2code('hieroglyphs')
- script2code('Egyptian Hieroglypics')
-
-If there's need for it, a future version could have variants
-for script names.
-
-=item *
-
-In the current implementation, all data is read in when the
-module is loaded, and then held in memory.
-A lazy implementation would be more memory friendly.
+These routines are all documented in the Locale::Codes man page.
=back
@@ -213,41 +90,29 @@ A lazy implementation would be more memory friendly.
=over 4
-=item Locale::Language
-
-ISO two letter codes for identification of language (ISO 639).
-
-=item Locale::Currency
-
-ISO three letter codes for identification of currencies
-and funds (ISO 4217).
-
-=item Locale::Country
+=item B<Locale::Codes>
-ISO three letter codes for identification of countries (ISO 3166)
+=item B<Locale::Constants>
-=item ISO 15924
-
-The ISO standard which defines these codes.
-
-=item http://www.evertype.com/standards/iso15924/
+=item B<http://www.unicode.org/iso15924/>
Home page for ISO 15924.
-
=back
-
=head1 AUTHOR
-Neil Bowers E<lt>neil@bowers.comE<gt>
+See Locale::Codes for full author history.
+
+Currently maintained by Sullivan Beck (sbeck@cpan.org).
=head1 COPYRIGHT
-Copyright (c) 2002-2004 Neil Bowers.
+ Copyright (c) 1997-2001 Canon Research Centre Europe (CRE).
+ Copyright (c) 2001-2010 Neil Bowers
+ Copyright (c) 2010-2011 Sullivan Beck
This module is free software; you can redistribute it and/or
modify it under the same terms as Perl itself.
=cut
-