3
0
mirror of https://github.com/pragma-/pbot.git synced 2024-11-01 01:29:31 +01:00
pbot/Plugins/Weather.pm
2020-01-26 06:01:45 -08:00

3732 lines
305 KiB
Perl

# File: Weather.pm
# Author: pragma-
#
# Purpose: Weather command.
# This Source Code Form is subject to the terms of the Mozilla Public
# License, v. 2.0. If a copy of the MPL was not distributed with this
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
package Plugins::Weather;
use warnings;
use strict;
use feature 'unicode_strings';
use LWP::UserAgent::WithCache;
use XML::LibXML;
use Carp ();
sub new {
Carp::croak("Options to " . __FILE__ . " should be key/value pairs, not hash reference") if ref $_[1] eq 'HASH';
my ($class, %conf) = @_;
my $self = bless {}, $class;
$self->initialize(%conf);
return $self;
}
sub initialize {
my ($self, %conf) = @_;
$self->{pbot} = $conf{pbot} // Carp::croak("Missing pbot reference to " . __FILE__);
$self->{pbot}->{commands}->register(sub { $self->weathercmd(@_) }, "weather", 0);
}
sub unload {
my $self = shift;
$self->{pbot}->{commands}->unregister("weather");
}
sub weathercmd {
my ($self, $from, $nick, $user, $host, $arguments, $stuff) = @_;
my $location_override = $self->{pbot}->{users}->get_loggedin_user_metadata($from, "$nick!$user\@$host", 'location') // '';
$arguments = $location_override if not length $arguments;
if (not length $arguments) {
return "Usage: weather <location>";
}
my $location;
if ($arguments =~ m/^\d+$/) {
$location = $arguments;
} else {
$location = $self->find_location_code($arguments);
}
return $self->get_weather($location);
}
sub get_weather {
my ($self, $location) = @_;
my %cache_opt = (
'namespace' => 'accuweather',
'default_expires_in' => 3600
);
my $ua = LWP::UserAgent::WithCache->new(\%cache_opt, timeout => 10);
my $response = $ua->get("http://rss.accuweather.com/rss/liveweather_rss.asp?metric=0&locCode=$location");
my $xml;
if ($response->is_success) {
$xml = $response->decoded_content;
} else {
return "Failed to fetch weather date: " . $response->status_line;
}
my $dom = XML::LibXML->load_xml(string => $xml);
my $result = '';
foreach my $channel ($dom->findnodes('//channel')) {
my $title = $channel->findvalue('./title');
my $description = $channel->findvalue('./description');
if ($description eq 'Invalid Location') {
return "Location $location not found. Use \"<city>, <country abbrev>\" (e.g. \"paris, fr\") or a US Zip Code or \"<city>, <state abbrev>, US\" (e.g., \"austin, tx, us\").";
}
$title =~ s/ - AccuW.*$//;
$result .= "Weather for $title: ";
}
foreach my $item ($dom->findnodes('//item')) {
my $title = $item->findvalue('./title');
my $description = $item->findvalue('./description');
if ($title =~ m/^Currently:/) {
$title = $self->fix_temps($title);
$result .= "$title; ";
}
if ($title =~ m/Forecast$/) {
$description =~ s/ <img.*$//;
$description = $self->fix_temps($description);
$result .= "Forecast: $description";
last;
}
}
return $result;
}
sub fix_temps {
my ($self, $text) = @_;
$text =~ s|(-?\d+)\s*F|my $f = $1; my $c = ($f - 32 ) * 5 / 9; $c = sprintf("%.1d", $c); "${f}F/${c}C"|eg;
return $text;
}
sub find_location_code {
my ($self, $location) = @_;
$location = lc $location;
my %locations = (
"aachen, de" => { location => "EUR|DE|GM011|AACHEN", country => "Germany" },
"aalborg, dk" => { location => "EUR|DK|DA007|AALBORG", country => "Denmark" },
"aalesund, no" => { location => "EUR|NO|NO007|AALESUND", country => "Norway" },
"aare, se" => { location => "EUR|SE|SW006|AARE", country => "Sweden" },
"aarhus, dk" => { location => "EUR|DK|DA001|AARHUS", country => "Denmark" },
"aba, ng" => { location => "AFR|NG|NI008|ABA", country => "Nigeria" },
"abadan, ir" => { location => "MEA|IR|IR016|ABADAN", country => "Iran" },
"abakan, ru" => { location => "ASI|RU|RS033|ABAKAN", country => "Russia" },
"abbotsford, ca" => { location => "NAM|CA|BC|ABBOTSFORD", country => "Canada" },
"abeokuta, ng" => { location => "AFR|NG|NI000|ABEOKUTA", country => "Nigeria" },
"aberdeen, uk" => { location => "EUR|UK|UK002|ABERDEEN", country => "United Kingdom" },
"abidjan, ci" => { location => "AFR|CI|IV002|ABIDJAN", country => "Ivory Coast" },
"abiko, jp" => { location => "ASI|JP|JA004|ABIKO", country => "Japan" },
"abilene, tx, us" => { location => "NAM|US|TX|ABILENE", country => "United States" },
"abohar, in" => { location => "ASI|IN|IN028|ABOHAR", country => "India" },
"abu dhabi, ae" => { location => "MEA|AE|AE002|ABU DHABI", country => "United Arab Emirates" },
"abuja, ng" => { location => "AFR|NG|NI000|ABUJA", country => "Nigeria" },
"acala de henares, es" => { location => "EUR|ES|SP013|ALCALÁ DE HENARES", country => "Spain" },
"acapulco, mx" => { location => "NAM|MX|MX012|ACAPULCO", country => "Mexico" },
"acarigua-araure, ve" => { location => "SAM|VE|VE019|ACARIGUA-ARAURE", country => "Venezuela" },
"accra, gh" => { location => "AFR|GH|GH000|ACCRA", country => "Ghana" },
"acheng, cn" => { location => "ASI|CN|CH011|ACHENG", country => "China" },
"achinsk, ru" => { location => "ASI|RU|RS041|ACHINSK", country => "Russia" },
"adamstown, pn" => { location => "OCN|PN|PC---|ADAMSTOWN", country => "Pitcairn Islands" },
"adana, tr" => { location => "MEA|TR|TU001|ADANA", country => "Turkey" },
"addis ababa, et" => { location => "AFR|ET|ET000|ADDIS ABABA", country => "Ethiopia" },
"adelaide, au" => { location => "OCN|AU|SA|ADELAIDE", country => "Australia" },
"aden, ye" => { location => "MEA|YE|YM001|ADEN", country => "Yemen" },
"adiyaman, tr" => { location => "MEA|TR|TU002|ADIYAMAN", country => "Turkey" },
"ado-ekiti, ng" => { location => "AFR|NG|NI000|ADO-EKITI", country => "Nigeria" },
"adoni, in" => { location => "ASI|IN|IN002|ADONI", country => "India" },
"afyon, tr" => { location => "MEA|TR|TU003|AFYON", country => "Turkey" },
"agadir, ma" => { location => "AFR|MA|MO041|AGADIR", country => "Morocco" },
"agana, gu" => { location => "OCN|GU|GU000|AGANA", country => "Guam" },
"agartala, in" => { location => "ASI|IN|IN032|AGARTALA", country => "India" },
"ageo, jp" => { location => "ASI|JP|JA035|AGEO", country => "Japan" },
"agra, in" => { location => "ASI|IN|IN033|AGRA", country => "India" },
"aguascalientes, mx" => { location => "NAM|MX|MX001|AGUASCALIENTES", country => "Mexico" },
"ahmedabad, in" => { location => "ASI|IN|IN012|AHMEDABAD", country => "India" },
"ahmednagar, in" => { location => "ASI|IN|IN021|AHMEDNAGAR", country => "India" },
"ahome, mx" => { location => "NAM|MX|MX025|AHOME", country => "Mexico" },
"ahuachapan, sv" => { location => "CAC|SV|ES001|AHUACHAPAN", country => "El Salvador" },
"ahwaz, ir" => { location => "MEA|IR|IR016|AHWAZ", country => "Iran" },
"aix-en-provence, fr" => { location => "EUR|FR|FR021|AIX-EN-PROVENCE", country => "France" },
"aizawl, in" => { location => "ASI|IN|IN024|AIZAWL", country => "India" },
"ajmer, in" => { location => "ASI|IN|IN029|AJMER", country => "India" },
"akishima, jp" => { location => "ASI|JP|JA041|AKISHIMA", country => "Japan" },
"akola, in" => { location => "ASI|IN|IN021|AKOLA", country => "India" },
"akron, oh, us" => { location => "NAM|US|OH|AKRON", country => "United States" },
"aksaray, tr" => { location => "MEA|TR|TU042|AKSARAY", country => "Turkey" },
"aktau, kz" => { location => "ASI|KZ|KZ000|AKTAU", country => "Kazakhstan" },
"aktobe, kz" => { location => "ASI|KZ|KZ000|AKTOBE", country => "Kazakhstan" },
"al ain, ae" => { location => "MEA|AE|AE002|AL AIN", country => "United Arab Emirates" },
"al fujairah, ae" => { location => "MEA|AE|AE003|AL FUJAIRAH", country => "United Arab Emirates" },
"al khobar, sa" => { location => "MEA|SA|SA008|AL KHOBAR", country => "Saudi Arabia" },
"al khums, ly" => { location => "AFR|LY|LY006|AL KHUMS", country => "Libya" },
"alagoinhas, br" => { location => "SAM|BR|BR002|ALAGOINHAS", country => "Brazil" },
"alajuela, cr" => { location => "CAC|CR|CS001|ALAJUELA", country => "Costa Rica" },
"albacete, es" => { location => "EUR|ES|SP006|ALBACETE", country => "Spain" },
"albany, ny, us" => { location => "NAM|US|NY|ALBANY", country => "United States" },
"albuquerque, nm, us" => { location => "NAM|US|NM|ALBUQUERQUE", country => "United States" },
"alchevsk, ua" => { location => "EUR|UA|UP012|ALCHEVSK", country => "Ukraine" },
"alcobendas, es" => { location => "EUR|ES|SP013|ALCOBENDAS", country => "Spain" },
"alcorcon, es" => { location => "EUR|ES|SP013|ALCORCÓN", country => "Spain" },
"aleppo, sy" => { location => "MEA|SY|SY009|ALEPPO", country => "Syria" },
"alexander bay, za" => { location => "AFR|ZA|SF008|ALEXANDER BAY", country => "South Africa" },
"alexandra, za" => { location => "AFR|ZA|SF004|ALEXANDRA", country => "South Africa" },
"alexandria, eg" => { location => "AFR|EG|EG006|ALEXANDRIA", country => "Egypt" },
"alexandria, va, us" => { location => "NAM|US|VA|ALEXANDRIA", country => "United States" },
"algeciras, es" => { location => "EUR|ES|SP001|ALGECIRAS", country => "Spain" },
"alger, dz" => { location => "AFR|DZ|AG004|ALGER", country => "Algeria" },
"al-hasakeh, sy" => { location => "MEA|SY|SY001|AL-HASAKEH", country => "Syria" },
"alicante, es" => { location => "EUR|ES|SP016|ALICANTE", country => "Spain" },
"aligarh, in" => { location => "ASI|IN|IN033|ALIGARH", country => "India" },
"alipur, in" => { location => "ASI|IN|IN036|ALIPUR", country => "India" },
"aliwal north, za" => { location => "AFR|ZA|SF002|ALIWAL NORTH", country => "South Africa" },
"allahabad, in" => { location => "ASI|IN|IN033|ALLAHABAD", country => "India" },
"alldays, za" => { location => "AFR|ZA|SF009|ALLDAYS", country => "South Africa" },
"allentown, pa, us" => { location => "NAM|US|PA|ALLENTOWN", country => "United States" },
"almalyk, uz" => { location => "ASI|UZ|UZ013|ALMALYK", country => "Uzbekistan" },
"almaty, kz" => { location => "ASI|KZ|KZ001|ALMATY", country => "Kazakhstan" },
"almere, nl" => { location => "EUR|NL|NL002|ALMERE", country => "Netherlands" },
"almeria, es" => { location => "EUR|ES|SP001|ALMERÍA", country => "Spain" },
"alor setar, my" => { location => "ASI|MY|MY002|ALOR SETAR", country => "Malaysia" },
"al-rakka, sy" => { location => "MEA|SY|SY004|AL-RAKKA", country => "Syria" },
"alvorada, br" => { location => "SAM|BR|BR004|ALVORADA", country => "Brazil" },
"alwar, in" => { location => "ASI|IN|IN029|ALWAR", country => "India" },
"amadora, pt" => { location => "EUR|PT|PO012|AMADORA", country => "Portugal" },
"amagasaki, jp" => { location => "ASI|JP|JA013|AMAGASAKI", country => "Japan" },
"amanzimtoti, za" => { location => "AFR|ZA|SF005|AMANZIMTOTI", country => "South Africa" },
"amara, iq" => { location => "MEA|IQ|IZ015|AMARA", country => "Iraq" },
"amarillo, tx, us" => { location => "NAM|US|TX|AMARILLO", country => "United States" },
"ambala, in" => { location => "ASI|IN|IN013|AMBALA", country => "India" },
"ambato, ec" => { location => "SAM|EC|EC018|AMBATO", country => "Ecuador" },
"ambon, id" => { location => "ASI|ID|ID015|AMBON", country => "Indonesia" },
"americana, br" => { location => "SAM|BR|BR023|AMERICANA", country => "Brazil" },
"amersfoort, nl" => { location => "EUR|NL|NL010|AMERSFOORT", country => "Netherlands" },
"amiens, fr" => { location => "EUR|FR|FR019|AMIENS", country => "France" },
"amman, jo" => { location => "MEA|JO|JO002|AMMAN", country => "Jordan" },
"amol, ir" => { location => "MEA|IR|IR021|AMOL", country => "Iran" },
"amravati, in" => { location => "ASI|IN|IN020|AMRAVATI", country => "India" },
"amritsar, in" => { location => "ASI|IN|IN028|AMRITSAR", country => "India" },
"amroha, in" => { location => "ASI|IN|IN033|AMROHA", country => "India" },
"amsterdam, nl" => { location => "EUR|NL|NL008|AMSTERDAM", country => "Netherlands" },
"anaheim, ca, us" => { location => "NAM|US|CA|ANAHEIM", country => "United States" },
"anand, in" => { location => "ASI|IN|IN012|ANAND", country => "India" },
"ananindeua, br" => { location => "SAM|BR|BR013|ANANINDEUA", country => "Brazil" },
"anapolis, br" => { location => "SAM|BR|BR027|ANÁPOLIS", country => "Brazil" },
"anchorage, ak, us" => { location => "NAM|US|AK|ANCHORAGE", country => "United States" },
"anda, cn" => { location => "ASI|CN|CH011|ANDA", country => "China" },
"andimeshk, ir" => { location => "MEA|IR|IR016|ANDIMESHK", country => "Iran" },
"andizhan, uz" => { location => "ASI|UZ|UZ001|ANDIZHAN", country => "Uzbekistan" },
"andong, kr" => { location => "ASI|KR|KS010|ANDONG", country => "South Korea" },
"andorra la vella, ad" => { location => "EUR|AD|AN000|ANDORRA LA VELLA", country => "Andorra" },
"angarsk, ru" => { location => "ASI|RU|RS021|ANGARSK", country => "Russia" },
"angeles, ph" => { location => "ASI|PH|RP006|ANGELES", country => "Philippines" },
"angers, fr" => { location => "EUR|FR|FR018|ANGERS", country => "France" },
"angren, uz" => { location => "ASI|UZ|UZ013|ANGREN", country => "Uzbekistan" },
"anjo, jp" => { location => "ASI|JP|JA001|ANJO", country => "Japan" },
"ankang, cn" => { location => "ASI|CN|CH022|ANKANG", country => "China" },
"ankara, tr" => { location => "MEA|TR|TU007|ANKARA", country => "Turkey" },
"anlu, cn" => { location => "ASI|CN|CH013|ANLU", country => "China" },
"ann arbor, mi, us" => { location => "NAM|US|MI|ANN ARBOR", country => "United States" },
"annaba, dz" => { location => "AFR|DZ|AG039|ANNABA", country => "Algeria" },
"annapolis, md, us" => { location => "NAM|US|MD|ANNAPOLIS", country => "United States" },
"annecy, fr" => { location => "EUR|FR|FR022|ANNECY", country => "France" },
"anqing, cn" => { location => "ASI|CN|CH001|ANQING", country => "China" },
"ansan, kr" => { location => "ASI|KR|KS009|ANSAN", country => "South Korea" },
"anshan, cn" => { location => "ASI|CN|CH001|ANSHAN", country => "China" },
"antalya, tr" => { location => "MEA|TR|TU008|ANTALYA", country => "Turkey" },
"antananarivo, mg" => { location => "AFR|MG|MA001|ANTANANARIVO", country => "Madagascar" },
"antofagasta, cl" => { location => "SAM|CL|CI002|ANTOFAGASTA", country => "Chile" },
"antwerpen, be" => { location => "EUR|BE|BE001|ANTWERPEN", country => "Belgium" },
"anyang, cn" => { location => "ASI|CN|CH012|ANYANG", country => "China" },
"aomori, jp" => { location => "ASI|JP|JA003|AOMORI", country => "Japan" },
"apeldoorn, nl" => { location => "EUR|NL|NL004|APELDOORN", country => "Netherlands" },
"apia, ws" => { location => "OCN|WS|WS000|APIA", country => "Samoa" },
"apopa, sv" => { location => "CAC|SV|ES010|APOPA", country => "El Salvador" },
"apucarana, br" => { location => "SAM|BR|BR015|APUCARANA", country => "Brazil" },
"ar rayyan, qa" => { location => "MEA|QA|QA000|AR RAYYAN", country => "Qatar" },
"aracaju, br" => { location => "SAM|BR|BR024|ARACAJU", country => "Brazil" },
"aracatuba, br" => { location => "SAM|BR|BR023|ARAÇATUBA", country => "Brazil" },
"arad, ro" => { location => "EUR|RO|RO002|ARAD", country => "Romania" },
"araguaina, br" => { location => "SAM|BR|BR025|ARAGUAINA", country => "Brazil" },
"arak, ir" => { location => "MEA|IR|IR020|ARAK", country => "Iran" },
"arapiraca, br" => { location => "SAM|BR|BR002|ARAPIRACA", country => "Brazil" },
"araraquara, br" => { location => "SAM|BR|BR023|ARARAQUARA", country => "Brazil" },
"araras, br" => { location => "SAM|BR|BR023|ARARAS", country => "Brazil" },
"arcot, in" => { location => "ASI|IN|IN031|ARCOT", country => "India" },
"ardabil, ir" => { location => "MEA|IR|IR001|ARDABIL", country => "Iran" },
"arecibo, pr" => { location => "CAC|PR|PR000|ARECIBO", country => "Puerto Rico" },
"arendal, no" => { location => "EUR|NO|NO002|ARENDAL", country => "Norway" },
"arequipa, pe" => { location => "SAM|PE|PE004|AREQUIPA", country => "Peru" },
"arica, cl" => { location => "SAM|CL|CI012|ARICA", country => "Chile" },
"arkhangelsk, ru" => { location => "ASI|RU|RS005|ARKHANGELSK", country => "Russia" },
"arlington, va, us" => { location => "NAM|US|VA|ARLINGTON", country => "United States" },
"arlington, tx, us" => { location => "NAM|US|TX|ARLINGTON", country => "United States" },
"armavir, ru" => { location => "ASI|RU|RS040|ARMAVIR", country => "Russia" },
"armenia, co" => { location => "SAM|CO|CO021|ARMENIA", country => "Colombia" },
"arnhem, nl" => { location => "EUR|NL|NL004|ARNHEM", country => "Netherlands" },
"arrah, in" => { location => "ASI|IN|IN005|ARRAH", country => "India" },
"arua, ug" => { location => "AFR|UG|UG000|ARUA", country => "Uganda" },
"arusha, tz" => { location => "AFR|TZ|TZ000|ARUSHA", country => "Tanzania" },
"arvada, co, us" => { location => "NAM|US|CO|ARVADA", country => "United States" },
"arzamas, ru" => { location => "ASI|RU|RS055|ARZAMAS", country => "Russia" },
"as salimiyah, kw" => { location => "MEA|KW|KU000|AS SALIMIYAH", country => "Kuwait" },
"asahikawa, jp" => { location => "ASI|JP|JA012|ASAHIKAWA", country => "Japan" },
"asaka, jp" => { location => "ASI|JP|JA035|ASAKA", country => "Japan" },
"asansol, in" => { location => "ASI|IN|IN005|ASANSOL", country => "India" },
"ashdod, il" => { location => "MEA|IL|IS002|ASHDOD", country => "Israel" },
"ashfield, uk" => { location => "EUR|UK|UK001|ASHFIELD", country => "United Kingdom" },
"ashikaga, jp" => { location => "ASI|JP|JA039|ASHIKAGA", country => "Japan" },
"ashkelon, il" => { location => "MEA|IL|IS001|ASHKELON", country => "Israel" },
"ashkhabad, tm" => { location => "ASI|TM|TX001|ASHKHABAD", country => "Turkmenistan" },
"asmara, er" => { location => "AFR|ER|ER000|ASMARA", country => "Eritrea" },
"astana, kz" => { location => "ASI|KZ|KZ004|ASTANA", country => "Kazakhstan" },
"astrakhan, ru" => { location => "ASI|RU|RS006|ASTRAKHAN", country => "Russia" },
"asuncion, py" => { location => "SAM|PY|PA008|ASUNCION", country => "Paraguay" },
"aswan, eg" => { location => "AFR|EG|EG016|ASWAN", country => "Egypt" },
"athens, ga, us" => { location => "NAM|US|GA|ATHENS", country => "United States" },
"athinai, gr" => { location => "EUR|GR|GR007|ATHINAI", country => "Greece" },
"atibaia, br" => { location => "SAM|BR|BR023|ATIBAIA", country => "Brazil" },
"atlanta, ga, us" => { location => "NAM|US|GA|ATLANTA", country => "United States" },
"atsugi, jp" => { location => "ASI|JP|JA019|ATSUGI", country => "Japan" },
"atushi, cn" => { location => "ASI|CN|CH028|ATUSHI", country => "China" },
"auckland, nz" => { location => "OCN|NZ|NZ000|AUCKLAND", country => "New Zealand" },
"augsburg, de" => { location => "EUR|DE|GM002|AUGSBURG", country => "Germany" },
"augusta, ga, us" => { location => "NAM|US|GA|AUGUSTA", country => "United States" },
"aurangabad, in" => { location => "ASI|IN|IN021|AURANGABAD", country => "India" },
"aurora, co, us" => { location => "NAM|US|CO|AURORA", country => "United States" },
"aurora, il, us" => { location => "NAM|US|IL|AURORA", country => "United States" },
"austin, tx, us" => { location => "NAM|US|TX|AUSTIN", country => "United States" },
"avellaneda, ar" => { location => "SAM|AR|AR001|AVELLANEDA", country => "Argentina" },
"avignon, fr" => { location => "EUR|FR|FR021|AVIGNON", country => "France" },
"ayacucho, pe" => { location => "SAM|PE|PE005|AYACUCHO", country => "Peru" },
"aydin, tr" => { location => "MEA|TR|TU011|AYDIN", country => "Turkey" },
"babol, ir" => { location => "MEA|IR|IR021|BABOL", country => "Iran" },
"bacau, ro" => { location => "EUR|RO|RO004|BACAU", country => "Romania" },
"bacolod, ph" => { location => "ASI|PH|RP000|BACOLOD", country => "Philippines" },
"badajoz, es" => { location => "EUR|ES|SP010|BADAJOZ", country => "Spain" },
"badalona, es" => { location => "EUR|ES|SP008|BADALONA", country => "Spain" },
"badplaas, za" => { location => "AFR|ZA|SF006|BADPLAAS", country => "South Africa" },
"bafoussam, cm" => { location => "AFR|CM|CM008|BAFOUSSAM", country => "Cameroon" },
"bage, br" => { location => "SAM|BR|BR019|BAGÉ", country => "Brazil" },
"baghdad, iq" => { location => "MEA|IQ|IZ010|BAGHDAD", country => "Iraq" },
"bago, ph" => { location => "ASI|PH|RP010|BAGO", country => "Philippines" },
"baguio, ph" => { location => "ASI|PH|RP011|BAGUIO", country => "Philippines" },
"baharampur, in" => { location => "ASI|IN|IN036|BAHARAMPUR", country => "India" },
"bahawalnagar, pk" => { location => "ASI|PK|PK007|BAHAWALNAGAR", country => "Pakistan" },
"bahia blanca, ar" => { location => "SAM|AR|AR001|BAHÍA BLANCA", country => "Argentina" },
"bahir dar, et" => { location => "AFR|ET|ET000|BAHIR DAR", country => "Ethiopia" },
"bahraich, in" => { location => "ASI|IN|IN033|BAHRAICH", country => "India" },
"baia mare, ro" => { location => "EUR|RO|RO026|BAIA MARE", country => "Romania" },
"baicheng, cn" => { location => "ASI|CN|CH028|BAICHENG", country => "China" },
"baiyin, cn" => { location => "ASI|CN|CH001|BAIYIN", country => "China" },
"bakersfield, ca, us" => { location => "NAM|US|CA|BAKERSFIELD", country => "United States" },
"baku, az" => { location => "ASI|AZ|AJ009|BAKU", country => "Azerbaijan" },
"balakovo, ru" => { location => "ASI|RU|RS069|BALAKOVO", country => "Russia" },
"balashikha, ru" => { location => "ASI|RU|RS051|BALASHIKHA", country => "Russia" },
"bale, ch" => { location => "EUR|CH|SZ005|BÂLE", country => "Switzerland" },
"baleshwar, in" => { location => "ASI|IN|IN026|BALESHWAR", country => "India" },
"balikesir, tr" => { location => "MEA|TR|TU012|BALIKESIR", country => "Turkey" },
"balikpapan, id" => { location => "ASI|ID|ID013|BALIKPAPAN", country => "Indonesia" },
"bally, in" => { location => "ASI|IN|IN036|BALLY", country => "India" },
"baltimore, md, us" => { location => "NAM|US|MD|BALTIMORE", country => "United States" },
"balurghat, in" => { location => "ASI|IN|IN036|BALURGHAT", country => "India" },
"bamako, ml" => { location => "AFR|ML|ML000|BAMAKO", country => "Mali" },
"bamenda, cm" => { location => "AFR|CM|CM007|BAMENDA", country => "Cameroon" },
"bandar seri begawan, bn" => { location => "ASI|BN|BX000|BANDAR SERI BEGAWAN", country => "Brunei" },
"bandar-e-abbas, ir" => { location => "MEA|IR|IR011|BANDAR-E-ABBAS", country => "Iran" },
"bandjarmasin, id" => { location => "ASI|ID|ID011|BANDJARMASIN", country => "Indonesia" },
"bandung, id" => { location => "ASI|ID|ID004|BANDUNG", country => "Indonesia" },
"bangalore, in" => { location => "ASI|IN|IN017|BANGALORE", country => "India" },
"bangkok, th" => { location => "ASI|TH|TH017|BANGKOK", country => "Thailand" },
"bangui, cf" => { location => "AFR|CF|CT000|BANGUI", country => "Central African Republic" },
"banha, eg" => { location => "AFR|EG|EG012|BANHA", country => "Egypt" },
"banja luka, ba" => { location => "EUR|BA|BK002|BANJA LUKA", country => "Bosnia And Herzegovina" },
"banjul, gm" => { location => "AFR|GM|GA001|BANJUL", country => "The Gambia" },
"bankura, in" => { location => "ASI|IN|IN036|BANKURA", country => "India" },
"banstead, uk" => { location => "EUR|UK|UK224|BANSTEAD", country => "United Kingdom" },
"baoding, cn" => { location => "ASI|CN|CH001|BAODING", country => "China" },
"baoji, cn" => { location => "ASI|CN|CH018|BAOJI", country => "China" },
"baoshan, cn" => { location => "ASI|CN|CH031|BAOSHAN", country => "China" },
"baotou, cn" => { location => "ASI|CN|CH019|BAOTOU", country => "China" },
"baracaldo, es" => { location => "EUR|ES|SP017|BARACALDO", country => "Spain" },
"baranagar, in" => { location => "ASI|IN|IN035|BARANAGAR", country => "India" },
"baranovichi, by" => { location => "EUR|BY|BO001|BARANOVICHI", country => "Belarus" },
"barbacena, br" => { location => "SAM|BR|BR012|BARBACENA", country => "Brazil" },
"barberton, za" => { location => "AFR|ZA|SF006|BARBERTON", country => "South Africa" },
"barcelona, es" => { location => "EUR|ES|SP008|BARCELONA", country => "Spain" },
"barcelona, ve" => { location => "SAM|VE|VE002|BARCELONA", country => "Venezuela" },
"barddhaman, in" => { location => "ASI|IN|IN036|BARDDHAMAN", country => "India" },
"bareilly, in" => { location => "ASI|IN|IN033|BAREILLY", country => "India" },
"bari, it" => { location => "EUR|IT|IT013|BARI", country => "Italy" },
"barinas, ve" => { location => "SAM|VE|VE005|BARINAS", country => "Venezuela" },
"barisal, bd" => { location => "ASI|BD|BG003|BARISAL", country => "Bangladesh" },
"barking and dagenham, uk" => { location => "EUR|UK|UK001|BARKING AND DAGENHAM", country => "United Kingdom" },
"barkly west, za" => { location => "AFR|ZA|SF008|BARKLY WEST", country => "South Africa" },
"barnaul, ru" => { location => "ASI|RU|RS043|BARNAUL", country => "Russia" },
"barnet, uk" => { location => "EUR|UK|UK001|BARNET", country => "United Kingdom" },
"barnsley, uk" => { location => "EUR|UK|UK001|BARNSLEY", country => "United Kingdom" },
"barquisimeto, ve" => { location => "SAM|VE|VE014|BARQUISIMETO", country => "Venezuela" },
"barra mansa, br" => { location => "SAM|BR|BR017|BARRA MANSA", country => "Brazil" },
"barrancabermeja, co" => { location => "SAM|CO|CO024|BARRANCABERMEJA", country => "Colombia" },
"barranquilla, co" => { location => "SAM|CO|CO004|BARRANQUILLA", country => "Colombia" },
"barreiras, br" => { location => "SAM|BR|BR005|BARREIRAS", country => "Brazil" },
"barretos, br" => { location => "SAM|BR|BR023|BARRETOS", country => "Brazil" },
"barrie, ca" => { location => "NAM|CA|ON|BARRIE", country => "Canada" },
"barrydale, za" => { location => "AFR|ZA|SF011|BARRYDALE", country => "South Africa" },
"barueri, br" => { location => "SAM|BR|BR023|BARUERI", country => "Brazil" },
"baruta, ve" => { location => "SAM|VE|VE016|BARUTA", country => "Venezuela" },
"basildon, uk" => { location => "EUR|UK|UK001|BASILDON", country => "United Kingdom" },
"basirhat, in" => { location => "ASI|IN|IN036|BASIRHAT", country => "India" },
"baskingstoke and deane, uk" => { location => "EUR|UK|UK001|BASKINGSTOKE AND DEANE", country => "United Kingdom" },
"basra, iq" => { location => "MEA|IQ|IZ002|BASRA", country => "Iraq" },
"bassein, mm" => { location => "ASI|MM|BM001|BASSEIN", country => "Burma/Myanmar" },
"basseterre, gp" => { location => "CAC|KN|SC003|BASSETERRE", country => "Saint Kitts And Nevis" },
"basse-terre, kn" => { location => "CAC|GP|GP---|BASSE-TERRE", country => "Guadeloupe" },
"bat dambang, kh" => { location => "ASI|KH|CB002|BAT DAMBANG", country => "Cambodia" },
"bat yam, il" => { location => "MEA|IL|IS005|BAT YAM", country => "Israel" },
"batala, in" => { location => "ASI|IN|IN015|BATALA", country => "India" },
"batangas, ph" => { location => "ASI|PH|RP016|BATANGAS", country => "Philippines" },
"bath and north east somerset, uk" => { location => "EUR|UK|UK001|BATH AND NORTH EAST SOMERSET", country => "United Kingdom" },
"batman, tr" => { location => "MEA|TR|TU000|BATMAN", country => "Turkey" },
"batna, dz" => { location => "AFR|DZ|AG006|BATNA", country => "Algeria" },
"baton rouge, la, us" => { location => "NAM|US|LA|BATON ROUGE", country => "United States" },
"batumi, ge" => { location => "ASI|GE|GG000|BATUMI", country => "Georgia" },
"bauru, br" => { location => "SAM|BR|BR023|BAURU", country => "Brazil" },
"bayamo, cu" => { location => "CAC|CU|CU005|BAYAMO", country => "Cuba" },
"bayamon, pr" => { location => "CAC|PR|PR000|BAYAMÓN", country => "Puerto Rico" },
"bazhou, cn" => { location => "ASI|CN|CH008|BAZHOU", country => "China" },
"beau bassin, mu" => { location => "AFR|MU|MP008|BEAU BASSIN", country => "Mauritius" },
"beaufort west, za" => { location => "AFR|ZA|SF011|BEAUFORT WEST", country => "South Africa" },
"beaumont, tx, us" => { location => "NAM|US|TX|BEAUMONT", country => "United States" },
"beawar, in" => { location => "ASI|IN|IN029|BEAWAR", country => "India" },
"bechar, dz" => { location => "AFR|DZ|AG007|BECHAR", country => "Algeria" },
"bedford, uk" => { location => "EUR|UK|UK001|BEDFORD", country => "United Kingdom" },
"bedworth, uk" => { location => "EUR|UK|UK238|BEDWORTH", country => "United Kingdom" },
"beer sheva, il" => { location => "MEA|IL|IS001|BE'ER SHEBA", country => "Israel" },
"beian, cn" => { location => "ASI|CN|CH016|BEIAN", country => "China" },
"beihai, cn" => { location => "ASI|CN|CH007|BEIHAI", country => "China" },
"beijing, cn" => { location => "ASI|CN|CH002|BEIJING", country => "China" },
"beipiao, cn" => { location => "ASI|CN|CH018|BEIPIAO", country => "China" },
"beira, mz" => { location => "AFR|MZ|MZ008|BEIRA", country => "Mozambique" },
"beirut, lb" => { location => "MEA|LB|LE002|BEIRUT", country => "Lebanon" },
"bejaia, dz" => { location => "AFR|DZ|AG008|BEJAIA", country => "Algeria" },
"bela-bela, za" => { location => "AFR|ZA|SF005|BELA-BELA", country => "South Africa" },
"belem, br" => { location => "SAM|BR|BR013|BELÉM", country => "Brazil" },
"belfast, uk" => { location => "EUR|UK|UK002|BELFAST", country => "United Kingdom" },
"belfast, za" => { location => "AFR|ZA|SF006|BELFAST", country => "South Africa" },
"belford roxo, br" => { location => "SAM|BR|BR017|BELFORD ROXO", country => "Brazil" },
"belgaum, in" => { location => "ASI|IN|IN017|BELGAUM", country => "India" },
"belgorod, ru" => { location => "ASI|RU|RS008|BELGOROD", country => "Russia" },
"bellary, in" => { location => "ASI|IN|IN017|BELLARY", country => "India" },
"bellevue, wa, us" => { location => "NAM|US|WA|BELLEVUE", country => "United States" },
"bello, co" => { location => "SAM|CO|CO002|BELLO", country => "Colombia" },
"belmopan, bz" => { location => "CAC|BZ|BH002|BELMOPAN", country => "Belize" },
"belo horizonte, br" => { location => "SAM|BR|BR012|BELO HORIZONTE", country => "Brazil" },
"beltsy, md" => { location => "EUR|MD|MD000|BELTSY", country => "Moldova" },
"bene beraq, il" => { location => "MEA|IL|IS005|BENE BERAQ", country => "Israel" },
"benghazi, ly" => { location => "AFR|LY|LY012|BENGHAZI", country => "Libya" },
"benguela, ao" => { location => "AFR|AO|AO002|BENGUELA", country => "Angola" },
"beni mellal, ma" => { location => "AFR|MA|MO006|BÉNI-MELLAL", country => "Morocco" },
"benito juarez-cancun-qroo, mx" => { location => "NAM|MX|MX023|BENITO JUAREZ-CANCUN-QROO", country => "Mexico" },
"benoni, za" => { location => "AFR|ZA|SF004|BENONI", country => "South Africa" },
"benxi, cn" => { location => "ASI|CN|CH018|BENXI", country => "China" },
"beograd, cs" => { location => "EUR|CS|YI003|BEOGRAD", country => "Serbia" },
"beppu, jp" => { location => "ASI|JP|JA030|BEPPU", country => "Japan" },
"berdyansk, ua" => { location => "EUR|UA|UP004|BERDYANSK", country => "Ukraine" },
"berezniki, ru" => { location => "ASI|RU|RS062|BEREZNIKI", country => "Russia" },
"bergamo, it" => { location => "EUR|IT|IT009|BERGAMO", country => "Italy" },
"bergen, no" => { location => "EUR|NO|NO006|BERGEN", country => "Norway" },
"bergisch gladbach, de" => { location => "EUR|DE|GM011|BERGISCH GLADBACH", country => "Germany" },
"berkeley, ca, us" => { location => "NAM|US|CA|BERKELEY", country => "United States" },
"berlin, de" => { location => "EUR|DE|GM003|BERLIN", country => "Germany" },
"berne, ch" => { location => "EUR|CH|SZ006|BERNE", country => "Switzerland" },
"besancon, fr" => { location => "EUR|FR|FR010|BESANÇON", country => "France" },
"bethlehem, za" => { location => "AFR|ZA|SF003|BETHLEHEM", country => "South Africa" },
"betim, br" => { location => "SAM|BR|BR012|BETIM", country => "Brazil" },
"bexley, uk" => { location => "EUR|UK|UK001|BEXLEY", country => "United Kingdom" },
"bhadravati, in" => { location => "ASI|IN|IN017|BHADRAVATI", country => "India" },
"bhagalpur, in" => { location => "ASI|IN|IN005|BHAGALPUR", country => "India" },
"bharatpur, in" => { location => "ASI|IN|IN020|BHARATPUR", country => "India" },
"bharuch, in" => { location => "ASI|IN|IN012|BHARUCH", country => "India" },
"bhatpara, in" => { location => "ASI|IN|IN036|BHATPARA", country => "India" },
"bhavnagar, in" => { location => "ASI|IN|IN012|BHAVNAGAR", country => "India" },
"bhilai nagar, in" => { location => "ASI|IN|IN020|BHILAI NAGAR", country => "India" },
"bhilwara, in" => { location => "ASI|IN|IN029|BHILWARA", country => "India" },
"bhind, in" => { location => "ASI|IN|IN020|BHIND", country => "India" },
"bhisho, za" => { location => "AFR|ZA|SF002|BHISHO", country => "South Africa" },
"bhiwandi, in" => { location => "ASI|IN|IN021|BHIWANDI", country => "India" },
"bhiwani, in" => { location => "ASI|IN|IN013|BHIWANI", country => "India" },
"bhopal, in" => { location => "ASI|IN|IN020|BHOPAL", country => "India" },
"bhubaneswar, in" => { location => "ASI|IN|IN026|BHUBANESWAR", country => "India" },
"bhuj, in" => { location => "ASI|IN|IN012|BHUJ", country => "India" },
"bhusawal, in" => { location => "ASI|IN|IN021|BHUSAWAL", country => "India" },
"bialystok, pl" => { location => "EUR|PL|PL010|BIALYSTOK", country => "Poland" },
"bid, in" => { location => "ASI|IN|IN021|BID", country => "India" },
"bidar, in" => { location => "ASI|IN|IN017|BIDAR", country => "India" },
"bielefeld, de" => { location => "EUR|DE|GM011|BIELEFELD", country => "Germany" },
"bielsko-biala, pl" => { location => "EUR|PL|PL012|BIELSKO-BIALA", country => "Poland" },
"bihar sharif, in" => { location => "ASI|IN|IN005|BIHAR SHARIF", country => "India" },
"biisk, ru" => { location => "ASI|RU|RS003|BIISK", country => "Russia" },
"bijapur, in" => { location => "ASI|IN|IN017|BIJAPUR", country => "India" },
"bikaner, in" => { location => "ASI|IN|IN029|BIKANER", country => "India" },
"bila tserkva, ua" => { location => "EUR|UA|UP009|BELAYA TSERKOV", country => "Ukraine" },
"bilaspur, in" => { location => "ASI|IN|IN020|BILASPUR", country => "India" },
"bilbao, es" => { location => "EUR|ES|SP017|BILBAO", country => "Spain" },
"bilene, mz" => { location => "AFR|MZ|MZ002|BILENE", country => "Mozambique" },
"binzhou, cn" => { location => "ASI|CN|CH023|BINZHOU", country => "China" },
"biratnagar, np" => { location => "ASI|NP|NP000|BIRATNAGAR", country => "Nepal" },
"birjand, ir" => { location => "MEA|IR|IR015|BIRJAND", country => "Iran" },
"birmingham, uk" => { location => "EUR|UK|UK001|BIRMINGHAM", country => "United Kingdom" },
"birmingham, al, us" => { location => "NAM|US|AL|BIRMINGHAM", country => "United States" },
"bishkek, kg" => { location => "ASI|KG|KG002|BISHKEK", country => "Kyrgyzstan" },
"biskra, dz" => { location => "AFR|DZ|AG009|BISKRA", country => "Algeria" },
"bismarck, nd, us" => { location => "NAM|US|ND|BISMARCK", country => "United States" },
"bissau, gw" => { location => "AFR|GW|PU000|BISSAU", country => "Guinea-Bissau" },
"biysk, ru" => { location => "ASI|RU|RS003|BIYSK", country => "Russia" },
"bizerte, tn" => { location => "AFR|TN|TS008|BIZERTE", country => "Tunisia" },
"blackburn, uk" => { location => "EUR|UK|UK001|BLACKBURN", country => "United Kingdom" },
"blackpool, uk" => { location => "EUR|UK|UK001|BLACKPOOL", country => "United Kingdom" },
"blagoveshchensk, ru" => { location => "ASI|RU|RS007|BLAGOVESHCHENSK", country => "Russia" },
"blantyre-limbe, mw" => { location => "AFR|MW|MI000|BLANTYRE-LIMBE", country => "Malawi" },
"blida, dz" => { location => "AFR|DZ|AG010|BLIDA", country => "Algeria" },
"bloemfontein, za" => { location => "AFR|ZA|SF003|BLOEMFONTEIN", country => "South Africa" },
"boa vista, br" => { location => "SAM|BR|BR021|BOA VISTA", country => "Brazil" },
"bobo dioulasso, bf" => { location => "AFR|BF|UV000|BOBO DIOULASSO", country => "Burkina Faso" },
"bobruisk, by" => { location => "EUR|BY|BO005|BOBRUISK", country => "Belarus" },
"bochum, de" => { location => "EUR|DE|GM011|BOCHUM", country => "Germany" },
"bodoe, no" => { location => "EUR|NO|NO009|BODOE", country => "Norway" },
"bogor, id" => { location => "ASI|ID|ID026|BOGOR", country => "Indonesia" },
"boise, id, us" => { location => "NAM|US|ID|BOISE", country => "United States" },
"bojnurd, ir" => { location => "MEA|IR|IR015|BOJNURD", country => "Iran" },
"bokaro steel city, in" => { location => "ASI|IN|IN005|BOKARO STEEL CITY", country => "India" },
"boksburg, za" => { location => "AFR|ZA|SF004|BOKSBURG", country => "South Africa" },
"bolgatanga, gh" => { location => "AFR|GH|GH000|BOLGATANGA", country => "Ghana" },
"bolivar, ve" => { location => "SAM|VE|VE006|CIUDAD BOLÍVAR", country => "Venezuela" },
"bologna, it" => { location => "EUR|IT|IT005|BOLOGNA", country => "Italy" },
"bolton, uk" => { location => "EUR|UK|UK001|BOLTON", country => "United Kingdom" },
"boma, cd" => { location => "AFR|CD|CG002|BOMA", country => "Kinshasa" },
"bonn, de" => { location => "EUR|DE|GM011|BONN", country => "Germany" },
"boraas, se" => { location => "EUR|SE|SW021|BORAAS", country => "Sweden" },
"bordeaux, fr" => { location => "EUR|FR|FR002|BORDEAUX", country => "France" },
"borisov, by" => { location => "EUR|BY|BO004|BORISOV", country => "Belarus" },
"borujerd, ir" => { location => "MEA|IR|IR019|BORUJERD", country => "Iran" },
"boston, ma, us" => { location => "NAM|US|MA|BOSTON", country => "United States" },
"botosani, ro" => { location => "EUR|RO|RO007|BOTOSANI", country => "Romania" },
"botshabelo, za" => { location => "AFR|ZA|SF007|BOTSHABELO", country => "South Africa" },
"bottrop, de" => { location => "EUR|DE|GM011|BOTTROP", country => "Germany" },
"botucatu, br" => { location => "SAM|BR|BR023|BOTUCATU", country => "Brazil" },
"bouaké, ci" => { location => "AFR|CI|IV000|BOUAKÉ", country => "Ivory Coast" },
"boulogne-billancourt, fr" => { location => "EUR|FR|FR012|BOULOGNE-BILLANCOURT", country => "France" },
"bourgas, bg" => { location => "EUR|BG|BU002|BOURGAS", country => "Bulgaria" },
"bournemouth, uk" => { location => "EUR|UK|UK001|BOURNEMOUTH", country => "United Kingdom" },
"bradford, uk" => { location => "EUR|UK|UK001|BRADFORD", country => "United Kingdom" },
"braganca paulista, br" => { location => "SAM|BR|BR023|BRAGANÇA PAULISTA", country => "Brazil" },
"brahmapur, in" => { location => "ASI|IN|IN026|BRAHMAPUR", country => "India" },
"braila, ro" => { location => "EUR|RO|RO008|BRAILA", country => "Romania" },
"braintree, uk" => { location => "EUR|UK|UK001|BRAINTREE", country => "United Kingdom" },
"brampton, ca" => { location => "NAM|CA|ON|BRAMPTON", country => "Canada" },
"brantford, ca" => { location => "NAM|CA|ON|BRANTFORD", country => "Canada" },
"brasilia, br" => { location => "SAM|BR|BR007|BRASILIA", country => "Brazil" },
"brasov, ro" => { location => "EUR|RO|RO009|BRASOV", country => "Romania" },
"bratislava, sk" => { location => "EUR|SK|LO002|BRATISLAVA", country => "Slovakia" },
"bratsk, ru" => { location => "ASI|RU|RS021|BRATSK", country => "Russia" },
"braunschweig, de" => { location => "EUR|DE|GM009|BRAUNSCHWEIG", country => "Germany" },
"brazzaville, cg" => { location => "AFR|CG|CF002|BRAZZAVILLE", country => "Republic of Congo" },
"breda, nl" => { location => "EUR|NL|NL007|BREDA", country => "Netherlands" },
"bremen, de" => { location => "EUR|DE|GM005|BREMEN", country => "Germany" },
"bremerhaven, de" => { location => "EUR|DE|GM005|BREMERHAVEN", country => "Germany" },
"brent, uk" => { location => "EUR|UK|UK001|BRENT", country => "United Kingdom" },
"brescia, it" => { location => "EUR|IT|IT009|BRESCIA", country => "Italy" },
"brest, by" => { location => "EUR|BY|BO001|BREST", country => "Belarus" },
"brest, fr" => { location => "EUR|FR|FR006|BREST", country => "France" },
"briançon, fr" => { location => "EUR|FR|FR021|BRIANÇON", country => "France" },
"bridgend, uk" => { location => "EUR|UK|UK003|BRIDGEND", country => "United Kingdom" },
"bridgeport, ct, us" => { location => "NAM|US|CT|BRIDGEPORT", country => "United States" },
"bridgetown, bb" => { location => "CAC|BB|BB008|BRIDGETOWN", country => "Barbados" },
"brighton, uk" => { location => "EUR|UK|UK001|BRIGHTON", country => "United Kingdom" },
"brisbane, au" => { location => "OCN|AU|QLD|BRISBANE", country => "Australia" },
"bristol, uk" => { location => "EUR|UK|UK001|BRISTOL", country => "United Kingdom" },
"brits, za" => { location => "AFR|ZA|SF007|BRITS", country => "South Africa" },
"brno, cz" => { location => "EUR|CZ|EZ007|BRNO", country => "Czech Republic" },
"bromley, uk" => { location => "EUR|UK|UK001|BROMLEY", country => "United Kingdom" },
"brownsville, tx, us" => { location => "NAM|US|TX|BROWNSVILLE", country => "United States" },
"brugge, be" => { location => "EUR|BE|BE011|BRUGGE", country => "Belgium" },
"bruxelles, be" => { location => "EUR|BE|BE003|BRUXELLES", country => "Belgium" },
"bryansk, ru" => { location => "ASI|RU|RS010|BRYANSK", country => "Russia" },
"bucaramanga, co" => { location => "SAM|CO|CO024|BUCARAMANGA", country => "Colombia" },
"bucuresti, ro" => { location => "EUR|RO|RO010|BUCURESTI", country => "Romania" },
"budapest, hu" => { location => "EUR|HU|HU006|BUDAPEST", country => "Hungary" },
"budaun, in" => { location => "ASI|IN|IN033|BUDAUN", country => "India" },
"buenaventura, co" => { location => "SAM|CO|CO027|BUENAVENTURA", country => "Colombia" },
"buenos aires, ar" => { location => "SAM|AR|AR007|BUENOS AIRES", country => "Argentina" },
"buffalo, ny, us" => { location => "NAM|US|NY|BUFFALO", country => "United States" },
"buga, co" => { location => "SAM|CO|CO027|BUGA", country => "Colombia" },
"bujumbura, bi" => { location => "AFR|BI|BY000|BUJUMBURA", country => "Burundi" },
"bukand, ir" => { location => "MEA|IR|IR000|BUKAND", country => "Iran" },
"bukavu, cd" => { location => "AFR|CD|CG011|BUKAVU", country => "Kinshasa" },
"bukhara, uz" => { location => "ASI|UZ|UZ002|BUKHARA", country => "Uzbekistan" },
"bulandshahr, in" => { location => "ASI|IN|IN033|BULANDSHAHR", country => "India" },
"bulawayo, zw" => { location => "AFR|ZW|ZI005|BULAWAYO", country => "Zimbabwe" },
"burbank, ca, us" => { location => "NAM|US|CA|BURBANK", country => "United States" },
"burewala, pk" => { location => "ASI|PK|PK007|BUREWALA", country => "Pakistan" },
"burgersdorp, za" => { location => "AFR|ZA|SF002|BURGERSDORP", country => "South Africa" },
"burgos, es" => { location => "EUR|ES|SP007|BURGOS", country => "Spain" },
"burhanpur, in" => { location => "ASI|IN|IN020|BURHANPUR", country => "India" },
"burlington, ca" => { location => "NAM|CA|NL|BURLINGTON", country => "Canada" },
"burnaby, ca" => { location => "NAM|CA|BC|BURNABY", country => "Canada" },
"bursa, tr" => { location => "MEA|TR|TU021|BURSA", country => "Turkey" },
"bury, uk" => { location => "EUR|UK|UK001|BURY", country => "United Kingdom" },
"bushehr, ir" => { location => "MEA|IR|IR004|BUSHEHR", country => "Iran" },
"butuan, ph" => { location => "ASI|PH|RP022|BUTUAN", country => "Philippines" },
"buzau, ro" => { location => "EUR|RO|RO011|BUZAU", country => "Romania" },
"bydgoszcz, pl" => { location => "EUR|PL|PL002|BYDGOSZCZ", country => "Poland" },
"bytom, pl" => { location => "EUR|PL|PL012|BYTOM", country => "Poland" },
"cabanatuan, ph" => { location => "ASI|PH|RP023|CABANATUAN", country => "Philippines" },
"cabimas, ve" => { location => "SAM|VE|VE025|CABIMAS", country => "Venezuela" },
"cabo frio, br" => { location => "SAM|BR|BR017|CABO FRIO", country => "Brazil" },
"cacak, cs" => { location => "EUR|CS|YI003|CACAK", country => "Serbia" },
"cachoeirinha, br" => { location => "SAM|BR|BR015|CACHOEIRINHA", country => "Brazil" },
"cachoeiro de itapemirim, br" => { location => "SAM|BR|BR008|CACHOEIRO DE ITAPEMIRIM", country => "Brazil" },
"cadiz, ph" => { location => "ASI|PH|RP024|CADIZ", country => "Philippines" },
"cadiz, es" => { location => "EUR|ES|SP001|CÁDIZ", country => "Spain" },
"caen, fr" => { location => "EUR|FR|FR004|CAEN", country => "France" },
"caerphilly, uk" => { location => "EUR|UK|UK004|CAERPHILLY", country => "United Kingdom" },
"cagayan de oro, ph" => { location => "ASI|PH|RP026|CAGAYAN DE ORO", country => "Philippines" },
"cagliari, it" => { location => "EUR|IT|IT014|CAGLIARI", country => "Italy" },
"caguas, pr" => { location => "CAC|PR|PR000|CAGUAS", country => "Puerto Rico" },
"cairns, au" => { location => "OCN|AU|QLD|CAIRNS", country => "Australia" },
"cairo, eg" => { location => "AFR|EG|EG011|CAIRO", country => "Egypt" },
"cajamarca, pe" => { location => "SAM|PE|PE006|CAJAMARCA", country => "Peru" },
"cajeme, mx" => { location => "NAM|MX|MX026|CAJEME", country => "Mexico" },
"calabar, ng" => { location => "AFR|NG|NI000|CALABAR", country => "Nigeria" },
"calama, cl" => { location => "SAM|CL|CI002|CALAMA", country => "Chile" },
"calbayog, ph" => { location => "ASI|PH|RP027|CALBAYOG", country => "Philippines" },
"calcutta, in" => { location => "ASI|IN|IN036|CALCUTTA", country => "India" },
"calderdale, uk" => { location => "EUR|UK|UK001|CALDERDALE", country => "United Kingdom" },
"caledon, za" => { location => "AFR|ZA|SF011|CALEDON", country => "South Africa" },
"calgary, ca" => { location => "NAM|CA|AB|CALGARY", country => "Canada" },
"cali, co" => { location => "SAM|CO|CO027|CALI", country => "Colombia" },
"caloocan, ph" => { location => "ASI|PH|RP028|CALOOCAN", country => "Philippines" },
"calvinia, za" => { location => "AFR|ZA|SF008|CALVINIA", country => "South Africa" },
"camacari, br" => { location => "SAM|BR|BR005|CAMACARI", country => "Brazil" },
"camaguey, cu" => { location => "CAC|CU|CU001|CAMAGÜEY", country => "Cuba" },
"camaragibe, br" => { location => "SAM|BR|BR026|CAMARAGIBE", country => "Brazil" },
"cambridge, ca" => { location => "NAM|CA|ON|CAMBRIDGE", country => "Canada" },
"cambridge, uk" => { location => "EUR|UK|UK001|CAMBRIDGE", country => "United Kingdom" },
"cambridge, ma, us" => { location => "NAM|US|MA|CAMBRIDGE", country => "United States" },
"camden, uk" => { location => "EUR|UK|UK001|CAMDEN", country => "United Kingdom" },
"campeche, mx" => { location => "NAM|MX|MX004|CAMPECHE", country => "Mexico" },
"campha, vn" => { location => "ASI|VN|VM052|CAMPHA", country => "Vietnam" },
"campina grande, br" => { location => "SAM|BR|BR014|CAMPINA GRANDE", country => "Brazil" },
"campinas, br" => { location => "SAM|BR|BR023|CAMPINAS", country => "Brazil" },
"campo grande, br" => { location => "SAM|BR|BR010|CAMPO GRANDE", country => "Brazil" },
"canberra, au" => { location => "OCN|AU|ACT|CANBERRA", country => "Australia" },
"cangzhou, cn" => { location => "ASI|CN|CH004|CANGZHOU", country => "China" },
"canoas, br" => { location => "SAM|BR|BR019|CANOAS", country => "Brazil" },
"canterbury, uk" => { location => "EUR|UK|UK001|CANTERBURY", country => "United Kingdom" },
"cantho, vn" => { location => "ASI|VN|VM041|CANTHO", country => "Vietnam" },
"cape coral, fl, us" => { location => "NAM|US|FL|CAPE CORAL", country => "United States" },
"cape cost, gh" => { location => "AFR|GH|GH000|CAPE COST", country => "Ghana" },
"cape point, za" => { location => "AFR|ZA|SF011|CAPE POINT", country => "South Africa" },
"cape town , za" => { location => "AFR|ZA|SF011|CAPE TOWN", country => "South Africa" },
"cap-haitien, ht" => { location => "CAC|HT|HA004|CAP-HAITIEN", country => "Haiti" },
"caracas, ve" => { location => "SAM|VE|VE011|CARACAS", country => "Venezuela" },
"carapicuiba, br" => { location => "SAM|BR|BR023|CARAPICUÍBA", country => "Brazil" },
"cardiff, uk" => { location => "EUR|UK|UK004|CARDIFF", country => "United Kingdom" },
"cariacica, br" => { location => "SAM|BR|BR008|CARIACICA", country => "Brazil" },
"carlisle, uk" => { location => "EUR|UK|UK001|CARLISLE", country => "United Kingdom" },
"carnarvon, za" => { location => "AFR|ZA|SF008|CARNARVON", country => "South Africa" },
"carolina, pr" => { location => "CAC|PR|PR000|CAROLINA", country => "Puerto Rico" },
"carrefour, ht" => { location => "CAC|HT|HA001|CARREFOUR", country => "Haiti" },
"carrollton, tx, us" => { location => "NAM|US|TX|CARROLLTON", country => "United States" },
"carson city, nv, us" => { location => "NAM|US|NV|CARSON CITY", country => "United States" },
"cartagena, co" => { location => "SAM|CO|CO008|CARTAGENA", country => "Colombia" },
"cartagena, es" => { location => "EUR|ES|SP014|CARTAGENA", country => "Spain" },
"cartago, co" => { location => "SAM|CO|CO027|CARTAGO", country => "Colombia" },
"cartago, cr" => { location => "CAC|CR|CS002|CARTAGO", country => "Costa Rica" },
"caruaru, br" => { location => "SAM|BR|BR026|CARUARU", country => "Brazil" },
"carupano, ve" => { location => "SAM|VE|VE020|CARÚPANO", country => "Venezuela" },
"casablanca, ma" => { location => "AFR|MA|MO008|CASABLANCA", country => "Morocco" },
"cascavel, br" => { location => "SAM|BR|BR006|CASCAVEL", country => "Brazil" },
"casper, wy, us" => { location => "NAM|US|WY|CASPER", country => "United States" },
"castanhal, br" => { location => "SAM|BR|BR013|CASTANHAL", country => "Brazil" },
"castellon, es" => { location => "EUR|ES|SP016|CASTELLÓN DE LA PLANA", country => "Spain" },
"castelo branco, pt" => { location => "EUR|PT|PO006|CASTELO BRANCO", country => "Portugal" },
"castries, lc" => { location => "CAC|LC|ST002|CASTRIES", country => "Saint Lucia" },
"catamarca, ar" => { location => "SAM|AR|AR002|CATAMARCA", country => "Argentina" },
"catanduva, br" => { location => "SAM|BR|BR023|CATANDUVA", country => "Brazil" },
"catania, it" => { location => "EUR|IT|IT015|CATANIA", country => "Italy" },
"catia la mar, ve" => { location => "SAM|VE|VE011|CATIA LA MAR", country => "Venezuela" },
"caucaia, br" => { location => "SAM|BR|BR006|CAUCAIA", country => "Brazil" },
"caxias, br" => { location => "SAM|BR|BR009|CAXIAS", country => "Brazil" },
"caxias do sul, br" => { location => "SAM|BR|BR019|CAXIAS DO SUL", country => "Brazil" },
"cayenne, gf" => { location => "SAM|GF|FG001|CAYENNE", country => "French Guiana" },
"cebu, ph" => { location => "ASI|PH|RP037|CEBU", country => "Philippines" },
"cedar rapids, ia, us" => { location => "NAM|US|IA|CEDAR RAPIDS", country => "United States" },
"celaya, mx" => { location => "NAM|MX|MX011|CELAYA", country => "Mexico" },
"centro, mx" => { location => "NAM|MX|MX010|CENTRO", country => "Mexico" },
"ceres, za" => { location => "AFR|ZA|SF011|CERES", country => "South Africa" },
"chandannagar, in" => { location => "ASI|IN|IN036|CHANDAN NAGAR", country => "India" },
"chandigarh, in" => { location => "ASI|IN|IN006|CHANDIGARH", country => "India" },
"chandler, az, us" => { location => "NAM|US|AZ|CHANDLER", country => "United States" },
"chandrapur, in" => { location => "ASI|IN|IN021|CHANDRAPUR", country => "India" },
"changchun, cn" => { location => "ASI|CN|CH017|CHANGCHUN", country => "China" },
"changde, cn" => { location => "ASI|CN|CH014|CHANGDE", country => "China" },
"changji, cn" => { location => "ASI|CN|CH028|CHANGJI", country => "China" },
"changsha, cn" => { location => "ASI|CN|CH014|CHANGSHA", country => "China" },
"changshu, cn" => { location => "ASI|CN|CH015|CHANGSHU", country => "China" },
"changzhi, cn" => { location => "ASI|CN|CH023|CHANGZHI", country => "China" },
"changzhou, cn" => { location => "ASI|CN|CH015|CHANGZHOU", country => "China" },
"chaohu, cn" => { location => "ASI|CN|CH001|CHAOHU", country => "China" },
"chaoyang, cn" => { location => "ASI|CN|CH017|CHAOYANG", country => "China" },
"chaozhou, cn" => { location => "ASI|CN|CH006|CHAOZHOU", country => "China" },
"chapeco, br" => { location => "SAM|BR|BR022|CHAPECÓ", country => "Brazil" },
"chapra, in" => { location => "ASI|IN|IN005|CHAPRA", country => "India" },
"chardzhou, tm" => { location => "ASI|TM|TX004|CHARDZHOU", country => "Turkmenistan" },
"charleroi, be" => { location => "EUR|BE|BE004|CHARLEROI", country => "Belgium" },
"charleston, wv, us" => { location => "NAM|US|WV|Charleston", country => "United States" },
"charleston, sc, us" => { location => "NAM|US|SC|Charleston", country => "United States" },
"charlotte, nc, us" => { location => "NAM|US|NC|CHARLOTTE", country => "United States" },
"chattanooga, tn, us" => { location => "NAM|US|TN|CHATTANOOGA", country => "United States" },
"cheboksary, ru" => { location => "ASI|RU|RS016|CHEBOKSARY", country => "Russia" },
"chechon, kp" => { location => "ASI|KP|KN000|CHECHON", country => "North Korea" },
"cheju, kr" => { location => "ASI|KR|KS003|CHEJU", country => "South Korea" },
"chejung, kp" => { location => "ASI|KP|KN000|CHEJUNG", country => "North Korea" },
"chelmsford, uk" => { location => "EUR|UK|UK001|CHELMSFORD", country => "United Kingdom" },
"cheltenham, uk" => { location => "EUR|UK|UK001|CHELTENHAM", country => "United Kingdom" },
"chelyabinsk, ru" => { location => "ASI|RU|RS013|CHELYABINSK", country => "Russia" },
"chemnitz, de" => { location => "EUR|DE|GM014|CHEMNITZ", country => "Germany" },
"chengde, cn" => { location => "ASI|CN|CH010|CHENGDE", country => "China" },
"chengdu, cn" => { location => "ASI|CN|CH026|CHENGDU", country => "China" },
"chenzhou, cn" => { location => "ASI|CN|CH014|CHENZHOU", country => "China" },
"cheongju, kr" => { location => "ASI|KR|KS001|CHEONGJU", country => "South Korea" },
"cherepovets, ru" => { location => "ASI|RU|RS089|CHEREPOVETS", country => "Russia" },
"cherkassy, ua" => { location => "EUR|UA|UP024|CHERKASSY", country => "Ukraine" },
"cherkessk, ru" => { location => "ASI|RU|RS029|CHERKESSK", country => "Russia" },
"chernigov, ua" => { location => "EUR|UA|UP001|CHERNIGOV", country => "Ukraine" },
"chernovtsy, ua" => { location => "EUR|UA|UP002|CHERNOVTSY", country => "Ukraine" },
"chesapeake, va, us" => { location => "NAM|US|VA|CHESAPEAKE", country => "United States" },
"chester, uk" => { location => "EUR|UK|UK001|CHESTER", country => "United Kingdom" },
"chesterfield, uk" => { location => "EUR|UK|UK001|CHESTERFIELD", country => "United Kingdom" },
"cheyenne, wy, us" => { location => "NAM|US|WY|CHEYENNE", country => "United States" },
"chiang mai, th" => { location => "ASI|TH|TH008|CHIANG MAI", country => "Thailand" },
"chiba, jp" => { location => "ASI|JP|JA004|CHIBA", country => "Japan" },
"chicago, il, us" => { location => "NAM|US|IL|CHICAGO", country => "United States" },
"chichester, uk" => { location => "EUR|UK|UK001|CHICHESTER", country => "United Kingdom" },
"chiclayo, pe" => { location => "SAM|PE|PE014|CHICLAYO", country => "Peru" },
"chidenguele, mz" => { location => "AFR|MZ|MZ002|CHIDENGUELE", country => "Mozambique" },
"chifeng, cn" => { location => "ASI|CN|CH019|CHIFENG", country => "China" },
"chigasaki, jp" => { location => "ASI|JP|JA019|CHIGASAKI", country => "Japan" },
"chihuahua, mx" => { location => "NAM|MX|MX006|CHIHUAHUA", country => "Mexico" },
"chillan, cl" => { location => "SAM|CL|CI005|CHILLÁN", country => "Chile" },
"chimbote, pe" => { location => "SAM|PE|PE002|CHIMBOTE", country => "Peru" },
"chimoio/beira corridor, mz" => { location => "AFR|MZ|MZ004|CHIMOIO/BEIRA CORRIDOR", country => "Mozambique" },
"chinandega, ni" => { location => "CAC|NI|NU003|CHINANDEGA", country => "Nicaragua" },
"chingola, zm" => { location => "AFR|ZM|ZA001|CHINGOLA", country => "Zambia" },
"chiniot, pk" => { location => "ASI|PK|PK007|CHINIOT", country => "Pakistan" },
"chirchik, uz" => { location => "ASI|UZ|UZ013|CHIRCHIK", country => "Uzbekistan" },
"chita, ru" => { location => "ASI|RU|RS014|CHITA", country => "Russia" },
"chitradurga, in" => { location => "ASI|IN|IN017|CHITRADURGA", country => "India" },
"chittagong, bd" => { location => "ASI|BD|BG001|CHITTAGONG", country => "Bangladesh" },
"chittoor, in" => { location => "ASI|IN|IN002|CHITTOOR", country => "India" },
"chitungwiza, zw" => { location => "AFR|ZW|ZI003|CHITUNGWIZA", country => "Zimbabwe" },
"chlef, dz" => { location => "AFR|DZ|AG014|CHLEF", country => "Algeria" },
"chofu, jp" => { location => "ASI|JP|JA041|CHOFU", country => "Japan" },
"chon buri, th" => { location => "ASI|TH|TH010|CHON BURI", country => "Thailand" },
"chongqing, cn" => { location => "ASI|CN|CH003|CHONGQING", country => "China" },
"chorzow, pl" => { location => "EUR|PL|PL012|CHORZÓW", country => "Poland" },
"chrissiesmeer, za" => { location => "AFR|ZA|SF006|CHRISSIESMEER", country => "South Africa" },
"christchurch, nz" => { location => "OCN|NZ|NZ000|CHRISTCHURCH", country => "New Zealand" },
"chula vista, ca, us" => { location => "NAM|US|CA|CHULA VISTA", country => "United States" },
"chuncheon, kr" => { location => "ASI|KR|KS007|CHUNCHEON", country => "South Korea" },
"chungju, kr" => { location => "ASI|KR|KS001|CHUNGJU", country => "South Korea" },
"chuxiong, cn" => { location => "ASI|CN|CH030|CHUXIONG", country => "China" },
"chuzhou, cn" => { location => "ASI|CN|CH001|CHUZHOU", country => "China" },
"cienfuegos, cu" => { location => "CAC|CU|CU003|CIENFUEGOS", country => "Cuba" },
"cincinnati, oh, us" => { location => "NAM|US|OH|CINCINNATI", country => "United States" },
"cirebon, id" => { location => "ASI|ID|ID026|CIREBON", country => "Indonesia" },
"ciudad de colon, pa" => { location => "CAC|PA|PM004|CIUDAD DE COLON", country => "Panama" },
"ciudad del este, py" => { location => "SAM|PY|PA001|CIUDAD DEL ESTE", country => "Paraguay" },
"ciudad guayana, ve" => { location => "SAM|VE|VE006|CIUDAD GUAYANA", country => "Venezuela" },
"ciudad madero, mx" => { location => "NAM|MX|MX028|CIUDAD MADERO", country => "Mexico" },
"ciudad victoria, mx" => { location => "NAM|MX|MX002|CIUDAD VICTORIA", country => "Mexico" },
"cixi, cn" => { location => "ASI|CN|CH001|CIXI", country => "China" },
"clanwilliam, za" => { location => "AFR|ZA|SF011|CLANWILLIAM", country => "South Africa" },
"clarens, za" => { location => "AFR|ZA|SF003|CLARENS", country => "South Africa" },
"clarksville, tn, us" => { location => "NAM|US|TN|CLARKSVILLE", country => "United States" },
"clearwater, fl, us" => { location => "NAM|US|FL|CLEARWATER", country => "United States" },
"clermont-ferrand, fr" => { location => "EUR|FR|FR003|CLERMONT-FERRAND", country => "France" },
"cleveland, oh, us" => { location => "NAM|US|OH|CLEVELAND", country => "United States" },
"cluj-napoca, ro" => { location => "EUR|RO|RO001|CLUJ-NAPOCA", country => "Romania" },
"coatzacoalcos, mx" => { location => "NAM|MX|MX030|COATZACOALCOS", country => "Mexico" },
"cochabamba, bo" => { location => "SAM|BO|BL002|COCHABAMBA", country => "Bolivia" },
"codo, br" => { location => "SAM|BR|BR009|CODO", country => "Brazil" },
"coffee bay, za" => { location => "AFR|ZA|SF002|COFFEE BAY", country => "South Africa" },
"coimbatore, in" => { location => "ASI|IN|IN031|COIMBATORE", country => "India" },
"coimbra, pt" => { location => "EUR|PT|PO007|COIMBRA", country => "Portugal" },
"colchester, uk" => { location => "EUR|UK|UK001|COLCHESTER", country => "United Kingdom" },
"colesberg, za" => { location => "AFR|ZA|SF008|COLESBERG", country => "South Africa" },
"colimas, mx" => { location => "NAM|MX|MX019|COLIMAS", country => "Mexico" },
"colombo, br" => { location => "SAM|BR|BR015|COLOMBO", country => "Brazil" },
"colombo, lk" => { location => "ASI|LK|CE009|COLOMBO", country => "Sri Lanka" },
"colorado springs, co, us" => { location => "NAM|US|CO|COLORADO SPRINGS", country => "United States" },
"columbia, sc, us" => { location => "NAM|US|SC|COLUMBIA", country => "United States" },
"columbus, oh, us" => { location => "NAM|US|OH|COLUMBUS", country => "United States" },
"columbus, ga, us" => { location => "NAM|US|GA|COLUMBUS", country => "United States" },
"comilla, bd" => { location => "ASI|BD|BG001|COMILLA", country => "Bangladesh" },
"comodoro rivadavia, ar" => { location => "SAM|AR|AR004|COMODORO RIVADAVIA", country => "Argentina" },
"conakry, gn" => { location => "AFR|GN|GV004|CONAKRY", country => "Guinea" },
"concepcion, cl" => { location => "SAM|CL|CI005|CONCEPCIÓN", country => "Chile" },
"concord, ca, us" => { location => "NAM|US|CA|CONCORD", country => "United States" },
"concordia, ar" => { location => "SAM|AR|AR008|CONCORDIA", country => "Argentina" },
"constanta, ro" => { location => "EUR|RO|RO015|CONSTANTA", country => "Romania" },
"constantine, dz" => { location => "AFR|DZ|AG015|CONSTANTINE", country => "Algeria" },
"contagem, br" => { location => "SAM|BR|BR012|CONTAGEM", country => "Brazil" },
"conwy, uk" => { location => "EUR|UK|UK004|CONWY", country => "United Kingdom" },
"copenhagen, dk" => { location => "EUR|DK|DA012|COPENHAGEN", country => "Denmark" },
"copiapo, cl" => { location => "SAM|CL|CI004|COPIAPÓ", country => "Chile" },
"coquimbo, cl" => { location => "SAM|CL|CI006|COQUIMBO", country => "Chile" },
"coquitlam, ca" => { location => "NAM|CA|BC|COQUITLAM", country => "Canada" },
"coral springs, fl, us" => { location => "NAM|US|FL|CORAL SPRINGS", country => "United States" },
"cordoba, ar" => { location => "SAM|AR|AR005|CÓRDOBA", country => "Argentina" },
"cordoba, mx" => { location => "NAM|MX|MX030|CÓRDOBA", country => "Mexico" },
"cordoba, es" => { location => "EUR|ES|SP001|CÓRDOBA", country => "Spain" },
"cork, ie" => { location => "EUR|IE|EI004|CORK", country => "Ireland" },
"coro, ve" => { location => "SAM|VE|VE012|CORO", country => "Venezuela" },
"corona, ca, us" => { location => "NAM|US|CA|CORONA", country => "United States" },
"corpus christi, tx, us" => { location => "NAM|US|TX|CORPUS CHRISTI", country => "United States" },
"corrientes, ar" => { location => "SAM|AR|AR006|CORRIENTES", country => "Argentina" },
"corum, tr" => { location => "MEA|TR|TU024|CORUM", country => "Turkey" },
"costa mesa, ca, us" => { location => "NAM|US|CA|COSTA MESA", country => "United States" },
"cotabato, ph" => { location => "ASI|PH|RP039|COTABATO", country => "Philippines" },
"cotia, br" => { location => "SAM|BR|BR023|COTIA", country => "Brazil" },
"cotonou, bj" => { location => "AFR|BJ|BN000|COTONOU", country => "Benin" },
"cottbus, de" => { location => "EUR|DE|GM004|COTTBUS", country => "Germany" },
"cotyaeum, tr" => { location => "MEA|TR|TU054|KÜTAHYA", country => "Turkey" },
"coventry, uk" => { location => "EUR|UK|UK001|COVENTRY", country => "United Kingdom" },
"cradock, za" => { location => "AFR|ZA|SF002|CRADOCK", country => "South Africa" },
"craiova, ro" => { location => "EUR|RO|RO018|CRAIOVA", country => "Romania" },
"crato, br" => { location => "SAM|BR|BR006|CRATO", country => "Brazil" },
"crewe, uk" => { location => "EUR|UK|UK001|CREWE", country => "United Kingdom" },
"criciuma, br" => { location => "SAM|BR|BR022|CRICIÚMA", country => "Brazil" },
"croydon, uk" => { location => "EUR|UK|UK001|CROYDON", country => "United Kingdom" },
"cubatao, br" => { location => "SAM|BR|BR023|CUBATAO", country => "Brazil" },
"cucuta, co" => { location => "SAM|CO|CO005|CUCUTA", country => "Colombia" },
"cuddalore, in" => { location => "ASI|IN|IN031|CUDDALORE", country => "India" },
"cuddapah, in" => { location => "ASI|IN|IN002|CUDDAPAH", country => "India" },
"cuenca, ec" => { location => "SAM|EC|EC001|CUENCA", country => "Ecuador" },
"cuernavaca, mx" => { location => "NAM|MX|MX017|CUERNAVACA", country => "Mexico" },
"cuiaba, br" => { location => "SAM|BR|BR010|CUIABÁ", country => "Brazil" },
"culican, mx" => { location => "NAM|MX|MX025|CULIACÁN", country => "Mexico" },
"cumana, ve" => { location => "SAM|VE|VE020|CUMANÁ", country => "Venezuela" },
"curitiba, br" => { location => "SAM|BR|BR015|CURITIBA", country => "Brazil" },
"cuttack, in" => { location => "ASI|IN|IN026|CUTTACK", country => "India" },
"cuzco, pe" => { location => "SAM|PE|PE008|CUZCO", country => "Peru" },
"czestochowa, pl" => { location => "EUR|PL|PL012|CZESTOCHOWA", country => "Poland" },
"da nang, vn" => { location => "ASI|VN|VM016|DA NANG", country => "Vietnam" },
"daan, cn" => { location => "ASI|CN|CH026|DAAN", country => "China" },
"dabrowa gornicza, pl" => { location => "EUR|PL|PL012|DABROWA GÓRNICZA", country => "Poland" },
"dadu, pk" => { location => "ASI|PK|PK008|DADU", country => "Pakistan" },
"dagupan, ph" => { location => "ASI|PH|RP040|DAGUPAN", country => "Philippines" },
"daito, jp" => { location => "ASI|JP|JA033|DAITO", country => "Japan" },
"dakar, sn" => { location => "AFR|SN|SG001|DAKAR", country => "Senegal" },
"dalat, vn" => { location => "ASI|VN|VM037|DALAT", country => "Vietnam" },
"dali, cn" => { location => "ASI|CN|CH030|DALI", country => "China" },
"dalian, cn" => { location => "ASI|CN|CH018|DALIAN", country => "China" },
"dallas, tx, us" => { location => "NAM|US|TX|DALLAS", country => "United States" },
"daly city, ca, us" => { location => "NAM|US|CA|DALY CITY", country => "United States" },
"damanhur, eg" => { location => "AFR|EG|EG003|DAMANHŰR", country => "Egypt" },
"damascus, sy" => { location => "MEA|SY|SY008|DAMASCUS", country => "Syria" },
"dammam, sa" => { location => "MEA|SA|SA008|DAMMAM", country => "Saudi Arabia" },
"damoh, in" => { location => "ASI|IN|IN020|DAMOH", country => "India" },
"dandong, cn" => { location => "ASI|CN|CH018|DANDONG", country => "China" },
"dangyang, cn" => { location => "ASI|CN|CH013|DANGYANG", country => "China" },
"danielskuil, za" => { location => "AFR|ZA|SF008|DANIELSKUIL", country => "South Africa" },
"danjiangkou, cn" => { location => "ASI|CN|CH013|DANJIANGKOU", country => "China" },
"danyang, cn" => { location => "ASI|CN|CH015|DANYANG", country => "China" },
"daqing, cn" => { location => "ASI|CN|CH011|DAQING", country => "China" },
"dar es salaam, tz" => { location => "AFR|TZ|TZ000|DAR ES SALAAM", country => "Tanzania" },
"darbhanga, in" => { location => "ASI|IN|IN005|DARBHANGA", country => "India" },
"darlington, uk" => { location => "EUR|UK|UK001|DARLINGTON", country => "United Kingdom" },
"darmstadt, de" => { location => "EUR|DE|GM007|DARMSTADT", country => "Germany" },
"darwin, au" => { location => "OCN|AU|NT|DARWIN", country => "Australia" },
"daska, pk" => { location => "ASI|PK|PK007|DASKA", country => "Pakistan" },
"datong, cn" => { location => "ASI|CN|CH001|DATONG", country => "China" },
"daugavpils, lv" => { location => "EUR|LV|LG006|DAUGAVPILS", country => "Latvia" },
"davangere, in" => { location => "ASI|IN|IN017|DAVANGERE", country => "India" },
"davao, ph" => { location => "ASI|PH|RP133|DAVAO", country => "Philippines" },
"daxian, cn" => { location => "ASI|CN|CH026|DAXIAN", country => "China" },
"dayton, oh, us" => { location => "NAM|US|OH|DAYTON", country => "United States" },
"de aar, za" => { location => "AFR|ZA|SF008|DE AAR", country => "South Africa" },
"debrecen, hu" => { location => "EUR|HU|HU008|DEBRECEN", country => "Hungary" },
"dehiwala, lk" => { location => "ASI|LK|CE009|DEHIWALA-MOUNT LAVINIA", country => "Sri Lanka" },
"dehradun, in" => { location => "ASI|IN|IN033|DEHRADUN", country => "India" },
"delhi, in" => { location => "ASI|IN|IN010|DELHI", country => "India" },
"delmas, ht" => { location => "CAC|HT|HA003|DELMAS", country => "Haiti" },
"dengzhou, cn" => { location => "ASI|CN|CH023|DENGZHOU", country => "China" },
"denizli, tr" => { location => "MEA|TR|TU025|DENIZLI", country => "Turkey" },
"denver, co, us" => { location => "NAM|US|CO|DENVER", country => "United States" },
"dera ghazi khan, pk" => { location => "ASI|PK|PK007|DERA GHAZI KHAN", country => "Pakistan" },
"derby, uk" => { location => "EUR|UK|UK001|DERBY", country => "United Kingdom" },
"derry, ie" => { location => "EUR|IE|EI000|DERRY", country => "Ireland" },
"des moines, ia, us" => { location => "NAM|US|IA|DES MOINES", country => "United States" },
"dessie, et" => { location => "AFR|ET|ET000|DESSIE", country => "Ethiopia" },
"detroit, mi, us" => { location => "NAM|US|MI|DETROIT", country => "United States" },
"dewas, in" => { location => "ASI|IN|IN020|DEWAS", country => "India" },
"dewetsdorp, za" => { location => "AFR|ZA|SF003|DEWETSDORP", country => "South Africa" },
"deyang, cn" => { location => "ASI|CN|CH026|DEYANG", country => "China" },
"dezful, ir" => { location => "MEA|IR|IR016|DEZFUL", country => "Iran" },
"dezhou, cn" => { location => "ASI|CN|CH023|DEZHOU", country => "China" },
"dhaka, bd" => { location => "ASI|BD|BG002|DHAKA", country => "Bangladesh" },
"dhanbad, in" => { location => "ASI|IN|IN005|DHANBAD", country => "India" },
"dhule, in" => { location => "ASI|IN|IN021|DHULE", country => "India" },
"diadema, br" => { location => "SAM|BR|BR023|DIADEMA", country => "Brazil" },
"dibrugarh, in" => { location => "ASI|IN|IN004|DIBRUGARH", country => "India" },
"dijon, fr" => { location => "EUR|FR|FR005|DIJON", country => "France" },
"dili, tl" => { location => "ASI|TL|TT000|DILI", country => "East Timor" },
"dimitrovgrad, ru" => { location => "ASI|RU|RS085|DIMITROVGRAD", country => "Russia" },
"dimona, il" => { location => "MEA|IL|IS001|DIMONA", country => "Israel" },
"dinajpur, bd" => { location => "ASI|BD|BG004|DINAJPUR", country => "Bangladesh" },
"dindigul, in" => { location => "ASI|IN|IN031|DINDIGUL", country => "India" },
"dingzhou, cn" => { location => "ASI|CN|CH010|DINGZHOU", country => "China" },
"dire dawa, et" => { location => "AFR|ET|ET000|DIRE DAWA", country => "Ethiopia" },
"divinopolis, br" => { location => "SAM|BR|BR012|DIVINÓPOLIS", country => "Brazil" },
"diwaniya, iq" => { location => "MEA|IQ|IZ004|DIWANIYA", country => "Iraq" },
"diyarbakir, tr" => { location => "MEA|TR|TU026|DIYARBAKIR", country => "Turkey" },
"djibouti, dj" => { location => "AFR|DJ|DJ003|DJIBOUTI", country => "Djibouti" },
"dneprodzerzhinsk, ua" => { location => "EUR|UA|UP003|DNEPRODZERZHINSK", country => "Ukraine" },
"dnepropetrovsk, ua" => { location => "EUR|UA|UP003|DNEPROPETROVSK", country => "Ukraine" },
"doboj, ba" => { location => "EUR|BA|BK002|DOBOJ", country => "Bosnia And Herzegovina" },
"dobritch, bg" => { location => "EUR|BG|BU003|DOBRITCH", country => "Bulgaria" },
"dodoma, tz" => { location => "AFR|TZ|TZ000|DODOMA", country => "Tanzania" },
"doha, qa" => { location => "MEA|QA|QA001|DOHA", country => "Qatar" },
"doncaster, uk" => { location => "EUR|UK|UK001|DONCASTER", country => "United Kingdom" },
"donetsk, ua" => { location => "EUR|UA|UP006|DONETSK", country => "Ukraine" },
"dongchuan, cn" => { location => "ASI|CN|CH030|DONGCHUAN", country => "China" },
"dongguan, cn" => { location => "ASI|CN|CH016|DONGGUAN", country => "China" },
"dongsheng, cn" => { location => "ASI|CN|CH019|DONGSHENG", country => "China" },
"dongtai, cn" => { location => "ASI|CN|CH015|DONGTAI", country => "China" },
"dongyang, cn" => { location => "ASI|CN|CH011|DONGYANG", country => "China" },
"dongying, cn" => { location => "ASI|CN|CH019|DONGYING", country => "China" },
"dordrecht, nl" => { location => "EUR|NL|NL012|DORDRECHT", country => "Netherlands" },
"dortmund, de" => { location => "EUR|DE|GM011|DORTMUND", country => "Germany" },
"dos quebradas, co" => { location => "SAM|CO|CO027|DOS QUEBRADAS", country => "Colombia" },
"dothan, al, us" => { location => "NAM|US|AL|Dothan", country => "United States" },
"douala, cm" => { location => "AFR|CM|CM005|DOUALA", country => "Cameroon" },
"douglas, im" => { location => "EUR|IM|IM---|DOUGLAS", country => "Isle Of Man" },
"dourados, br" => { location => "SAM|BR|BR011|DOURADOS", country => "Brazil" },
"dover, uk" => { location => "EUR|UK|UK001|DOVER", country => "United Kingdom" },
"dover, co, us" => { location => "NAM|US|CO|DOVER", country => "United States" },
"dover, de, us" => { location => "NAM|US|DE|DOVER", country => "United States" },
"downey, ca, us" => { location => "NAM|US|CA|DOWNEY", country => "United States" },
"drammen, no" => { location => "EUR|NO|NO003|DRAMMEN", country => "Norway" },
"dresden, de" => { location => "EUR|DE|GM014|DRESDEN", country => "Germany" },
"drobeta turnu-severin, ro" => { location => "EUR|RO|RO027|DROBETA TURNU-SEVERIN", country => "Romania" },
"dubai, ae" => { location => "MEA|AE|AE005|DUBAI", country => "United Arab Emirates" },
"dublin, ie" => { location => "EUR|IE|EI006|DUBLIN", country => "Ireland" },
"dudley, uk" => { location => "EUR|UK|UK001|DUDLEY", country => "United Kingdom" },
"duisburg, de" => { location => "EUR|DE|GM011|DUISBURG", country => "Germany" },
"dujun, cn" => { location => "ASI|CN|CH016|DUJUN", country => "China" },
"dumfries and galloway, uk" => { location => "EUR|UK|UK002|DUMFRIES AND GALLOWAY", country => "United Kingdom" },
"dundee, uk" => { location => "EUR|UK|UK002|DUNDEE", country => "United Kingdom" },
"dundee, za" => { location => "AFR|ZA|SF005|DUNDEE", country => "South Africa" },
"dunedin, nz" => { location => "OCN|NZ|NZ000|DUNEDIN", country => "New Zealand" },
"dunhua, cn" => { location => "ASI|CN|CH017|DUNHUA", country => "China" },
"dunhuang, cn" => { location => "ASI|CN|CH005|DUNHUANG", country => "China" },
"duque de caxias, br" => { location => "SAM|BR|BR017|DUQUE DE CAXIAS", country => "Brazil" },
"durango, mx" => { location => "NAM|MX|MX010|DURANGO", country => "Mexico" },
"durban, za" => { location => "AFR|ZA|SF005|DURBAN", country => "South Africa" },
"durg, in" => { location => "ASI|IN|IN020|DURG", country => "India" },
"durgapur, in" => { location => "ASI|IN|IN036|DURGAPUR", country => "India" },
"durham, nc, us" => { location => "NAM|US|NC|DURHAM", country => "United States" },
"dushanbe, tj" => { location => "ASI|TJ|TI000|DUSHANBE", country => "Tajikistan" },
"dusseldorf, de" => { location => "EUR|DE|GM011|DÜSSELDORF", country => "Germany" },
"dzerzhinsk, ru" => { location => "ASI|RU|RS055|DZERZHINSK", country => "Russia" },
"ealing, uk" => { location => "EUR|UK|UK001|EALING", country => "United Kingdom" },
"east london, za" => { location => "AFR|ZA|SF002|EAST LONDON", country => "South Africa" },
"east york, ca" => { location => "NAM|CA|ON|EAST YORK", country => "Canada" },
"eastleigh, uk" => { location => "EUR|UK|UK001|EASTLEIGH", country => "United Kingdom" },
"eau claire, wi, us" => { location => "NAM|US|WI|Eau Claire", country => "United States" },
"ebetsu, jp" => { location => "ASI|JP|JA012|EBETSU", country => "Japan" },
"ebina, jp" => { location => "ASI|JP|JA019|EBINA", country => "Japan" },
"ecatepec, mx" => { location => "NAM|MX|MX015|ECATEPEC", country => "Mexico" },
"ede, nl" => { location => "EUR|NL|NL004|EDE", country => "Netherlands" },
"ede, ng" => { location => "AFR|NG|NI000|EDE", country => "Nigeria" },
"edea, cm" => { location => "AFR|CM|CM005|EDÉA", country => "Cameroon" },
"edenburg, za" => { location => "AFR|ZA|SF003|EDENBURG", country => "South Africa" },
"edinburgh, uk" => { location => "EUR|UK|UK002|EDINBURGH", country => "United Kingdom" },
"edirne, tr" => { location => "MEA|TR|TU027|EDIRNE", country => "Turkey" },
"edmonton, ca" => { location => "NAM|CA|AB|EDMONTON", country => "Canada" },
"eilat , il" => { location => "MEA|IL|IS001|EILAT", country => "Israel" },
"eindhoven, nl" => { location => "EUR|NL|NL007|EINDHOVEN", country => "Netherlands" },
"ekaterinburg, ru" => { location => "ASI|RU|RS075|EKATERINBURG", country => "Russia" },
"ekibastuz, kz" => { location => "ASI|KZ|KZ010|EKIBASTUZ", country => "Kazakhstan" },
"el aaiun, eh" => { location => "AFR|EH|WI---|EL AAIUN", country => "Western Sahara" },
"el jadida, ma" => { location => "AFR|MA|MO010|EL JADIDA", country => "Morocco" },
"el monte, ca, us" => { location => "NAM|US|CA|EL MONTE", country => "United States" },
"el paso, tx, us" => { location => "NAM|US|TX|EL PASO", country => "United States" },
"elazig, tr" => { location => "MEA|TR|TU028|ELAZIG", country => "Turkey" },
"elblag, pl" => { location => "EUR|PL|PL014|ELBLAG", country => "Poland" },
"elche, es" => { location => "EUR|ES|SP016|ELCHE", country => "Spain" },
"eldoret, ke" => { location => "AFR|KE|KE007|ELDORET", country => "Kenya" },
"elektrostal, ru" => { location => "ASI|RU|RS051|ELEKTROSTAL", country => "Russia" },
"elets, ru" => { location => "ASI|RU|RS046|ELETS", country => "Russia" },
"elista, ru" => { location => "ASI|RU|RS026|ELISTA", country => "Russia" },
"elizabeth, nj, us" => { location => "NAM|US|NJ|ELIZABETH", country => "United States" },
"elk grove, ca, us" => { location => "NAM|US|CA|ELK GROVE", country => "United States" },
"ellisras, za" => { location => "AFR|ZA|SF009|ELLISRAS", country => "South Africa" },
"el-mahalla el-kubra, eg" => { location => "AFR|EG|EG005|EL-MAHALLA EL-KUBRA", country => "Egypt" },
"elmbridge, uk" => { location => "EUR|UK|UK001|ELMBRIDGE", country => "United Kingdom" },
"eluru, in" => { location => "ASI|IN|IN002|ELURU", country => "India" },
"embu, br" => { location => "SAM|BR|BR023|EMBU", country => "Brazil" },
"emmen, nl" => { location => "EUR|NL|NL001|EMMEN", country => "Netherlands" },
"empangeni, za" => { location => "AFR|ZA|SF005|EMPANGENI", country => "South Africa" },
"enfield, uk" => { location => "EUR|UK|UK001|ENFIELD", country => "United Kingdom" },
"engels, ru" => { location => "ASI|RU|RS069|ENGELS", country => "Russia" },
"english bazar, in" => { location => "ASI|IN|IN036|ENGLISH BAZAR", country => "India" },
"enschede, nl" => { location => "EUR|NL|NL009|ENSCHEDE", country => "Netherlands" },
"ensenada, mx" => { location => "NAM|MX|MX002|ENSENADA", country => "Mexico" },
"enshi, cn" => { location => "ASI|CN|CH013|ENSHI", country => "China" },
"entebbe, ug" => { location => "AFR|UG|UG000|ENTEBBE", country => "Uganda" },
"enugu, ng" => { location => "AFR|NG|NI000|ENUGU", country => "Nigeria" },
"envigado, co" => { location => "SAM|CO|CO002|ENVIGADO", country => "Colombia" },
"erbil, iq" => { location => "MEA|IQ|IZ006|ERBIL", country => "Iraq" },
"erfurt, de" => { location => "EUR|DE|GM017|ERFURT", country => "Germany" },
"erie, pa, us" => { location => "NAM|US|PA|ERIE", country => "United States" },
"erlangen, de" => { location => "EUR|DE|GM002|ERLANGEN", country => "Germany" },
"ermelo, za" => { location => "AFR|ZA|SF006|ERMELO", country => "South Africa" },
"erode, in" => { location => "ASI|IN|IN031|ERODE", country => "India" },
"erzurum, tr" => { location => "MEA|TR|TU030|ERZURUM", country => "Turkey" },
"esbjerg, dk" => { location => "EUR|DK|DA008|ESBJERG", country => "Denmark" },
"escondido, ca, us" => { location => "NAM|US|CA|ESCONDIDO", country => "United States" },
"esfahan, ir" => { location => "MEA|IR|IR006|ESFAHAN", country => "Iran" },
"eshowe, za" => { location => "AFR|ZA|SF005|ESHOWE", country => "South Africa" },
"eskisehir, tr" => { location => "MEA|TR|TU031|ESKISEHIR", country => "Turkey" },
"esmeraldas, ec" => { location => "SAM|EC|EC008|ESMERALDAS", country => "Ecuador" },
"espoo, fi" => { location => "EUR|FI|FI002|ESPOO", country => "Finland" },
"essen, de" => { location => "EUR|DE|GM011|ESSEN", country => "Germany" },
"etawah, in" => { location => "ASI|IN|IN029|ETAWAH", country => "India" },
"etobicoke, ca" => { location => "NAM|CA|ON|ETOBICOKE", country => "Canada" },
"eugene, or, us" => { location => "NAM|US|OR|EUGENE", country => "United States" },
"evansville, in, us" => { location => "NAM|US|IN|EVANSVILLE", country => "United States" },
"évora, pt" => { location => "EUR|PT|PO008|ÉVORA", country => "Portugal" },
"excelsior, za" => { location => "AFR|ZA|SF003|EXCELSIOR", country => "South Africa" },
"exeter, uk" => { location => "EUR|UK|UK001|EXETER", country => "United Kingdom" },
"faisalabad, pk" => { location => "ASI|PK|PK007|FAISALABAD", country => "Pakistan" },
"faiyum, eg" => { location => "AFR|EG|EG004|FAIYŰM", country => "Egypt" },
"faizabad, in" => { location => "ASI|IN|IN033|FAIZABAD", country => "India" },
"falkirk, uk" => { location => "EUR|UK|UK002|FALKIRK", country => "United Kingdom" },
"fareham, uk" => { location => "EUR|UK|UK001|FAREHAM", country => "United Kingdom" },
"faridabad, in" => { location => "ASI|IN|IN013|FARIDABAD", country => "India" },
"faro, pt" => { location => "EUR|PT|PO009|FARO", country => "Portugal" },
"farrukhabad-cum-fategarh, in" => { location => "ASI|IN|IN033|FARRUKHABAD-CUM-FATEGARH", country => "India" },
"fatehpur, in" => { location => "ASI|IN|IN029|FATEHPUR", country => "India" },
"fauresmith, za" => { location => "AFR|ZA|SF003|FAURESMITH", country => "South Africa" },
"fayetteville, nc, us" => { location => "NAM|US|NC|FAYETTEVILLE", country => "United States" },
"fayetteville, ar, us" => { location => "NAM|US|AR|Fayetteville", country => "United States" },
"feira de santana, br" => { location => "SAM|BR|BR005|FEIRA DE SANTANA", country => "Brazil" },
"fengcheng, cn" => { location => "ASI|CN|CH016|FENGCHENG", country => "China" },
"fenghua, cn" => { location => "ASI|CN|CH031|FENGHUA", country => "China" },
"fergana, uz" => { location => "ASI|UZ|UZ003|FERGANA", country => "Uzbekistan" },
"ferrara, it" => { location => "EUR|IT|IT005|FERRARA", country => "Italy" },
"ferraz de vasconcelos, br" => { location => "SAM|BR|BR023|FERRAZ DE VASCONCELOS", country => "Brazil" },
"fes, ma" => { location => "AFR|MA|MO016|FČS", country => "Morocco" },
"ficksburg, za" => { location => "AFR|ZA|SF003|FICKSBURG", country => "South Africa" },
"firenze, it" => { location => "EUR|IT|IT016|FIRENZE", country => "Italy" },
"firozabad, in" => { location => "ASI|IN|IN017|FIROZABAD", country => "India" },
"flint, mi, us" => { location => "NAM|US|MI|FLINT", country => "United States" },
"florencia, co" => { location => "SAM|CO|CO005|FLORENCIA", country => "Colombia" },
"florianopolis, br" => { location => "SAM|BR|BR022|FLORIANÓPOLIS", country => "Brazil" },
"floridablanca, co" => { location => "SAM|CO|CO024|FLORIDABLANCA", country => "Colombia" },
"foggia, it" => { location => "EUR|IT|IT013|FOGGIA", country => "Italy" },
"fontana, ca, us" => { location => "NAM|US|CA|FONTANA", country => "United States" },
"forli, it" => { location => "EUR|IT|IT005|FORLI", country => "Italy" },
"formosa, ar" => { location => "SAM|AR|AR009|FORMOSA", country => "Argentina" },
"fort beaufort, za" => { location => "AFR|ZA|SF002|FORT BEAUFORT", country => "South Africa" },
"fort collins, co, us" => { location => "NAM|US|CO|FORT COLLINS", country => "United States" },
"fort lauderdale, fl, us" => { location => "NAM|US|FL|FORT LAUDERDALE", country => "United States" },
"fort portal, ug" => { location => "AFR|UG|UG000|FORT PORTAL", country => "Uganda" },
"fort wayne, in, us" => { location => "NAM|US|IN|FORT WAYNE", country => "United States" },
"fort worth, tx, us" => { location => "NAM|US|TX|FORT WORTH", country => "United States" },
"fortaleza, br" => { location => "SAM|BR|BR006|FORTALEZA", country => "Brazil" },
"fort-de-france, mq" => { location => "CAC|MQ|MB---|FORT-DE-FRANCE", country => "Martinique" },
"foshan, cn" => { location => "ASI|CN|CH006|FOSHAN", country => "China" },
"foz do iguacu, br" => { location => "SAM|BR|BR015|FOZ DO IGUAÇU", country => "Brazil" },
"franca, br" => { location => "SAM|BR|BR005|FRANCA", country => "Brazil" },
"francisco morato, br" => { location => "SAM|BR|BR023|FRANCISCO MORATO", country => "Brazil" },
"francistown, bw" => { location => "AFR|BW|BC000|FRANCISTOWN", country => "Botswana" },
"franco da rocha, br" => { location => "SAM|BR|BR023|FRANCO DA ROCHA", country => "Brazil" },
"frankfort, ky, us" => { location => "NAM|US|KY|FRANKFORT", country => "United States" },
"frankfurt am main, de" => { location => "EUR|DE|GM007|FRANKFURT AM MAIN", country => "Germany" },
"franschhoek, za" => { location => "AFR|ZA|SF011|FRANSCHHOEK", country => "South Africa" },
"fraserburg, za" => { location => "AFR|ZA|SF008|FRASERBURG", country => "South Africa" },
"fredericia, dk" => { location => "EUR|DK|DA014|FREDERICIA", country => "Denmark" },
"frederikshavn, dk" => { location => "EUR|DK|DA007|FREDERIKSHAVN", country => "Denmark" },
"fredrikstad, no" => { location => "EUR|NO|NO012|FREDRIKSTAD", country => "Norway" },
"freetown, sl" => { location => "AFR|SL|SL004|FREETOWN", country => "Sierra Leone" },
"freiburg im breisgau, de" => { location => "EUR|DE|GM001|FREIBURG IM BREISGAU", country => "Germany" },
"fremont, ca, us" => { location => "NAM|US|CA|FREMONT", country => "United States" },
"fresno, ca, us" => { location => "NAM|US|CA|FRESNO", country => "United States" },
"fuan, cn" => { location => "ASI|CN|CH004|FUAN", country => "China" },
"fuenlabrada, es" => { location => "EUR|ES|SP013|FUENLABRADA", country => "Spain" },
"fuji, jp" => { location => "ASI|JP|JA038|FUJI", country => "Japan" },
"fujieda, jp" => { location => "ASI|JP|JA038|FUJIEDA", country => "Japan" },
"fujimi, jp" => { location => "ASI|JP|JA012|FUJIMI", country => "Japan" },
"fujin, cn" => { location => "ASI|CN|CH011|FUJIN", country => "China" },
"fujinomiya, jp" => { location => "ASI|JP|JA038|FUJINOMIYA", country => "Japan" },
"fukaya, jp" => { location => "ASI|JP|JA035|FUKAYA", country => "Japan" },
"fukui, jp" => { location => "ASI|JP|JA006|FUKUI", country => "Japan" },
"fukuoka, jp" => { location => "ASI|JP|JA009|FUKUOKA", country => "Japan" },
"fukuyama, jp" => { location => "ASI|JP|JA011|FUKUYAMA", country => "Japan" },
"fulin, cn" => { location => "ASI|CN|CH014|FULIN", country => "China" },
"fullerton, ca, us" => { location => "NAM|US|CA|FULLERTON", country => "United States" },
"funabashi, jp" => { location => "ASI|JP|JA004|FUNABASHI", country => "Japan" },
"funchal, pt" => { location => "EUR|PT|PO013|FUNCHAL", country => "Portugal" },
"furth, de" => { location => "EUR|DE|GM002|FÜRTH", country => "Germany" },
"fushun, cn" => { location => "ASI|CN|CH018|FUSHUN", country => "China" },
"fuxin, cn" => { location => "ASI|CN|CH018|FUXIN", country => "China" },
"fuyang, cn" => { location => "ASI|CN|CH001|FUYANG", country => "China" },
"fuyu, cn" => { location => "ASI|CN|CH011|FUYU", country => "China" },
"fuzhou, cn" => { location => "ASI|CN|CH004|FUZHOU", country => "China" },
"gabes, tn" => { location => "AFR|TN|TS013|GABES", country => "Tunisia" },
"gaborone, bw" => { location => "AFR|BW|BC009|GABORONE", country => "Botswana" },
"gadag, in" => { location => "ASI|IN|IN017|GADAG-BETGERI", country => "India" },
"gadamabad, ir" => { location => "MEA|IR|IR009|GONBAD-E-KAVUS", country => "Iran" },
"gaevle, se" => { location => "EUR|SE|SW003|GAEVLE", country => "Sweden" },
"gainesville, fl, us" => { location => "NAM|US|FL|Gainesville", country => "United States" },
"galati, ro" => { location => "EUR|RO|RO019|GALATI", country => "Romania" },
"gandhidham, in" => { location => "ASI|IN|IN012|GANDHIDHAM", country => "India" },
"gandhinagar, in" => { location => "ASI|IN|IN012|GANDHINAGAR", country => "India" },
"gandja, az" => { location => "ASI|AZ|AJ020|GANDJA", country => "Azerbaijan" },
"gansbaai, za" => { location => "AFR|ZA|SF011|GANSBAAI", country => "South Africa" },
"ganzhou, cn" => { location => "ASI|CN|CH016|GANZHOU", country => "China" },
"gaocheng, cn" => { location => "ASI|CN|CH013|GAOCHENG", country => "China" },
"gap, fr" => { location => "EUR|FR|FR021|GAP", country => "France" },
"garanhuns, br" => { location => "SAM|BR|BR026|GARANHUNS", country => "Brazil" },
"garden grove, ca, us" => { location => "NAM|US|CA|GARDEN GROVE", country => "United States" },
"garland, tx, us" => { location => "NAM|US|TX|GARLAND", country => "United States" },
"garoua, cm" => { location => "AFR|CM|CM006|GAROUA", country => "Cameroon" },
"gary, in, us" => { location => "NAM|US|IN|GARY", country => "United States" },
"gateshead, uk" => { location => "EUR|UK|UK001|GATESHEAD", country => "United Kingdom" },
"gatineau, ca" => { location => "NAM|CA|QC|GATINEAU", country => "Canada" },
"gaya, in" => { location => "ASI|IN|IN005|GAYA", country => "India" },
"gaziantep, tr" => { location => "MEA|TR|TU032|GAZIANTEP", country => "Turkey" },
"gdansk, pl" => { location => "EUR|PL|PL011|GDANSK", country => "Poland" },
"gdynia, pl" => { location => "EUR|PL|PL011|GDYNIA", country => "Poland" },
"gebze, tr" => { location => "MEA|TR|TU052|GEBZE", country => "Turkey" },
"gedling, uk" => { location => "EUR|UK|UK001|GEDLING", country => "United Kingdom" },
"geelong, au" => { location => "OCN|AU|VIC|GEELONG", country => "Australia" },
"geilo, no" => { location => "EUR|NO|NO003|GEILO", country => "Norway" },
"gejiu, cn" => { location => "ASI|CN|CH030|GEJIU", country => "China" },
"geleen-sittard, nl" => { location => "EUR|NL|NL006|GELEEN-SITTARD", country => "Netherlands" },
"gelsenkirchen, de" => { location => "EUR|DE|GM011|GELSENKIRCHEN", country => "Germany" },
"general san martin, ar" => { location => "SAM|AR|AR011|GENERAL SAN MARTÍN", country => "Argentina" },
"general santos, ph" => { location => "ASI|PH|RP049|GENERAL SANTOS", country => "Philippines" },
"geneve, ch" => { location => "EUR|CH|SZ008|GENČVE", country => "Switzerland" },
"genova, it" => { location => "EUR|IT|IT008|GENOVA", country => "Italy" },
"gent, be" => { location => "EUR|BE|BE009|GENT", country => "Belgium" },
"george, za" => { location => "AFR|ZA|SF011|GEORGE", country => "South Africa" },
"george town, ky" => { location => "CAC|KY|CJ000|GEORGE TOWN", country => "Cayman Islands" },
"george town, my" => { location => "ASI|MY|MY010|GEORGE TOWN", country => "Malaysia" },
"georgetown, gy" => { location => "SAM|GY|GY003|GEORGETOWN", country => "Guyana" },
"gera, de" => { location => "EUR|DE|GM017|GERA", country => "Germany" },
"germiston, za" => { location => "AFR|ZA|SF004|GERMISTON", country => "South Africa" },
"getafe, es" => { location => "EUR|ES|SP013|GETAFE", country => "Spain" },
"ghanzi, bw" => { location => "AFR|BW|BC000|GHANZI", country => "Botswana" },
"ghaziabad, in" => { location => "ASI|IN|IN033|GHAZIABAD", country => "India" },
"giants castle, za" => { location => "AFR|ZA|SF005|GIANTS CASTLE", country => "South Africa" },
"gibraltar, gi" => { location => "EUR|GI|GI---|GIBRALTAR", country => "Gibraltar" },
"gifu, jp" => { location => "ASI|JP|JA009|GIFU", country => "Japan" },
"gijon, es" => { location => "EUR|ES|SP003|GIJÓN", country => "Spain" },
"gilbert, az, us" => { location => "NAM|US|AZ|GILBERT", country => "United States" },
"gillette, nj, us" => { location => "NAM|US|NJ|GILLETTE", country => "United States" },
"gillette, wy, us" => { location => "NAM|US|WY|GILLETTE", country => "United States" },
"girardot, co" => { location => "SAM|CO|CO011|GIRARDOT", country => "Colombia" },
"giza, eg" => { location => "AFR|EG|EG008|GIZA", country => "Egypt" },
"gladbach, de" => { location => "EUR|DE|GM011|MÖNCHENGLADBACH", country => "Germany" },
"glasgow, uk" => { location => "EUR|UK|UK002|GLASGOW", country => "United Kingdom" },
"glazov, ru" => { location => "ASI|RU|RS084|GLAZOV", country => "Russia" },
"glendale, ca, us" => { location => "NAM|US|CA|GLENDALE", country => "United States" },
"gliwice, pl" => { location => "EUR|PL|PL012|GLIWICE", country => "Poland" },
"gloucester, uk" => { location => "EUR|UK|UK001|GLOUCESTER", country => "United Kingdom" },
"godhra, in" => { location => "ASI|IN|IN012|GODHRA", country => "India" },
"goiania, br" => { location => "SAM|BR|BR027|GOIÂNIA", country => "Brazil" },
"gojra, pk" => { location => "ASI|PK|PK007|GOJRA", country => "Pakistan" },
"gold coast, au" => { location => "OCN|AU|QLD|GOLD COAST", country => "Australia" },
"gomel, by" => { location => "EUR|BY|BO002|GOMEL", country => "Belarus" },
"gomez palacio, mx" => { location => "NAM|MX|MX010|GÓMEZ PALACIO", country => "Mexico" },
"gondar, et" => { location => "AFR|ET|ET000|GONDAR", country => "Ethiopia" },
"gongzhuling, cn" => { location => "ASI|CN|CH017|GONGZHULING", country => "China" },
"gorakhpur, in" => { location => "ASI|IN|IN033|GORAKHPUR", country => "India" },
"gordons bay, za" => { location => "AFR|ZA|SF011|GORDONS BAY", country => "South Africa" },
"gorgan, ir" => { location => "MEA|IR|IR002|GORGAN", country => "Iran" },
"gorkey, ru" => { location => "ASI|RU|RS055|NIZHNY NOVGOROD", country => "Russia" },
"gorlovka, ua" => { location => "EUR|UA|UP004|GORLOVKA", country => "Ukraine" },
"gorzow wielkopolski, pl" => { location => "EUR|PL|PL005|GORZÓW WIELKOPOLSKI", country => "Poland" },
"gothenburg, se" => { location => "EUR|SE|SW021|GOTHENBURG", country => "Sweden" },
"gottingen, de" => { location => "EUR|DE|GM007|GÖTTINGEN", country => "Germany" },
"governador valadares, br" => { location => "SAM|BR|BR012|GOVERNADOR VALADARES", country => "Brazil" },
"graaff reinet, za" => { location => "AFR|ZA|SF002|GRAAFF REINET", country => "South Africa" },
"grabouw, za" => { location => "AFR|ZA|SF011|GRABOUW", country => "South Africa" },
"grahamstown, za" => { location => "AFR|ZA|SF002|GRAHAMSTOWN", country => "South Africa" },
"granada, ni" => { location => "CAC|NI|NU006|GRANADA", country => "Nicaragua" },
"granada, es" => { location => "EUR|ES|SP001|GRANADA", country => "Spain" },
"grand island, ne, us" => { location => "NAM|US|NE|Grand Island", country => "United States" },
"grand prairie, tx, us" => { location => "NAM|US|TX|GRAND PRAIRIE", country => "United States" },
"grand rapids, mi, us" => { location => "NAM|US|MI|GRAND RAPIDS", country => "United States" },
"grand turk, tc" => { location => "CAC|TC|TK---|GRAND TURK", country => "Turks And Caicos Islands" },
"graskop, za" => { location => "AFR|ZA|SF006|GRASKOP", country => "South Africa" },
"gravatai, br" => { location => "SAM|BR|BR019|GRAVATAI", country => "Brazil" },
"graz, at" => { location => "EUR|AT|AU006|GRAZ", country => "Austria" },
"green bay, wi, us" => { location => "NAM|US|WI|GREEN BAY", country => "United States" },
"greensboro, nc, us" => { location => "NAM|US|NC|GREENSBORO", country => "United States" },
"grenoble, fr" => { location => "EUR|FR|FR022|GRENOBLE", country => "France" },
"griekwastad, za" => { location => "AFR|ZA|SF008|GRIEKWASTAD", country => "South Africa" },
"groblersdal, za" => { location => "AFR|ZA|SF006|GROBLERSDAL", country => "South Africa" },
"grodno, by" => { location => "EUR|BY|BO003|GRODNO", country => "Belarus" },
"groningen, nl" => { location => "EUR|NL|NL005|GRONINGEN", country => "Netherlands" },
"groznyi, ru" => { location => "ASI|RU|RS012|GROZNYI", country => "Russia" },
"guadalajara, mx" => { location => "NAM|MX|MX014|GUADALAJARA", country => "Mexico" },
"guadalupe, mx" => { location => "NAM|MX|MX005|GUADALUPE", country => "Mexico" },
"guanare, ve" => { location => "SAM|VE|VE019|GUANARE", country => "Venezuela" },
"guanghan, cn" => { location => "ASI|CN|CH001|GUANGHAN", country => "China" },
"guangshui, cn" => { location => "ASI|CN|CH013|GUANGSHUI", country => "China" },
"guangyuan, cn" => { location => "ASI|CN|CH026|GUANGYUAN", country => "China" },
"guangzhou, cn" => { location => "ASI|CN|CH006|GUANGZHOU", country => "China" },
"guantanamo, cu" => { location => "CAC|CU|CU006|GUANTÁNAMO", country => "Cuba" },
"guarapuava, br" => { location => "SAM|BR|BR015|GUARAPUAVA", country => "Brazil" },
"guaratingueta, br" => { location => "SAM|BR|BR023|GUARATINGUETÁ", country => "Brazil" },
"guarda, pt" => { location => "EUR|PT|PO010|GUARDA", country => "Portugal" },
"guarenas, ve" => { location => "SAM|VE|VE016|GUARENAS", country => "Venezuela" },
"guaruja, br" => { location => "SAM|BR|BR023|GUARUJÁ", country => "Brazil" },
"guarulhos, br" => { location => "SAM|BR|BR023|GUARULHOS", country => "Brazil" },
"guatemala, gt" => { location => "CAC|GT|GT007|GUATEMALA", country => "Guatemala" },
"guayaquil, ec" => { location => "SAM|EC|EC010|GUAYAQUIL", country => "Ecuador" },
"guaynabo, pr" => { location => "CAC|PR|PR000|GUAYNABO", country => "Puerto Rico" },
"gudivada, in" => { location => "ASI|IN|IN002|GUDIVADA", country => "India" },
"guelph, ca" => { location => "NAM|CA|ON|GUELPH", country => "Canada" },
"guichi, cn" => { location => "ASI|CN|CH001|GUICHI", country => "China" },
"guildford, uk" => { location => "EUR|UK|UK001|GUILDFORD", country => "United Kingdom" },
"guilin, cn" => { location => "ASI|CN|CH016|GUILIN", country => "China" },
"guiyang, cn" => { location => "ASI|CN|CH007|GUIYANG", country => "China" },
"gujranwala, pk" => { location => "ASI|PK|PK007|GUJRANWALA", country => "Pakistan" },
"gujrat, pk" => { location => "ASI|PK|PK007|GUJRAT", country => "Pakistan" },
"gulbarga, in" => { location => "ASI|IN|IN017|GULBARGA", country => "India" },
"gulu, ug" => { location => "AFR|UG|UG000|GULU", country => "Uganda" },
"guna, in" => { location => "ASI|IN|IN020|GUNA", country => "India" },
"guntur, in" => { location => "ASI|IN|IN002|GUNTUR", country => "India" },
"gurgaon, in" => { location => "ASI|IN|IN013|GURGAON", country => "India" },
"guruvayur, in" => { location => "ASI|IN|IN018|GURUVAYUR", country => "India" },
"gwalior, in" => { location => "ASI|IN|IN020|GWALIOR", country => "India" },
"gweru, zw" => { location => "AFR|ZW|ZI000|GWERU", country => "Zimbabwe" },
"gyor, hu" => { location => "EUR|HU|HU012|GYÖR", country => "Hungary" },
"haarlem, nl" => { location => "EUR|NL|NL008|HAARLEM", country => "Netherlands" },
"haarlemmermeer, nl" => { location => "EUR|NL|NL008|HAARLEMMERMEER", country => "Netherlands" },
"habikino, jp" => { location => "ASI|JP|JA033|HABIKINO", country => "Japan" },
"habra, in" => { location => "ASI|IN|IN036|HABRA", country => "India" },
"hachinohe, jp" => { location => "ASI|JP|JA003|HACHINOHE", country => "Japan" },
"hachioji, jp" => { location => "ASI|JP|JA041|HACHIOJI", country => "Japan" },
"hackney, uk" => { location => "EUR|UK|UK001|HACKNEY", country => "United Kingdom" },
"hadera, il" => { location => "MEA|IL|IS004|HADERA", country => "Israel" },
"hadserslev, dk" => { location => "EUR|DK|DA011|HADSERSLEV", country => "Denmark" },
"haeju, kp" => { location => "ASI|KP|KN005|HAEJU", country => "North Korea" },
"haenertsburg, za" => { location => "AFR|ZA|SF009|HAENERTSBURG", country => "South Africa" },
"hafizabad, pk" => { location => "ASI|PK|PK007|HAFIZABAD", country => "Pakistan" },
"hagen, de" => { location => "EUR|DE|GM015|HAGEN", country => "Germany" },
"haicheng, cn" => { location => "ASI|CN|CH004|HAICHENG", country => "China" },
"haifa, il" => { location => "MEA|IL|IS004|HAIFA", country => "Israel" },
"haikou, cn" => { location => "ASI|CN|CH009|HAIKOU", country => "China" },
"haining, cn" => { location => "ASI|CN|CH031|HAINING", country => "China" },
"haiphong, vn" => { location => "ASI|VN|VM029|HAIPHONG", country => "Vietnam" },
"hakodate, jp" => { location => "ASI|JP|JA012|HAKODATE", country => "Japan" },
"halifax, ca" => { location => "NAM|CA|NS|HALIFAX", country => "Canada" },
"halle, de" => { location => "EUR|DE|GM009|HALLE", country => "Germany" },
"halton, uk" => { location => "EUR|UK|UK001|HALTON", country => "United Kingdom" },
"hama, sy" => { location => "MEA|SY|SY010|HAMA", country => "Syria" },
"hamadan, ir" => { location => "MEA|IR|IR010|HAMADAN", country => "Iran" },
"hamamatsu, jp" => { location => "ASI|JP|JA038|HAMAMATSU", country => "Japan" },
"hamburg, de" => { location => "EUR|DE|GM006|HAMBURG", country => "Germany" },
"hamhung, kp" => { location => "ASI|KP|KN003|HAMHUNG", country => "North Korea" },
"hami, cn" => { location => "ASI|CN|CH028|HAMI", country => "China" },
"hamilton, bm" => { location => "NAM|BM|BD002|HAMILTON", country => "Bermuda" },
"hamilton, ca" => { location => "NAM|CA|ON|HAMILTON", country => "Canada" },
"hamilton, nz" => { location => "OCN|NZ|NZ000|HAMILTON", country => "New Zealand" },
"hamm, de" => { location => "EUR|DE|GM009|HAMM", country => "Germany" },
"hammerfest, no" => { location => "EUR|NO|NO004|HAMMERFEST", country => "Norway" },
"hammersmith and fulham, uk" => { location => "EUR|UK|UK001|HAMMERSMITH AND FULHAM", country => "United Kingdom" },
"hampton, va, us" => { location => "NAM|US|VA|HAMPTON", country => "United States" },
"hanam, kr" => { location => "ASI|KR|KS009|HANAM", country => "South Korea" },
"hancheng, cn" => { location => "ASI|CN|CH022|HANCHENG", country => "China" },
"handa, jp" => { location => "ASI|JP|JA001|HANDA", country => "Japan" },
"handan, cn" => { location => "ASI|CN|CH016|HANDAN", country => "China" },
"hangzhou, cn" => { location => "ASI|CN|CH031|HANGZHOU", country => "China" },
"hannover, de" => { location => "EUR|DE|GM009|HANNOVER", country => "Germany" },
"hanoi, vn" => { location => "ASI|VN|VM017|HANOI", country => "Vietnam" },
"hanzhong, cn" => { location => "ASI|CN|CH022|HANZHONG", country => "China" },
"haora, in" => { location => "ASI|IN|IN036|HAORA", country => "India" },
"hapur, in" => { location => "ASI|IN|IN033|HAPUR", country => "India" },
"harare, zw" => { location => "AFR|ZW|ZI003|HARARE", country => "Zimbabwe" },
"harbin, cn" => { location => "ASI|CN|CH011|HARBIN", country => "China" },
"hardwar, in" => { location => "ASI|IN|IN033|HARDWAR", country => "India" },
"haringey, uk" => { location => "EUR|UK|UK001|HARINGEY", country => "United Kingdom" },
"harrisburg, pa, us" => { location => "NAM|US|PA|HARRISBURG", country => "United States" },
"harrismith, za" => { location => "AFR|ZA|SF003|HARRISMITH", country => "South Africa" },
"harrogate, uk" => { location => "EUR|UK|UK001|HARROGATE", country => "United Kingdom" },
"harrow, uk" => { location => "EUR|UK|UK001|HARROW", country => "United Kingdom" },
"hartbeespoort, za" => { location => "AFR|ZA|SF007|HARTBEESPOORT", country => "South Africa" },
"hartenbos, za" => { location => "AFR|ZA|SF011|HARTENBOS", country => "South Africa" },
"hartford, ct, us" => { location => "NAM|US|CT|HARTFORD", country => "United States" },
"hassan, in" => { location => "ASI|IN|IN017|HASSAN", country => "India" },
"hatay, tr" => { location => "MEA|TR|TU036|HATAY", country => "Turkey" },
"hathras, in" => { location => "ASI|IN|IN033|HATHRAS", country => "India" },
"hattiesburg, ms, us" => { location => "NAM|US|MS|Hattiesburg", country => "United States" },
"haugesund, no" => { location => "EUR|NO|NO013|HAUGESUND", country => "Norway" },
"havant, uk" => { location => "EUR|UK|UK148|HAVANT", country => "United Kingdom" },
"havant and waterloo, uk" => { location => "EUR|UK|UK001|HAVANT AND WATERLOO", country => "United Kingdom" },
"havering, uk" => { location => "EUR|UK|UK001|HAVERING", country => "United Kingdom" },
"hayward, ca, us" => { location => "NAM|US|CA|HAYWARD", country => "United States" },
"hazyview, za" => { location => "AFR|ZA|SF006|HAZYVIEW", country => "South Africa" },
"hebi, cn" => { location => "ASI|CN|CH012|HEBI", country => "China" },
"hechi, cn" => { location => "ASI|CN|CH007|HECHI", country => "China" },
"heerlen-kerkrade, nl" => { location => "EUR|NL|NL006|HEERLEN-KERKRADE", country => "Netherlands" },
"hefei, cn" => { location => "ASI|CN|CH001|HEFEI", country => "China" },
"hegang, cn" => { location => "ASI|CN|CH001|HEGANG", country => "China" },
"heidelberg, de" => { location => "EUR|DE|GM001|HEIDELBERG", country => "Germany" },
"heidelberg, za" => { location => "AFR|ZA|SF004|HEIDELBERG", country => "South Africa" },
"heihe, cn" => { location => "ASI|CN|CH011|HEIHE", country => "China" },
"heilbronn, de" => { location => "EUR|DE|GM001|HEILBRONN", country => "Germany" },
"helena, mt, us" => { location => "NAM|US|MT|HELENA", country => "United States" },
"helsingborg, se" => { location => "EUR|SE|SW013|HELSINGBORG", country => "Sweden" },
"helsingoer, dk" => { location => "EUR|DK|DA004|HELSINGOER", country => "Denmark" },
"helsinki, fi" => { location => "EUR|FI|FI002|HELSINKI", country => "Finland" },
"hemsedal, no" => { location => "EUR|NO|NO003|HEMSEDAL", country => "Norway" },
"henderson, nv, us" => { location => "NAM|US|NV|HENDERSON", country => "United States" },
"hengshui, cn" => { location => "ASI|CN|CH010|HENGSHUI", country => "China" },
"hengyang, cn" => { location => "ASI|CN|CH014|HENGYANG", country => "China" },
"herat, af" => { location => "ASI|AF|AF011|HERAT", country => "Afghanistan" },
"hermanus, za" => { location => "AFR|ZA|SF011|HERMANUS", country => "South Africa" },
"hermosillo, mx" => { location => "NAM|MX|MX002|HERMOSILLO", country => "Mexico" },
"herne, de" => { location => "EUR|DE|GM011|HERNE", country => "Germany" },
"herning, dk" => { location => "EUR|DK|DA009|HERNING", country => "Denmark" },
"heshan, cn" => { location => "ASI|CN|CH006|HESHAN", country => "China" },
"hetian, cn" => { location => "ASI|CN|CH004|HETIAN", country => "China" },
"heyuan, cn" => { location => "ASI|CN|CH006|HEYUAN", country => "China" },
"heze, cn" => { location => "ASI|CN|CH023|HEZE", country => "China" },
"hialeah, fl, us" => { location => "NAM|US|FL|HIALEAH", country => "United States" },
"hibberdene, za" => { location => "AFR|ZA|SF005|HIBBERDENE", country => "South Africa" },
"higashihiroshima, jp" => { location => "ASI|JP|JA011|HIGASHIHIROSHIMA", country => "Japan" },
"higashikurume, jp" => { location => "ASI|JP|JA041|HIGASHIKURUME", country => "Japan" },
"higashimurayama, jp" => { location => "ASI|JP|JA041|HIGASHIMURAYAMA", country => "Japan" },
"higashiosaka, jp" => { location => "ASI|JP|JA033|HIGASHIOSAKA", country => "Japan" },
"hikone, jp" => { location => "ASI|JP|JA036|HIKONE", country => "Japan" },
"hildesheim, de" => { location => "EUR|DE|GM009|HILDESHEIM", country => "Germany" },
"hilla, iq" => { location => "MEA|IQ|IZ009|HILLA", country => "Iraq" },
"hilleroed, dk" => { location => "EUR|DK|DA004|HILLEROED", country => "Denmark" },
"hillingdon, uk" => { location => "EUR|UK|UK001|HILLINGDON", country => "United Kingdom" },
"himeji, jp" => { location => "ASI|JP|JA013|HIMEJI", country => "Japan" },
"hindupur, in" => { location => "ASI|IN|IN002|HINDUPUR", country => "India" },
"hino, jp" => { location => "ASI|JP|JA041|HINO", country => "Japan" },
"hirakata, jp" => { location => "ASI|JP|JA033|HIRAKATA", country => "Japan" },
"hiratsuka, jp" => { location => "ASI|JP|JA019|HIRATSUKA", country => "Japan" },
"hirosaki, jp" => { location => "ASI|JP|JA003|HIROSAKI", country => "Japan" },
"hiroshima, jp" => { location => "ASI|JP|JA011|HIROSHIMA", country => "Japan" },
"hisar, in" => { location => "ASI|IN|IN013|HISAR", country => "India" },
"hitachi, jp" => { location => "ASI|JP|JA014|HITACHI", country => "Japan" },
"hjoerring, dk" => { location => "EUR|DK|DA007|HJOERRING", country => "Denmark" },
"hluhluwe, za" => { location => "AFR|ZA|SF005|HLUHLUWE", country => "South Africa" },
"ho, gh" => { location => "AFR|GH|GH000|HO", country => "Ghana" },
"ho chi minh city, vn" => { location => "ASI|VN|VM060|HO CHI MINH CITY", country => "Vietnam" },
"hobart, au" => { location => "OCN|AU|TAS|HOBART", country => "Australia" },
"hodeidah, ye" => { location => "MEA|YE|YM004|HODEIDAH", country => "Yemen" },
"hoedspruit, za" => { location => "AFR|ZA|SF009|HOEDSPRUIT", country => "South Africa" },
"hoenefoss, no" => { location => "EUR|NO|NO003|HOENEFOSS", country => "Norway" },
"hoersholm, dk" => { location => "EUR|DK|DA004|HOERSHOLM", country => "Denmark" },
"hofu, jp" => { location => "ASI|JP|JA046|HOFU", country => "Japan" },
"hogsback, za" => { location => "AFR|ZA|SF002|HOGSBACK", country => "South Africa" },
"hohhot, cn" => { location => "ASI|CN|CH019|HOHHOT", country => "China" },
"holbaek, dk" => { location => "EUR|DK|DA015|HOLBAEK", country => "Denmark" },
"holguin, cu" => { location => "CAC|CU|CU007|HOLGUÍN", country => "Cuba" },
"hollywood, fl, us" => { location => "NAM|US|FL|HOLLYWOOD", country => "United States" },
"holon, il" => { location => "MEA|IL|IS005|HOLON", country => "Israel" },
"holstebro, dk" => { location => "EUR|DK|DA009|HOLSTEBRO", country => "Denmark" },
"homs, sy" => { location => "MEA|SY|SY011|HOMS", country => "Syria" },
"hon gai, vn" => { location => "ASI|VN|VM052|HON GAI", country => "Vietnam" },
"hondeklip bay, za" => { location => "AFR|ZA|SF008|HONDEKLIP BAY", country => "South Africa" },
"hong kong, hk" => { location => "ASI|HK|HK---|HONG KONG", country => "Hong Kong" },
"honghu, cn" => { location => "ASI|CN|CH009|HONGHU", country => "China" },
"honiara, sb" => { location => "OCN|SB|BP000|HONIARA", country => "Solomon Islands" },
"honolulu, hi, us" => { location => "NAM|US|HI|HONOLULU", country => "United States" },
"horsens, dk" => { location => "EUR|DK|DA014|HORSENS", country => "Denmark" },
"horsham, uk" => { location => "EUR|UK|UK001|HORSHAM", country => "United Kingdom" },
"hortolandia, br" => { location => "SAM|BR|BR023|HORTOLANDIA", country => "Brazil" },
"hoshiarpur, in" => { location => "ASI|IN|IN028|HOSHIARPUR", country => "India" },
"hospet, in" => { location => "ASI|IN|IN017|HOSPET", country => "India" },
"houma, cn" => { location => "ASI|CN|CH025|HOUMA", country => "China" },
"hounslow, uk" => { location => "EUR|UK|UK001|HOUNSLOW", country => "United Kingdom" },
"houston, tx, us" => { location => "NAM|US|TX|HOUSTON", country => "United States" },
"howick, za" => { location => "AFR|ZA|SF005|HOWICK", country => "South Africa" },
"hoya, jp" => { location => "ASI|JP|JA041|HOYA", country => "Japan" },
"hsinchu, tw" => { location => "ASI|TW|TW018|HSINCHU", country => "Taiwan" },
"huadian, cn" => { location => "ASI|CN|CH017|HUADIAN", country => "China" },
"huaian, cn" => { location => "ASI|CN|CH025|HUAIAN", country => "China" },
"huaibei, cn" => { location => "ASI|CN|CH001|HUAIBEI", country => "China" },
"huaihua, cn" => { location => "ASI|CN|CH014|HUAIHUA", country => "China" },
"huainan, cn" => { location => "ASI|CN|CH004|HUAINAN", country => "China" },
"huaiyin, cn" => { location => "ASI|CN|CH015|HUAIYIN", country => "China" },
"hualien, tw" => { location => "ASI|TW|TW018|HUALIEN", country => "Taiwan" },
"huambo, ao" => { location => "AFR|AO|AO002|HUAMBO", country => "Angola" },
"huancayo, pe" => { location => "SAM|PE|PE012|HUANCAYO", country => "Peru" },
"huanghua, cn" => { location => "ASI|CN|CH010|HUANGHUA", country => "China" },
"huangshan, cn" => { location => "ASI|CN|CH023|HUANGSHAN", country => "China" },
"huangshi, cn" => { location => "ASI|CN|CH001|HUANGSHI", country => "China" },
"huanuco, pe" => { location => "SAM|PE|PE010|HUÁNUCO", country => "Peru" },
"huaying, cn" => { location => "ASI|CN|CH026|HUAYING", country => "China" },
"hubli, in" => { location => "ASI|IN|IN017|HUBLI-DHARWAD", country => "India" },
"hue, vn" => { location => "ASI|VN|VM044|HUÉ", country => "Vietnam" },
"huelva, es" => { location => "EUR|ES|SP001|HUELVA", country => "Spain" },
"huixian, cn" => { location => "ASI|CN|CH005|HUIXIAN", country => "China" },
"huizhou, cn" => { location => "ASI|CN|CH006|HUIZHOU", country => "China" },
"huludao, cn" => { location => "ASI|CN|CH018|HULUDAO", country => "China" },
"hunjiang, cn" => { location => "ASI|CN|CH017|HUNJIANG", country => "China" },
"huntington beach, ca, us" => { location => "NAM|US|CA|HUNTINGTON BEACH", country => "United States" },
"huntsville, al, us" => { location => "NAM|US|AL|HUNTSVILLE", country => "United States" },
"huzhou, cn" => { location => "ASI|CN|CH031|HUZHOU", country => "China" },
"hyderabad, in" => { location => "ASI|IN|IN002|HYDERABAD", country => "India" },
"hyderabad, pk" => { location => "ASI|PK|PK007|HYDERABAD", country => "Pakistan" },
"hyesan, kp" => { location => "ASI|KP|KN013|HYESAN", country => "North Korea" },
"iasi, ro" => { location => "EUR|RO|RO025|IASI", country => "Romania" },
"ibadan, ng" => { location => "AFR|NG|NI029|IBADAN", country => "Nigeria" },
"ibague, co" => { location => "SAM|CO|CO026|IBAGUÉ", country => "Colombia" },
"ibaraki, jp" => { location => "ASI|JP|JA033|IBARAKI", country => "Japan" },
"ibarra, ec" => { location => "SAM|EC|EC011|IBARRA", country => "Ecuador" },
"ibirite, br" => { location => "SAM|BR|BR012|IBIRITÉ", country => "Brazil" },
"ica, pe" => { location => "SAM|PE|PE011|ICA", country => "Peru" },
"icel, tr" => { location => "MEA|TR|TU037|IÇEL", country => "Turkey" },
"ichihara, jp" => { location => "ASI|JP|JA004|ICHIHARA", country => "Japan" },
"ichikawa, jp" => { location => "ASI|JP|JA004|ICHIKAWA", country => "Japan" },
"ichinomiya, jp" => { location => "ASI|JP|JA001|ICHINOMIYA", country => "Japan" },
"idre, se" => { location => "EUR|SE|SW002|IDRE", country => "Sweden" },
"ife, ng" => { location => "AFR|NG|NI000|IFE", country => "Nigeria" },
"ikeda, jp" => { location => "ASI|JP|JA029|IKEDA", country => "Japan" },
"ikere-ekiti, ng" => { location => "AFR|NG|NI000|IKERE-EKITI", country => "Nigeria" },
"ikoma, jp" => { location => "ASI|JP|JA028|IKOMA", country => "Japan" },
"ila, ng" => { location => "AFR|NG|NI000|ILA", country => "Nigeria" },
"ilam, ir" => { location => "MEA|IR|IR012|ILAM", country => "Iran" },
"ilesha, ng" => { location => "AFR|NG|NI000|ILESHA", country => "Nigeria" },
"ilheus, br" => { location => "SAM|BR|BR005|ILHÉUS", country => "Brazil" },
"iligan, ph" => { location => "ASI|PH|RP052|ILIGAN", country => "Philippines" },
"iloilo, ph" => { location => "ASI|PH|RP055|ILOILO", country => "Philippines" },
"ilopango, sv" => { location => "CAC|SV|ES010|ILOPANGO", country => "El Salvador" },
"ilorin, ng" => { location => "AFR|NG|NI000|ILORIN", country => "Nigeria" },
"imabari, jp" => { location => "ASI|JP|JA005|IMABARI", country => "Japan" },
"imbaba, eg" => { location => "AFR|EG|EG008|IMBABA", country => "Egypt" },
"imperatriz, br" => { location => "SAM|BR|BR009|IMPERATRIZ", country => "Brazil" },
"imphal, in" => { location => "ASI|IN|IN022|IMPHAL", country => "India" },
"inazawa, jp" => { location => "ASI|JP|JA001|INAZAWA", country => "Japan" },
"inchon, kp" => { location => "ASI|KP|KN007|INCHON", country => "North Korea" },
"indaiatuba, br" => { location => "SAM|BR|BR023|INDAIATUBA", country => "Brazil" },
"independence, mo, us" => { location => "NAM|US|MO|INDEPENDENCE", country => "United States" },
"indianapolis, in, us" => { location => "NAM|US|IN|INDIANAPOLIS", country => "United States" },
"indore, in" => { location => "ASI|IN|IN020|INDORE", country => "India" },
"inglewood, ca, us" => { location => "NAM|US|CA|INGLEWOOD", country => "United States" },
"ingolstadt, de" => { location => "EUR|DE|GM002|INGOLSTADT", country => "Germany" },
"inhaca island, mz" => { location => "AFR|MZ|MZ005|INHACA ISLAND", country => "Mozambique" },
"inhambane, mz" => { location => "AFR|MZ|MZ003|INHAMBANE", country => "Mozambique" },
"inhasoro, mz" => { location => "AFR|MZ|MZ003|INHASORO", country => "Mozambique" },
"innsbruck, at" => { location => "EUR|AT|AU007|INNSBRUCK", country => "Austria" },
"ipatinga, br" => { location => "SAM|BR|BR012|IPATINGA", country => "Brazil" },
"ipoh, my" => { location => "ASI|MY|MY008|IPOH", country => "Malaysia" },
"ipswich, uk" => { location => "EUR|UK|UK001|IPSWICH", country => "United Kingdom" },
"iquique, cl" => { location => "SAM|CL|CI012|IQUIQUE", country => "Chile" },
"iquitos, pe" => { location => "SAM|PE|PE016|IQUITOS", country => "Peru" },
"iraclion, gr" => { location => "EUR|GR|GR020|IRACLION", country => "Greece" },
"irapuato, mx" => { location => "NAM|MX|MX011|IRAPUATO", country => "Mexico" },
"irbid, jo" => { location => "MEA|JO|JO009|IRBID", country => "Jordan" },
"iri, kr" => { location => "ASI|KR|KS004|IRI", country => "South Korea" },
"irkutsk, ru" => { location => "ASI|RU|RS021|IRKUTSK", country => "Russia" },
"irvine, ca, us" => { location => "NAM|US|CA|IRVINE", country => "United States" },
"irving, tx, us" => { location => "NAM|US|TX|IRVING", country => "United States" },
"ise, jp" => { location => "ASI|JP|JA023|ISE", country => "Japan" },
"isesaki, jp" => { location => "ASI|JP|JA010|ISESAKI", country => "Japan" },
"ishinomaki, jp" => { location => "ASI|JP|JA024|ISHINOMAKI", country => "Japan" },
"iskenderun, tr" => { location => "MEA|TR|TU036|ISKENDERUN", country => "Turkey" },
"islamabad, pk" => { location => "ASI|PK|PK004|ISLAMABAD", country => "Pakistan" },
"islington, uk" => { location => "EUR|UK|UK001|ISLINGTON", country => "United Kingdom" },
"ismailia, eg" => { location => "AFR|EG|EG007|ISMAILIA", country => "Egypt" },
"isparta, tr" => { location => "MEA|TR|TU039|ISPARTA", country => "Turkey" },
"istanbul, tr" => { location => "MEA|TR|TU040|ISTANBUL", country => "Turkey" },
"ist-kamenogorsk, kz" => { location => "ASI|KZ|KZ014|IST-KAMENOGORSK", country => "Kazakhstan" },
"itabori, br" => { location => "SAM|BR|BR017|ITABORAÍ", country => "Brazil" },
"itabuna, br" => { location => "SAM|BR|BR005|ITABUNA", country => "Brazil" },
"itagui, co" => { location => "SAM|CO|CO002|ITAGÜÍ", country => "Colombia" },
"itaituba, br" => { location => "SAM|BR|BR013|ITAITUBA", country => "Brazil" },
"itajai, br" => { location => "SAM|BR|BR022|ITAJAÍ", country => "Brazil" },
"itami, jp" => { location => "ASI|JP|JA013|ITAMI", country => "Japan" },
"itapecerica da serra, br" => { location => "SAM|BR|BR023|ITAPECERICA DA SERRA", country => "Brazil" },
"itapetininga, br" => { location => "SAM|BR|BR026|ITAPETININGA", country => "Brazil" },
"itapevi, br" => { location => "SAM|BR|BR023|ITAPEVI", country => "Brazil" },
"itaquaquecetuba, br" => { location => "SAM|BR|BR023|ITAQUAQUECETUBA", country => "Brazil" },
"itu, br" => { location => "SAM|BR|BR023|ITU", country => "Brazil" },
"ivano-frankovsk, ua" => { location => "EUR|UA|UP005|IVANO-FRANKOVSK", country => "Ukraine" },
"ivanovo, ru" => { location => "ASI|RU|RS023|IVANOVO", country => "Russia" },
"iwakuni, jp" => { location => "ASI|JP|JA046|IWAKUNI", country => "Japan" },
"iwatsuki, jp" => { location => "ASI|JP|JA035|IWATSUKI", country => "Japan" },
"iwo, ng" => { location => "AFR|NG|NI000|IWO", country => "Nigeria" },
"ixopo, za" => { location => "AFR|ZA|SF005|IXOPO", country => "South Africa" },
"izhevsk, ru" => { location => "ASI|RU|RS084|IZHEVSK", country => "Russia" },
"izmir, tr" => { location => "MEA|TR|TU041|IZMIR", country => "Turkey" },
"izumi, jp" => { location => "ASI|JP|JA033|IZUMI", country => "Japan" },
"jabalpur, in" => { location => "ASI|IN|IN020|JABALPUR", country => "India" },
"jacarei, br" => { location => "SAM|BR|BR023|JACAREÍ", country => "Brazil" },
"jackson, ms, us" => { location => "NAM|US|MS|JACKSON", country => "United States" },
"jackson, wy, us" => { location => "NAM|US|WY|JACKSON", country => "United States" },
"jackson, mi, us" => { location => "NAM|US|MI|Jackson", country => "United States" },
"jacksonville, fl, us" => { location => "NAM|US|FL|JACKSONVILLE", country => "United States" },
"jacobabad, pk" => { location => "ASI|PK|PK008|JACOBABAD", country => "Pakistan" },
"jacobsdal, za" => { location => "AFR|ZA|SF003|JACOBSDAL", country => "South Africa" },
"jaen, es" => { location => "EUR|ES|SP001|JAÉN", country => "Spain" },
"jaffna, lk" => { location => "ASI|LK|CE010|JAFFNA", country => "Sri Lanka" },
"jaipur, in" => { location => "ASI|IN|IN029|JAIPUR", country => "India" },
"jakarta, id" => { location => "ASI|ID|ID009|JAKARTA", country => "Indonesia" },
"jalandhar, in" => { location => "ASI|IN|IN028|JALANDHAR", country => "India" },
"jalapa, mx" => { location => "NAM|MX|MX027|JALAPA", country => "Mexico" },
"jalgaon, in" => { location => "ASI|IN|IN021|JALGAON", country => "India" },
"jalib as-suyuh, kw" => { location => "MEA|KW|KU000|JALIB AS-SUYUH", country => "Kuwait" },
"jalna, in" => { location => "ASI|IN|IN021|JALNA", country => "India" },
"jamalpur, bd" => { location => "ASI|BD|BG004|JAMALPUR", country => "Bangladesh" },
"jambi, id" => { location => "ASI|ID|ID010|JAMBI", country => "Indonesia" },
"jamestown, sh" => { location => "AFR|SH|SH000|JAMESTOWN", country => "Saint Helena" },
"jamnagar, in" => { location => "ASI|IN|IN012|JAMNAGAR", country => "India" },
"jamshedpur, in" => { location => "ASI|IN|IN005|JAMSHEDPUR", country => "India" },
"jaragua, br" => { location => "SAM|BR|BR022|JARAGUÁ DO SUL", country => "Brazil" },
"jaranwala, pk" => { location => "ASI|PK|PK007|JARANWALA", country => "Pakistan" },
"jastrzebie, pl" => { location => "EUR|PL|PL012|JASTRZEBIE-ZDRÓJ", country => "Poland" },
"jau, br" => { location => "SAM|BR|BR023|JAÚ", country => "Brazil" },
"jaunpur, in" => { location => "ASI|IN|IN033|JAUNPUR", country => "India" },
"jbeil, lb" => { location => "MEA|LB|LE005|JBEIL", country => "Lebanon" },
"jeddah, sa" => { location => "MEA|SA|SA011|JEDDAH", country => "Saudi Arabia" },
"jefferson city, mo, us" => { location => "NAM|US|MO|JEFFERSON CITY", country => "United States" },
"jequie, br" => { location => "SAM|BR|BR023|JEQUIÉ", country => "Brazil" },
"jerez, es" => { location => "EUR|ES|SP001|JÉREZ DE LA FRONTERA", country => "Spain" },
"jersey city, nj, us" => { location => "NAM|US|NJ|JERSEY CITY", country => "United States" },
"jerusalem, il" => { location => "MEA|IL|IS006|JERUSALEM", country => "Israel" },
"jessore, bd" => { location => "ASI|BD|BG003|JESSORE", country => "Bangladesh" },
"jhang, pk" => { location => "ASI|PK|PK007|JHANG", country => "Pakistan" },
"jhansi, in" => { location => "ASI|IN|IN033|JHANSI", country => "India" },
"jhelum, pk" => { location => "ASI|PK|PK007|JHELUM", country => "Pakistan" },
"jiageda, cn" => { location => "ASI|CN|CH019|JIAGEDA", country => "China" },
"jiamusi, cn" => { location => "ASI|CN|CH011|JIAMUSI", country => "China" },
"jian, cn" => { location => "ASI|CN|CH016|JIAN", country => "China" },
"jiangmen, cn" => { location => "ASI|CN|CH006|JIANGMEN", country => "China" },
"jiangshan, cn" => { location => "ASI|CN|CH001|JIANGSHAN", country => "China" },
"jiangyin, cn" => { location => "ASI|CN|CH004|JIANGYIN", country => "China" },
"jiangyou, cn" => { location => "ASI|CN|CH026|JIANGYOU", country => "China" },
"jiaojiang, cn" => { location => "ASI|CN|CH031|JIAOJIANG", country => "China" },
"jiaozhou, cn" => { location => "ASI|CN|CH023|JIAOZHOU", country => "China" },
"jiaozuo, cn" => { location => "ASI|CN|CH012|JIAOZUO", country => "China" },
"jiaxing, cn" => { location => "ASI|CN|CH031|JIAXING", country => "China" },
"jieshou, cn" => { location => "ASI|CN|CH001|JIESHOU", country => "China" },
"jilin, cn" => { location => "ASI|CN|CH007|JILIN", country => "China" },
"jimma, et" => { location => "AFR|ET|ET000|JIMMA", country => "Ethiopia" },
"jimo, cn" => { location => "ASI|CN|CH023|JIMO", country => "China" },
"jinan, cn" => { location => "ASI|CN|CH007|JINAN", country => "China" },
"jinchang, cn" => { location => "ASI|CN|CH005|JINCHANG", country => "China" },
"jingdezhen, cn" => { location => "ASI|CN|CH016|JINGDEZHEN", country => "China" },
"jingmen, cn" => { location => "ASI|CN|CH004|JINGMEN", country => "China" },
"jingzhou, cn" => { location => "ASI|CN|CH013|JINGZHOU", country => "China" },
"jinhua, cn" => { location => "ASI|CN|CH008|JINHUA", country => "China" },
"jining, cn" => { location => "ASI|CN|CH019|JINING", country => "China" },
"jinja, ug" => { location => "AFR|UG|UG000|JINJA", country => "Uganda" },
"jinshi, cn" => { location => "ASI|CN|CH031|JINSHI", country => "China" },
"jinxi, cn" => { location => "ASI|CN|CH016|JINXI", country => "China" },
"jinzhou, cn" => { location => "ASI|CN|CH018|JINZHOU", country => "China" },
"jishou, cn" => { location => "ASI|CN|CH014|JISHOU", country => "China" },
"jiujiang, cn" => { location => "ASI|CN|CH016|JIUJIANG", country => "China" },
"jiuquan, cn" => { location => "ASI|CN|CH005|JIUQUAN", country => "China" },
"jiutai, cn" => { location => "ASI|CN|CH008|JIUTAI", country => "China" },
"jixi, cn" => { location => "ASI|CN|CH001|JIXI", country => "China" },
"jiyuan, cn" => { location => "ASI|CN|CH012|JIYUAN", country => "China" },
"joao pessoa, br" => { location => "SAM|BR|BR014|JOAO PESSOA", country => "Brazil" },
"jodhpur, in" => { location => "ASI|IN|IN029|JODHPUR", country => "India" },
"joenkoeping, se" => { location => "EUR|SE|SW007|JOENKOEPING", country => "Sweden" },
"joetsu, jp" => { location => "ASI|JP|JA029|JOETSU", country => "Japan" },
"johannesburg, za" => { location => "AFR|ZA|SF004|JOHANNESBURG", country => "South Africa" },
"johore bharu, my" => { location => "ASI|MY|MY001|JOHORE BHARU", country => "Malaysia" },
"joinville, br" => { location => "SAM|BR|BR022|JOINVILLE", country => "Brazil" },
"joliet, il, us" => { location => "NAM|US|IL|JOLIET", country => "United States" },
"jorhat, in" => { location => "ASI|IN|IN004|JORHAT", country => "India" },
"joubertina, za" => { location => "AFR|ZA|SF002|JOUBERTINA", country => "South Africa" },
"juarez, mx" => { location => "NAM|MX|MX015|CIUDAD JUÁREZ", country => "Mexico" },
"juazeiro, br" => { location => "SAM|BR|BR005|JUAZEIRO", country => "Brazil" },
"juazeiro do norte, br" => { location => "SAM|BR|BR006|JUŔZEIRO DO NORTE", country => "Brazil" },
"juba, sd" => { location => "AFR|SD|SU027|JUBA", country => "Sudan" },
"juiz de fora, br" => { location => "SAM|BR|BR012|JUIZ DE FORA", country => "Brazil" },
"juliaca, pe" => { location => "SAM|PE|PE021|JULIACA", country => "Peru" },
"junagadh, in" => { location => "ASI|IN|IN012|JUNAGADH", country => "India" },
"jundiai, br" => { location => "SAM|BR|BR023|JUNDIAÍ", country => "Brazil" },
"juneau, ak, us" => { location => "NAM|US|AK|JUNEAU", country => "United States" },
"kabul, af" => { location => "ASI|AF|AF013|KABUL", country => "Afghanistan" },
"kabwe, zm" => { location => "AFR|ZM|ZA007|KABWE", country => "Zambia" },
"kadhimain, iq" => { location => "MEA|IQ|IZ010|KADHIMAIN", country => "Iraq" },
"kadoma, jp" => { location => "ASI|JP|JA033|KADOMA", country => "Japan" },
"kaduna, ng" => { location => "AFR|NG|NI019|KADUNA", country => "Nigeria" },
"kaesong, kp" => { location => "ASI|KR|KS001|KAESONG", country => "North Korea" },
"kagoshima, jp" => { location => "ASI|JP|JA018|KAGOSHIMA", country => "Japan" },
"kahramanmaras, tr" => { location => "MEA|TR|TU042|KAHRAMANMARAS", country => "Turkey" },
"kaifeng, cn" => { location => "ASI|CN|CH012|KAIFENG", country => "China" },
"kaili, cn" => { location => "ASI|CN|CH008|KAILI", country => "China" },
"kairouan, tn" => { location => "AFR|TN|TS005|KAIROUAN", country => "Tunisia" },
"kaiserslautern, de" => { location => "EUR|DE|GM012|KAISERSLAUTERN", country => "Germany" },
"kaiyuan, cn" => { location => "ASI|CN|CH018|KAIYUAN", country => "China" },
"kakamas, za" => { location => "AFR|ZA|SF008|KAKAMAS", country => "South Africa" },
"kakamigahara, jp" => { location => "ASI|JP|JA009|KAKAMIGAHARA", country => "Japan" },
"kakinada, in" => { location => "ASI|IN|IN002|KAKINADA", country => "India" },
"kakogawa, jp" => { location => "ASI|JP|JA013|KAKOGAWA", country => "Japan" },
"kaliningrad, ru" => { location => "ASI|RU|RS025|KALININGRAD", country => "Russia" },
"kalisz, pl" => { location => "EUR|PL|PL015|KALISZ", country => "Poland" },
"kalmar, se" => { location => "EUR|SE|SW008|KALMAR", country => "Sweden" },
"kaluga, ru" => { location => "ASI|RU|RS027|KALUGA", country => "Russia" },
"kalyan, in" => { location => "ASI|IN|IN021|KALYAN", country => "India" },
"kamagaya, jp" => { location => "ASI|JP|JA004|KAMAGAYA", country => "Japan" },
"kamarhati, in" => { location => "ASI|IN|IN036|KAMARHATI", country => "India" },
"kamenskiy, ru" => { location => "ASI|RU|RS075|KAMENSK-URALSKY", country => "Russia" },
"kamieskroon, za" => { location => "AFR|ZA|SF008|KAMIESKROON", country => "South Africa" },
"kamoke, pk" => { location => "ASI|PK|PK007|KAMOKE", country => "Pakistan" },
"kampala, ug" => { location => "AFR|UG|UG000|KAMPALA", country => "Uganda" },
"kampong cham, kh" => { location => "ASI|KH|CB003|KAMPONG CHAM", country => "Cambodia" },
"kamptee, in" => { location => "ASI|IN|IN021|KAMPTEE", country => "India" },
"kananga, cd" => { location => "AFR|CD|CG004|KANANGA", country => "Kinshasa" },
"kanazawa, jp" => { location => "ASI|JP|JA015|KANAZAWA", country => "Japan" },
"kanchanaburi, th" => { location => "ASI|TH|TH014|KANCHANABURI", country => "Thailand" },
"kanchipuram, in" => { location => "ASI|IN|IN031|KANCHIPURAM", country => "India" },
"kanchrapara, in" => { location => "ASI|IN|IN036|KANCHRAPARA", country => "India" },
"kandahar, af" => { location => "ASI|AF|AF014|KANDAHAR", country => "Afghanistan" },
"kandy, lk" => { location => "ASI|LK|CE001|KANDY", country => "Sri Lanka" },
"kanggye, kp" => { location => "ASI|KP|KN001|KANGGYE", country => "North Korea" },
"kangnung, kr" => { location => "ASI|KR|KS007|KANGNUNG", country => "South Korea" },
"kanhangad, in" => { location => "ASI|IN|IN018|KANHANGAD", country => "India" },
"kannur, in" => { location => "ASI|IN|IN018|KANNUR", country => "India" },
"kano, ng" => { location => "AFR|NG|NI020|KANO", country => "Nigeria" },
"kanpur, in" => { location => "ASI|IN|IN033|KANPUR", country => "India" },
"kansas city, mo, us" => { location => "NAM|US|MO|KANSAS CITY", country => "United States" },
"kansas city, ks, us" => { location => "NAM|US|KS|KANSAS CITY", country => "United States" },
"kansk, ru" => { location => "ASI|RU|RS041|KANSK", country => "Russia" },
"kanye, bw" => { location => "AFR|BW|BC000|KANYE", country => "Botswana" },
"kao-hsiung, tw" => { location => "ASI|TW|TW006|KAO-HSIUNG", country => "Taiwan" },
"kaolack, sn" => { location => "AFR|SN|SG004|KAOLACK", country => "Senegal" },
"karabuk, tr" => { location => "MEA|TR|TU000|KARABUK", country => "Turkey" },
"karachi, pk" => { location => "ASI|PK|PK008|KARACHI", country => "Pakistan" },
"karaganda, kz" => { location => "ASI|KZ|KZ000|KARAGANDA", country => "Kazakhstan" },
"karaikkudi, in" => { location => "ASI|IN|IN031|KARAIKKUDI", country => "India" },
"karaj, ir" => { location => "MEA|IR|IR026|KARAJ", country => "Iran" },
"karaman, tr" => { location => "MEA|TR|TU044|KARAMAN", country => "Turkey" },
"karimnagar, in" => { location => "ASI|IN|IN002|KARIMNAGAR", country => "India" },
"kariya, jp" => { location => "ASI|JP|JA001|KARIYA", country => "Japan" },
"karlskrona, se" => { location => "EUR|SE|SW001|KARLSKRONA", country => "Sweden" },
"karlsruhe, de" => { location => "EUR|DE|GM001|KARLSRUHE", country => "Germany" },
"karlstad, se" => { location => "EUR|SE|SW017|KARLSTAD", country => "Sweden" },
"karnal, in" => { location => "ASI|IN|IN013|KARNAL", country => "India" },
"karradah sharqiyah, iq" => { location => "MEA|IQ|IZ010|KARRADAH SHARQIYAH", country => "Iraq" },
"karshi, uz" => { location => "ASI|UZ|UZ008|KARSHI", country => "Uzbekistan" },
"karur, in" => { location => "ASI|IN|IN031|KARUR", country => "India" },
"kasane, bw" => { location => "AFR|BW|BC000|KASANE", country => "Botswana" },
"kashan, ir" => { location => "MEA|IR|IR006|KASHAN", country => "Iran" },
"kashi, cn" => { location => "ASI|CN|CH028|KASHI", country => "China" },
"kashihara, jp" => { location => "ASI|JP|JA028|KASHIHARA", country => "Japan" },
"kashiwa, jp" => { location => "ASI|JP|JA004|KASHIWA", country => "Japan" },
"kassala, sd" => { location => "AFR|SD|SU029|KASSALA", country => "Sudan" },
"kassel, de" => { location => "EUR|DE|GM007|KASSEL", country => "Germany" },
"kasukabe, jp" => { location => "ASI|JP|JA035|KASUKABE", country => "Japan" },
"kasur, pk" => { location => "ASI|PK|PK007|KASUR", country => "Pakistan" },
"kathmandu, np" => { location => "ASI|NP|NP000|KATHMANDU", country => "Nepal" },
"katihar, in" => { location => "ASI|IN|IN005|KATIHAR", country => "India" },
"katowice, pl" => { location => "EUR|PL|PL012|KATOWICE", country => "Poland" },
"kaunas, lt" => { location => "EUR|LT|LH013|KAUNAS", country => "Lithuania" },
"kawachinagano, jp" => { location => "ASI|JP|JA033|KAWACHINAGANO", country => "Japan" },
"kawagoe, jp" => { location => "ASI|JP|JA035|KAWAGOE", country => "Japan" },
"kawaguchi, jp" => { location => "ASI|JP|JA035|KAWAGUCHI", country => "Japan" },
"kawasaki, jp" => { location => "ASI|JP|JA019|KAWASAKI", country => "Japan" },
"kayseri, tr" => { location => "MEA|TR|TU047|KAYSERI", country => "Turkey" },
"kazan, ru" => { location => "ASI|RU|RS077|KAZAN", country => "Russia" },
"kecskemet, hu" => { location => "EUR|HU|HU001|KECSKEMÉT", country => "Hungary" },
"kediri, id" => { location => "ASI|ID|ID002|KEDIRI", country => "Indonesia" },
"keelung, tw" => { location => "ASI|TW|TW018|KEELUNG", country => "Taiwan" },
"kelamayi, cn" => { location => "ASI|CN|CH028|KELAMAYI", country => "China" },
"kelowna, ca" => { location => "NAM|CA|BC|KELOWNA", country => "Canada" },
"kemerovo, ru" => { location => "ASI|RU|RS031|KEMEROVO", country => "Russia" },
"kempton park, za" => { location => "AFR|ZA|SF004|KEMPTON PARK", country => "South Africa" },
"kena, eg" => { location => "AFR|EG|EG024|KENA", country => "Egypt" },
"kenitra, ma" => { location => "AFR|MA|MO019|KÉNITRA", country => "Morocco" },
"kensington and chelsea, uk" => { location => "EUR|UK|UK001|KENSINGTON AND CHELSEA", country => "United Kingdom" },
"kerbala, iq" => { location => "MEA|IQ|IZ014|KERBALA", country => "Iraq" },
"keriat shmona, il" => { location => "MEA|IL|IS003|KERIAT SHMONA", country => "Israel" },
"kerman, ir" => { location => "MEA|IR|IR013|KERMAN", country => "Iran" },
"kermanshah, ir" => { location => "MEA|IR|IR014|KERMANSHAH", country => "Iran" },
"kertch, ua" => { location => "EUR|UA|UP011|KERTCH", country => "Ukraine" },
"khabarovsk, ru" => { location => "ASI|RU|RS032|KHABAROVSK", country => "Russia" },
"khairpur, pk" => { location => "ASI|PK|PK008|KHAIRPUR", country => "Pakistan" },
"khammam, in" => { location => "ASI|IN|IN002|KHAMMAM", country => "India" },
"khandwa, in" => { location => "ASI|IN|IN020|KHANDWA", country => "India" },
"khanewal, pk" => { location => "ASI|PK|PK007|KHANEWAL", country => "Pakistan" },
"khanpur, pk" => { location => "ASI|PK|PK007|KHANPUR", country => "Pakistan" },
"khanty-mansiysk, ru" => { location => "ASI|RU|RS034|KHANTY-MANSIYSK", country => "Russia" },
"kharagpur, in" => { location => "ASI|IN|IN005|KHARAGPUR", country => "India" },
"khartoum, sd" => { location => "AFR|SD|SU005|KHARTOUM", country => "Sudan" },
"khartoum north, sd" => { location => "AFR|SD|SU005|KHARTOUM NORTH", country => "Sudan" },
"kherson, ua" => { location => "EUR|UA|UP007|KHERSON", country => "Ukraine" },
"khimki, ru" => { location => "ASI|RU|RS052|KHIMKI", country => "Russia" },
"khmelnitsky, ua" => { location => "EUR|UA|UP008|KHMELNITSKY", country => "Ukraine" },
"khon kaen, th" => { location => "ASI|TH|TH015|KHON KAEN", country => "Thailand" },
"khouribga, ma" => { location => "AFR|MA|MO022|KHOURIBGA", country => "Morocco" },
"khulna, bd" => { location => "ASI|BD|BG003|KHULNA", country => "Bangladesh" },
"kiel, de" => { location => "EUR|DE|GM016|KIEL", country => "Germany" },
"kielce, pl" => { location => "EUR|PL|PL013|KIELCE", country => "Poland" },
"kiev, ua" => { location => "EUR|UA|UP009|KIEV", country => "Ukraine" },
"kigali, rw" => { location => "AFR|RW|RW009|KIGALI", country => "Rwanda" },
"kikwit, cd" => { location => "AFR|CD|CG001|KIKWIT", country => "Kinshasa" },
"kimberley, za" => { location => "AFR|ZA|SF008|KIMBERLEY", country => "South Africa" },
"kimhae, kr" => { location => "ASI|KR|KS011|KIMHAE", country => "South Korea" },
"king williams town, za" => { location => "AFR|ZA|SF002|KING WILLIAMS TOWN", country => "South Africa" },
"kings lynn and west norfolk, uk" => { location => "EUR|UK|UK001|KINGS LYNN AND WEST NORFOLK", country => "United Kingdom" },
"kingston, ca" => { location => "NAM|CA|ON|KINGSTON", country => "Canada" },
"kingston, jm" => { location => "CAC|JM|JM000|KINGSTON", country => "Jamaica" },
"kingston-upon-hull, uk" => { location => "EUR|UK|UK001|KINGSTON-UPON-HULL", country => "United Kingdom" },
"kingston-upon-thames, uk" => { location => "EUR|UK|UK001|KINGSTON-UPON-THAMES", country => "United Kingdom" },
"kingstown, vc" => { location => "CAC|VC|VC005|KINGSTOWN", country => "Saint Vincent And The Grenadines" },
"kinshasa, cd" => { location => "AFR|CD|CG007|KINSHASA", country => "Democratic Republic of Congo" },
"kirikkale, tr" => { location => "MEA|TR|TU000|KIRIKKALE", country => "Turkey" },
"kirklees, uk" => { location => "EUR|UK|UK001|KIRKLEES", country => "United Kingdom" },
"kirkuk, iq" => { location => "MEA|IQ|IZ008|KIRKUK", country => "Iraq" },
"kirov, ru" => { location => "ASI|RU|RS035|KIROV", country => "Russia" },
"kirovakan, am" => { location => "ASI|AM|AM006|KIROVAKAN", country => "Armenia" },
"kirovograd, ua" => { location => "EUR|UA|UP010|KIROVOGRAD", country => "Ukraine" },
"kiruna, se" => { location => "EUR|SE|SW010|KIRUNA", country => "Sweden" },
"kiryu, jp" => { location => "ASI|JP|JA010|KIRYU", country => "Japan" },
"kisangani, cd" => { location => "AFR|CD|CG010|KISANGANI", country => "Kinshasa" },
"kisarazu, jp" => { location => "ASI|JP|JA004|KISARAZU", country => "Japan" },
"kiselevsk, ru" => { location => "ASI|RU|RS031|KISELEVSK", country => "Russia" },
"kishinev, md" => { location => "EUR|MD|MD000|KISHINEV", country => "Moldova" },
"kishiwada, jp" => { location => "ASI|JP|JA033|KISHIWADA", country => "Japan" },
"kislovodsk, ru" => { location => "ASI|RU|RS074|KISLOVODSK", country => "Russia" },
"kisumu, ke" => { location => "AFR|KE|KE006|KISUMU", country => "Kenya" },
"kitakyushu, jp" => { location => "ASI|JP|JA007|KITAKYUSHU", country => "Japan" },
"kitale, ke" => { location => "AFR|KE|KE007|KITALE", country => "Kenya" },
"kitami, jp" => { location => "ASI|JP|JA012|KITAMI", country => "Japan" },
"kitchener, ca" => { location => "NAM|CA|ON|KITCHENER", country => "Canada" },
"kitwe, zm" => { location => "AFR|ZM|ZA001|KITWE", country => "Zambia" },
"klaipeda, lt" => { location => "EUR|LT|LH017|KLAIPEDA", country => "Lithuania" },
"klang, my" => { location => "ASI|MY|MY013|KLANG", country => "Malaysia" },
"klerksdorp, za" => { location => "AFR|ZA|SF007|KLERKSDORP", country => "South Africa" },
"knoxville, tn, us" => { location => "NAM|US|TN|KNOXVILLE", country => "United States" },
"knysna, za" => { location => "AFR|ZA|SF011|KNYSNA", country => "South Africa" },
"kobe, jp" => { location => "ASI|JP|JA013|KOBE", country => "Japan" },
"koblenz, de" => { location => "EUR|DE|GM012|KOBLENZ", country => "Germany" },
"kocaeli, tr" => { location => "MEA|TR|TU052|KOCAELI", country => "Turkey" },
"kochi, in" => { location => "ASI|IN|IN018|KOCHI", country => "India" },
"kochi, jp" => { location => "ASI|JP|JA038|KOCHI", country => "Japan" },
"kodaira, jp" => { location => "ASI|JP|JA041|KODAIRA", country => "Japan" },
"koege, dk" => { location => "EUR|DK|DA010|KOEGE", country => "Denmark" },
"koforidua, gh" => { location => "AFR|GH|GH000|KOFORIDUA", country => "Ghana" },
"kofu, jp" => { location => "ASI|JP|JA047|KOFU", country => "Japan" },
"koganei, jp" => { location => "ASI|JP|JA041|KOGANEI", country => "Japan" },
"kohat, pk" => { location => "ASI|PK|PK005|KOHAT", country => "Pakistan" },
"kokand, uz" => { location => "ASI|UZ|UZ003|KOKAND", country => "Uzbekistan" },
"kokstad, za" => { location => "AFR|ZA|SF005|KOKSTAD", country => "South Africa" },
"kokubunji, jp" => { location => "ASI|JP|JA041|KOKUBUNJI", country => "Japan" },
"kolar, in" => { location => "ASI|IN|IN017|KOLAR", country => "India" },
"kolar gold fields, in" => { location => "ASI|IN|IN017|KOLAR GOLD FIELDS", country => "India" },
"kolding, dk" => { location => "EUR|DK|DA014|KOLDING", country => "Denmark" },
"kolhapur, in" => { location => "ASI|IN|IN021|KOLHAPUR", country => "India" },
"kollam, in" => { location => "ASI|IN|IN018|KOLLAM", country => "India" },
"koln, de" => { location => "EUR|DE|GM011|KÖLN", country => "Germany" },
"kolomna, ru" => { location => "ASI|RU|RS010|KOLOMNA", country => "Russia" },
"kolwezi, cd" => { location => "AFR|CD|CG006|KOLWEZI", country => "Kinshasa" },
"komaki, jp" => { location => "ASI|JP|JA001|KOMAKI", country => "Japan" },
"komatipoort, za" => { location => "AFR|ZA|SF006|KOMATIPOORT", country => "South Africa" },
"komatsu, jp" => { location => "ASI|JP|JA015|KOMATSU", country => "Japan" },
"komsomolsk-na-amure, ru" => { location => "ASI|RU|RS032|KOMSOMOLSK-NA-AMURE", country => "Russia" },
"konya, tr" => { location => "MEA|TR|TU053|KONYA", country => "Turkey" },
"korba, in" => { location => "ASI|IN|IN020|KORBA", country => "India" },
"kord-shahr, ir" => { location => "MEA|IR|IR005|KORD-SHAHR", country => "Iran" },
"koriyama, jp" => { location => "ASI|JP|JA008|KORIYAMA", country => "Japan" },
"korolev, ru" => { location => "ASI|RU|RS051|KOROLEV", country => "Russia" },
"koshigaya, jp" => { location => "ASI|JP|JA035|KOSHIGAYA", country => "Japan" },
"kosice, sk" => { location => "EUR|SK|LO003|KOSICE", country => "Slovakia" },
"kosti, sd" => { location => "AFR|SD|SU028|KOSTI", country => "Sudan" },
"kostroma, ru" => { location => "ASI|RU|RS039|KOSTROMA", country => "Russia" },
"koszalin, pl" => { location => "EUR|PL|PL016|KOSZALIN", country => "Poland" },
"kota, in" => { location => "ASI|IN|IN029|KOTA", country => "India" },
"kota bahru, my" => { location => "ASI|MY|MY003|KOTA BAHRU", country => "Malaysia" },
"kota kinabalu, my" => { location => "ASI|MY|MY011|KOTA KINABALU", country => "Malaysia" },
"kotabaru, id" => { location => "ASI|ID|ID011|KOTABARU", country => "Indonesia" },
"kothagudem, in" => { location => "ASI|IN|IN002|KOTHAGUDEM", country => "India" },
"kottayam, in" => { location => "ASI|IN|IN018|KOTTAYAM", country => "India" },
"kovrov, ru" => { location => "ASI|RU|RS087|KOVROV", country => "Russia" },
"kozhikode, in" => { location => "ASI|IN|IN018|KOZHIKODE", country => "India" },
"krageroe, no" => { location => "EUR|NO|NO016|KRAGEROE", country => "Norway" },
"kragujevac, cs" => { location => "EUR|CS|YI003|KRAGUJEVAC", country => "Serbia" },
"krakow, pl" => { location => "EUR|PL|PL006|KRAKÓW", country => "Poland" },
"kraljevo, cs" => { location => "EUR|CS|YI003|KRALJEVO", country => "Serbia" },
"kramatorsk, ua" => { location => "EUR|UA|UP004|KRAMATORSK", country => "Ukraine" },
"krasnodar, ru" => { location => "ASI|RU|RS040|KRASNODAR", country => "Russia" },
"krasnoyarsk, ru" => { location => "ASI|RU|RS041|KRASNOYARSK", country => "Russia" },
"krefeld, de" => { location => "EUR|DE|GM011|KREFELD", country => "Germany" },
"krishnanagar, in" => { location => "ASI|IN|IN036|KRISHNANAGAR", country => "India" },
"kristiansand, no" => { location => "EUR|NO|NO018|KRISTIANSAND", country => "Norway" },
"kristianstad, se" => { location => "EUR|SE|SW013|KRISTIANSTAD", country => "Sweden" },
"kristiansund, no" => { location => "EUR|NO|NO007|KRISTIANSUND", country => "Norway" },
"kroonstad, za" => { location => "AFR|ZA|SF003|KROONSTAD", country => "South Africa" },
"krugersdorp, za" => { location => "AFR|ZA|SF004|KRUGERSDORP", country => "South Africa" },
"krusevac, cs" => { location => "EUR|CS|YI003|KRUSEVAC", country => "Serbia" },
"kuala lumpur, my" => { location => "ASI|MY|MY015|KUALA LUMPUR", country => "Malaysia" },
"kuala terengganu, my" => { location => "ASI|MY|MY014|KUALA TERENGGANU", country => "Malaysia" },
"kuantan, my" => { location => "ASI|MY|MY007|KUANTAN", country => "Malaysia" },
"kuching, my" => { location => "ASI|MY|MY012|KUCHING", country => "Malaysia" },
"kumagaya, jp" => { location => "ASI|JP|JA035|KUMAGAYA", country => "Japan" },
"kumamoto, jp" => { location => "ASI|JP|JA021|KUMAMOTO", country => "Japan" },
"kumasi, gh" => { location => "AFR|GH|GH010|KUMASI", country => "Ghana" },
"kumbakonam, in" => { location => "ASI|IN|IN031|KUMBAKONAM", country => "India" },
"kunming, cn" => { location => "ASI|CN|CH030|KUNMING", country => "China" },
"kunsan, kr" => { location => "ASI|KR|KS004|KUNSAN", country => "South Korea" },
"kunshan, cn" => { location => "ASI|CN|CH001|KUNSHAN", country => "China" },
"kurashiki, jp" => { location => "ASI|JP|JA031|KURASHIKI", country => "Japan" },
"kure, jp" => { location => "ASI|JP|JA011|KURE", country => "Japan" },
"kurgan, ru" => { location => "ASI|RU|RS043|KURGAN", country => "Russia" },
"kurnool, in" => { location => "ASI|IN|IN002|KURNOOL", country => "India" },
"kursk, ru" => { location => "ASI|RU|RS044|KURSK", country => "Russia" },
"kuruman, za" => { location => "AFR|ZA|SF008|KURUMAN", country => "South Africa" },
"kurume, jp" => { location => "ASI|JP|JA007|KURUME", country => "Japan" },
"kusatsu, jp" => { location => "ASI|JP|JA010|KUSATSU", country => "Japan" },
"kushiro, jp" => { location => "ASI|JP|JA012|KUSHIRO", country => "Japan" },
"kustanai, kz" => { location => "ASI|KZ|KZ012|KUSTANAI", country => "Kazakhstan" },
"kut, iq" => { location => "MEA|IQ|IZ018|KUT", country => "Iraq" },
"kutaisi, ge" => { location => "ASI|GE|GG000|KUTAISI", country => "Georgia" },
"kuwait city, kw" => { location => "MEA|KW|KU000|KUWAIT CITY", country => "Kuwait" },
"kuwana, jp" => { location => "ASI|JP|JA023|KUWANA", country => "Japan" },
"kwangchu, kr" => { location => "ASI|KR|KS008|KWANGCHU", country => "South Korea" },
"kyong ju, kr" => { location => "ASI|KR|KS010|KYONG JU", country => "South Korea" },
"kyoto, jp" => { location => "ASI|JP|JA022|KYOTO", country => "Japan" },
"kyzylorda, kz" => { location => "ASI|KZ|KZ013|KYZYLORDA", country => "Kazakhstan" },
"la habana, cu" => { location => "CAC|CU|CU004|LA HABANA", country => "Cuba" },
"la laguna, es" => { location => "EUR|ES|SP018|LA LAGUNA", country => "Spain" },
"la paz, bo" => { location => "SAM|BO|BL004|LA PAZ", country => "Bolivia" },
"la paz, mx" => { location => "NAM|MX|MX003|LA PAZ", country => "Mexico" },
"la plata, ar" => { location => "SAM|AR|AR001|LA PLATA", country => "Argentina" },
"la serena, cl" => { location => "SAM|CL|CI006|LA SERENA", country => "Chile" },
"la victoria, ve" => { location => "SAM|VE|VE004|LA VICTORIA", country => "Venezuela" },
"ladysmith, za" => { location => "AFR|ZA|SF005|LADYSMITH", country => "South Africa" },
"lafayette, la, us" => { location => "NAM|US|LA|LAFAYETTE", country => "United States" },
"lages, br" => { location => "SAM|BR|BR027|LAGES", country => "Brazil" },
"lagos, ng" => { location => "AFR|NG|NI024|LAGOS", country => "Nigeria" },
"lagunillas, ve" => { location => "SAM|VE|VE015|LAGUNILLAS", country => "Venezuela" },
"lahore, pk" => { location => "ASI|PK|PK007|LAHORE", country => "Pakistan" },
"laiwu, cn" => { location => "ASI|CN|CH016|LAIWU", country => "China" },
"laiyang, cn" => { location => "ASI|CN|CH023|LAIYANG", country => "China" },
"laizhou, cn" => { location => "ASI|CN|CH004|LAIZHOU", country => "China" },
"lakewood, co, us" => { location => "NAM|US|CO|LAKEWOOD", country => "United States" },
"lalitpur, np" => { location => "ASI|NP|NP000|LALITPUR", country => "Nepal" },
"lambeth, uk" => { location => "EUR|UK|UK001|LAMBETH", country => "United Kingdom" },
"lancaster, uk" => { location => "EUR|UK|UK001|LANCASTER", country => "United Kingdom" },
"lancaster, ca, us" => { location => "NAM|US|CA|LANCASTER", country => "United States" },
"langebaan, za" => { location => "AFR|ZA|SF011|LANGEBAAN", country => "South Africa" },
"langfang, cn" => { location => "ASI|CN|CH010|LANGFANG", country => "China" },
"lansing, mi, us" => { location => "NAM|US|MI|LANSING", country => "United States" },
"lanus, ar" => { location => "SAM|AR|AR001|LANUS", country => "Argentina" },
"lanxi, cn" => { location => "ASI|CN|CH001|LANXI", country => "China" },
"lanzhou, cn" => { location => "ASI|CN|CH005|LANZHOU", country => "China" },
"laohekou, cn" => { location => "ASI|CN|CH013|LAOHEKOU", country => "China" },
"laramie, wy, us" => { location => "NAM|US|WY|LARAMIE", country => "United States" },
"laredo, tx, us" => { location => "NAM|US|TX|LAREDO", country => "United States" },
"larissa, gr" => { location => "EUR|GR|GR034|LARISSA", country => "Greece" },
"larkana, pk" => { location => "ASI|PK|PK008|LARKANA", country => "Pakistan" },
"larvik, no" => { location => "EUR|NO|NO019|LARVIK", country => "Norway" },
"las palmas de gran canaria, es" => { location => "EUR|ES|SP018|LAS PALMAS DE GRAN CANARIA", country => "Spain" },
"las tunas, cu" => { location => "CAC|CU|CU010|LAS TUNAS", country => "Cuba" },
"las vegas, nv, us" => { location => "NAM|US|NV|LAS VEGAS", country => "United States" },
"latina, it" => { location => "EUR|IT|IT007|LATINA", country => "Italy" },
"lattakia, sy" => { location => "MEA|SY|SY002|LATTAKIA", country => "Syria" },
"lausanne, ch" => { location => "EUR|CH|SZ024|LAUSANNE", country => "Switzerland" },
"laval, ca" => { location => "NAM|CA|QC|LAVAL", country => "Canada" },
"le havre, fr" => { location => "EUR|FR|FR011|LE HAVRE", country => "France" },
"le mans, fr" => { location => "EUR|FR|FR018|LE MANS", country => "France" },
"leeds, uk" => { location => "EUR|UK|UK001|LEEDS", country => "United Kingdom" },
"leganes, es" => { location => "EUR|ES|SP013|LEGANÉS", country => "Spain" },
"legaspi, ph" => { location => "ASI|PH|RP067|LEGASPI", country => "Philippines" },
"legnica, pl" => { location => "EUR|PL|PL001|LEGNICA", country => "Poland" },
"leicester, uk" => { location => "EUR|UK|UK001|LEICESTER", country => "United Kingdom" },
"leiden, nl" => { location => "EUR|NL|NL012|LEIDEN", country => "Netherlands" },
"leipzig, de" => { location => "EUR|DE|GM014|LEIPZIG", country => "Germany" },
"leiria, pt" => { location => "EUR|PT|PO011|LEIRIA", country => "Portugal" },
"leiyang, cn" => { location => "ASI|CN|CH014|LEIYANG", country => "China" },
"leling, cn" => { location => "ASI|CN|CH023|LELING", country => "China" },
"lengshuijiang, cn" => { location => "ASI|CN|CH014|LENGSHUIJIANG", country => "China" },
"lengshuitan, cn" => { location => "ASI|CN|CH014|LENGSHUITAN", country => "China" },
"leninakan, am" => { location => "ASI|AM|AM007|LENINAKAN", country => "Armenia" },
"leon, mx" => { location => "NAM|MX|MX011|LEÓN", country => "Mexico" },
"leon, ni" => { location => "CAC|NI|NU008|LEON", country => "Nicaragua" },
"leon, es" => { location => "EUR|ES|SP007|LEÓN", country => "Spain" },
"lephalale, za" => { location => "AFR|ZA|SF009|LEPHALALE", country => "South Africa" },
"leshan, cn" => { location => "ASI|CN|CH026|LESHAN", country => "China" },
"leskovac, cs" => { location => "EUR|CS|YI003|LESKOVAC", country => "Serbia" },
"leverkusen, de" => { location => "EUR|DE|GM011|LEVERKUSEN", country => "Germany" },
"levubu, za" => { location => "AFR|ZA|SF009|LEVUBU", country => "South Africa" },
"lewisham, uk" => { location => "EUR|UK|UK001|LEWISHAM", country => "United Kingdom" },
"lexington, ky, us" => { location => "NAM|US|KY|LEXINGTON", country => "United States" },
"lhasa, cn" => { location => "ASI|CN|CH029|LHASA", country => "China" },
"lianyuan, cn" => { location => "ASI|CN|CH014|LIANYUAN", country => "China" },
"lianyungang, cn" => { location => "ASI|CN|CH015|LIANYUNGANG", country => "China" },
"liaocheng, cn" => { location => "ASI|CN|CH023|LIAOCHENG", country => "China" },
"liaoyang, cn" => { location => "ASI|CN|CH018|LIAOYANG", country => "China" },
"libreville, ga" => { location => "AFR|GA|GB001|LIBREVILLE", country => "Gabon" },
"lichinga, mz" => { location => "AFR|MZ|MZ007|LICHINGA", country => "Mozambique" },
"lichtenburg, za" => { location => "AFR|ZA|SF007|LICHTENBURG", country => "South Africa" },
"lida, by" => { location => "EUR|BY|BO003|LIDA", country => "Belarus" },
"liege, be" => { location => "EUR|BE|BE005|LIČGE", country => "Belgium" },
"likasi, cd" => { location => "AFR|CD|CG006|LIKASI", country => "Kinshasa" },
"lille, fr" => { location => "EUR|FR|FR017|LILLE", country => "France" },
"lillehammer, no" => { location => "EUR|NO|NO010|LILLEHAMMER", country => "Norway" },
"lilongwe, mw" => { location => "AFR|MW|MI000|LILONGWE", country => "Malawi" },
"lima, pe" => { location => "SAM|PE|PE015|LIMA", country => "Peru" },
"limassol, cy" => { location => "MEA|CY|CY004|LIMASSOL", country => "Cyprus" },
"limeira, br" => { location => "SAM|BR|BR023|LIMEIRA", country => "Brazil" },
"limoges, fr" => { location => "EUR|FR|FR012|LIMOGES", country => "France" },
"lincoln, ne, us" => { location => "NAM|US|NE|LINCOLN", country => "United States" },
"linhares, br" => { location => "SAM|BR|BR008|LINHARES", country => "Brazil" },
"linkoeping, se" => { location => "EUR|SE|SW012|LINKOEPING", country => "Sweden" },
"linyi, cn" => { location => "ASI|CN|CH023|LINYI", country => "China" },
"linz, at" => { location => "EUR|AT|AU004|LINZ", country => "Austria" },
"lipa, ph" => { location => "ASI|PH|RP069|LIPA", country => "Philippines" },
"lipetsk, ru" => { location => "ASI|RU|RS046|LIPETSK", country => "Russia" },
"lira, ug" => { location => "AFR|UG|UG000|LIRA", country => "Uganda" },
"lisbon, pt" => { location => "EUR|PT|PO012|LISBOA", country => "Portugal" },
"lisburn, uk" => { location => "EUR|UK|UK002|LISBURN", country => "United Kingdom" },
"lishui, cn" => { location => "ASI|CN|CH031|LISHUI", country => "China" },
"little rock, ar, us" => { location => "NAM|US|AR|LITTLE ROCK", country => "United States" },
"liuzhou, cn" => { location => "ASI|CN|CH007|LIUZHOU", country => "China" },
"liverpool, uk" => { location => "EUR|UK|UK001|LIVERPOOL", country => "United Kingdom" },
"livonia, mi, us" => { location => "NAM|US|MI|LIVONIA", country => "United States" },
"livorno, it" => { location => "EUR|IT|IT016|LIVORNO", country => "Italy" },
"ljubljana, si" => { location => "EUR|SI|SI000|LJUBLJANA", country => "Slovenia" },
"lleida, es" => { location => "EUR|ES|SP008|LLEIDA", country => "Spain" },
"lobito, ao" => { location => "AFR|AO|AO007|LOBITO", country => "Angola" },
"lodz, pl" => { location => "EUR|PL|PL003|LÓDZ", country => "Poland" },
"loeriesfontein, za" => { location => "AFR|ZA|SF008|LOERIESFONTEIN", country => "South Africa" },
"lofoten, no" => { location => "EUR|NO|NO009|LOFOTEN", country => "Norway" },
"logrono, es" => { location => "EUR|ES|SP012|LOGROŃO", country => "Spain" },
"loja, ec" => { location => "SAM|EC|EC012|LOJA", country => "Ecuador" },
"lomas de zamora, ar" => { location => "SAM|AR|AR001|LOMAS DE ZAMORA", country => "Argentina" },
"lome, tg" => { location => "AFR|TG|TO000|LOME", country => "Togo" },
"london, ca" => { location => "NAM|CA|ON|LONDON", country => "Canada" },
"london, uk" => { location => "EUR|UK|UK001|LONDON", country => "United Kingdom" },
"londrina, br" => { location => "SAM|BR|BR015|LONDRINA", country => "Brazil" },
"long beach, ca, us" => { location => "NAM|US|CA|LONG BEACH", country => "United States" },
"longueuil, ca" => { location => "NAM|CA|QC|LONGUEUIL", country => "Canada" },
"longxuyen, vn" => { location => "ASI|VN|VM060|LONGXUYEN", country => "Vietnam" },
"lopez mateos, mx" => { location => "NAM|MX|MX015|CIUDAD LÓPEZ MATEOS", country => "Mexico" },
"los angeles, cl" => { location => "SAM|CL|CI005|LOS ANGELES", country => "Chile" },
"los angeles, ca, us" => { location => "NAM|US|CA|LOS ANGELES", country => "United States" },
"los mochis, mx" => { location => "NAM|MX|MX025|LOS MOCHIS", country => "Mexico" },
"los teques, ve" => { location => "SAM|VE|VE016|LOS TEQUES", country => "Venezuela" },
"louisville, ky, us" => { location => "NAM|US|KY|LOUISVILLE", country => "United States" },
"lowell, ma, us" => { location => "NAM|US|MA|LOWELL", country => "United States" },
"luanda, ao" => { location => "AFR|AO|AO006|LUANDA", country => "Angola" },
"luang prabang, la" => { location => "ASI|LA|LA008|LUANG PRABANG", country => "Laos" },
"luanshya, zm" => { location => "AFR|ZM|ZA001|LUANSHYA", country => "Zambia" },
"lubango, ao" => { location => "AFR|AO|AO010|LUBANGO", country => "Angola" },
"lubbock, tx, us" => { location => "NAM|US|TX|LUBBOCK", country => "United States" },
"lubeck, de" => { location => "EUR|DE|GM016|LÜBECK", country => "Germany" },
"lublin, pl" => { location => "EUR|PL|PL004|LUBLIN", country => "Poland" },
"lubumbashi, cd" => { location => "AFR|CD|CG006|LUBUMBASHI", country => "Kinshasa" },
"lucena city, ph" => { location => "ASI|PH|RP070|LUCENA CITY", country => "Philippines" },
"lucknow, in" => { location => "ASI|IN|IN033|LUCKNOW", country => "India" },
"ludhiana, in" => { location => "ASI|IN|IN028|LUDHIANA", country => "India" },
"ludwigshafen, de" => { location => "EUR|DE|GM012|LÜDWIGSHAFEN AM RHEIN", country => "Germany" },
"lugansk, ua" => { location => "EUR|UA|UP012|LUGANSK", country => "Ukraine" },
"luleaa, se" => { location => "EUR|SE|SW010|LULEAA", country => "Sweden" },
"lund, se" => { location => "EUR|SE|SW013|LUND", country => "Sweden" },
"luoyang, cn" => { location => "ASI|CN|CH012|LUOYANG", country => "China" },
"lusaka, zm" => { location => "AFR|ZM|ZA000|LUSAKA", country => "Zambia" },
"luton, uk" => { location => "EUR|UK|UK001|LUTON", country => "United Kingdom" },
"lutsk, ua" => { location => "EUR|UA|UP020|LUTSK", country => "Ukraine" },
"luzern, ch" => { location => "EUR|CH|SZ012|LUZERN", country => "Switzerland" },
"luziania, br" => { location => "SAM|BR|BR027|LUZIÂNIA", country => "Brazil" },
"lvov, ua" => { location => "EUR|UA|UP013|LVOV", country => "Ukraine" },
"lydenburg, za" => { location => "AFR|ZA|SF006|LYDENBURG", country => "South Africa" },
"lyon, fr" => { location => "EUR|FR|FR022|LYON", country => "France" },
"lysychansk, ua" => { location => "EUR|UA|UP012|LYSYCHANSK", country => "Ukraine" },
"maanshan, cn" => { location => "ASI|CN|CH026|MAANSHAN", country => "China" },
"maastricht, nl" => { location => "EUR|NL|NL006|MAASTRICHT", country => "Netherlands" },
"macae, br" => { location => "SAM|BR|BR017|MACAE", country => "Brazil" },
"macao, mo" => { location => "ASI|MO|MC---|MACAO", country => "Macau" },
"macapa, br" => { location => "SAM|BR|BR003|MACAPÁ", country => "Brazil" },
"macclesfield, uk" => { location => "EUR|UK|UK001|MACCLESFIELD", country => "United Kingdom" },
"machakos, ke" => { location => "AFR|KE|KE003|MACHAKOS", country => "Kenya" },
"machala, ec" => { location => "SAM|EC|EC007|MACHALA", country => "Ecuador" },
"macheng, cn" => { location => "ASI|CN|CH001|MACHENG", country => "China" },
"machida, jp" => { location => "ASI|JP|JA041|MACHIDA", country => "Japan" },
"machilipatnam, in" => { location => "ASI|IN|IN002|MACHILIPATNAM", country => "India" },
"madison, wi, us" => { location => "NAM|US|WI|MADISON", country => "United States" },
"madiun, id" => { location => "ASI|ID|ID007|MADIUN", country => "Indonesia" },
"madras, in" => { location => "ASI|IN|IN031|MADRAS", country => "India" },
"madrid, es" => { location => "EUR|ES|SP013|MADRID", country => "Spain" },
"madurai, in" => { location => "ASI|IN|IN031|MADURAI", country => "India" },
"maebashi, jp" => { location => "ASI|JP|JA010|MAEBASHI", country => "Japan" },
"mafikeng, za" => { location => "AFR|ZA|SF007|MAFIKENG", country => "South Africa" },
"magadan, ru" => { location => "ASI|RU|RS047|MAGADAN", country => "Russia" },
"magaliesburg, za" => { location => "AFR|ZA|SF004|MAGALIESBURG", country => "South Africa" },
"magdeburg, de" => { location => "EUR|DE|GM015|MAGDEBURG", country => "Germany" },
"mage, br" => { location => "SAM|BR|BR017|MAGÉ", country => "Brazil" },
"magelang, id" => { location => "ASI|ID|ID004|MAGELANG", country => "Indonesia" },
"magnitogorsk, ru" => { location => "ASI|RU|RS013|MAGNITOGORSK", country => "Russia" },
"mahabad, ir" => { location => "MEA|IR|IR002|MAHABAD", country => "Iran" },
"mahalapye, bw" => { location => "AFR|BW|BC000|MAHALAPYE", country => "Botswana" },
"mahbubnagar, in" => { location => "ASI|IN|IN002|MAHBUBNAGAR", country => "India" },
"mahesana, in" => { location => "ASI|IN|IN012|MAHESANA", country => "India" },
"maicao, co" => { location => "SAM|CO|CO016|MAICAO", country => "Colombia" },
"maidstone, uk" => { location => "EUR|UK|UK001|MAIDSTONE", country => "United Kingdom" },
"maiduguri, ng" => { location => "AFR|NG|NI000|MAIDUGURI", country => "Nigeria" },
"maikop, ru" => { location => "ASI|RU|RS001|MAIKOP", country => "Russia" },
"mainz, de" => { location => "EUR|DE|GM002|MAINZ", country => "Germany" },
"majnoon, iq" => { location => "MEA|IQ|IZ010|MAJNOON", country => "Iraq" },
"makati, ph" => { location => "ASI|PH|RP077|MAKATI", country => "Philippines" },
"makeyevka, ua" => { location => "EUR|UA|UP004|MAKEYEVKA", country => "Ukraine" },
"makhachkala, ru" => { location => "ASI|RU|RS017|MAKHACHKALA", country => "Russia" },
"makkah, sa" => { location => "MEA|SA|SA011|MAKKAH", country => "Saudi Arabia" },
"malabo, gq" => { location => "AFR|GQ|EK000|MALABO", country => "Equatorial Guinea" },
"malaga, es" => { location => "EUR|ES|SP001|MÁLAGA", country => "Spain" },
"malang, id" => { location => "ASI|ID|ID026|MALANG", country => "Indonesia" },
"malatya, tr" => { location => "MEA|TR|TU055|MALATYA", country => "Turkey" },
"malayer, ir" => { location => "MEA|IR|IR010|MALAYER", country => "Iran" },
"male, mv" => { location => "ASI|MV|MV012|MALE", country => "Maldives" },
"malegaon, in" => { location => "ASI|IN|IN021|MALEGAON", country => "India" },
"malindi, ke" => { location => "AFR|KE|KE002|MALINDI", country => "Kenya" },
"malmesbury, za" => { location => "AFR|ZA|SF011|MALMESBURY", country => "South Africa" },
"malmoe, se" => { location => "EUR|SE|SW013|MALMOE", country => "Sweden" },
"mamuno, bw" => { location => "AFR|BW|BC000|MAMUNO", country => "Botswana" },
"manado, id" => { location => "ASI|ID|ID022|MANADO", country => "Indonesia" },
"managua, ni" => { location => "CAC|NI|NU010|MANAGUA", country => "Nicaragua" },
"manama, bh" => { location => "MEA|BH|BA002|MANAMA", country => "Bahrain" },
"manaus, br" => { location => "SAM|BR|BR004|MANAUS", country => "Brazil" },
"manchester, uk" => { location => "EUR|UK|UK001|MANCHESTER", country => "United Kingdom" },
"manchester, nh, us" => { location => "NAM|US|NH|MANCHESTER", country => "United States" },
"mandalay, mm" => { location => "ASI|MM|BM008|MANDALAY", country => "Burma/Myanmar" },
"mandaluyong, ph" => { location => "ASI|PH|RP035|MANDALUYONG", country => "Philippines" },
"mandaue, ph" => { location => "ASI|PH|RP072|MANDAUE", country => "Philippines" },
"mandya, in" => { location => "ASI|IN|IN017|MANDYA", country => "India" },
"mangalore, in" => { location => "ASI|IN|IN017|MANGALORE", country => "India" },
"mangora, pk" => { location => "ASI|PK|PK001|MANGORA", country => "Pakistan" },
"manila, ph" => { location => "ASI|PH|RP073|MANILA", country => "Philippines" },
"manisa, tr" => { location => "MEA|TR|TU056|MANISA", country => "Turkey" },
"manizales, co" => { location => "SAM|CO|CO002|MANIZALES", country => "Colombia" },
"mannheim, de" => { location => "EUR|DE|GM001|MANNHEIM", country => "Germany" },
"mansfield, uk" => { location => "EUR|UK|UK001|MANSFIELD", country => "United Kingdom" },
"mansura, eg" => { location => "AFR|EG|EG001|MANSŰRA", country => "Egypt" },
"manta, ec" => { location => "SAM|EC|EC014|MANTA", country => "Ecuador" },
"manukau, nz" => { location => "OCN|NZ|NZ000|MANUKAU", country => "New Zealand" },
"maoming, cn" => { location => "ASI|CN|CH006|MAOMING", country => "China" },
"maputo, mz" => { location => "AFR|MZ|MZ005|MAPUTO", country => "Mozambique" },
"mar del plata, ar" => { location => "SAM|AR|AR001|MAR DEL PLATA", country => "Argentina" },
"maraba, br" => { location => "SAM|BR|BR013|MARABA", country => "Brazil" },
"maracaibo, ve" => { location => "SAM|VE|VE025|MARACAIBO", country => "Venezuela" },
"maracanau, br" => { location => "SAM|BR|BR006|MARACANAU", country => "Brazil" },
"maracay, ve" => { location => "SAM|VE|VE004|MARACAY", country => "Venezuela" },
"maradi, ne" => { location => "AFR|NE|NG004|MARADI", country => "Niger" },
"marawi, ph" => { location => "ASI|PH|RP074|MARAWI", country => "Philippines" },
"mardan, pk" => { location => "ASI|PK|PK005|MARDAN", country => "Pakistan" },
"mardin, tr" => { location => "MEA|TR|TU047|MARDIN", country => "Turkey" },
"margate, za" => { location => "AFR|ZA|SF005|MARGATE", country => "South Africa" },
"margilan, uz" => { location => "ASI|UZ|UZ003|MARGILAN", country => "Uzbekistan" },
"marilia, br" => { location => "SAM|BR|BR023|MARÍLIA", country => "Brazil" },
"maringa, br" => { location => "SAM|BR|BR015|MARINGÁ", country => "Brazil" },
"mariupol, ua" => { location => "EUR|UA|UP004|MARIUPOL", country => "Ukraine" },
"markham, ca" => { location => "NAM|CA|ON|MARKHAM", country => "Canada" },
"maroua, cm" => { location => "AFR|CM|CM004|MAROUA", country => "Cameroon" },
"marrakech, ma" => { location => "AFR|MA|MO025|MARRAKECH", country => "Morocco" },
"marseille, fr" => { location => "EUR|FR|FR021|MARSEILLE", country => "France" },
"masaka, ug" => { location => "AFR|UG|UG000|MASAKA", country => "Uganda" },
"masan, kr" => { location => "ASI|KR|KS011|MASAN", country => "South Korea" },
"masaya, ni" => { location => "CAC|NI|NU011|MASAYA", country => "Nicaragua" },
"maseru, ls" => { location => "AFR|LS|LT000|MASERU", country => "Lesotho" },
"mashhad, ir" => { location => "MEA|IR|IR015|MASHHAD", country => "Iran" },
"masjed soleyman, ir" => { location => "MEA|IR|IR016|MASJED SOLEYMAN", country => "Iran" },
"matadi, cd" => { location => "AFR|CD|CG002|MATADI", country => "Kinshasa" },
"matamoros, mx" => { location => "NAM|MX|MX028|MATAMOROS", country => "Mexico" },
"matanzas, cu" => { location => "CAC|CU|CU011|MATANZAS", country => "Cuba" },
"mataro, es" => { location => "EUR|ES|SP008|MATARÓ", country => "Spain" },
"mathura, in" => { location => "ASI|IN|IN033|MATHURA", country => "India" },
"matsubara, jp" => { location => "ASI|JP|JA033|MATSUBARA", country => "Japan" },
"matsudo, jp" => { location => "ASI|JP|JA004|MATSUDO", country => "Japan" },
"maturin, ve" => { location => "SAM|VE|VE017|MATURÍN", country => "Venezuela" },
"maua, br" => { location => "SAM|BR|BR023|MAUÁ", country => "Brazil" },
"maun, bw" => { location => "AFR|BW|BC000|MAUN", country => "Botswana" },
"maunath bhanjan, in" => { location => "ASI|IN|IN033|MAUNATH BHANJAN", country => "India" },
"mayaguez, pr" => { location => "CAC|PR|PR000|MAYAGÜEZ", country => "Puerto Rico" },
"mazar-i-sharif, af" => { location => "ASI|AF|AF004|MAZAR-I-SHARIF", country => "Afghanistan" },
"mazatlan, mx" => { location => "NAM|MX|MX025|MAZATLÁN", country => "Mexico" },
"mazeppa bay, za" => { location => "AFR|ZA|SF002|MAZEPPA BAY", country => "South Africa" },
"mbabane, sz" => { location => "AFR|SZ|WZ000|MBABANE", country => "Swaziland" },
"mbale, ug" => { location => "AFR|UG|UG000|MBALE", country => "Uganda" },
"mbandaka, cd" => { location => "AFR|CD|CG003|MBANDAKA", country => "Kinshasa" },
"mbarara, ug" => { location => "AFR|UG|UG000|MBARARA", country => "Uganda" },
"mbeya, tz" => { location => "AFR|TZ|TZ000|MBEYA", country => "Tanzania" },
"mbour, sn" => { location => "AFR|SN|SG009|MBOUR", country => "Senegal" },
"mbuji-mayi, cd" => { location => "AFR|CD|CG005|MBUJI-MAYI", country => "Kinshasa" },
"mcallen, tx, us" => { location => "NAM|US|TX|MCALLEN", country => "United States" },
"medan, id" => { location => "ASI|ID|ID027|MEDAN", country => "Indonesia" },
"medellin, co" => { location => "SAM|CO|CO002|MEDELLÍN", country => "Colombia" },
"medina, sa" => { location => "MEA|SA|SA005|MEDINA", country => "Saudi Arabia" },
"medinipur, in" => { location => "ASI|IN|IN036|MEDINIPUR", country => "India" },
"meerut, in" => { location => "ASI|IN|IN033|MEERUT", country => "India" },
"meihekou, cn" => { location => "ASI|CN|CH017|MEIHEKOU", country => "China" },
"meixian, cn" => { location => "ASI|CN|CH004|MEIXIAN", country => "China" },
"mejicanos, sv" => { location => "CAC|SV|ES010|MEJICANOS", country => "El Salvador" },
"mekele, et" => { location => "AFR|ET|ET000|MEKELE", country => "Ethiopia" },
"meknes, ma" => { location => "AFR|MA|MO026|MEKNČS", country => "Morocco" },
"melbourne, au" => { location => "OCN|AU|VIC|MELBOURNE", country => "Australia" },
"melitopol, ua" => { location => "EUR|UA|KZ000|MELITOPOL", country => "Ukraine" },
"memphis, tn, us" => { location => "NAM|US|TN|MEMPHIS", country => "United States" },
"mendoza, ar" => { location => "SAM|AR|AR013|MENDOZA", country => "Argentina" },
"menia, eg" => { location => "AFR|EG|EG010|MENIA", country => "Egypt" },
"merida, mx" => { location => "NAM|MX|MX002|MÉRIDA", country => "Mexico" },
"merida, ve" => { location => "SAM|VE|VE015|MÉRIDA", country => "Venezuela" },
"merton, uk" => { location => "EUR|UK|UK001|MERTON", country => "United Kingdom" },
"mesa, az, us" => { location => "NAM|US|AZ|MESA", country => "United States" },
"mesquite, tx, us" => { location => "NAM|US|TX|MESQUITE", country => "United States" },
"messina, it" => { location => "EUR|IT|IT015|MESSINA", country => "Italy" },
"messina, za" => { location => "AFR|ZA|SF009|MESSINA", country => "South Africa" },
"metula, il" => { location => "MEA|IL|IS003|METULA", country => "Israel" },
"metz, fr" => { location => "EUR|FR|FR015|METZ", country => "France" },
"mexicali, mx" => { location => "NAM|MX|MX002|MEXICALI", country => "Mexico" },
"mexico city, mx" => { location => "NAM|MX|MX009|MEXICO CITY", country => "Mexico" },
"mezhdurechensk, ru" => { location => "ASI|RU|RS031|MEZHDURECHENSK", country => "Russia" },
"miami, fl, us" => { location => "NAM|US|FL|MIAMI", country => "United States" },
"mianyang, cn" => { location => "ASI|CN|CH004|MIANYANG", country => "China" },
"miass, ru" => { location => "ASI|RU|RS013|MIASS", country => "Russia" },
"michurinsk, ru" => { location => "ASI|RU|RS076|MICHURINSK", country => "Russia" },
"middelburg, za" => { location => "AFR|ZA|SF006|MIDDELBURG", country => "South Africa" },
"midrand, za" => { location => "AFR|ZA|SF004|MIDRAND", country => "South Africa" },
"milagro, ec" => { location => "SAM|EC|EC010|MILAGRO", country => "Ecuador" },
"milano, it" => { location => "EUR|IT|IT009|MILANO", country => "Italy" },
"milton keynes, uk" => { location => "EUR|UK|UK001|MILTON KEYNES", country => "United Kingdom" },
"miluo, cn" => { location => "ASI|CN|CH014|MILUO", country => "China" },
"milwaukee, wi, us" => { location => "NAM|US|WI|MILWAUKEE", country => "United States" },
"minatitlan, mx" => { location => "NAM|MX|MX030|MINATITLÁN", country => "Mexico" },
"minneapolis, mn, us" => { location => "NAM|US|MN|MINNEAPOLIS", country => "United States" },
"minsk, by" => { location => "EUR|BY|BO000|MINSK", country => "Belarus" },
"mirpur khas, pk" => { location => "ASI|PK|PK008|MIRPUR KHAS", country => "Pakistan" },
"mirzapur-cum-vindhyachal, in" => { location => "ASI|IN|IN033|MIRZAPUR-CUM-VINDHYACHAL", country => "India" },
"mishan, cn" => { location => "ASI|CN|CH011|MISHAN", country => "China" },
"mishima, jp" => { location => "ASI|JP|JA038|MISHIMA", country => "Japan" },
"miskolc, hu" => { location => "EUR|HU|HU021|MISKOLC", country => "Hungary" },
"mississauga, ca" => { location => "NAM|CA|ON|MISSISSAUGA", country => "Canada" },
"misurata, ly" => { location => "AFR|LY|LY016|MISURATA", country => "Libya" },
"mito, jp" => { location => "ASI|JP|JA014|MITO", country => "Japan" },
"miyakonojo, jp" => { location => "ASI|JP|JA025|MIYAKONOJO", country => "Japan" },
"miyazaki, jp" => { location => "ASI|JP|JA025|MIYAZAKI", country => "Japan" },
"mmabatho, za" => { location => "AFR|ZA|SF007|MMABATHO", country => "South Africa" },
"mobile, al, us" => { location => "NAM|US|AL|MOBILE", country => "United States" },
"modena, it" => { location => "EUR|IT|IT005|MODENA", country => "Italy" },
"modesto, ca, us" => { location => "NAM|US|CA|MODESTO", country => "United States" },
"moers, de" => { location => "EUR|DE|GM011|MOERS", country => "Germany" },
"moga, in" => { location => "ASI|IN|IN028|MOGA", country => "India" },
"mogadishu, so" => { location => "AFR|SO|SO002|MOGADISHU", country => "Somalia" },
"mogilev, by" => { location => "EUR|BY|BO005|MOGILEV", country => "Belarus" },
"moji das cruzes, br" => { location => "SAM|BR|BR023|MOJI DAS CRUZES", country => "Brazil" },
"mokopane, za" => { location => "AFR|ZA|SF009|MOKOPANE", country => "South Africa" },
"molde, no" => { location => "EUR|NO|NO007|MOLDE", country => "Norway" },
"molepolole, bw" => { location => "AFR|BW|BC000|MOLEPOLOLE", country => "Botswana" },
"mombasa, ke" => { location => "AFR|KE|KE002|MOMBASA", country => "Kenya" },
"monaco, mc" => { location => "EUR|MC|MN000|MONACO", country => "Monaco" },
"monclova, mx" => { location => "NAM|MX|MX007|MONCLOVA", country => "Mexico" },
"moncton, ca" => { location => "NAM|CA|NB|MONCTON", country => "Canada" },
"monrovia, lr" => { location => "AFR|LR|LI007|MONROVIA", country => "Liberia" },
"montélimar, fr" => { location => "EUR|FR|FR022|MONTÉLIMAR", country => "France" },
"monteria, co" => { location => "SAM|CO|CO010|MONTERIA", country => "Colombia" },
"monterrey, mx" => { location => "NAM|MX|MX005|MONTERREY", country => "Mexico" },
"montes claros, br" => { location => "SAM|BR|BR012|MONTES CLAROS", country => "Brazil" },
"montevideo, uy" => { location => "SAM|UY|UY010|MONTEVIDEO", country => "Uruguay" },
"montgomery, al, us" => { location => "NAM|US|AL|MONTGOMERY", country => "United States" },
"montpelier, vt, us" => { location => "NAM|US|VT|MONTPELIER", country => "United States" },
"montpellier, fr" => { location => "EUR|FR|FR013|MONTPELLIER", country => "France" },
"montreal, ca" => { location => "NAM|CA|QC|MONTRÉAL", country => "Canada" },
"monywa, mm" => { location => "ASI|MM|BM011|MONYWA", country => "Burma/Myanmar" },
"monza, it" => { location => "EUR|IT|IT009|MONZA", country => "Italy" },
"mooi river, za" => { location => "AFR|ZA|SF005|MOOI RIVER", country => "South Africa" },
"moradabad, in" => { location => "ASI|IN|IN033|MORADABAD", country => "India" },
"moratuwa, lk" => { location => "ASI|LK|CE009|MORATUWA", country => "Sri Lanka" },
"morelia, mx" => { location => "NAM|MX|MX016|MORELIA", country => "Mexico" },
"morena, in" => { location => "ASI|IN|IN020|MORENA", country => "India" },
"moreno valley, ca, us" => { location => "NAM|US|CA|MORENO VALLEY", country => "United States" },
"moriguchi, jp" => { location => "ASI|JP|JA033|MORIGUCHI", country => "Japan" },
"morioka, jp" => { location => "ASI|JP|JA016|MORIOKA", country => "Japan" },
"morogoro, tz" => { location => "AFR|TZ|TZ000|MOROGORO", country => "Tanzania" },
"moron, ar" => { location => "SAM|AR|AR001|MORÓN", country => "Argentina" },
"moroni, km" => { location => "AFR|KM|CN004|MORONI", country => "Comoros" },
"moroto, ug" => { location => "AFR|UG|UG000|MOROTO", country => "Uganda" },
"morvi, in" => { location => "ASI|IN|IN012|MORVI", country => "India" },
"moscow, ru" => { location => "ASI|RU|RS052|MOSKVA", country => "Russia" },
"mosoro, br" => { location => "SAM|BR|BR018|MOSSORÓ", country => "Brazil" },
"mossel bay, za" => { location => "AFR|ZA|SF011|MOSSEL BAY", country => "South Africa" },
"mostaganem, dz" => { location => "AFR|DZ|AG030|MOSTAGANEM", country => "Algeria" },
"mostar, ba" => { location => "EUR|BA|BK001|MOSTAR", country => "Bosnia And Herzegovina" },
"mostoles, es" => { location => "EUR|ES|SP013|MÓSTOLES", country => "Spain" },
"mosul, iq" => { location => "MEA|IQ|IZ016|MOSUL", country => "Iraq" },
"moulmein, mm" => { location => "ASI|MM|BM009|MOULMEIN", country => "Burma/Myanmar" },
"mozambique island, mz" => { location => "AFR|MZ|MZ006|MOZAMBIQUE ISLAND", country => "Mozambique" },
"mthatha, za" => { location => "AFR|ZA|SF002|MTHATHA", country => "South Africa" },
"mudanjiang, cn" => { location => "ASI|CN|CH011|MUDANJIANG", country => "China" },
"mufulira, zm" => { location => "AFR|ZM|ZA001|MUFULIRA", country => "Zambia" },
"mulheim, de" => { location => "EUR|DE|GM011|MÜLHEIM AN DER RUHR", country => "Germany" },
"mulhouse, fr" => { location => "EUR|FR|FR001|MULHOUSE", country => "France" },
"multan, pk" => { location => "ASI|PK|PK007|MULTAN", country => "Pakistan" },
"mumbai, in" => { location => "ASI|IN|IN021|MUMBAI", country => "India" },
"munger, in" => { location => "ASI|IN|IN005|MUNGER", country => "India" },
"munich, de" => { location => "EUR|DE|GM002|MÜNCHEN", country => "Germany" },
"munster, de" => { location => "EUR|DE|GM007|MÜNSTER", country => "Germany" },
"muntinlupa, ph" => { location => "ASI|PH|RP103|MUNTINLUPA", country => "Philippines" },
"murcia, es" => { location => "EUR|ES|SP014|MURCIA", country => "Spain" },
"muridke, pk" => { location => "ASI|PK|PK007|MURIDKE", country => "Pakistan" },
"murmansk, ru" => { location => "ASI|RU|RS053|MURMANSK", country => "Russia" },
"murom, ru" => { location => "ASI|RU|RS087|MUROM", country => "Russia" },
"muroran, jp" => { location => "ASI|JP|JA012|MURORAN", country => "Japan" },
"murwara, in" => { location => "ASI|IN|IN020|MURWARA", country => "India" },
"musashino, jp" => { location => "ASI|JP|JA041|MUSASHINO", country => "Japan" },
"muscat, om" => { location => "MEA|OM|MU006|MUSCAT", country => "Oman" },
"mushin, ng" => { location => "AFR|NG|NI024|MUSHIN", country => "Nigeria" },
"musina, za" => { location => "AFR|ZA|SF009|MUSINA", country => "South Africa" },
"mutare, zw" => { location => "AFR|ZW|ZI000|MUTARE", country => "Zimbabwe" },
"muzaffarnagar, in" => { location => "ASI|IN|IN033|MUZAFFARNAGAR", country => "India" },
"muzaffarpur, in" => { location => "ASI|IN|IN005|MUZAFFARPUR", country => "India" },
"mwanza, tz" => { location => "AFR|TZ|TZ000|MWANZA", country => "Tanzania" },
"mymensingh, bd" => { location => "ASI|BD|BG002|MYMENSINGH", country => "Bangladesh" },
"myrtle beach, sc, us" => { location => "NAM|US|SC|Myrtle Beach", country => "United States" },
"mysore, in" => { location => "ASI|IN|IN017|MYSORE", country => "India" },
"mytho, vn" => { location => "ASI|VN|VM059|MYTHO", country => "Vietnam" },
"mytishchi, ru" => { location => "ASI|RU|RS051|MYTISHCHI", country => "Russia" },
"nabadwip, in" => { location => "ASI|IN|IN036|NABADWIP", country => "India" },
"naberezhnyye chelny, ru" => { location => "ASI|RU|RS077|NABEREZHNYYE CHELNY", country => "Russia" },
"nacala, mz" => { location => "AFR|MZ|MZ006|NACALA", country => "Mozambique" },
"nadiad, in" => { location => "ASI|IN|IN012|NADIAD", country => "India" },
"naestved, dk" => { location => "EUR|DK|DA013|NAESTVED", country => "Denmark" },
"naga, ph" => { location => "ASI|PH|RP082|NAGA", country => "Philippines" },
"nagano, jp" => { location => "ASI|JP|JA026|NAGANO", country => "Japan" },
"nagaoka, jp" => { location => "ASI|JP|JA029|NAGAOKA", country => "Japan" },
"nagareyama, jp" => { location => "ASI|JP|JA035|NAGAREYAMA", country => "Japan" },
"nagasaki, jp" => { location => "ASI|JP|JA027|NAGASAKI", country => "Japan" },
"nagercoil, in" => { location => "ASI|IN|IN031|NAGERCOIL", country => "India" },
"nagoya, jp" => { location => "ASI|JP|JA001|NAGOYA", country => "Japan" },
"nagpur, in" => { location => "ASI|IN|IN021|NAGPUR", country => "India" },
"naihati, in" => { location => "ASI|IN|IN036|NAIHATI", country => "India" },
"nairobi, ke" => { location => "AFR|KE|KE004|NAIROBI", country => "Kenya" },
"najaf, iq" => { location => "MEA|IQ|IZ005|NAJAF", country => "Iraq" },
"najafabad, ir" => { location => "MEA|IR|IR006|NAJAFABAD", country => "Iran" },
"nakhodka, ru" => { location => "ASI|RU|RS063|NAKHODKA", country => "Russia" },
"nakhon pathom, th" => { location => "ASI|TH|TH026|NAKHON PATHOM", country => "Thailand" },
"nakhon ratchasima, th" => { location => "ASI|TH|TH028|NAKHON RATCHASIMA", country => "Thailand" },
"nakhon sawan, th" => { location => "ASI|TH|TH029|NAKHON SAWAN", country => "Thailand" },
"nakhon si thammarat, th" => { location => "ASI|TH|TH030|NAKHON SI THAMMARAT", country => "Thailand" },
"nakuru, ke" => { location => "AFR|KE|KE007|NAKURU", country => "Kenya" },
"nalchik, ru" => { location => "ASI|RU|RS024|NALCHIK", country => "Russia" },
"namangan, uz" => { location => "ASI|UZ|UZ006|NAMANGAN", country => "Uzbekistan" },
"namdinh, vn" => { location => "ASI|VN|VM042|NAMDINH", country => "Vietnam" },
"nampula, mz" => { location => "AFR|MZ|MZ006|NAMPULA", country => "Mozambique" },
"namur, be" => { location => "EUR|BE|BE008|NAMUR", country => "Belgium" },
"nanchang, cn" => { location => "ASI|CN|CH016|NANCHANG", country => "China" },
"nanchong, cn" => { location => "ASI|CN|CH026|NANCHONG", country => "China" },
"nanded, in" => { location => "ASI|IN|IN021|NANDED", country => "India" },
"nandyal, in" => { location => "ASI|IN|IN002|NANDYAL", country => "India" },
"nangong, cn" => { location => "ASI|CN|CH010|NANGONG", country => "China" },
"nanjing, cn" => { location => "ASI|CN|CH016|NANJING", country => "China" },
"nanning, cn" => { location => "ASI|CN|CH007|NANNING", country => "China" },
"nanping, cn" => { location => "ASI|CN|CH004|NANPING", country => "China" },
"nantes, fr" => { location => "EUR|FR|FR018|NANTES", country => "France" },
"nantong, cn" => { location => "ASI|CN|CH015|NANTONG", country => "China" },
"nanyang, cn" => { location => "ASI|CN|CH004|NANYANG", country => "China" },
"nanyuki, ke" => { location => "AFR|KE|KE007|NANYUKI", country => "Kenya" },
"naperville, il, us" => { location => "NAM|US|IL|NAPERVILLE", country => "United States" },
"napier-hastings, nz" => { location => "OCN|NZ|NZ000|NAPIER-HASTINGS", country => "New Zealand" },
"napoli, it" => { location => "EUR|IT|IT004|NAPOLI", country => "Italy" },
"nara, jp" => { location => "ASI|JP|JA028|NARA", country => "Japan" },
"narashino, jp" => { location => "ASI|JP|JA004|NARASHINO", country => "Japan" },
"narayanganj, bd" => { location => "ASI|BD|BG002|NARAYANGANJ", country => "Bangladesh" },
"naryan-mar, ru" => { location => "ASI|RU|RS054|NARYAN-MAR", country => "Russia" },
"nashville, tn, us" => { location => "NAM|US|TN|NASHVILLE", country => "United States" },
"nassau, bs" => { location => "CAC|BS|BF016|NASSAU", country => "The Bahamas" },
"natal, br" => { location => "SAM|BR|BR018|NATAL", country => "Brazil" },
"naucalpan, mx" => { location => "NAM|MX|MX015|NAUCALPAN", country => "Mexico" },
"navoi, uz" => { location => "ASI|UZ|UZ007|NAVOI", country => "Uzbekistan" },
"navsari, in" => { location => "ASI|IN|IN012|NAVSARI", country => "India" },
"nawabganj, bd" => { location => "ASI|BD|BG002|NAWABGANJ", country => "Bangladesh" },
"nawabshah, pk" => { location => "ASI|PK|PK008|NAWABSHAH", country => "Pakistan" },
"n'djamena, td" => { location => "AFR|TD|CD004|N'DJAMENA", country => "Chad" },
"ndola, zm" => { location => "AFR|ZM|ZA001|NDOLA", country => "Zambia" },
"neftekamsk, ru" => { location => "ASI|RU|RS007|NEFTEKAMSK", country => "Russia" },
"neijiang, cn" => { location => "ASI|CN|CH026|NEIJIANG", country => "China" },
"neiva, co" => { location => "SAM|CO|CO015|NEIVA", country => "Colombia" },
"nellore, in" => { location => "ASI|IN|IN002|NELLORE", country => "India" },
"nelspruit, za" => { location => "AFR|ZA|SF006|NELSPRUIT", country => "South Africa" },
"nepean, ca" => { location => "NAM|CA|ON|NEPEAN", country => "Canada" },
"netanya, il" => { location => "MEA|IL|IS002|NETANYA", country => "Israel" },
"netzahualcoyotl, mx" => { location => "NAM|MX|MX027|NETZAHUALCÓYOTL", country => "Mexico" },
"neuquen, ar" => { location => "SAM|AR|AR015|NEUQUÉN", country => "Argentina" },
"neuss, de" => { location => "EUR|DE|GM011|NEUSS", country => "Germany" },
"nevinnomyssk, ru" => { location => "ASI|RU|RS074|NEVINNOMYSSK", country => "Russia" },
"new delhi, in" => { location => "ASI|IN|IN010|NEW DELHI", country => "India" },
"new haven, ct, us" => { location => "NAM|US|CT|NEW HAVEN", country => "United States" },
"new orleans, la, us" => { location => "NAM|US|LA|NEW ORLEANS", country => "United States" },
"new york, ny, us" => { location => "NAM|US|NY|NEW YORK", country => "United States" },
"newark, nj, us" => { location => "NAM|US|NJ|NEWARK", country => "United States" },
"newbury, uk" => { location => "EUR|UK|UK001|NEWBURY", country => "United Kingdom" },
"newcastle, au" => { location => "OCN|AU|NSW|NEWCASTLE", country => "Australia" },
"newcastle, za" => { location => "AFR|ZA|SF005|NEWCASTLE", country => "South Africa" },
"newcastle-under-lyme, uk" => { location => "EUR|UK|UK001|NEWCASTLE-UNDER-LYME", country => "United Kingdom" },
"newcastle-upon-tyne, uk" => { location => "EUR|UK|UK001|NEWCASTLE-UPON-TYNE", country => "United Kingdom" },
"newham, uk" => { location => "EUR|UK|UK001|NEWHAM", country => "United Kingdom" },
"newport, uk" => { location => "EUR|UK|UK001|NEWPORT", country => "United Kingdom" },
"newport news, va, us" => { location => "NAM|US|VA|NEWPORT NEWS", country => "United States" },
"neyagawa, jp" => { location => "ASI|JP|JA033|NEYAGAWA", country => "Japan" },
"neyshabur, ir" => { location => "MEA|IR|IR015|NEYSHABUR", country => "Iran" },
"neyveli, in" => { location => "ASI|IN|IN031|NEYVELI", country => "India" },
"ngaoundere, cm" => { location => "AFR|CM|CM001|NGAOUNDERE", country => "Cameroon" },
"ngqura, za" => { location => "AFR|ZA|SF002|NGQURA", country => "South Africa" },
"nhatrang, vn" => { location => "ASI|VN|VM011|NHATRANG", country => "Vietnam" },
"niamey, ne" => { location => "AFR|NE|NG005|NIAMEY", country => "Niger" },
"nice, fr" => { location => "EUR|FR|FR021|NICE", country => "France" },
"nicosia, cy" => { location => "MEA|CY|CY005|NICOSIA", country => "Cyprus" },
"nieu bethesda, za" => { location => "AFR|ZA|SF002|NIEU BETHESDA", country => "South Africa" },
"nieuwoudtville, za" => { location => "AFR|ZA|SF008|NIEUWOUDTVILLE", country => "South Africa" },
"niigata, jp" => { location => "ASI|JP|JA029|NIIGATA", country => "Japan" },
"niihama, jp" => { location => "ASI|JP|JA005|NIIHAMA", country => "Japan" },
"niiza, jp" => { location => "ASI|JP|JA035|NIIZA", country => "Japan" },
"nijmegen, nl" => { location => "EUR|NL|NL004|NIJMEGEN", country => "Netherlands" },
"nikopol, bg" => { location => "EUR|BG|BU012|NIKOPOL", country => "Bulgaria" },
"nimes, fr" => { location => "EUR|FR|FR013|NÎMES", country => "France" },
"ningbo, cn" => { location => "ASI|CN|CH031|NINGBO", country => "China" },
"ningde, cn" => { location => "ASI|CN|CH004|NINGDE", country => "China" },
"nis, cs" => { location => "EUR|CS|YI003|NIS", country => "Serbia" },
"nishinomiya, jp" => { location => "ASI|JP|JA013|NISHINOMIYA", country => "Japan" },
"nishio, jp" => { location => "ASI|JP|JA001|NISHIO", country => "Japan" },
"niteroi, br" => { location => "SAM|BR|BR017|NITERÓI", country => "Brazil" },
"nizamabad, in" => { location => "ASI|IN|IN002|NIZAMABAD", country => "India" },
"nizhnekamsk, ru" => { location => "ASI|RU|RS077|NIZHNEKAMSK", country => "Russia" },
"nizhnevartovsk, ru" => { location => "ASI|RU|RS034|NIZHNEVARTOVSK", country => "Russia" },
"nizhniy novgorod, ru" => { location => "ASI|RU|RS055|NIZHNIY NOVGOROD", country => "Russia" },
"nizhny tagil, ru" => { location => "ASI|RU|RS075|NIZHNY TAGIL", country => "Russia" },
"nkongsamba, cm" => { location => "AFR|CM|CM005|NKONGSAMBA", country => "Cameroon" },
"nobeoka, jp" => { location => "ASI|JP|JA025|NOBEOKA", country => "Japan" },
"noda, jp" => { location => "ASI|JP|JA004|NODA", country => "Japan" },
"nogales, mx" => { location => "NAM|MX|MX030|NOGALES", country => "Mexico" },
"noginsk, ru" => { location => "ASI|RU|RS018|NOGINSK", country => "Russia" },
"norfolk, va, us" => { location => "NAM|US|VA|NORFOLK", country => "United States" },
"norilsk, ru" => { location => "ASI|RU|RS041|NORILSK", country => "Russia" },
"norrkoeping, se" => { location => "EUR|SE|SW012|NORRKOEPING", country => "Sweden" },
"north las vegas, nv, us" => { location => "NAM|US|NV|NORTH LAS VEGAS", country => "United States" },
"north york, ca" => { location => "NAM|CA|ON|NORTH YORK", country => "Canada" },
"northampton, uk" => { location => "EUR|UK|UK001|NORTHAMPTON", country => "United Kingdom" },
"northshore, nz" => { location => "OCN|NZ|NZ000|NORTHSHORE", country => "New Zealand" },
"norwalk, ca, us" => { location => "NAM|US|CA|NORWALK", country => "United States" },
"norwich, uk" => { location => "EUR|UK|UK001|NORWICH", country => "United Kingdom" },
"nossa senhora do socorro, br" => { location => "SAM|BR|BR024|NOSSA SENHORA DO SOCORRO", country => "Brazil" },
"nottingham, uk" => { location => "EUR|UK|UK001|NOTTINGHAM", country => "United Kingdom" },
"nouakchott, mr" => { location => "AFR|MR|MR005|NOUAKCHOTT", country => "Mauritania" },
"noumea, nc" => { location => "OCN|NC|NC000|NOUMEA", country => "New Caledonia" },
"nova friburgo, br" => { location => "SAM|BR|BR017|NOVA FRIBURGO", country => "Brazil" },
"nova iguacu, br" => { location => "SAM|BR|BR017|NOVA IGUAÇU", country => "Brazil" },
"novara, it" => { location => "EUR|IT|IT012|NOVARA", country => "Italy" },
"novi sad, cs" => { location => "EUR|CS|YI003|NOVI SAD", country => "Serbia" },
"novo hamburgo, br" => { location => "SAM|BR|BR019|NÔVO HAMBURGO", country => "Brazil" },
"novocheboksarsk, ru" => { location => "ASI|RU|RS016|NOVOCHEBOKSARSK", country => "Russia" },
"novocherkassk, ru" => { location => "ASI|RU|RS059|NOVOCHERKASSK", country => "Russia" },
"novokuznetsk, ru" => { location => "ASI|RU|RS031|NOVOKUZNETSK", country => "Russia" },
"novomoskovsk, ru" => { location => "ASI|RU|RS080|NOVOMOSKOVSK", country => "Russia" },
"novopolotsk, by" => { location => "EUR|BY|BO000|NOVOPOLOTSK", country => "Belarus" },
"novorossiysk, ru" => { location => "ASI|RU|RS079|NOVOROSSIYSK", country => "Russia" },
"novoshakhtinsk, ru" => { location => "ASI|RU|RS065|NOVOSHAKHTINSK", country => "Russia" },
"novosibirsk, ru" => { location => "ASI|RU|RS057|NOVOSIBIRSK", country => "Russia" },
"novotroitsk, ru" => { location => "ASI|RU|RS057|NOVOTROITSK", country => "Russia" },
"nueva san salvador, sv" => { location => "CAC|SV|ES005|NUEVA SAN SALVADOR", country => "El Salvador" },
"nuevo laredo, mx" => { location => "NAM|MX|MX028|NUEVO LAREDO", country => "Mexico" },
"nuku'alofa, to" => { location => "OCN|TO|TO002|NUKU'ALOFA", country => "Tonga" },
"nukus, uz" => { location => "ASI|UZ|UZ009|NUKUS", country => "Uzbekistan" },
"numazu, jp" => { location => "ASI|JP|JA038|NUMAZU", country => "Japan" },
"nuneaton, uk" => { location => "EUR|UK|UK238|NUNEATON", country => "United Kingdom" },
"nuneaton and bedworth, uk" => { location => "EUR|UK|UK001|NUNEATON AND BEDWORTH", country => "United Kingdom" },
"nurnberg, de" => { location => "EUR|DE|GM002|NÜRNBERG", country => "Germany" },
"nuuk, gl" => { location => "ARC|GL|GL003|NUUK", country => "Greenland" },
"nyala, sd" => { location => "AFR|SD|SU016|NYALA", country => "Sudan" },
"nyiregyhaza, hu" => { location => "EUR|HU|HU029|NYIREGYHAZA", country => "Hungary" },
"nylstroom, za" => { location => "AFR|ZA|SF009|NYLSTROOM", country => "South Africa" },
"oakland, ca, us" => { location => "NAM|US|CA|OAKLAND", country => "United States" },
"oakville, ca" => { location => "NAM|CA|ON|OAKVILLE", country => "Canada" },
"oaxaca, mx" => { location => "NAM|MX|MX020|OAXACA DE JUÁREZ", country => "Mexico" },
"oberhausen, de" => { location => "EUR|DE|GM007|OBERHAUSEN", country => "Germany" },
"obihiro, jp" => { location => "ASI|JP|JA012|OBIHIRO", country => "Japan" },
"obninsk, ru" => { location => "ASI|RU|RS027|OBNINSK", country => "Russia" },
"obregon, mx" => { location => "NAM|MX|MX026|CIUDAD OBREGÓN", country => "Mexico" },
"obuasi, gh" => { location => "AFR|GH|GH000|OBUASI", country => "Ghana" },
"oceanside, ca, us" => { location => "NAM|US|CA|OCEANSIDE", country => "United States" },
"odawara, jp" => { location => "ASI|JP|JA019|ODAWARA", country => "Japan" },
"odense, dk" => { location => "EUR|DK|DA005|ODENSE", country => "Denmark" },
"odessa, ua" => { location => "EUR|UA|UP015|ODESSA", country => "Ukraine" },
"odintsovo, ru" => { location => "ASI|RU|RS051|ODINTSOVO", country => "Russia" },
"oestersund, se" => { location => "EUR|SE|SW006|OESTERSUND", country => "Sweden" },
"offenbach am main, de" => { location => "EUR|DE|GM007|OFFENBACH AM MAIN", country => "Germany" },
"ogaki, jp" => { location => "ASI|JP|JA009|OGAKI", country => "Japan" },
"ogbomosho, ng" => { location => "AFR|NG|NI000|OGBOMOSHO", country => "Nigeria" },
"ohrigstad, za" => { location => "AFR|ZA|SF006|OHRIGSTAD", country => "South Africa" },
"oita, jp" => { location => "ASI|JP|JA030|OITA", country => "Japan" },
"okara, pk" => { location => "ASI|PK|PK007|OKARA", country => "Pakistan" },
"okayama, jp" => { location => "ASI|JP|JA031|OKAYAMA", country => "Japan" },
"okazaki, jp" => { location => "ASI|JP|JA001|OKAZAKI", country => "Japan" },
"okinawa, jp" => { location => "ASI|JP|JA032|OKINAWA", country => "Japan" },
"oklahoma city, ok, us" => { location => "NAM|US|OK|OKLAHOMA CITY", country => "United States" },
"oldenburg, de" => { location => "EUR|DE|GM009|OLDENBURG", country => "Germany" },
"oldham, uk" => { location => "EUR|UK|UK001|OLDHAM", country => "United Kingdom" },
"olinda, br" => { location => "SAM|BR|BR026|OLINDA", country => "Brazil" },
"olomouc, cz" => { location => "EUR|CZ|EZ004|OLOMOUC", country => "Czech Republic" },
"olongapo, ph" => { location => "ASI|PH|RP089|OLONGAPO", country => "Philippines" },
"olsztyn, pl" => { location => "EUR|PL|PL014|OLSZTYN", country => "Poland" },
"olympia, wa, us" => { location => "NAM|US|WA|OLYMPIA", country => "United States" },
"omaha, ne, us" => { location => "NAM|US|NE|OMAHA", country => "United States" },
"omdurman, sd" => { location => "AFR|SD|SU005|OMDURMAN", country => "Sudan" },
"ome, jp" => { location => "ASI|JP|JA041|OME", country => "Japan" },
"omiya, jp" => { location => "ASI|JP|JA014|OMIYA", country => "Japan" },
"omsk, ru" => { location => "ASI|RU|RS058|OMSK", country => "Russia" },
"omuta, jp" => { location => "ASI|JP|JA007|OMUTA", country => "Japan" },
"ondal, in" => { location => "ASI|IN|IN036|ONDAL", country => "India" },
"ongole, in" => { location => "ASI|IN|IN002|ONGOLE", country => "India" },
"onitsha, ng" => { location => "AFR|NG|NI000|ONITSHA", country => "Nigeria" },
"ontario, ca, us" => { location => "NAM|US|CA|ONTARIO", country => "United States" },
"onyang, kr" => { location => "ASI|KR|KS002|ONYANG", country => "South Korea" },
"opole, pl" => { location => "EUR|PL|PL008|OPOLE", country => "Poland" },
"oradea, ro" => { location => "EUR|RO|RO005|ORADEA", country => "Romania" },
"oran, dz" => { location => "AFR|DZ|AG032|ORAN", country => "Algeria" },
"orange, ca, us" => { location => "NAM|US|CA|ORANGE", country => "United States" },
"ordu, tr" => { location => "MEA|TR|TU062|ORDU", country => "Turkey" },
"orebro, se" => { location => "EUR|SE|SW011|OREBRO", country => "Sweden" },
"orekhovo-zuevo, ru" => { location => "ASI|RU|RS051|OREKHOVO-ZUEVO", country => "Russia" },
"orel, ru" => { location => "ASI|RU|RS062|OREL", country => "Russia" },
"orenburg, ru" => { location => "ASI|RU|RS059|ORENBURG", country => "Russia" },
"orizaba, mx" => { location => "NAM|MX|MX030|ORIZABA", country => "Mexico" },
"orlando, fl, us" => { location => "NAM|US|FL|ORLANDO", country => "United States" },
"orleans, fr" => { location => "EUR|FR|FR007|ORLÉANS", country => "France" },
"ormoc, ph" => { location => "ASI|PH|RP090|ORMOC", country => "Philippines" },
"orsha, by" => { location => "EUR|BY|BO007|ORSHA", country => "Belarus" },
"orsk, ru" => { location => "ASI|RU|RS059|ORSK", country => "Russia" },
"orumiyeh, ir" => { location => "MEA|IR|IR029|ORUMIYEH", country => "Iran" },
"oruro, bo" => { location => "SAM|BO|BL005|ORURO", country => "Bolivia" },
"osaka, jp" => { location => "ASI|JP|JA009|OSAKA", country => "Japan" },
"osasco, br" => { location => "SAM|BR|BR023|OSASCO", country => "Brazil" },
"osh, kg" => { location => "ASI|KG|KG006|OSH", country => "Kyrgyzstan" },
"oshawa, ca" => { location => "NAM|CA|ON|OSHAWA", country => "Canada" },
"oshogbo, ng" => { location => "AFR|NG|NI000|OSHOGBO", country => "Nigeria" },
"osijek, hr" => { location => "EUR|HR|HR011|OSIJEK", country => "Croatia" },
"oslo, no" => { location => "EUR|NO|NO011|OSLO", country => "Norway" },
"osmaniye, tr" => { location => "MEA|TR|TU000|OSMANIYE", country => "Turkey" },
"osnabruck, de" => { location => "EUR|DE|GM009|OSNABRÜCK", country => "Germany" },
"osorno, cl" => { location => "SAM|CL|CI008|OSORNO", country => "Chile" },
"ostrava, cz" => { location => "EUR|CZ|EZ004|OSTRAVA", country => "Czech Republic" },
"ota, jp" => { location => "ASI|JP|JA006|OTA", country => "Japan" },
"otaru, jp" => { location => "ASI|JP|JA012|OTARU", country => "Japan" },
"otsu, jp" => { location => "ASI|JP|JA036|OTSU", country => "Japan" },
"ottawa, ca" => { location => "NAM|CA|ON|OTTAWA", country => "Canada" },
"ouagadougou, bf" => { location => "AFR|BF|UV010|OUAGADOUGOU", country => "Burkina Faso" },
"oudtshoorn, za" => { location => "AFR|ZA|SF011|OUDTSHOORN", country => "South Africa" },
"oujda, ma" => { location => "AFR|MA|MO029|OUJDA", country => "Morocco" },
"oulu, fi" => { location => "EUR|FI|FI007|OULU", country => "Finland" },
"ourense, es" => { location => "EUR|ES|SP011|OURENSE", country => "Spain" },
"overland park, ks, us" => { location => "NAM|US|KS|OVERLAND PARK", country => "United States" },
"oviedo, es" => { location => "EUR|ES|SP003|OVIEDO", country => "Spain" },
"oxford, uk" => { location => "EUR|UK|UK001|OXFORD", country => "United Kingdom" },
"oxnard, ca, us" => { location => "NAM|US|CA|OXNARD", country => "United States" },
"oyama, jp" => { location => "ASI|JP|JA038|OYAMA", country => "Japan" },
"oyo, ng" => { location => "AFR|NG|NI029|OYO", country => "Nigeria" },
"ozamis, ph" => { location => "ASI|PH|RP092|OZAMIS", country => "Philippines" },
"paarl, za" => { location => "AFR|ZA|SF011|PAARL", country => "South Africa" },
"pabna, bd" => { location => "ASI|BD|BG004|PABNA", country => "Bangladesh" },
"pachuca, mx" => { location => "NAM|MX|MX013|PACHUCA", country => "Mexico" },
"padang, id" => { location => "ASI|ID|ID006|PADANG", country => "Indonesia" },
"paderborn, de" => { location => "EUR|DE|GM011|PADERBORN", country => "Germany" },
"padova, it" => { location => "EUR|IT|IT020|PADOVA", country => "Italy" },
"pagadian, ph" => { location => "ASI|PH|RP093|PAGADIAN", country => "Philippines" },
"pago pago, as" => { location => "OCN|AS|AS000|PAGO PAGO", country => "American Samoa" },
"pakan baru, id" => { location => "ASI|ID|ID018|PAKAN BARU", country => "Indonesia" },
"pakpattan, pk" => { location => "ASI|PK|PK007|PAKPATTAN", country => "Pakistan" },
"palembang, id" => { location => "ASI|ID|ID024|PALEMBANG", country => "Indonesia" },
"palermo, it" => { location => "EUR|IT|IT015|PALERMO", country => "Italy" },
"pali, in" => { location => "ASI|IN|IN020|PALI", country => "India" },
"palma de mallorca, es" => { location => "EUR|ES|SP004|PALMA DE MALLORCA", country => "Spain" },
"palmas, br" => { location => "SAM|BR|BR015|PALMAS", country => "Brazil" },
"palmdale, ca, us" => { location => "NAM|US|CA|PALMDALE", country => "United States" },
"palmira, co" => { location => "SAM|CO|CO027|PALMIRA", country => "Colombia" },
"pamplona, es" => { location => "EUR|ES|SP015|PAMPLONA", country => "Spain" },
"panama, pa" => { location => "CAC|PA|PM008|PANAMA", country => "Panama" },
"panama city, fl, us" => { location => "NAM|US|FL|Panama City", country => "United States" },
"pancevo, cs" => { location => "EUR|CS|YI003|PANCEVO", country => "Serbia" },
"panevezhis, lt" => { location => "EUR|LT|LH030|PANEVEZHIS", country => "Lithuania" },
"panihati, in" => { location => "ASI|IN|IN036|PANIHATI", country => "India" },
"panipat, in" => { location => "ASI|IN|IN013|PANIPAT", country => "India" },
"panjin, cn" => { location => "ASI|CN|CH018|PANJIN", country => "China" },
"panzhihua, cn" => { location => "ASI|CN|CH026|PANZHIHUA", country => "China" },
"papeete, pf" => { location => "OCN|PF|FP000|PAPEETE", country => "French Polynesia" },
"parakou, bj" => { location => "AFR|BJ|BN000|PARAKOU", country => "Benin" },
"paramaribo, sr" => { location => "SAM|SR|NS007|PARAMARIBO", country => "Suriname" },
"parana, ar" => { location => "SAM|AR|AR022|PARANÁ", country => "Argentina" },
"paranagua, br" => { location => "SAM|BR|BR015|PARANAGUÁ", country => "Brazil" },
"parbhani, in" => { location => "ASI|IN|IN021|PARBHANI", country => "India" },
"paris, fr" => { location => "EUR|FR|FR012|PARIS", country => "France" },
"parma, it" => { location => "EUR|IT|IT005|PARMA", country => "Italy" },
"parnaiba, br" => { location => "SAM|BR|BR016|PARNAÍBA", country => "Brazil" },
"pasadena, ca, us" => { location => "NAM|US|CA|PASADENA", country => "United States" },
"pasadena, tx, us" => { location => "NAM|US|TX|PASADENA", country => "United States" },
"pasay, ph" => { location => "ASI|PH|RP098|PASAY", country => "Philippines" },
"pasig, ph" => { location => "ASI|PH|RP103|PASIG", country => "Philippines" },
"passo fundo, br" => { location => "SAM|BR|BR019|PASSO FUNDO", country => "Brazil" },
"passos, br" => { location => "SAM|BR|BR012|PASSOS", country => "Brazil" },
"pasto, co" => { location => "SAM|CO|CO018|PASTO", country => "Colombia" },
"patan, in" => { location => "ASI|IN|IN012|PATAN", country => "India" },
"paterson, nj, us" => { location => "NAM|US|NJ|PATERSON", country => "United States" },
"pathankot, in" => { location => "ASI|IN|IN028|PATHANKOT", country => "India" },
"pathum thani, th" => { location => "ASI|TH|TH036|PATHUM THANI", country => "Thailand" },
"patiala, in" => { location => "ASI|IN|IN028|PATIALA", country => "India" },
"patos de minas, br" => { location => "SAM|BR|BR012|PATOS DE MINAS", country => "Brazil" },
"patrai, gr" => { location => "EUR|GR|GR003|PATRAI", country => "Greece" },
"patratu, in" => { location => "ASI|IN|IN005|PATRATU", country => "India" },
"pattaya, th" => { location => "ASI|TH|TH010|PATTAYA", country => "Thailand" },
"pau, fr" => { location => "EUR|FR|FR022|PAU", country => "France" },
"paulista, br" => { location => "SAM|BR|BR026|PAULISTA", country => "Brazil" },
"pavlodar, kz" => { location => "ASI|KZ|KZ010|PAVLODAR", country => "Kazakhstan" },
"pavlograd, ua" => { location => "EUR|UA|UP003|PAVLOGRAD", country => "Ukraine" },
"pecs, hu" => { location => "EUR|HU|HU025|PÉCS", country => "Hungary" },
"pegu, mm" => { location => "ASI|MM|BM002|PEGU", country => "Burma/Myanmar" },
"pelotas, br" => { location => "SAM|BR|BR019|PELOTAS", country => "Brazil" },
"pematang siantar, id" => { location => "ASI|ID|ID027|PEMATANG SIANTAR", country => "Indonesia" },
"pemba, mz" => { location => "AFR|MZ|MZ001|PEMBA", country => "Mozambique" },
"pembroke pines, fl, us" => { location => "NAM|US|FL|PEMBROKE PINES", country => "United States" },
"penza, ru" => { location => "ASI|RU|RS061|PENZA", country => "Russia" },
"peoria, il, us" => { location => "NAM|US|IL|PEORIA", country => "United States" },
"pereira, co" => { location => "SAM|CO|CO022|PEREIRA", country => "Colombia" },
"perm, ru" => { location => "ASI|RU|RS062|PERM", country => "Russia" },
"perpignan, fr" => { location => "EUR|FR|FR013|PERPIGNAN", country => "France" },
"perth, au" => { location => "OCN|AU|WA|PERTH", country => "Australia" },
"perugia, it" => { location => "EUR|IT|IT018|PERUGIA", country => "Italy" },
"pervouralsk, ru" => { location => "ASI|RU|RS075|PERVOURALSK", country => "Russia" },
"pescara, it" => { location => "EUR|IT|IT001|PESCARA", country => "Italy" },
"peshawar, pk" => { location => "ASI|PK|PK005|PESHAWAR", country => "Pakistan" },
"petah tiqwa, il" => { location => "MEA|IL|IS002|PETAH TIQWA", country => "Israel" },
"petaling jaya, my" => { location => "ASI|MY|MY000|PETALING JAYA", country => "Malaysia" },
"petare, ve" => { location => "SAM|VE|VE016|PETARE", country => "Venezuela" },
"peterborough, ca" => { location => "NAM|CA|ON|PETERBOROUGH", country => "Canada" },
"peterborough, uk" => { location => "EUR|UK|UK001|PETERBOROUGH", country => "United Kingdom" },
"petrolina, br" => { location => "SAM|BR|BR026|PETROLINA", country => "Brazil" },
"petropavlovsk, kz" => { location => "ASI|KZ|KZ015|PETROPAVLOVSK", country => "Kazakhstan" },
"petropavlovsk, ru" => { location => "ASI|RU|RS028|PETROPAVLOVSK-KAMCHATSKY", country => "Russia" },
"petropolis, br" => { location => "SAM|BR|BR017|PETRÓPOLIS", country => "Brazil" },
"petrozavodsk, ru" => { location => "ASI|RU|RS030|PETROZAVODSK", country => "Russia" },
"petrusburg, za" => { location => "AFR|ZA|SF003|PETRUSBURG", country => "South Africa" },
"pforzheim, de" => { location => "EUR|DE|GM001|PFORZHEIM", country => "Germany" },
"phalaborwa, za" => { location => "AFR|ZA|SF009|PHALABORWA", country => "South Africa" },
"philadelphia, pa, us" => { location => "NAM|US|PA|PHILADELPHIA", country => "United States" },
"philippolis, za" => { location => "AFR|ZA|SF003|PHILIPPOLIS", country => "South Africa" },
"phnom penh, kh" => { location => "ASI|KH|CB012|PHNOM PENH", country => "Cambodia" },
"phoenix, az, us" => { location => "NAM|US|AZ|PHOENIX", country => "United States" },
"phuket, th" => { location => "ASI|TH|TH047|PHUKET", country => "Thailand" },
"piatra neamt, ro" => { location => "EUR|RO|RO029|PIATRA NEAMT", country => "Romania" },
"pierre, sd, us" => { location => "NAM|US|SD|PIERRE", country => "United States" },
"piet retief, za" => { location => "AFR|ZA|SF006|PIET RETIEF", country => "South Africa" },
"pietermaritzburg, za" => { location => "AFR|ZA|SF005|PIETERMARITZBURG", country => "South Africa" },
"pietersburg, za" => { location => "AFR|ZA|SF009|PIETERSBURG", country => "South Africa" },
"pilgrims rest, za" => { location => "AFR|ZA|SF006|PILGRIMS REST", country => "South Africa" },
"pilibhit, in" => { location => "ASI|IN|IN033|PILIBHIT", country => "India" },
"pinar del rio, cu" => { location => "CAC|CU|CU012|PINAR DEL RÍO", country => "Cuba" },
"pindamonhangaba, br" => { location => "SAM|BR|BR023|PINDAMONHANGABA", country => "Brazil" },
"pingdingshan, cn" => { location => "ASI|CN|CH012|PINGDINGSHAN", country => "China" },
"pingdu, cn" => { location => "ASI|CN|CH016|PINGDU", country => "China" },
"pingliang, cn" => { location => "ASI|CN|CH005|PINGLIANG", country => "China" },
"pinhais, br" => { location => "SAM|BR|BR012|PINHAIS", country => "Brazil" },
"pinsk, by" => { location => "EUR|BY|BO001|PINSK", country => "Belarus" },
"piracicaba, br" => { location => "SAM|BR|BR023|PIRACICABA", country => "Brazil" },
"piraievs, gr" => { location => "EUR|GR|GR007|PIRAIÉVS", country => "Greece" },
"pitesti, ro" => { location => "EUR|RO|RO003|PITESTI", country => "Romania" },
"pittsburgh, pa, us" => { location => "NAM|US|PA|PITTSBURGH", country => "United States" },
"piura, pe" => { location => "SAM|PE|PE020|PIURA", country => "Peru" },
"plano, tx, us" => { location => "NAM|US|TX|PLANO", country => "United States" },
"plettenberg bay, za" => { location => "AFR|ZA|SF011|PLETTENBERG BAY", country => "South Africa" },
"plock, pl" => { location => "EUR|PL|PL007|PLOCK", country => "Poland" },
"ploiesti, ro" => { location => "EUR|RO|RO031|PLOIESTI", country => "Romania" },
"plovdiv, bg" => { location => "EUR|BG|BU013|PLOVDIV", country => "Bulgaria" },
"plymouth, ms" => { location => "CAC|MS|MH001|PLYMOUTH", country => "Montserrat" },
"plymouth, uk" => { location => "EUR|UK|UK001|PLYMOUTH", country => "United Kingdom" },
"plzen, cz" => { location => "EUR|CZ|EZ008|PLZEN", country => "Czech Republic" },
"pocos de caldas, br" => { location => "SAM|BR|BR012|POÇOS DE CALDAS", country => "Brazil" },
"podgorica, cs" => { location => "EUR|CS|YI002|PODGORICA", country => "Montenegro" },
"podolsk, ru" => { location => "ASI|RU|RS051|PODOLSK", country => "Russia" },
"pohang, kr" => { location => "ASI|KR|KS010|POHANG", country => "South Korea" },
"pointe-noire, ga" => { location => "AFR|GA|GB003|POINTE-NOIRE", country => "Gabon" },
"pollachi, in" => { location => "ASI|IN|IN031|POLLACHI", country => "India" },
"polokwane, za" => { location => "AFR|ZA|SF009|POLOKWANE", country => "South Africa" },
"poltava, ua" => { location => "EUR|UA|UP026|POLTAVA", country => "Ukraine" },
"pomona, ca, us" => { location => "NAM|US|CA|POMONA", country => "United States" },
"ponce, pr" => { location => "CAC|PR|PR000|PONCE", country => "Puerto Rico" },
"pondicherry, in" => { location => "ASI|IN|IN027|PONDICHERRY", country => "India" },
"ponta delgada, pt" => { location => "EUR|PT|PO002|PONTA DELGADA", country => "Portugal" },
"ponta do ouro, mz" => { location => "AFR|MZ|MZ005|PONTA DO OURO", country => "Mozambique" },
"ponta grossa, br" => { location => "SAM|BR|BR015|PONTA GROSSA", country => "Brazil" },
"pontianak, id" => { location => "ASI|ID|ID006|PONTIANAK", country => "Indonesia" },
"poole, uk" => { location => "EUR|UK|UK001|POOLE", country => "United Kingdom" },
"popayan, co" => { location => "SAM|CO|CO007|POPAYAN", country => "Colombia" },
"porbandar, in" => { location => "ASI|IN|IN012|PORBANDAR", country => "India" },
"port alfred, za" => { location => "AFR|ZA|SF002|PORT ALFRED", country => "South Africa" },
"port bell, ug" => { location => "AFR|UG|UG000|PORT BELL", country => "Uganda" },
"port elizabeth, za" => { location => "AFR|ZA|SF002|PORT ELIZABETH", country => "South Africa" },
"port harcourt, ng" => { location => "AFR|NG|NI031|PORT HARCOURT", country => "Nigeria" },
"port louis, mu" => { location => "AFR|MU|MP009|PORT LOUIS", country => "Mauritius" },
"port moresby, pg" => { location => "OCN|PG|PP013|PORT MORESBY", country => "Papua New Guinea" },
"port said, eg" => { location => "AFR|EG|EG019|PORT SAID", country => "Egypt" },
"port saint lucie, fl, us" => { location => "NAM|US|FL|PORT SAINT LUCIE", country => "United States" },
"port shepstone, za" => { location => "AFR|ZA|SF005|PORT SHEPSTONE", country => "South Africa" },
"port st. johns, za" => { location => "AFR|ZA|SF002|PORT ST. JOHNS", country => "South Africa" },
"port sudan, sd" => { location => "AFR|SD|SU029|PORT SUDAN", country => "Sudan" },
"portalegre, pt" => { location => "EUR|PT|PO014|PORTALEGRE", country => "Portugal" },
"port-au-prince, ht" => { location => "CAC|HT|HA007|PORT-AU-PRINCE", country => "Haiti" },
"portland, or, us" => { location => "NAM|US|OR|PORTLAND", country => "United States" },
"porto, pt" => { location => "EUR|PT|PO015|PORTO", country => "Portugal" },
"porto alegre, br" => { location => "SAM|BR|BR019|PORTO ALEGRE", country => "Brazil" },
"porto velho, br" => { location => "SAM|BR|BR020|PORTO VELHO", country => "Brazil" },
"port-of-spain, tt" => { location => "CAC|TT|TD005|PORT-OF-SPAIN", country => "Trinidad And Tobago" },
"porto-novo, bj" => { location => "AFR|BJ|BN000|PORTO-NOVO", country => "Benin" },
"portoviejo, ec" => { location => "SAM|EC|EC014|PORTOVIEJO", country => "Ecuador" },
"portsmouth, uk" => { location => "EUR|UK|UK001|PORTSMOUTH", country => "United Kingdom" },
"portsmouth, va, us" => { location => "NAM|US|VA|PORTSMOUTH", country => "United States" },
"posadas, ar" => { location => "SAM|AR|AR014|POSADAS", country => "Argentina" },
"postmasburg, za" => { location => "AFR|ZA|SF008|POSTMASBURG", country => "South Africa" },
"potchefstroom, za" => { location => "AFR|ZA|SF007|POTCHEFSTROOM", country => "South Africa" },
"potgietersrus, za" => { location => "AFR|ZA|SF009|POTGIETERSRUS", country => "South Africa" },
"potosi, bo" => { location => "SAM|BO|BL007|POTOSÍ", country => "Bolivia" },
"potsdam, de" => { location => "EUR|DE|GM004|POTSDAM", country => "Germany" },
"pouso alegre, br" => { location => "SAM|BR|BR012|POUSO ALEGRE", country => "Brazil" },
"poza rica de hidalgo, mx" => { location => "NAM|MX|MX030|POZA RICA DE HIDALGO", country => "Mexico" },
"poznan, pl" => { location => "EUR|PL|PL015|POZNAN", country => "Poland" },
"praha, cz" => { location => "EUR|CZ|EZ001|PRAHA", country => "Czech Republic" },
"praia, cv" => { location => "AFR|CV|CV000|PRAIA", country => "Cape Verde" },
"praia grande, br" => { location => "SAM|BR|BR023|PRAIA GRANDE", country => "Brazil" },
"prato, it" => { location => "EUR|IT|IT016|PRATO", country => "Italy" },
"presidente prudente, br" => { location => "SAM|BR|BR023|PRESIDENTE PRUDENTE", country => "Brazil" },
"preston, uk" => { location => "EUR|UK|UK001|PRESTON", country => "United Kingdom" },
"pretoria, za" => { location => "AFR|ZA|SF004|PRETORIA", country => "South Africa" },
"prieska, za" => { location => "AFR|ZA|SF008|PRIESKA", country => "South Africa" },
"prijedor, ba" => { location => "EUR|BA|BK002|PRIJEDOR", country => "Bosnia And Herzegovina" },
"probolinggo, id" => { location => "ASI|ID|ID007|PROBOLINGGO", country => "Indonesia" },
"proddatur, in" => { location => "ASI|IN|IN002|PRODDATUR", country => "India" },
"prokpyevsk, ru" => { location => "ASI|RU|RS031|PROKPYEVSK", country => "Russia" },
"providence, ri, us" => { location => "NAM|US|RI|PROVIDENCE", country => "United States" },
"provo, ut, us" => { location => "NAM|US|UT|PROVO", country => "United States" },
"pskov, ru" => { location => "ASI|RU|RS064|PSKOV", country => "Russia" },
"pucallpa, pe" => { location => "SAM|PE|PE025|PUCALLPA", country => "Peru" },
"puebla de zaragoza, mx" => { location => "NAM|MX|MX021|PUEBLA DE ZARAGOZA", country => "Mexico" },
"pueblo, co, us" => { location => "NAM|US|CO|PUEBLO", country => "United States" },
"puente alto, cl" => { location => "SAM|CL|CI011|PUENTE ALTO", country => "Chile" },
"puerto cabello, ve" => { location => "SAM|VE|VE007|PUERTO CABELLO", country => "Venezuela" },
"puerto montt, cl" => { location => "SAM|CL|CI008|PUERTO MONTT", country => "Chile" },
"puerto princesa, ph" => { location => "ASI|PH|RP099|PUERTO PRINCESA", country => "Philippines" },
"pune, in" => { location => "ASI|IN|IN021|PUNE", country => "India" },
"punta arenas, cl" => { location => "SAM|CL|CI009|PUNTA ARENAS", country => "Chile" },
"punto fijo, ve" => { location => "SAM|VE|VE012|PUNTO FIJO", country => "Venezuela" },
"puqi, cn" => { location => "ASI|CN|CH013|PUQI", country => "China" },
"puri, in" => { location => "ASI|IN|IN026|PURI", country => "India" },
"purnia, in" => { location => "ASI|IN|IN005|PURNIA", country => "India" },
"pusan, kr" => { location => "ASI|KR|KS012|PUSAN", country => "South Korea" },
"putian, cn" => { location => "ASI|CN|CH004|PUTIAN", country => "China" },
"puyang, cn" => { location => "ASI|CN|CH012|PUYANG", country => "China" },
"pyatigorsk, ru" => { location => "ASI|RU|RS074|PYATIGORSK", country => "Russia" },
"pyongyang, kp" => { location => "ASI|KP|KN000|PYONGYANG", country => "North Korea" },
"qaem shahr, ir" => { location => "MEA|IR|IR021|QAEM SHAHR", country => "Iran" },
"qarchak, ir" => { location => "MEA|IR|IR026|QARCHAK", country => "Iran" },
"qazvin, ir" => { location => "MEA|IR|IR028|QAZVIN", country => "Iran" },
"qianjiang, cn" => { location => "ASI|CN|CH007|QIANJIANG", country => "China" },
"qidong, cn" => { location => "ASI|CN|CH014|QIDONG", country => "China" },
"qingdao, cn" => { location => "ASI|CN|CH023|QINGDAO", country => "China" },
"qingtongxia, cn" => { location => "ASI|CN|CH020|QINGTONGXIA", country => "China" },
"qingyuan, cn" => { location => "ASI|CN|CH018|QINGYUAN", country => "China" },
"qingzhou, cn" => { location => "ASI|CN|CH004|QINGZHOU", country => "China" },
"qinhuangdao, cn" => { location => "ASI|CN|CH010|QINHUANGDAO", country => "China" },
"qinyang, cn" => { location => "ASI|CN|CH012|QINYANG", country => "China" },
"qinzhou, cn" => { location => "ASI|CN|CH007|QINZHOU", country => "China" },
"qiqihar, cn" => { location => "ASI|CN|CH011|QIQIHAR", country => "China" },
"qitaihe, cn" => { location => "ASI|CN|CH011|QITAIHE", country => "China" },
"qods, ir" => { location => "MEA|IR|IR024|QODS", country => "Iran" },
"qom, ir" => { location => "MEA|IR|IR020|QOM", country => "Iran" },
"quanzhou, cn" => { location => "ASI|CN|CH004|QUANZHOU", country => "China" },
"quebec, ca" => { location => "NAM|CA|QC|QUÉBEC", country => "Canada" },
"queenstown, za" => { location => "AFR|ZA|SF002|QUEENSTOWN", country => "South Africa" },
"queimados, br" => { location => "SAM|BR|BR017|QUEIMADOS", country => "Brazil" },
"quelimane, mz" => { location => "AFR|MZ|MZ010|QUELIMANE", country => "Mozambique" },
"queretaro, mx" => { location => "NAM|MX|MX022|QUERÉTARO", country => "Mexico" },
"quetta, pk" => { location => "ASI|PK|PK002|QUETTA", country => "Pakistan" },
"quevedo, ec" => { location => "SAM|EC|EC013|QUEVEDO", country => "Ecuador" },
"quezon city, ph" => { location => "ASI|PH|RP100|QUEZON CITY", country => "Philippines" },
"qufu, cn" => { location => "ASI|CN|CH023|QUFU", country => "China" },
"qui nhon, vn" => { location => "ASI|VN|VM019|QUI NHON", country => "Vietnam" },
"quilmes, ar" => { location => "SAM|AR|AR001|QUILMES", country => "Argentina" },
"quilpue, cl" => { location => "SAM|CL|CI013|QUILPUÉ", country => "Chile" },
"quito, ec" => { location => "SAM|EC|EC017|QUITO", country => "Ecuador" },
"qujing, cn" => { location => "ASI|CN|CH030|QUJING", country => "China" },
"quzhou, cn" => { location => "ASI|CN|CH010|QUZHOU", country => "China" },
"rabat, ma" => { location => "AFR|MA|MO030|RABAT", country => "Morocco" },
"rach gia, vn" => { location => "ASI|VN|VM060|RACH GIA", country => "Vietnam" },
"radom, pl" => { location => "EUR|PL|PL007|RADOM", country => "Poland" },
"rae bareli, in" => { location => "ASI|IN|IN033|RAE BARELI", country => "India" },
"rahimyar khan, pk" => { location => "ASI|PK|PK007|RAHIMYAR KHAN", country => "Pakistan" },
"raichur, in" => { location => "ASI|IN|IN017|RAICHUR", country => "India" },
"raiganj, in" => { location => "ASI|IN|IN036|RAIGANJ", country => "India" },
"raipur, in" => { location => "ASI|IN|IN033|RAIPUR", country => "India" },
"rajahmundry, in" => { location => "ASI|IN|IN002|RAJAHMUNDRY", country => "India" },
"rajapalaiyam, in" => { location => "ASI|IN|IN031|RAJAPALAIYAM", country => "India" },
"rajkot, in" => { location => "ASI|IN|IN012|RAJKOT", country => "India" },
"rajnandgain, in" => { location => "ASI|IN|IN020|RAJNANDGAIN", country => "India" },
"rajshahi, bd" => { location => "ASI|BD|BG004|RAJSHAHI", country => "Bangladesh" },
"raleigh, nc, us" => { location => "NAM|US|NC|RALEIGH", country => "United States" },
"ramadi, iq" => { location => "MEA|IQ|IZ001|RAMADI", country => "Iraq" },
"ramat gan, il" => { location => "MEA|IL|IS005|RAMAT GAN", country => "Israel" },
"rampur, in" => { location => "ASI|IN|IN036|RAMPUR", country => "India" },
"ranaghat, in" => { location => "ASI|IN|IN036|RANAGHAT", country => "India" },
"rancagua, cl" => { location => "SAM|CL|CI007|RANCAGUA", country => "Chile" },
"ranchi, in" => { location => "ASI|IN|IN005|RANCHI", country => "India" },
"rancho cucamonga, ca, us" => { location => "NAM|US|CA|RANCHO CUCAMONGA", country => "United States" },
"randers, dk" => { location => "EUR|DK|DA001|RANDERS", country => "Denmark" },
"rangpur, bd" => { location => "ASI|BD|BG004|RANGPUR", country => "Bangladesh" },
"rarotonga, ck" => { location => "OCN|CK|CW---|RAROTONGA", country => "Cook Islands" },
"ras al khaimah, ae" => { location => "MEA|AE|AE006|RAS AL KHAIMAH", country => "United Arab Emirates" },
"rasht, ir" => { location => "MEA|IR|IR008|RASHT", country => "Iran" },
"ratlam, in" => { location => "ASI|IN|IN020|RATLAM", country => "India" },
"raurkela, in" => { location => "ASI|IN|IN026|RAURKELA", country => "India" },
"ravenna, it" => { location => "EUR|IT|IT005|RAVENNA", country => "Italy" },
"rawalpindi, pk" => { location => "ASI|PK|PK007|RAWALPINDI", country => "Pakistan" },
"rayong, th" => { location => "ASI|TH|TH052|RAYONG", country => "Thailand" },
"reading, uk" => { location => "EUR|UK|UK001|READING", country => "United Kingdom" },
"recife, br" => { location => "SAM|BR|BR026|RECIFE", country => "Brazil" },
"recklinghausen, de" => { location => "EUR|DE|GM011|RECKLINGHAUSEN", country => "Germany" },
"redbridge, uk" => { location => "EUR|UK|UK001|REDBRIDGE", country => "United Kingdom" },
"regensburg, de" => { location => "EUR|DE|GM002|REGENSBURG", country => "Germany" },
"reggio di calabria, it" => { location => "EUR|IT|IT003|REGGIO DI CALABRIA", country => "Italy" },
"regina, ca" => { location => "NAM|CA|SK|REGINA", country => "Canada" },
"reigate, uk" => { location => "EUR|UK|UK224|REIGATE", country => "United Kingdom" },
"reigate and banstead, uk" => { location => "EUR|UK|UK001|REIGATE AND BANSTEAD", country => "United Kingdom" },
"reims, fr" => { location => "EUR|FR|FR008|REIMS", country => "France" },
"remscheid, de" => { location => "EUR|DE|GM011|REMSCHEID", country => "Germany" },
"rennes, fr" => { location => "EUR|FR|FR006|RENNES", country => "France" },
"reno, nv, us" => { location => "NAM|US|NV|RENO", country => "United States" },
"renqiu, cn" => { location => "ASI|CN|CH010|RENQIU", country => "China" },
"resende, br" => { location => "SAM|BR|BR017|RESENDE", country => "Brazil" },
"resistencia, ar" => { location => "SAM|AR|AR003|RESISTENCIA", country => "Argentina" },
"reutlingen, de" => { location => "EUR|DE|GM001|REUTLINGEN", country => "Germany" },
"rewa, in" => { location => "ASI|IN|IN020|REWA", country => "India" },
"reykjavik, is" => { location => "ARC|IS|IC010|REYKJAVIK", country => "Iceland" },
"reynosa, mx" => { location => "NAM|MX|MX028|REYNOSA", country => "Mexico" },
"rhondda cynon taff, uk" => { location => "EUR|UK|UK004|RHONDDA CYNON TAFF", country => "United Kingdom" },
"ribeirao das neves, br" => { location => "SAM|BR|BR012|RIBEIRAO DAS NEVES", country => "Brazil" },
"ribeirao pires, br" => { location => "SAM|BR|BR023|RIBEIRAO PIRES", country => "Brazil" },
"ribeirao preto, br" => { location => "SAM|BR|BR023|RIBEIRAO PRĘTO", country => "Brazil" },
"richards bay, za" => { location => "AFR|ZA|SF005|RICHARDS BAY", country => "South Africa" },
"richmond, ca" => { location => "NAM|CA|BC|RICHMOND", country => "Canada" },
"richmond, va, us" => { location => "NAM|US|VA|RICHMOND", country => "United States" },
"richmond hill, ca" => { location => "NAM|CA|ON|RICHMOND HILL", country => "Canada" },
"riga, lv" => { location => "EUR|LV|LG026|RIGA", country => "Latvia" },
"rijeka, hr" => { location => "EUR|HR|HR013|RIJEKA", country => "Croatia" },
"rimini, it" => { location => "EUR|IT|IT005|RIMINI", country => "Italy" },
"rimnicu vilcea, ro" => { location => "EUR|RO|RO039|RIMNICU VILCEA", country => "Romania" },
"rio branco, br" => { location => "SAM|BR|BR001|RIO BRANCO", country => "Brazil" },
"rio claro, br" => { location => "SAM|BR|BR017|RIO CLARO", country => "Brazil" },
"rio cuarto, ar" => { location => "SAM|AR|AR005|RÍO CUARTO", country => "Argentina" },
"rio de janeiro, br" => { location => "SAM|BR|BR017|RIO DE JANEIRO", country => "Brazil" },
"rio grande, br" => { location => "SAM|BR|BR019|RIO GRANDE", country => "Brazil" },
"rio verde, br" => { location => "SAM|BR|BR027|RIO VERDE", country => "Brazil" },
"riobamba, ec" => { location => "SAM|EC|EC005|RIOBAMBA", country => "Ecuador" },
"rishon leziyyon, il" => { location => "MEA|IL|IS002|RISHON LEZIYYON", country => "Israel" },
"riversdale, za" => { location => "AFR|ZA|SF011|RIVERSDALE", country => "South Africa" },
"riverside, ca, us" => { location => "NAM|US|CA|RIVERSIDE", country => "United States" },
"riyadh, sa" => { location => "MEA|SA|SA007|RIYADH", country => "Saudi Arabia" },
"rizhao, cn" => { location => "ASI|CN|CH023|RIZHAO", country => "China" },
"road town, vg" => { location => "CAC|VG|VI---|ROAD TOWN", country => "British Virgin Islands" },
"robertson, za" => { location => "AFR|ZA|SF011|ROBERTSON", country => "South Africa" },
"rochdale, uk" => { location => "EUR|UK|UK001|ROCHDALE", country => "United Kingdom" },
"rochester, ny, us" => { location => "NAM|US|NY|ROCHESTER", country => "United States" },
"rock springs, md, us" => { location => "NAM|US|MD|ROCK SPRINGS", country => "United States" },
"rock springs, wy, us" => { location => "NAM|US|WY|ROCK SPRINGS", country => "United States" },
"rockford, il, us" => { location => "NAM|US|IL|ROCKFORD", country => "United States" },
"rohtak, in" => { location => "ASI|IN|IN013|ROHTAK", country => "India" },
"roma, it" => { location => "EUR|IT|IT007|ROMA", country => "Italy" },
"rondonopolis, br" => { location => "SAM|BR|BR010|RONDONÓPOLIS", country => "Brazil" },
"rongcheng, cn" => { location => "ASI|CN|CH010|RONGCHENG", country => "China" },
"roodepoort, za" => { location => "AFR|ZA|SF004|ROODEPOORT", country => "South Africa" },
"rosario, ar" => { location => "SAM|AR|AR021|ROSARIO", country => "Argentina" },
"roseau, dm" => { location => "CAC|DM|DO003|ROSEAU", country => "Dominica" },
"roskilde, dk" => { location => "EUR|DK|DA010|ROSKILDE", country => "Denmark" },
"rostock, de" => { location => "EUR|DE|GM010|ROSTOCK", country => "Germany" },
"rostov-na-donu, ru" => { location => "ASI|RU|RS065|ROSTOV-NA-DONU", country => "Russia" },
"roswell, nm, us" => { location => "NAM|US|NM|Roswell", country => "United States" },
"rotherham, uk" => { location => "EUR|UK|UK001|ROTHERHAM", country => "United Kingdom" },
"rotterdam, nl" => { location => "EUR|NL|NL012|ROTTERDAM", country => "Netherlands" },
"rouen, fr" => { location => "EUR|FR|FR011|ROUEN", country => "France" },
"rousse, bg" => { location => "EUR|BG|BU015|ROUSSÉ", country => "Bulgaria" },
"rovno, ua" => { location => "EUR|UA|UP016|ROVNO", country => "Ukraine" },
"roxas, ph" => { location => "ASI|PH|RP027|ROXAS", country => "Philippines" },
"rubtsovsk, ru" => { location => "ASI|RU|RS003|RUBTSOVSK", country => "Russia" },
"ruda slaska, pl" => { location => "EUR|PL|PL012|RUDA SLASKA", country => "Poland" },
"ruian, cn" => { location => "ASI|CN|CH004|RUIAN", country => "China" },
"ruichang, cn" => { location => "ASI|CN|CH016|RUICHANG", country => "China" },
"rustavi, ge" => { location => "ASI|GE|GG000|RUSTAVI", country => "Georgia" },
"rustenburg, za" => { location => "AFR|ZA|SF007|RUSTENBURG", country => "South Africa" },
"ruzhou, cn" => { location => "ASI|CN|CH004|RUZHOU", country => "China" },
"rybinsk, ru" => { location => "ASI|RU|RS079|RYBINSK", country => "Russia" },
"rybnik, pl" => { location => "EUR|PL|PL012|RYBNIK", country => "Poland" },
"ryzan, ru" => { location => "ASI|RU|RS066|RYZAN", country => "Russia" },
"rzeszow, pl" => { location => "EUR|PL|PL009|RZESZÓW", country => "Poland" },
"saarbrucken, de" => { location => "EUR|DE|GM013|SAARBRÜCKEN", country => "Germany" },
"sabadell, es" => { location => "EUR|ES|SP008|SABADELL", country => "Spain" },
"sabara, br" => { location => "SAM|BR|BR012|SABÁRA", country => "Brazil" },
"sabie, za" => { location => "AFR|ZA|SF006|SABIE", country => "South Africa" },
"sacramento, ca, us" => { location => "NAM|US|CA|SACRAMENTO", country => "United States" },
"sadiqabad, pk" => { location => "ASI|PK|PK007|SADIQABAD", country => "Pakistan" },
"saelen, se" => { location => "EUR|SE|SW002|SAELEN", country => "Sweden" },
"safi, ma" => { location => "AFR|MA|MO031|SAFI", country => "Morocco" },
"saga, jp" => { location => "ASI|JP|JA020|SAGA", country => "Japan" },
"sagamihara, jp" => { location => "ASI|JP|JA019|SAGAMIHARA", country => "Japan" },
"saharanpur, in" => { location => "ASI|IN|IN033|SAHARANPUR", country => "India" },
"sahiwal, pk" => { location => "ASI|PK|PK007|SAHIWAL", country => "Pakistan" },
"saidpur, bd" => { location => "ASI|BD|BG004|SAIDPUR", country => "Bangladesh" },
"saint catharines, ca" => { location => "NAM|CA|ON|SAINT CATHARINES", country => "Canada" },
"saint etienne, fr" => { location => "EUR|FR|FR022|SAINT-ÉTIENNE", country => "France" },
"saint francis, za" => { location => "AFR|ZA|SF002|SAINT FRANCIS", country => "South Africa" },
"saint george's, gd" => { location => "CAC|GD|GJ003|SAINT GEORGE'S", country => "Grenada" },
"saint john, ag" => { location => "CAC|AG|AC003|SAINT JOHN", country => "Antigua And Barbuda" },
"saint john, ca" => { location => "NAM|CA|NB|SAINT JOHN", country => "Canada" },
"saint john's, ca" => { location => "NAM|CA|QC|SAINT JOHN'S", country => "Canada" },
"saint louis, sn" => { location => "AFR|SN|SG000|SAINT LOUIS", country => "Senegal" },
"saint louis, mo, us" => { location => "NAM|US|MO|SAINT LOUIS", country => "United States" },
"saint lucia, za" => { location => "AFR|ZA|SF005|SAINT LUCIA", country => "South Africa" },
"saint paul, mn, us" => { location => "NAM|US|MN|SAINT PAUL", country => "United States" },
"saint petersburg, ru" => { location => "ASI|RU|RS073|SAINT PETERSBURG", country => "Russia" },
"saint-denis, re" => { location => "AFR|RE|RE---|SAINT-DENIS", country => "Reunion" },
"saint-pierre, pm" => { location => "NAM|PM|SB000|SAINT-PIERRE", country => "Saint Pierre And Miquelon" },
"sakai, jp" => { location => "ASI|JP|JA014|SAKAI", country => "Japan" },
"sakarya, tr" => { location => "MEA|TR|TU065|SAKARYA", country => "Turkey" },
"salamanca, mx" => { location => "NAM|MX|MX011|SALAMANCA", country => "Mexico" },
"salamanca, es" => { location => "EUR|ES|SP007|SALAMANCA", country => "Spain" },
"salavat, ru" => { location => "ASI|RU|RS007|SALAVAT", country => "Russia" },
"saldanha, za" => { location => "AFR|ZA|SF011|SALDANHA", country => "South Africa" },
"sale, ma" => { location => "AFR|MA|MO030|SALÉ", country => "Morocco" },
"salem, in" => { location => "ASI|IN|IN031|SALEM", country => "India" },
"salem, or, us" => { location => "NAM|US|OR|SALEM", country => "United States" },
"salerno, it" => { location => "EUR|IT|IT003|SALERNO", country => "Italy" },
"salford, uk" => { location => "EUR|UK|UK001|SALFORD", country => "United Kingdom" },
"salinas, ca, us" => { location => "NAM|US|CA|SALINAS", country => "United States" },
"salisbury, uk" => { location => "EUR|UK|UK001|SALISBURY", country => "United Kingdom" },
"salonika, gr" => { location => "EUR|GR|GR048|SALONIKA", country => "Greece" },
"salt lake city, ut, us" => { location => "NAM|US|UT|SALT LAKE CITY", country => "United States" },
"salta, ar" => { location => "SAM|AR|AR017|SALTA", country => "Argentina" },
"saltillo, mx" => { location => "NAM|MX|MX007|SALTILLO", country => "Mexico" },
"salvador, br" => { location => "SAM|BR|BR005|SALVADOR", country => "Brazil" },
"salzburg, at" => { location => "EUR|AT|AU005|SALZBURG", country => "Austria" },
"salzgitter, de" => { location => "EUR|DE|GM009|SALZGITTER", country => "Germany" },
"samara, ru" => { location => "ASI|RU|RS068|SAMARA", country => "Russia" },
"samarinda, id" => { location => "ASI|ID|ID013|SAMARINDA", country => "Indonesia" },
"samarkand, uz" => { location => "ASI|UZ|UZ010|SAMARKAND", country => "Uzbekistan" },
"sambalpur, in" => { location => "ASI|IN|IN026|SAMBALPUR", country => "India" },
"sambhal, in" => { location => "ASI|IN|IN033|SAMBHAL", country => "India" },
"samsun, tr" => { location => "MEA|TR|TU066|SAMSUN", country => "Turkey" },
"samut prakan, th" => { location => "ASI|TH|TH056|SAMUT PRAKAN", country => "Thailand" },
"samut sakhon, th" => { location => "ASI|TH|TH057|SAMUT SAKHON", country => "Thailand" },
"san antonio, tx, us" => { location => "NAM|US|TX|SAN ANTONIO", country => "United States" },
"san bernardino, ca, us" => { location => "NAM|US|CA|SAN BERNARDINO", country => "United States" },
"san bernardo, cl" => { location => "SAM|CL|CI011|SAN BERNARDO", country => "Chile" },
"san carlos, ph" => { location => "ASI|PH|RP107|SAN CARLOS", country => "Philippines" },
"san cristobal, ve" => { location => "SAM|VE|VE021|SAN CRISTÓBAL", country => "Venezuela" },
"san diego, ca, us" => { location => "NAM|US|CA|SAN DIEGO", country => "United States" },
"san fernando, ar" => { location => "SAM|AR|AR001|SAN FERNANDO", country => "Argentina" },
"san francisco, ca, us" => { location => "NAM|US|CA|SAN FRANCISCO", country => "United States" },
"san isidro, ar" => { location => "SAM|AR|AR001|SAN ISIDRO", country => "Argentina" },
"san jose, cr" => { location => "CAC|CR|CS007|SAN JOSE", country => "Costa Rica" },
"san jose, ca, us" => { location => "NAM|US|CA|SAN JOSE", country => "United States" },
"san juan, ar" => { location => "SAM|AR|AR018|SAN JUAN", country => "Argentina" },
"san juan, pr" => { location => "CAC|PR|PR000|SAN JUAN", country => "Puerto Rico" },
"san lorenzo, py" => { location => "SAM|PY|PA008|SAN LORENZO", country => "Paraguay" },
"san luis potosi, mx" => { location => "NAM|MX|MX024|SAN LUIS POTOSÍ", country => "Mexico" },
"san marino, sm" => { location => "EUR|SM|SM008|SAN MARINO", country => "San Marino" },
"san martin, sv" => { location => "CAC|SV|ES010|SAN MARTIN", country => "El Salvador" },
"san miguel, sv" => { location => "CAC|SV|ES010|SAN MIGUEL", country => "El Salvador" },
"san miguelito, pa" => { location => "CAC|PA|PM008|SAN MIGUELITO", country => "Panama" },
"san nicolas, ar" => { location => "SAM|AR|AR001|SAN NICOLÁS", country => "Argentina" },
"san pablo, ph" => { location => "ASI|PH|RP110|SAN PABLO", country => "Philippines" },
"san pedro de macoris, do" => { location => "CAC|DO|DR026|SAN PEDRO DE MACORIS", country => "Dominican Republic" },
"san pedro sula, hn" => { location => "CAC|HN|HO006|SAN PEDRO SULA", country => "Honduras" },
"san salvador, sv" => { location => "CAC|SV|ES010|SAN SALVADOR", country => "El Salvador" },
"san salvador de jujuy, ar" => { location => "SAM|AR|AR010|SAN SALVADOR DE JUJUY", country => "Argentina" },
"san sebastian, es" => { location => "EUR|ES|SP011|SAN SEBASTIÁN", country => "Spain" },
"sanaa, ye" => { location => "MEA|YE|YM000|SANAA", country => "Yemen" },
"sanandaj, ir" => { location => "MEA|IR|IR018|SANANDAJ", country => "Iran" },
"sancti spiritus, cu" => { location => "CAC|CU|CU013|SANCTI SPÍRITUS", country => "Cuba" },
"sanda, jp" => { location => "ASI|JP|JA013|SANDA", country => "Japan" },
"sandakan, my" => { location => "ASI|MY|MY011|SANDAKAN", country => "Malaysia" },
"sandton, za" => { location => "AFR|ZA|SF004|SANDTON", country => "South Africa" },
"sandwell, uk" => { location => "EUR|UK|UK001|SANDWELL", country => "United Kingdom" },
"sangli, in" => { location => "ASI|IN|IN021|SANGLI", country => "India" },
"sanmenxia, cn" => { location => "ASI|CN|CH012|SANMENXIA", country => "China" },
"sanming, cn" => { location => "ASI|CN|CH004|SANMING", country => "China" },
"santa ana, sv" => { location => "CAC|SV|ES012|SANTA ANA", country => "El Salvador" },
"santa ana, ca, us" => { location => "NAM|US|CA|SANTA ANA", country => "United States" },
"santa clara, cu" => { location => "CAC|CU|CU015|SANTA CLARA", country => "Cuba" },
"santa clara, ca, us" => { location => "NAM|US|CA|SANTA CLARA", country => "United States" },
"santa clarita, ca, us" => { location => "NAM|US|CA|SANTA CLARITA", country => "United States" },
"santa coloma de gramanet, es" => { location => "EUR|ES|SP008|SANTA COLOMA DE GRAMANET", country => "Spain" },
"santa cruz, bo" => { location => "SAM|BO|BL003|SANTA CRUZ", country => "Bolivia" },
"santa cruz de tenerife, es" => { location => "EUR|ES|SP018|SANTA CRUZ DE TENERIFE", country => "Spain" },
"santa cruz do sul, br" => { location => "SAM|BR|BR019|SANTA CRUZ DO SUL", country => "Brazil" },
"santa fe, ar" => { location => "SAM|AR|AR021|SANTA FÉ", country => "Argentina" },
"santa fe, nm, us" => { location => "NAM|US|NM|SANTA FE", country => "United States" },
"santa fe de bogota, co" => { location => "SAM|CO|CO000|SANTA FE DE BOGOTA", country => "Colombia" },
"santa luzia, br" => { location => "SAM|BR|BR014|SANTA LUZIA", country => "Brazil" },
"santa maria, br" => { location => "SAM|BR|BR019|SANTA MARIA", country => "Brazil" },
"santa marta, co" => { location => "SAM|CO|CO018|SANTA MARTA", country => "Colombia" },
"santa rita, br" => { location => "SAM|BR|BR014|SANTA RITA", country => "Brazil" },
"santa rosa, ca, us" => { location => "NAM|US|CA|SANTA ROSA", country => "United States" },
"santander, es" => { location => "EUR|ES|SP005|SANTANDER", country => "Spain" },
"santarem, br" => { location => "SAM|BR|BR013|SANTARÉM", country => "Brazil" },
"santarém, pt" => { location => "EUR|PT|PO016|SANTARÉM", country => "Portugal" },
"santiago, cl" => { location => "SAM|CL|CI011|SANTIAGO", country => "Chile" },
"santiago de cuba, cu" => { location => "CAC|CU|CU014|SANTIAGO DE CUBA", country => "Cuba" },
"santiago de los caballeros, do" => { location => "CAC|DO|DR028|SANTIAGO DE LOS CABALLEROS", country => "Dominican Republic" },
"santiago del estero, ar" => { location => "SAM|AR|AR022|SANTIAGO DEL ESTERO", country => "Argentina" },
"santipur, in" => { location => "ASI|IN|IN036|SANTIPUR", country => "India" },
"santo andre, br" => { location => "SAM|BR|BR023|SANTO ANDRÉ", country => "Brazil" },
"santo domingo, do" => { location => "CAC|DO|DR005|SANTO DOMINGO", country => "Dominican Republic" },
"santo domingo de los colorados, ec" => { location => "SAM|EC|EC017|SANTO DOMINGO DE LOS COLORADOS", country => "Ecuador" },
"santos, br" => { location => "SAM|BR|BR023|SANTOS", country => "Brazil" },
"sanya, cn" => { location => "ASI|CN|CH009|SANYA", country => "China" },
"sao bernardo do campo, br" => { location => "SAM|BR|BR023|SAO BERNARDO DO CAMPO", country => "Brazil" },
"sao caetano do sul, br" => { location => "SAM|BR|BR023|SAO CAETANO DO SUL", country => "Brazil" },
"sao goncalo, br" => { location => "SAM|BR|BR014|SAO GONÇALO", country => "Brazil" },
"sao joao de meriti, br" => { location => "SAM|BR|BR017|SAO JOAO DE MERITI", country => "Brazil" },
"sao jose do rio preto, br" => { location => "SAM|BR|BR017|SAO JOSÉ DO RIO PRĘTO", country => "Brazil" },
"sao jose dos campos, br" => { location => "SAM|BR|BR012|SAO JOSÉ DOS CAMPOS", country => "Brazil" },
"sao jose dos pinhais, br" => { location => "SAM|BR|BR015|SAO JOSÉ DOS PINHAIS", country => "Brazil" },
"sao leopoldo, br" => { location => "SAM|BR|BR019|SAO LEOPOLDO", country => "Brazil" },
"sao paulo, br" => { location => "SAM|BR|BR023|SAO PAULO", country => "Brazil" },
"sao tome, st" => { location => "AFR|ST|TP002|SAO TOME", country => "Sao Tome And Principe" },
"sao vicente, br" => { location => "SAM|BR|BR023|SAO VICENTE", country => "Brazil" },
"sapporo, jp" => { location => "ASI|JP|JA012|SAPPORO", country => "Japan" },
"saraburi, th" => { location => "ASI|TH|TH059|SARABURI", country => "Thailand" },
"sarajevo, ba" => { location => "EUR|BA|BK001|SARAJEVO", country => "Bosnia And Herzegovina" },
"saransk, ru" => { location => "ASI|RU|RS050|SARANSK", country => "Russia" },
"saratov, ru" => { location => "ASI|RU|RS059|SARATOV", country => "Russia" },
"sargodha, pk" => { location => "ASI|PK|PK007|SARGODHA", country => "Pakistan" },
"sari, ir" => { location => "MEA|IR|IR021|SARI", country => "Iran" },
"sariwon, kp" => { location => "ASI|KP|KN004|SARIWON", country => "North Korea" },
"sasebo, jp" => { location => "ASI|JP|JA027|SASEBO", country => "Japan" },
"saskatoon, ca" => { location => "NAM|CA|SK|SASKATOON", country => "Canada" },
"sasolburg, za" => { location => "AFR|ZA|SF003|SASOLBURG", country => "South Africa" },
"sassari, it" => { location => "EUR|IT|IT014|SASSARI", country => "Italy" },
"satna, in" => { location => "ASI|IN|IN020|SATNA", country => "India" },
"satu-mare, ro" => { location => "EUR|RO|RO033|SATU-MARE", country => "Romania" },
"savannah, ga, us" => { location => "NAM|US|GA|SAVANNAH", country => "United States" },
"sayama, jp" => { location => "ASI|JP|JA035|SAYAMA", country => "Japan" },
"scarborough, ca" => { location => "NAM|CA|ON|SCARBOROUGH", country => "Canada" },
"scarborough, uk" => { location => "EUR|UK|UK001|SCARBOROUGH", country => "United Kingdom" },
"schwerin, de" => { location => "EUR|DE|GM010|SCHWERIN", country => "Germany" },
"scottsdale, az, us" => { location => "NAM|US|AZ|SCOTTSDALE", country => "United States" },
"seattle, wa, us" => { location => "NAM|US|WA|SEATTLE", country => "United States" },
"sebha, ly" => { location => "AFR|LY|LY018|SEBHA", country => "Libya" },
"sedgefield, za" => { location => "AFR|ZA|SF011|SEDGEFIELD", country => "South Africa" },
"sefton, uk" => { location => "EUR|UK|UK001|SEFTON", country => "United Kingdom" },
"sekondi-takoradi, gh" => { location => "AFR|GH|GH000|SEKONDI-TAKORADI", country => "Ghana" },
"selebi-phikwe, bw" => { location => "AFR|BW|BC001|SELEBI-PHIKWE", country => "Botswana" },
"semarang, id" => { location => "ASI|ID|ID004|SEMARANG", country => "Indonesia" },
"semipalatinsk, kz" => { location => "ASI|KZ|KZ014|SEMIPALATINSK", country => "Kazakhstan" },
"sendai, jp" => { location => "ASI|JP|JA018|SENDAI", country => "Japan" },
"seoul, kr" => { location => "ASI|KR|KS013|SEOUL", country => "South Korea" },
"serampore, in" => { location => "ASI|IN|IN036|SERAMPORE", country => "India" },
"seremban, my" => { location => "ASI|MY|MY006|SEREMBAN", country => "Malaysia" },
"serowe, bw" => { location => "AFR|BW|BC000|SEROWE", country => "Botswana" },
"serpukhov, ru" => { location => "ASI|RU|RS051|SERPUKHOV", country => "Russia" },
"serra, br" => { location => "SAM|BR|BR023|SERRA", country => "Brazil" },
"sertaozinho, br" => { location => "SAM|BR|BR023|SERTAOZINHO", country => "Brazil" },
"sete lagoas, br" => { location => "SAM|BR|BR012|SETE LAGOAS", country => "Brazil" },
"setif, dz" => { location => "AFR|DZ|AG037|SETIF", country => "Algeria" },
"seto, jp" => { location => "ASI|JP|JA001|SETO", country => "Japan" },
"setúbal, pt" => { location => "EUR|PT|PO017|SETÚBAL", country => "Portugal" },
"sevastopol, ua" => { location => "EUR|UA|UP011|SEVASTOPOL", country => "Ukraine" },
"sevenoaks, uk" => { location => "EUR|UK|UK001|SEVENOAKS", country => "United Kingdom" },
"severodonetsk, ua" => { location => "EUR|UA|UP012|SEVERODONETSK", country => "Ukraine" },
"severodvinsk, ru" => { location => "ASI|RU|RS005|SEVERODVINSK", country => "Russia" },
"seversk, ru" => { location => "ASI|RU|RS079|SEVERSK", country => "Russia" },
"sevilla, es" => { location => "EUR|ES|SP001|SEVILLA", country => "Spain" },
"sfax, tn" => { location => "AFR|TN|TS015|SFAX", country => "Tunisia" },
"s-gravenhage, nl" => { location => "EUR|NL|NL012|S-GRAVENHAGE", country => "Netherlands" },
"shah alam, my" => { location => "ASI|MY|MY000|SHAH ALAM", country => "Malaysia" },
"shahe, cn" => { location => "ASI|CN|CH001|SHAHE", country => "China" },
"shahjahanpur, in" => { location => "ASI|IN|IN033|SHAHJAHANPUR", country => "India" },
"shahrud, ir" => { location => "MEA|IR|IR024|SHAHRUD", country => "Iran" },
"shakhty, ru" => { location => "ASI|RU|RS065|SHAKHTY", country => "Russia" },
"shanghai, cn" => { location => "ASI|CN|CH024|SHANGHAI", country => "China" },
"shangluo, cn" => { location => "ASI|CN|CH022|SHANGLUO", country => "China" },
"shangqiu, cn" => { location => "ASI|CN|CH012|SHANGQIU", country => "China" },
"shangrao, cn" => { location => "ASI|CN|CH016|SHANGRAO", country => "China" },
"shangzhi, cn" => { location => "ASI|CN|CH011|SHANGZHI", country => "China" },
"shangzhou, cn" => { location => "ASI|CN|CH026|SHANGZHOU", country => "China" },
"shantou, cn" => { location => "ASI|CN|CH006|SHANTOU", country => "China" },
"shanwei, cn" => { location => "ASI|CN|CH004|SHANWEI", country => "China" },
"shaoguan, cn" => { location => "ASI|CN|CH006|SHAOGUAN", country => "China" },
"shaowu, cn" => { location => "ASI|CN|CH004|SHAOWU", country => "China" },
"shaoxing, cn" => { location => "ASI|CN|CH031|SHAOXING", country => "China" },
"shaoyang, cn" => { location => "ASI|CN|CH014|SHAOYANG", country => "China" },
"sharjah, ae" => { location => "MEA|AE|AE004|SHARJAH", country => "United Arab Emirates" },
"shashi, cn" => { location => "ASI|CN|CH001|SHASHI", country => "China" },
"shchelkovo, ru" => { location => "ASI|RU|RS051|SHCHELKOVO", country => "Russia" },
"sheffield, uk" => { location => "EUR|UK|UK001|SHEFFIELD", country => "United Kingdom" },
"shenyang, cn" => { location => "ASI|CN|CH018|SHENYANG", country => "China" },
"shenzhen, cn" => { location => "ASI|CN|CH031|SHENZHEN", country => "China" },
"sherbrooke, ca" => { location => "NAM|CA|NS|SHERBROOKE", country => "Canada" },
"s-hertogenbosch, nl" => { location => "EUR|NL|NL007|S-HERTOGENBOSCH", country => "Netherlands" },
"shihezi, cn" => { location => "ASI|CN|CH028|SHIHEZI", country => "China" },
"shijiazhuang, cn" => { location => "ASI|CN|CH010|SHIJIAZHUANG", country => "China" },
"shillong, in" => { location => "ASI|IN|IN023|SHILLONG", country => "India" },
"shimizu, jp" => { location => "ASI|JP|JA029|SHIMIZU", country => "Japan" },
"shimoga, in" => { location => "ASI|IN|IN017|SHIMOGA", country => "India" },
"shimonoseki, jp" => { location => "ASI|JP|JA046|SHIMONOSEKI", country => "Japan" },
"shinyanga, tz" => { location => "AFR|TZ|TZ000|SHINYANGA", country => "Tanzania" },
"shiraz, ir" => { location => "MEA|IR|IR007|SHIRAZ", country => "Iran" },
"shishi, cn" => { location => "ASI|CN|CH004|SHISHI", country => "China" },
"shishou, cn" => { location => "ASI|CN|CH013|SHISHOU", country => "China" },
"shiyan, cn" => { location => "ASI|CN|CH013|SHIYAN", country => "China" },
"shizuishan, cn" => { location => "ASI|CN|CH020|SHIZUISHAN", country => "China" },
"shizuoka, jp" => { location => "ASI|JP|JA038|SHIZUOKA", country => "Japan" },
"shreveport, la, us" => { location => "NAM|US|LA|SHREVEPORT", country => "United States" },
"shuangcheng, cn" => { location => "ASI|CN|CH011|SHUANGCHENG", country => "China" },
"sibiu, ro" => { location => "EUR|RO|RO034|SIBIU", country => "Romania" },
"sibu, my" => { location => "ASI|MY|MY012|SIBU", country => "Malaysia" },
"sidi-bel-abbes, dz" => { location => "AFR|DZ|AG038|SIDI-BEL-ABBES", country => "Algeria" },
"sidon, lb" => { location => "MEA|LB|LE000|SIDON", country => "Lebanon" },
"siegen, de" => { location => "EUR|DE|GM011|SIEGEN", country => "Germany" },
"siirt, tr" => { location => "MEA|TR|TU000|SIIRT", country => "Turkey" },
"sikar, in" => { location => "ASI|IN|IN029|SIKAR", country => "India" },
"silay, ph" => { location => "ASI|PH|RP111|SILAY", country => "Philippines" },
"silchar, in" => { location => "ASI|IN|IN004|SILCHAR", country => "India" },
"siliguri, in" => { location => "ASI|IN|IN036|SILIGURI", country => "India" },
"silkeborg, dk" => { location => "EUR|DK|DA001|SILKEBORG", country => "Denmark" },
"simferopol, ua" => { location => "EUR|UA|UP011|SIMFEROPOL", country => "Ukraine" },
"simi valley, ca, us" => { location => "NAM|US|CA|SIMI VALLEY", country => "United States" },
"sincelejo, co" => { location => "SAM|CO|CO025|SINCELEJO", country => "Colombia" },
"singapore, sg" => { location => "ASI|SG|SN---|SINGAPORE", country => "Singapore" },
"sioux falls, sd, us" => { location => "NAM|US|SD|SIOUX FALLS", country => "United States" },
"siracusa, it" => { location => "EUR|IT|IT015|SIRACUSA", country => "Italy" },
"sirjan, ir" => { location => "MEA|IR|IR013|SIRJAN", country => "Iran" },
"sirsa, in" => { location => "ASI|IN|IN013|SIRSA", country => "India" },
"sitapur, in" => { location => "ASI|IN|IN033|SITAPUR", country => "India" },
"sittwe, mm" => { location => "ASI|MM|BM010|SITTWE", country => "Burma/Myanmar" },
"sivakasi, in" => { location => "ASI|IN|IN031|SIVAKASI", country => "India" },
"sivas, tr" => { location => "MEA|TR|TU071|SIVAS", country => "Turkey" },
"skikda, dz" => { location => "AFR|DZ|AG015|SKIKDA", country => "Algeria" },
"skive, dk" => { location => "EUR|DK|DA016|SKIVE", country => "Denmark" },
"skoevde, se" => { location => "EUR|SE|SW021|SKOEVDE", country => "Sweden" },
"skoplje, mk" => { location => "EUR|MK|MK000|SKOPLJE", country => "Macedonia" },
"skukuza, za" => { location => "AFR|ZA|SF006|SKUKUZA", country => "South Africa" },
"slagelse, dk" => { location => "EUR|DK|DA015|SLAGELSE", country => "Denmark" },
"slangkop, za" => { location => "AFR|ZA|SF011|SLANGKOP", country => "South Africa" },
"slavyansk, ua" => { location => "EUR|UA|UP004|SLAVYANSK", country => "Ukraine" },
"slough, uk" => { location => "EUR|UK|UK001|SLOUGH", country => "United Kingdom" },
"slupsk, pl" => { location => "EUR|PL|PL011|SLUPSK", country => "Poland" },
"smederevo, cs" => { location => "EUR|CS|YI003|SMEDEREVO", country => "Serbia" },
"smithfield, za" => { location => "AFR|ZA|SF003|SMITHFIELD", country => "South Africa" },
"smolensk, ru" => { location => "ASI|RU|RS072|SMOLENSK", country => "Russia" },
"soacha, co" => { location => "SAM|CO|CO011|SOACHA", country => "Colombia" },
"sobral, br" => { location => "SAM|BR|BR006|SOBRAL", country => "Brazil" },
"sochi, ru" => { location => "ASI|RU|RS040|SOCHI", country => "Russia" },
"soenderborg, dk" => { location => "EUR|DK|DA011|SOENDERBORG", country => "Denmark" },
"sofia, bg" => { location => "EUR|BG|BU021|SOFIA", country => "Bulgaria" },
"sogamoso, co" => { location => "SAM|CO|CO000|SOGAMOSO", country => "Colombia" },
"sohag, eg" => { location => "AFR|EG|EG023|SOHAG", country => "Egypt" },
"soka, jp" => { location => "ASI|JP|JA035|SOKA", country => "Japan" },
"solapur, in" => { location => "ASI|IN|IN021|SOLAPUR", country => "India" },
"soledad, co" => { location => "SAM|CO|CO004|SOLEDAD", country => "Colombia" },
"soligorsk, by" => { location => "EUR|BY|BO004|SOLIGORSK", country => "Belarus" },
"solihull, uk" => { location => "EUR|UK|UK001|SOLIHULL", country => "United Kingdom" },
"solikamsk, ru" => { location => "ASI|RU|RS062|SOLIKAMSK", country => "Russia" },
"solingen, de" => { location => "EUR|DE|GM011|SOLINGEN", country => "Germany" },
"somerset east, za" => { location => "AFR|ZA|SF002|SOMERSET EAST", country => "South Africa" },
"somerset west, za" => { location => "AFR|ZA|SF011|SOMERSET WEST", country => "South Africa" },
"songkhla, th" => { location => "ASI|TH|TH063|SONGKHLA", country => "Thailand" },
"sonipat, in" => { location => "ASI|IN|IN013|SONIPAT", country => "India" },
"sorocaba, br" => { location => "SAM|BR|BR023|SOROCABA", country => "Brazil" },
"soroti, ug" => { location => "AFR|UG|UG000|SOROTI", country => "Uganda" },
"sosnowiec, pl" => { location => "EUR|PL|PL012|SOSNOWIEC", country => "Poland" },
"south bend, in, us" => { location => "NAM|US|IN|SOUTH BEND", country => "United States" },
"south dum dum, in" => { location => "ASI|IN|IN036|SOUTH DUM DUM", country => "India" },
"southampton, uk" => { location => "EUR|UK|UK001|SOUTHAMPTON", country => "United Kingdom" },
"southend-on-sea, uk" => { location => "EUR|UK|UK001|SOUTHEND-ON-SEA", country => "United Kingdom" },
"southwark, uk" => { location => "EUR|UK|UK001|SOUTHWARK", country => "United Kingdom" },
"soweto, za" => { location => "AFR|ZA|SF004|SOWETO", country => "South Africa" },
"soyapango, sv" => { location => "CAC|SV|ES010|SOYAPANGO", country => "El Salvador" },
"split, hr" => { location => "EUR|HR|HR016|SPLIT", country => "Croatia" },
"spokane, wa, us" => { location => "NAM|US|WA|SPOKANE", country => "United States" },
"springbok, za" => { location => "AFR|ZA|SF008|SPRINGBOK", country => "South Africa" },
"springfield, il, us" => { location => "NAM|US|IL|SPRINGFIELD", country => "United States" },
"springfield, ma, us" => { location => "NAM|US|MA|SPRINGFIELD", country => "United States" },
"springfield, mo, us" => { location => "NAM|US|MO|SPRINGFIELD", country => "United States" },
"springs, za" => { location => "AFR|ZA|SF004|SPRINGS", country => "South Africa" },
"st albans, uk" => { location => "EUR|UK|UK001|ST ALBANS", country => "United Kingdom" },
"st helens, uk" => { location => "EUR|UK|UK001|ST HELENS", country => "United Kingdom" },
"st petersburg, fl, us" => { location => "NAM|US|FL|ST PETERSBURG", country => "United States" },
"stafford, uk" => { location => "EUR|UK|UK001|STAFFORD", country => "United Kingdom" },
"stakhanov, ua" => { location => "EUR|UA|UP012|STAKHANOV", country => "Ukraine" },
"stamford, ct, us" => { location => "NAM|US|CT|STAMFORD", country => "United States" },
"standerton, za" => { location => "AFR|ZA|SF006|STANDERTON", country => "South Africa" },
"standerton, za" => { location => "AFR|ZA|SF006|STANDERTON", country => "South Africa" },
"stanley, fk" => { location => "SAM|FK|FK---|STANLEY", country => "Falkland Islands" },
"stara zagora, bg" => { location => "EUR|BG|BU022|STARA ZAGORA", country => "Bulgaria" },
"stary oskol , ru" => { location => "ASI|RU|RS008|STARY OSKOL", country => "Russia" },
"stavanger, no" => { location => "EUR|NO|NO013|STAVANGER", country => "Norway" },
"stavropol, ru" => { location => "ASI|RU|RS074|STAVROPOL", country => "Russia" },
"steamboat springs, co, us" => { location => "NAM|US|CO|STEAMBOAT SPRINGS", country => "United States" },
"stellenbosch, za" => { location => "AFR|ZA|SF011|STELLENBOSCH", country => "South Africa" },
"sterling heights, mi, us" => { location => "NAM|US|MI|STERLING HEIGHTS", country => "United States" },
"sterlitamak, ru" => { location => "ASI|RU|RS041|STERLITAMAK", country => "Russia" },
"stillbaai, za" => { location => "AFR|ZA|SF011|STILLBAAI", country => "South Africa" },
"stockholm, se" => { location => "EUR|SE|SW015|STOCKHOLM", country => "Sweden" },
"stockport, uk" => { location => "EUR|UK|UK001|STOCKPORT", country => "United Kingdom" },
"stockton, ca, us" => { location => "NAM|US|CA|STOCKTON", country => "United States" },
"stockton-on-tees, uk" => { location => "EUR|UK|UK001|STOCKTON-ON-TEES", country => "United Kingdom" },
"stoke-on-trent, uk" => { location => "EUR|UK|UK001|STOKE-ON-TRENT", country => "United Kingdom" },
"strand, za" => { location => "AFR|ZA|SF011|STRAND", country => "South Africa" },
"strasbourg, fr" => { location => "EUR|FR|FR001|STRASBOURG", country => "France" },
"stratford-on-avon, uk" => { location => "EUR|UK|UK001|STRATFORD-ON-AVON", country => "United Kingdom" },
"stroud, uk" => { location => "EUR|UK|UK001|STROUD", country => "United Kingdom" },
"stuhlweissenburg, hu" => { location => "EUR|HU|HU011|SZÉKESFEHÉRVAR", country => "Hungary" },
"stuttgart, de" => { location => "EUR|DE|GM001|STUTTGART", country => "Germany" },
"subotica, cs" => { location => "EUR|CS|YI003|SUBOTICA", country => "Serbia" },
"suceava, ro" => { location => "EUR|RO|RO035|SUCEAVA", country => "Romania" },
"sucre, bo" => { location => "SAM|BO|BL001|SUCRE", country => "Bolivia" },
"sudbury, ca" => { location => "NAM|CA|ON|SUDBURY", country => "Canada" },
"suez, eg" => { location => "AFR|EG|EG014|SUEZ", country => "Egypt" },
"suihua, cn" => { location => "ASI|CN|CH011|SUIHUA", country => "China" },
"suining, cn" => { location => "ASI|CN|CH014|SUINING", country => "China" },
"suita, jp" => { location => "ASI|JP|JA033|SUITA", country => "Japan" },
"suizhou, cn" => { location => "ASI|CN|CH013|SUIZHOU", country => "China" },
"sukabumi, id" => { location => "ASI|ID|ID026|SUKABUMI", country => "Indonesia" },
"sukhothai, th" => { location => "ASI|TH|TH064|SUKHOTHAI", country => "Thailand" },
"sukhumi, ge" => { location => "ASI|GE|GG000|SUKHUMI", country => "Georgia" },
"sukkur, pk" => { location => "ASI|PK|PK008|SUKKUR", country => "Pakistan" },
"sullana, pe" => { location => "SAM|PE|PE020|SULLANA", country => "Peru" },
"sumare, br" => { location => "SAM|BR|BR023|SUMARÉ", country => "Brazil" },
"sumgait, az" => { location => "ASI|AZ|AJ052|SUMGAIT", country => "Azerbaijan" },
"sumy, ua" => { location => "EUR|UA|UP017|SUMY", country => "Ukraine" },
"sunderland, uk" => { location => "EUR|UK|UK001|SUNDERLAND", country => "United Kingdom" },
"sundsvall, se" => { location => "EUR|SE|SW019|SUNDSVALL", country => "Sweden" },
"sungai petani, my" => { location => "ASI|MY|MY002|SUNGAI PETANI", country => "Malaysia" },
"sunnyvale, ca, us" => { location => "NAM|US|CA|SUNNYVALE", country => "United States" },
"sunyani, gh" => { location => "AFR|GH|GH000|SUNYANI", country => "Ghana" },
"suqian, cn" => { location => "ASI|CN|CH015|SUQIAN", country => "China" },
"surabaya, id" => { location => "ASI|ID|ID026|SURABAYA", country => "Indonesia" },
"surakarta, id" => { location => "ASI|ID|ID004|SURAKARTA", country => "Indonesia" },
"surat, in" => { location => "ASI|IN|IN012|SURAT", country => "India" },
"surat thani, th" => { location => "ASI|TH|TH066|SURAT THANI", country => "Thailand" },
"surgut, ru" => { location => "ASI|RU|RS068|SURGUT", country => "Russia" },
"surigao, ph" => { location => "ASI|PH|RP118|SURIGAO", country => "Philippines" },
"surrey, ca" => { location => "NAM|CA|PE|SURREY", country => "Canada" },
"susano, br" => { location => "SAM|BR|BR023|SUSANO", country => "Brazil" },
"sutherland, za" => { location => "AFR|ZA|SF005|SUTHERLAND", country => "South Africa" },
"sutton, uk" => { location => "EUR|UK|UK001|SUTTON", country => "United Kingdom" },
"suva, fj" => { location => "OCN|FJ|FJ001|SUVA", country => "Fiji" },
"suwon, kr" => { location => "ASI|KR|KS002|SUWON", country => "South Korea" },
"suzhou, cn" => { location => "ASI|CN|CH015|SUZHOU", country => "China" },
"suzuka, jp" => { location => "ASI|JP|JA023|SUZUKA", country => "Japan" },
"svendborg, dk" => { location => "EUR|DK|DA005|SVENDBORG", country => "Denmark" },
"swansea, uk" => { location => "EUR|UK|UK004|SWANSEA", country => "United Kingdom" },
"swellendam, za" => { location => "AFR|ZA|SF011|SWELLENDAM", country => "South Africa" },
"sydney, au" => { location => "OCN|AU|NSW|SYDNEY", country => "Australia" },
"syktyvkar, ru" => { location => "ASI|RU|RS036|SYKTYVKAR", country => "Russia" },
"syracuse, ny, us" => { location => "NAM|US|NY|SYRACUSE", country => "United States" },
"syzran, ru" => { location => "ASI|RU|RS085|SYZRAN", country => "Russia" },
"szczecin, pl" => { location => "EUR|PL|PL016|SZCZECIN", country => "Poland" },
"szeged, hu" => { location => "EUR|HU|HU030|SZEGED", country => "Hungary" },
"taastrup, dk" => { location => "EUR|DK|DA006|TAASTRUP", country => "Denmark" },
"taboao da serra, br" => { location => "SAM|BR|BR023|TABOAO DA SERRA", country => "Brazil" },
"tabriz, ir" => { location => "MEA|IR|IR002|TABRIZ", country => "Iran" },
"tacheng, cn" => { location => "ASI|CN|CH028|TACHENG", country => "China" },
"tachikawa, jp" => { location => "ASI|JP|JA041|TACHIKAWA", country => "Japan" },
"tacloban, ph" => { location => "ASI|PH|RP121|TACLOBAN", country => "Philippines" },
"tacna, pe" => { location => "SAM|PE|PE023|TACNA", country => "Peru" },
"tacoma, wa, us" => { location => "NAM|US|WA|TACOMA", country => "United States" },
"taebaek, kr" => { location => "ASI|KR|KS007|TAEBAEK", country => "South Korea" },
"taegu, kr" => { location => "ASI|KR|KS002|TAEGU", country => "South Korea" },
"taejon, kp" => { location => "ASI|KP|KN010|TAEJON", country => "North Korea" },
"taganrog, ru" => { location => "ASI|RU|RS065|TAGANROG", country => "Russia" },
"taian, cn" => { location => "ASI|CN|CH018|TAIAN", country => "China" },
"taichung, tw" => { location => "ASI|TW|TW018|TAICHUNG", country => "Taiwan" },
"ta'if, sa" => { location => "MEA|SA|SA011|TA'IF", country => "Saudi Arabia" },
"tainan, tw" => { location => "ASI|TW|TW018|TAINAN", country => "Taiwan" },
"taipei, tw" => { location => "ASI|TW|TW018|TAIPEI", country => "Taiwan" },
"taiping, my" => { location => "ASI|MY|MY008|TAIPING", country => "Malaysia" },
"taitung, tw" => { location => "ASI|TW|TW018|TAITUNG", country => "Taiwan" },
"taiyuan, cn" => { location => "ASI|CN|CH025|TAIYUAN", country => "China" },
"taiz, ye" => { location => "MEA|YE|YM008|TAIZ", country => "Yemen" },
"taizhou, cn" => { location => "ASI|CN|CH015|TAIZHOU", country => "China" },
"taizhou, cn" => { location => "ASI|CN|CH015|TAIZHOU", country => "China" },
"tajimi, jp" => { location => "ASI|JP|JA009|TAJIMI", country => "Japan" },
"takamatsu, jp" => { location => "ASI|JP|JA017|TAKAMATSU", country => "Japan" },
"takaoka, jp" => { location => "ASI|JP|JA043|TAKAOKA", country => "Japan" },
"takarazuka, jp" => { location => "ASI|JP|JA013|TAKARAZUKA", country => "Japan" },
"takasaki, jp" => { location => "ASI|JP|JA010|TAKASAKI", country => "Japan" },
"takatsuki, jp" => { location => "ASI|JP|JA033|TAKATSUKI", country => "Japan" },
"talca, cl" => { location => "SAM|CL|CI010|TALCA", country => "Chile" },
"talcahuano, cl" => { location => "SAM|CL|CI005|TALCAHUANO", country => "Chile" },
"tallahassee, fl, us" => { location => "NAM|US|FL|TALLAHASSEE", country => "United States" },
"tallinn, ee" => { location => "EUR|EE|EN001|TALLINN", country => "Estonia" },
"tama, jp" => { location => "ASI|JP|JA031|TAMA", country => "Japan" },
"tamale, gh" => { location => "AFR|GH|GH000|TAMALE", country => "Ghana" },
"tambov, ru" => { location => "ASI|RU|RS076|TAMBOV", country => "Russia" },
"tampa, fl, us" => { location => "NAM|US|FL|TAMPA", country => "United States" },
"tampere, fi" => { location => "EUR|FI|FI005|TAMPERE", country => "Finland" },
"tampico, mx" => { location => "NAM|MX|MX028|TAMPICO", country => "Mexico" },
"tandoadam, pk" => { location => "ASI|PK|PK008|TANDOADAM", country => "Pakistan" },
"tanga, tz" => { location => "AFR|TZ|TZ000|TANGA", country => "Tanzania" },
"tangail, bd" => { location => "ASI|BD|BG002|TANGAIL", country => "Bangladesh" },
"tanger, ma" => { location => "AFR|MA|MO035|TANGER", country => "Morocco" },
"tangshan, cn" => { location => "ASI|CN|CH010|TANGSHAN", country => "China" },
"tanta, eg" => { location => "AFR|EG|EG005|TANTA", country => "Egypt" },
"taonan, cn" => { location => "ASI|CN|CH017|TAONAN", country => "China" },
"tapachula, mx" => { location => "NAM|MX|MX005|TAPACHULA", country => "Mexico" },
"taranto, it" => { location => "EUR|IT|IT013|TARANTO", country => "Italy" },
"tarawa, ki" => { location => "OCN|KI|KR000|TARAWA", country => "Kiribati" },
"taraz, kz" => { location => "ASI|KZ|KZ016|TARAZ", country => "Kazakhstan" },
"tarija, bo" => { location => "SAM|BO|BL009|TARIJA", country => "Bolivia" },
"tarnow, pl" => { location => "EUR|PL|PL004|TARNÓW", country => "Poland" },
"tarragona, es" => { location => "EUR|ES|SP008|TARRAGONA", country => "Spain" },
"tarrasa, es" => { location => "EUR|ES|SP008|TARRASA", country => "Spain" },
"tarsus, tr" => { location => "MEA|TR|TU037|TARSUS", country => "Turkey" },
"tartu, ee" => { location => "EUR|EE|EN012|TARTU", country => "Estonia" },
"tashauz, tm" => { location => "ASI|TM|TX003|TASHAUZ", country => "Turkmenistan" },
"tashkent, uz" => { location => "ASI|UZ|UZ013|TASHKENT", country => "Uzbekistan" },
"taubate, br" => { location => "SAM|BR|BR023|TAUBATÉ", country => "Brazil" },
"taung, za" => { location => "AFR|ZA|SF007|TAUNG", country => "South Africa" },
"taunggyi, mm" => { location => "ASI|MM|BM012|TAUNGGYI", country => "Burma/Myanmar" },
"tbilisi, ge" => { location => "ASI|GE|GG000|TBILISI", country => "Georgia" },
"tebessa, dz" => { location => "AFR|DZ|AG042|TEBESSA", country => "Algeria" },
"tegal, id" => { location => "ASI|ID|ID004|TEGAL", country => "Indonesia" },
"tegucigalpa, hn" => { location => "CAC|HN|HO008|TEGUCIGALPA", country => "Honduras" },
"tehran, ir" => { location => "MEA|IR|IR026|TEHRAN", country => "Iran" },
"tehuacan, mx" => { location => "NAM|MX|MX021|TEHUACÁN", country => "Mexico" },
"tekirdag, tr" => { location => "MEA|TR|TU072|TEKIRDAG", country => "Turkey" },
"tel aviv-yafo, il" => { location => "MEA|IL|IS005|TEL AVIV-YAFO", country => "Israel" },
"tema, gh" => { location => "AFR|GH|GH000|TEMA", country => "Ghana" },
"tembisa, za" => { location => "AFR|ZA|SF004|TEMBISA", country => "South Africa" },
"temirtau, kz" => { location => "ASI|KZ|KZ011|TEMIRTAU", country => "Kazakhstan" },
"tempe, az, us" => { location => "NAM|US|AZ|TEMPE", country => "United States" },
"temuco, cl" => { location => "SAM|CL|CI003|TEMUCO", country => "Chile" },
"tenali, in" => { location => "ASI|IN|IN002|TENALI", country => "India" },
"tendring, uk" => { location => "EUR|UK|UK001|TENDRING", country => "United Kingdom" },
"tengzhou, cn" => { location => "ASI|CN|CH023|TENGZHOU", country => "China" },
"teofilo otoni, br" => { location => "SAM|BR|BR012|TEÓFILO OTONI", country => "Brazil" },
"tepic, mx" => { location => "NAM|MX|MX018|TEPIC", country => "Mexico" },
"teresina, br" => { location => "SAM|BR|BR016|TERESINA", country => "Brazil" },
"teresopolis, br" => { location => "SAM|BR|BR017|TERESÓPOLIS", country => "Brazil" },
"termez, uz" => { location => "ASI|UZ|UZ012|TERMEZ", country => "Uzbekistan" },
"terni, it" => { location => "EUR|IT|IT018|TERNI", country => "Italy" },
"ternopol, ua" => { location => "EUR|UA|UP018|TERNOPOL", country => "Ukraine" },
"tetouan, ma" => { location => "AFR|MA|MO040|TÉTOUAN", country => "Morocco" },
"thabazimbi, za" => { location => "AFR|ZA|SF009|THABAZIMBI", country => "South Africa" },
"thai nguyen, vn" => { location => "ASI|VN|VM057|THAI NGUYEN", country => "Vietnam" },
"thamesdown, uk" => { location => "EUR|UK|UK001|THAMESDOWN", country => "United Kingdom" },
"thane, in" => { location => "ASI|IN|IN021|THANE", country => "India" },
"thanet, uk" => { location => "EUR|UK|UK001|THANET", country => "United Kingdom" },
"thanjavur, in" => { location => "ASI|IN|IN031|THANJAVUR", country => "India" },
"the groyne, es" => { location => "EUR|ES|SP011|LA CORUŃA", country => "Spain" },
"thies, sn" => { location => "AFR|SN|SG009|THIČS", country => "Senegal" },
"thimphu, bt" => { location => "ASI|BT|BT016|THIMPHU", country => "Bhutan" },
"thiruvananthapuram, in" => { location => "ASI|IN|IN018|THIRUVANANTHAPURAM", country => "India" },
"thohoyandou, za" => { location => "AFR|ZA|SF009|THOHOYANDOU", country => "South Africa" },
"thorshavn, fo" => { location => "EUR|FO|FO---|THORSHAVN", country => "Faroe Islands" },
"thousand oaks, ca, us" => { location => "NAM|US|CA|THOUSAND OAKS", country => "United States" },
"three rivers, ca" => { location => "NAM|CA|QC|TROIS-RIVIČRES", country => "Canada" },
"thrissur, in" => { location => "ASI|IN|IN018|THRISSUR", country => "India" },
"thunder bay, ca" => { location => "NAM|CA|ON|THUNDER BAY", country => "Canada" },
"tianjin, cn" => { location => "ASI|CN|CH027|TIANJIN", country => "China" },
"tianmen, cn" => { location => "ASI|CN|CH011|TIANMEN", country => "China" },
"tianshui, cn" => { location => "ASI|CN|CH005|TIANSHUI", country => "China" },
"tiaret, dz" => { location => "AFR|DZ|AG043|TIARET", country => "Algeria" },
"tiefa, cn" => { location => "ASI|CN|CH018|TIEFA", country => "China" },
"tieli, cn" => { location => "ASI|CN|CH011|TIELI", country => "China" },
"tieling, cn" => { location => "ASI|CN|CH018|TIELING", country => "China" },
"tijuana, mx" => { location => "NAM|MX|MX002|TIJUANA", country => "Mexico" },
"tilburg, nl" => { location => "EUR|NL|NL007|TILBURG", country => "Netherlands" },
"timbuktu, ml" => { location => "AFR|ML|ML000|TIMBUKTU", country => "Mali" },
"timisoara, ro" => { location => "EUR|RO|RO037|TIMISOARA", country => "Romania" },
"timon, br" => { location => "SAM|BR|BR009|TIMON", country => "Brazil" },
"tirana, al" => { location => "EUR|AL|AL024|TIRANA", country => "Albania" },
"tirgu-mures, ro" => { location => "EUR|RO|RO028|TIRGU-MURES", country => "Romania" },
"tiruchchirappalli, in" => { location => "ASI|IN|IN031|TIRUCHCHIRAPPALLI", country => "India" },
"tirunelveli, in" => { location => "ASI|IN|IN031|TIRUNELVELI", country => "India" },
"tirupati, in" => { location => "ASI|IN|IN002|TIRUPATI", country => "India" },
"tiruppur, in" => { location => "ASI|IN|IN031|TIRUPPUR", country => "India" },
"tiruvannamalai, in" => { location => "ASI|IN|IN031|TIRUVANNAMALAI", country => "India" },
"titagarh, in" => { location => "ASI|IN|IN036|TITAGARH", country => "India" },
"tlalnepantla, mx" => { location => "NAM|MX|MX015|TLALNEPANTLA", country => "Mexico" },
"tlalpan, mx" => { location => "NAM|MX|MX009|TLALPAN", country => "Mexico" },
"tlaquepaque, mx" => { location => "NAM|MX|MX014|TLAQUEPAQUE", country => "Mexico" },
"tlaxcala, mx" => { location => "NAM|MX|MX029|TLAXCALA", country => "Mexico" },
"toda, jp" => { location => "ASI|JP|JA035|TODA", country => "Japan" },
"toensberg, no" => { location => "EUR|NO|NO019|TOENSBERG", country => "Norway" },
"tokorozawa, jp" => { location => "ASI|JP|JA035|TOKOROZAWA", country => "Japan" },
"tokushima, jp" => { location => "ASI|JP|JA040|TOKUSHIMA", country => "Japan" },
"tokuyama, jp" => { location => "ASI|JP|JA046|TOKUYAMA", country => "Japan" },
"tokyo, jp" => { location => "ASI|JP|JA041|TOKYO", country => "Japan" },
"toledo, br" => { location => "SAM|BR|BR012|TOLEDO", country => "Brazil" },
"toledo, ph" => { location => "ASI|PH|RP127|TOLEDO", country => "Philippines" },
"toledo, oh, us" => { location => "NAM|US|OH|TOLEDO", country => "United States" },
"toluca, mx" => { location => "NAM|MX|MX015|TOLUCA", country => "Mexico" },
"tolyatti, ru" => { location => "ASI|RU|RS068|TOLYATTI", country => "Russia" },
"tomakomai, jp" => { location => "ASI|JP|JA012|TOMAKOMAI", country => "Japan" },
"tomsk, ru" => { location => "ASI|RU|RS079|TOMSK", country => "Russia" },
"tonbridge, uk" => { location => "EUR|UK|UK160|TONBRIDGE", country => "United Kingdom" },
"tonbridge and malling, uk" => { location => "EUR|UK|UK001|TONBRIDGE AND MALLING", country => "United Kingdom" },
"tondabayashi, jp" => { location => "ASI|JP|JA033|TONDABAYASHI", country => "Japan" },
"tongchuan, cn" => { location => "ASI|CN|CH022|TONGCHUAN", country => "China" },
"tonghua, cn" => { location => "ASI|CN|CH017|TONGHUA", country => "China" },
"tongi, bd" => { location => "ASI|BD|BG002|TONGI", country => "Bangladesh" },
"tongjiang, cn" => { location => "ASI|CN|CH011|TONGJIANG", country => "China" },
"tongliao, cn" => { location => "ASI|CN|CH019|TONGLIAO", country => "China" },
"tongling, cn" => { location => "ASI|CN|CH001|TONGLING", country => "China" },
"tongren, cn" => { location => "ASI|CN|CH008|TONGREN", country => "China" },
"tonk, in" => { location => "ASI|IN|IN029|TONK", country => "India" },
"topeka, ks, us" => { location => "NAM|US|KS|TOPEKA", country => "United States" },
"torbay, uk" => { location => "EUR|UK|UK001|TORBAY", country => "United Kingdom" },
"torino, it" => { location => "EUR|IT|IT012|TORINO", country => "Italy" },
"toronto, ca" => { location => "NAM|CA|ON|TORONTO", country => "Canada" },
"torrance, ca, us" => { location => "NAM|US|CA|TORRANCE", country => "United States" },
"torreon, mx" => { location => "NAM|MX|MX006|TORREÓN", country => "Mexico" },
"torun, pl" => { location => "EUR|PL|PL007|TORUN", country => "Poland" },
"tottori, jp" => { location => "ASI|JP|JA042|TOTTORI", country => "Japan" },
"toulon, fr" => { location => "EUR|FR|FR021|TOULON", country => "France" },
"toulouse, fr" => { location => "EUR|FR|FR016|TOULOUSE", country => "France" },
"tours, fr" => { location => "EUR|FR|FR007|TOURS", country => "France" },
"townsville, au" => { location => "OCN|AU|QLD|TOWNSVILLE", country => "Australia" },
"toyama, jp" => { location => "ASI|JP|JA043|TOYAMA", country => "Japan" },
"toyohashi, jp" => { location => "ASI|JP|JA001|TOYOHASHI", country => "Japan" },
"toyokawa, jp" => { location => "ASI|JP|JA001|TOYOKAWA", country => "Japan" },
"toyonaka, jp" => { location => "ASI|JP|JA033|TOYONAKA", country => "Japan" },
"toyota, jp" => { location => "ASI|JP|JA001|TOYOTA", country => "Japan" },
"trabzon, tr" => { location => "MEA|TR|TU074|TRABZON", country => "Turkey" },
"traverse city, mi, us" => { location => "NAM|US|MI|Traverse City", country => "United States" },
"trelleborg, se" => { location => "EUR|SE|SW013|TRELLEBORG", country => "Sweden" },
"trento, it" => { location => "EUR|IT|IT017|TRENTO", country => "Italy" },
"trenton, nj, us" => { location => "NAM|US|NJ|TRENTON", country => "United States" },
"trieste, it" => { location => "EUR|IT|IT006|TRIESTE", country => "Italy" },
"tripoli, lb" => { location => "MEA|LB|LE003|TRIPOLI", country => "Lebanon" },
"tripoli, ly" => { location => "AFR|LY|LY021|TRIPOLI", country => "Libya" },
"trollhaettan, se" => { location => "EUR|SE|SW021|TROLLHAETTAN", country => "Sweden" },
"tromsoe, no" => { location => "EUR|NO|NO017|TROMSOE", country => "Norway" },
"trondheim, no" => { location => "EUR|NO|NO015|TRONDHEIM", country => "Norway" },
"trujillo, pe" => { location => "SAM|PE|PE013|TRUJILLO", country => "Peru" },
"trysil, no" => { location => "EUR|NO|NO005|TRYSIL", country => "Norway" },
"tshabong, bw" => { location => "AFR|BW|BC000|TSHABONG", country => "Botswana" },
"tsu, jp" => { location => "ASI|JP|JA023|TSU", country => "Japan" },
"tsuchiura, jp" => { location => "ASI|JP|JA014|TSUCHIURA", country => "Japan" },
"tsukuba, jp" => { location => "ASI|JP|JA014|TSUKUBA", country => "Japan" },
"tsuruoka, jp" => { location => "ASI|JP|JA045|TSURUOKA", country => "Japan" },
"tucson, az, us" => { location => "NAM|US|AZ|TUCSON", country => "United States" },
"tucuman, ar" => { location => "SAM|AR|AR024|SAN MIGUEL DE TUCUMÁN", country => "Argentina" },
"tula, ru" => { location => "ASI|RU|RS080|TULA", country => "Russia" },
"tulsa, ok, us" => { location => "NAM|US|OK|TULSA", country => "United States" },
"tulua, co" => { location => "SAM|CO|CO027|TULUA", country => "Colombia" },
"tulufan, cn" => { location => "ASI|CN|CH028|TULUFAN", country => "China" },
"tumen, cn" => { location => "ASI|CN|CH017|TUMEN", country => "China" },
"tumkur, in" => { location => "ASI|IN|IN017|TUMKUR", country => "India" },
"tunbridge wells, uk" => { location => "EUR|UK|UK001|TUNBRIDGE WELLS", country => "United Kingdom" },
"tunis, tn" => { location => "AFR|TN|TS000|TUNIS", country => "Tunisia" },
"tunja, co" => { location => "SAM|CO|CO019|TUNJA", country => "Colombia" },
"turku, fi" => { location => "EUR|FI|FI005|TURKU", country => "Finland" },
"turmero, ve" => { location => "SAM|VE|VE002|TURMERO", country => "Venezuela" },
"tuticorin, in" => { location => "ASI|IN|IN031|TUTICORIN", country => "India" },
"tuzla, ba" => { location => "EUR|BA|BK001|TUZLA", country => "Bosnia And Herzegovina" },
"tver, ru" => { location => "ASI|RU|RS082|TVER", country => "Russia" },
"tychy, pl" => { location => "EUR|PL|PL012|TYCHY", country => "Poland" },
"tyre, lb" => { location => "MEA|LB|LE000|TYRE", country => "Lebanon" },
"tyumen, ru" => { location => "ASI|RU|RS083|TYUMEN", country => "Russia" },
"tyumen, ru" => { location => "ASI|RU|RS083|TYUMEN", country => "Russia" },
"tzaneen, za" => { location => "AFR|ZA|SF009|TZANEEN", country => "South Africa" },
"ube, jp" => { location => "ASI|JP|JA046|UBE", country => "Japan" },
"uberaba, br" => { location => "SAM|BR|BR012|UBERABA", country => "Brazil" },
"uberlandia, br" => { location => "SAM|BR|BR012|UBERLÂNDIA", country => "Brazil" },
"ubon ratchathani, th" => { location => "ASI|TH|TH071|UBON RATCHATHANI", country => "Thailand" },
"udaipur, in" => { location => "ASI|IN|IN029|UDAIPUR", country => "India" },
"uddevalla, se" => { location => "EUR|SE|SW021|UDDEVALLA", country => "Sweden" },
"udon thani, th" => { location => "ASI|TH|TH072|UDON THANI", country => "Thailand" },
"udupi, in" => { location => "ASI|IN|IN017|UDUPI", country => "India" },
"ueda, jp" => { location => "ASI|JP|JA026|UEDA", country => "Japan" },
"ufa, ru" => { location => "ASI|RU|RS007|UFA", country => "Russia" },
"uijeongbu, kr" => { location => "ASI|KR|KS009|UIJEONGBU", country => "South Korea" },
"uitenhage, za" => { location => "AFR|ZA|SF002|UITENHAGE", country => "South Africa" },
"uji, jp" => { location => "ASI|JP|JA022|UJI", country => "Japan" },
"ujjain, in" => { location => "ASI|IN|IN020|UJJAIN", country => "India" },
"ujungpandang, id" => { location => "ASI|ID|ID019|UJUNGPANDANG", country => "Indonesia" },
"ulaanbaatar, mn" => { location => "ASI|MN|MG021|ULAANBAATAR", country => "Mongolia" },
"ulan-ude, ru" => { location => "ASI|RU|RS086|ULAN-UDE", country => "Russia" },
"ulhasnagar, in" => { location => "ASI|IN|IN021|ULHASNAGAR", country => "India" },
"ulm, de" => { location => "EUR|DE|GM001|ULM", country => "Germany" },
"ulsan, kr" => { location => "ASI|KR|KS016|ULSAN", country => "South Korea" },
"ulundi, za" => { location => "AFR|ZA|SF005|ULUNDI", country => "South Africa" },
"ulyanovsk, ru" => { location => "ASI|RU|RS085|ULYANOVSK", country => "Russia" },
"umeaa, se" => { location => "EUR|SE|SW018|UMEAA", country => "Sweden" },
"umhlanga rock, za" => { location => "AFR|ZA|SF005|UMHLANGA ROCK", country => "South Africa" },
"umlazi, za" => { location => "AFR|ZA|SF005|UMLAZI", country => "South Africa" },
"umtata, za" => { location => "AFR|ZA|SF002|UMTATA", country => "South Africa" },
"underburg, za" => { location => "AFR|ZA|SF005|UNDERBURG", country => "South Africa" },
"unnao, in" => { location => "ASI|IN|IN033|UNNAO", country => "India" },
"upington, za" => { location => "AFR|ZA|SF008|UPINGTON", country => "South Africa" },
"uppsala, se" => { location => "EUR|SE|SW016|UPPSALA", country => "Sweden" },
"uralsk, kz" => { location => "ASI|KZ|KZ006|URALSK", country => "Kazakhstan" },
"urasoe, jp" => { location => "ASI|JP|JA032|URASOE", country => "Japan" },
"urawa, jp" => { location => "ASI|JP|JA035|URAWA", country => "Japan" },
"urayasu, jp" => { location => "ASI|JP|JA041|URAYASU", country => "Japan" },
"urfa, tr" => { location => "MEA|TR|TU067|URFA", country => "Turkey" },
"uruapan, mx" => { location => "NAM|MX|MX016|URUAPAN", country => "Mexico" },
"uruguaiana, br" => { location => "SAM|BR|BR019|URUGUAIANA", country => "Brazil" },
"usak, tr" => { location => "MEA|TR|TU076|USAK", country => "Turkey" },
"utrecht, nl" => { location => "EUR|NL|NL010|UTRECHT", country => "Netherlands" },
"utsunomiya, jp" => { location => "ASI|JP|JA039|UTSUNOMIYA", country => "Japan" },
"uvongo, za" => { location => "AFR|ZA|SF005|UVONGO", country => "South Africa" },
"uzhgorod, ua" => { location => "EUR|UA|UP021|UZHGOROD", country => "Ukraine" },
"vaalwater, za" => { location => "AFR|ZA|SF009|VAALWATER", country => "South Africa" },
"vadodara, in" => { location => "ASI|IN|IN012|VADODARA", country => "India" },
"vaduz, li" => { location => "EUR|LI|LS000|VADUZ", country => "Liechtenstein" },
"vaesteraas, se" => { location => "EUR|SE|SW020|VAESTERAAS", country => "Sweden" },
"valdivia, cl" => { location => "SAM|CL|CI008|VALDIVIA", country => "Chile" },
"valdosta, ga, us" => { location => "NAM|US|GA|Valdosta", country => "United States" },
"valencia, es" => { location => "EUR|ES|SP016|VALENCIA", country => "Spain" },
"valencia, ve" => { location => "SAM|VE|VE007|VALENCIA", country => "Venezuela" },
"valera, ve" => { location => "SAM|VE|VE022|VALERA", country => "Venezuela" },
"valladolid, es" => { location => "EUR|ES|SP007|VALLADOLID", country => "Spain" },
"valledupar, co" => { location => "SAM|CO|CO008|VALLEDUPAR", country => "Colombia" },
"vallejo, ca, us" => { location => "NAM|US|CA|VALLEJO", country => "United States" },
"valletta, mt" => { location => "EUR|MT|MT---|VALLETTA", country => "Malta" },
"valparai, in" => { location => "ASI|IN|IN031|VALPARAI", country => "India" },
"valparaiso, cl" => { location => "SAM|CL|CI013|VALPARAÍSO", country => "Chile" },
"valsad, in" => { location => "ASI|IN|IN012|VALSAD", country => "India" },
"van, tr" => { location => "MEA|TR|TU077|VAN", country => "Turkey" },
"vancouver, ca" => { location => "NAM|CA|BC|VANCOUVER", country => "Canada" },
"vancouver, wa, us" => { location => "NAM|US|WA|VANCOUVER", country => "United States" },
"vanderbijlpark, za" => { location => "AFR|ZA|SF004|VANDERBIJLPARK", country => "South Africa" },
"vantaa, fi" => { location => "EUR|FI|FI002|VANTAA", country => "Finland" },
"varamin, ir" => { location => "MEA|IR|IR026|VARAMIN", country => "Iran" },
"varanasi, in" => { location => "ASI|IN|IN033|VARANASI", country => "India" },
"varginha, br" => { location => "SAM|BR|BR012|VARGINHA", country => "Brazil" },
"varna, bg" => { location => "EUR|BG|BU024|VARNA", country => "Bulgaria" },
"varzea grande, br" => { location => "SAM|BR|BR010|VARZEA GRANDE", country => "Brazil" },
"vatican city, va" => { location => "EUR|VA|-|VATICAN CITY", country => "Vatican City" },
"vaughan, ca" => { location => "NAM|CA|AC003|VAUGHAN", country => "Canada" },
"vejle, dk" => { location => "EUR|DK|DA014|VEJLE", country => "Denmark" },
"velikiy novgorod, ru" => { location => "ASI|RU|RS056|VELIKIY NOVGOROD", country => "Russia" },
"vellore, in" => { location => "ASI|IN|IN031|VELLORE", country => "India" },
"venezia, it" => { location => "EUR|IT|IT020|VENEZIA", country => "Italy" },
"ventura, ca, us" => { location => "NAM|US|CA|VENTURA", country => "United States" },
"veracruz llave, mx" => { location => "NAM|MX|MX030|VERACRUZ LLAVE", country => "Mexico" },
"vereeniging, za" => { location => "AFR|ZA|SF004|VEREENIGING", country => "South Africa" },
"verona, it" => { location => "EUR|IT|IT020|VERONA", country => "Italy" },
"viamao, br" => { location => "SAM|BR|BR019|VIAMAO", country => "Brazil" },
"viana do castelo, pt" => { location => "EUR|PT|PO018|VIANA DO CASTELO", country => "Portugal" },
"viborg, dk" => { location => "EUR|DK|DA005|VIBORG", country => "Denmark" },
"vicente lopez, ar" => { location => "SAM|AR|AR001|VICENTE LÓPEZ", country => "Argentina" },
"vicenza, it" => { location => "EUR|IT|IT020|VICENZA", country => "Italy" },
"victoria, ca" => { location => "NAM|CA|BC|VICTORIA", country => "Canada" },
"victoria, sc" => { location => "AFR|SC|SE000|VICTORIA", country => "Seychelles" },
"vienna, at" => { location => "EUR|AT|AU009|WIEN", country => "Austria" },
"vientiane, la" => { location => "ASI|LA|LA017|VIENTIANE", country => "Laos" },
"vigo, es" => { location => "EUR|ES|SP011|VIGO", country => "Spain" },
"vijayawada, in" => { location => "ASI|IN|IN002|VIJAYAWADA", country => "India" },
"vila, vu" => { location => "OCN|VU|NH009|VILA", country => "Vanuatu" },
"vila real, pt" => { location => "EUR|PT|PO019|VILA REAL", country => "Portugal" },
"vila velha, br" => { location => "SAM|BR|BR026|VILA VELHA", country => "Brazil" },
"vilanculos, mz" => { location => "AFR|MZ|MZ003|VILANCULOS", country => "Mozambique" },
"villahermosa, mx" => { location => "NAM|MX|MX027|VILLAHERMOSA", country => "Mexico" },
"villavicencio, co" => { location => "SAM|CO|CO017|VILLAVICENCIO", country => "Colombia" },
"villeurbanne, fr" => { location => "EUR|FR|FR012|VILLEURBANNE", country => "France" },
"vilnius, lt" => { location => "EUR|LT|LH054|VILNIUS", country => "Lithuania" },
"vina del mar, cl" => { location => "SAM|CL|CI013|VIŃA DEL MAR", country => "Chile" },
"vinh, vn" => { location => "ASI|VN|VM060|VINH", country => "Vietnam" },
"virginia, za" => { location => "AFR|ZA|SF003|VIRGINIA", country => "South Africa" },
"virginia beach, va, us" => { location => "NAM|US|VA|VIRGINIA BEACH", country => "United States" },
"visakhapatnam, in" => { location => "ASI|IN|IN002|VISAKHAPATNAM", country => "India" },
"visby, se" => { location => "EUR|SE|SW004|VISBY", country => "Sweden" },
"viseu, pt" => { location => "EUR|PT|PO020|VISEU", country => "Portugal" },
"vitebsk, by" => { location => "EUR|BY|BO007|VITEBSK", country => "Belarus" },
"vitoria, br" => { location => "SAM|BR|BR015|VITÓRIA", country => "Brazil" },
"vitoria da conquista, br" => { location => "SAM|BR|BR005|VITÓRIA DA CONQUISTA", country => "Brazil" },
"vitoria de santo antao, br" => { location => "SAM|BR|BR026|VITÓRIA DE SANTO ANTAO", country => "Brazil" },
"vladikavkaz, ru" => { location => "ASI|RU|RS070|VLADIKAVKAZ", country => "Russia" },
"vladimir, ru" => { location => "ASI|RU|RS087|VLADIMIR", country => "Russia" },
"vladivostok, ru" => { location => "ASI|RU|RS063|VLADIVOSTOK", country => "Russia" },
"volgodonsk, ru" => { location => "ASI|RU|RS065|VOLGODONSK", country => "Russia" },
"volgograd, ru" => { location => "ASI|RU|RS088|VOLGOGRAD", country => "Russia" },
"volksrust, za" => { location => "AFR|ZA|SF006|VOLKSRUST", country => "South Africa" },
"vologda, ru" => { location => "ASI|RU|RS089|VOLOGDA", country => "Russia" },
"volos, gr" => { location => "EUR|GR|GR038|VOLOS", country => "Greece" },
"volta redonda, br" => { location => "SAM|BR|BR017|VOLTA REDONDA", country => "Brazil" },
"volzhskiy, ru" => { location => "ASI|RU|RS088|VOLZHSKIY", country => "Russia" },
"voronezh, ru" => { location => "ASI|RU|RS090|VORONEZH", country => "Russia" },
"votkinsk, ru" => { location => "ASI|RU|RS084|VOTKINSK", country => "Russia" },
"vredendal, za" => { location => "AFR|ZA|SF011|VREDENDAL", country => "South Africa" },
"vryburg, za" => { location => "AFR|ZA|SF007|VRYBURG", country => "South Africa" },
"vryheid, za" => { location => "AFR|ZA|SF005|VRYHEID", country => "South Africa" },
"waco, tx, us" => { location => "NAM|US|TX|WACO", country => "United States" },
"wadhwan, in" => { location => "ASI|IN|IN012|WADHWAN", country => "India" },
"wafangdian, cn" => { location => "ASI|CN|CH022|WAFANGDIAN", country => "China" },
"waitakere, nz" => { location => "OCN|NZ|NZ000|WAITAKERE", country => "New Zealand" },
"wakayama, jp" => { location => "ASI|JP|JA044|WAKAYAMA", country => "Japan" },
"wakefield, uk" => { location => "EUR|UK|UK001|WAKEFIELD", country => "United Kingdom" },
"walbrzych, pl" => { location => "EUR|PL|PL001|WALBRZYCH", country => "Poland" },
"walsall, uk" => { location => "EUR|UK|UK001|WALSALL", country => "United Kingdom" },
"wanxian, cn" => { location => "ASI|CN|CH003|WANXIAN", country => "China" },
"warangal, in" => { location => "ASI|IN|IN002|WARANGAL", country => "India" },
"wardha, in" => { location => "ASI|IN|IN021|WARDHA", country => "India" },
"warren, mi, us" => { location => "NAM|US|MI|WARREN", country => "United States" },
"warrington, uk" => { location => "EUR|UK|UK001|WARRINGTON", country => "United Kingdom" },
"warszawa, pl" => { location => "EUR|PL|PL007|WARSZAWA", country => "Poland" },
"warwick, uk" => { location => "EUR|UK|UK001|WARWICK", country => "United Kingdom" },
"washington, dc, us" => { location => "NAM|US|DC|WASHINGTON", country => "United States" },
"waterbury, ct, us" => { location => "NAM|US|CT|WATERBURY", country => "United States" },
"waterloo, uk" => { location => "EUR|UK|UK148|WATERLOO", country => "United Kingdom" },
"weifang, cn" => { location => "ASI|CN|CH023|WEIFANG", country => "China" },
"weihai, cn" => { location => "ASI|CN|CH023|WEIHAI", country => "China" },
"weihui, cn" => { location => "ASI|CN|CH012|WEIHUI", country => "China" },
"weinan, cn" => { location => "ASI|CN|CH022|WEINAN", country => "China" },
"welkom, za" => { location => "AFR|ZA|SF003|WELKOM", country => "South Africa" },
"wellington, nz" => { location => "OCN|NZ|NZ000|WELLINGTON", country => "New Zealand" },
"wellington, za" => { location => "AFR|ZA|SF011|WELLINGTON", country => "South Africa" },
"wendeng, cn" => { location => "ASI|CN|CH023|WENDENG", country => "China" },
"wenzhou, cn" => { location => "ASI|CN|CH031|WENZHOU", country => "China" },
"wepener, za" => { location => "AFR|ZA|SF003|WEPENER", country => "South Africa" },
"west covina, ca, us" => { location => "NAM|US|CA|WEST COVINA", country => "United States" },
"west valley city, ut, us" => { location => "NAM|US|UT|WEST VALLEY CITY", country => "United States" },
"westminster, uk" => { location => "EUR|UK|UK001|WESTMINSTER", country => "United Kingdom" },
"westminster, co, us" => { location => "NAM|US|CO|WESTMINSTER", country => "United States" },
"white river, za" => { location => "AFR|ZA|SF006|WHITE RIVER", country => "South Africa" },
"wichita, ks, us" => { location => "NAM|US|KS|WICHITA", country => "United States" },
"wichita falls, tx, us" => { location => "NAM|US|TX|WICHITA FALLS", country => "United States" },
"wiesbaden, de" => { location => "EUR|DE|GM007|WIESBADEN", country => "Germany" },
"wigan, uk" => { location => "EUR|UK|UK001|WIGAN", country => "United Kingdom" },
"wilderness, za" => { location => "AFR|ZA|SF011|WILDERNESS", country => "South Africa" },
"willemstad, an" => { location => "CAC|AN|NT---|WILLEMSTAD", country => "Netherlands Antilles" },
"winburg, za" => { location => "AFR|ZA|SF003|WINBURG", country => "South Africa" },
"winchester, uk" => { location => "EUR|UK|UK001|WINCHESTER", country => "United Kingdom" },
"windhoek, na" => { location => "AFR|NA|WA005|WINDHOEK", country => "Namibia" },
"windsor, ca" => { location => "NAM|CA|NL|WINDSOR", country => "Canada" },
"windsor and maidenhead, uk" => { location => "EUR|UK|UK001|WINDSOR AND MAIDENHEAD", country => "United Kingdom" },
"winnipeg, ca" => { location => "NAM|CA|MB|WINNIPEG", country => "Canada" },
"winston-salem, nc, us" => { location => "NAM|US|NC|WINSTON-SALEM", country => "United States" },
"winterthur, ch" => { location => "EUR|CH|SZ026|WINTERTHUR", country => "Switzerland" },
"wirral, uk" => { location => "EUR|UK|UK001|WIRRAL", country => "United Kingdom" },
"witbank, za" => { location => "AFR|ZA|SF006|WITBANK", country => "South Africa" },
"witten, de" => { location => "EUR|DE|GM011|WITTEN", country => "Germany" },
"wloclawek, pl" => { location => "EUR|PL|PL002|WLOCLAWEK", country => "Poland" },
"wokingham, uk" => { location => "EUR|UK|UK001|WOKINGHAM", country => "United Kingdom" },
"wolfsburg, de" => { location => "EUR|DE|GM009|WOLFSBURG", country => "Germany" },
"wollongong, au" => { location => "OCN|AU|NSW|WOLLONGONG", country => "Australia" },
"wolverhampton, uk" => { location => "EUR|UK|UK001|WOLVERHAMPTON", country => "United Kingdom" },
"wonju, kr" => { location => "ASI|KR|KS007|WONJU", country => "South Korea" },
"wonsan, kp" => { location => "ASI|KR|KS009|WONSAN", country => "North Korea" },
"worcester, ma, us" => { location => "NAM|US|MA|WORCESTER", country => "United States" },
"worcester, za" => { location => "AFR|ZA|SF011|WORCESTER", country => "South Africa" },
"wroclaw, pl" => { location => "EUR|PL|PL001|WROCLAW", country => "Poland" },
"wuan, cn" => { location => "ASI|CN|CH014|WUAN", country => "China" },
"wugang, cn" => { location => "ASI|CN|CH014|WUGANG", country => "China" },
"wuhai, cn" => { location => "ASI|CN|CH019|WUHAI", country => "China" },
"wuhan, cn" => { location => "ASI|CN|CH013|WUHAN", country => "China" },
"wuhu, cn" => { location => "ASI|CN|CH001|WUHU", country => "China" },
"wulumuqi, cn" => { location => "ASI|CN|CH028|WULUMUQI", country => "China" },
"wuppertal, de" => { location => "EUR|DE|GM011|WUPPERTAL", country => "Germany" },
"wurzburg, de" => { location => "EUR|DE|GM002|WÜRZBURG", country => "Germany" },
"wuxi, cn" => { location => "ASI|CN|CH003|WUXI", country => "China" },
"wuxue, cn" => { location => "ASI|CN|CH013|WUXUE", country => "China" },
"wuyishan, cn" => { location => "ASI|CN|CH004|WUYISHAN", country => "China" },
"wuzhong, cn" => { location => "ASI|CN|CH020|WUZHONG", country => "China" },
"wuzhou, cn" => { location => "ASI|CN|CH007|WUZHOU", country => "China" },
"wycombe, uk" => { location => "EUR|UK|UK001|WYCOMBE", country => "United Kingdom" },
"xai xai, mz" => { location => "AFR|MZ|MZ002|XAI XAI", country => "Mozambique" },
"xiamen, cn" => { location => "ASI|CN|CH004|XIAMEN", country => "China" },
"xian, cn" => { location => "ASI|CN|CH010|XIAN", country => "China" },
"xiangfan, cn" => { location => "ASI|CN|CH013|XIANGFAN", country => "China" },
"xiangtan, cn" => { location => "ASI|CN|CH026|XIANGTAN", country => "China" },
"xiangxiang, cn" => { location => "ASI|CN|CH014|XIANGXIANG", country => "China" },
"xianning, cn" => { location => "ASI|CN|CH013|XIANNING", country => "China" },
"xiantao, cn" => { location => "ASI|CN|CH013|XIANTAO", country => "China" },
"xianyang, cn" => { location => "ASI|CN|CH004|XIANYANG", country => "China" },
"xiaogan, cn" => { location => "ASI|CN|CH013|XIAOGAN", country => "China" },
"xiaoshan, cn" => { location => "ASI|CN|CH031|XIAOSHAN", country => "China" },
"xichang, cn" => { location => "ASI|CN|CH026|XICHANG", country => "China" },
"xifeng, cn" => { location => "ASI|CN|CH023|XIFENG", country => "China" },
"xingcheng, cn" => { location => "ASI|CN|CH025|XINGCHENG", country => "China" },
"xinghua, cn" => { location => "ASI|CN|CH015|XINGHUA", country => "China" },
"xingtai, cn" => { location => "ASI|CN|CH010|XINGTAI", country => "China" },
"xingyi, cn" => { location => "ASI|CN|CH008|XINGYI", country => "China" },
"xining, cn" => { location => "ASI|CN|CH021|XINING", country => "China" },
"xinji, cn" => { location => "ASI|CN|CH010|XINJI", country => "China" },
"xintai, cn" => { location => "ASI|CN|CH008|XINTAI", country => "China" },
"xinxiang, cn" => { location => "ASI|CN|CH012|XINXIANG", country => "China" },
"xinyang, cn" => { location => "ASI|CN|CH012|XINYANG", country => "China" },
"xinyi, cn" => { location => "ASI|CN|CH006|XINYI", country => "China" },
"xinyu, cn" => { location => "ASI|CN|CH012|XINYU", country => "China" },
"xinzhou, cn" => { location => "ASI|CN|CH001|XINZHOU", country => "China" },
"xochimilco, mx" => { location => "NAM|MX|MX009|XOCHIMILCO", country => "Mexico" },
"xuchang, cn" => { location => "ASI|CN|CH001|XUCHANG", country => "China" },
"xuzhou, cn" => { location => "ASI|CN|CH015|XUZHOU", country => "China" },
"yaan, cn" => { location => "ASI|CN|CH026|YAAN", country => "China" },
"yachiyo, jp" => { location => "ASI|JP|JA012|YACHIYO", country => "Japan" },
"yaizu, jp" => { location => "ASI|JP|JA038|YAIZU", country => "Japan" },
"yakeshi, cn" => { location => "ASI|CN|CH019|YAKESHI", country => "China" },
"yakutsk, ru" => { location => "ASI|RU|RS091|YAKUTSK", country => "Russia" },
"yamagata, jp" => { location => "ASI|JP|JA045|YAMAGATA", country => "Japan" },
"yamaguchi, jp" => { location => "ASI|JP|JA046|YAMAGUCHI", country => "Japan" },
"yamato, jp" => { location => "ASI|JP|JA028|YAMATO", country => "Japan" },
"yamoussoukro, ci" => { location => "AFR|CI|IV057|YAMOUSSOUKRO", country => "Ivory Coast" },
"yamunanagar, in" => { location => "ASI|IN|IN013|YAMUNANAGAR", country => "India" },
"yanan, cn" => { location => "ASI|CN|CH022|YANAN", country => "China" },
"yancheng, cn" => { location => "ASI|CN|CH023|YANCHENG", country => "China" },
"yangjiang, cn" => { location => "ASI|CN|CH006|YANGJIANG", country => "China" },
"yangon, mm" => { location => "ASI|MM|BM014|YANGON", country => "Burma/Myanmar" },
"yangquan, cn" => { location => "ASI|CN|CH025|YANGQUAN", country => "China" },
"yangzhou, cn" => { location => "ASI|CN|CH015|YANGZHOU", country => "China" },
"yanji, cn" => { location => "ASI|CN|CH012|YANJI", country => "China" },
"yantai, cn" => { location => "ASI|CN|CH023|YANTAI", country => "China" },
"yao, jp" => { location => "ASI|JP|JA033|YAO", country => "Japan" },
"yaounde, cm" => { location => "AFR|CM|CM002|YAOUNDE", country => "Cameroon" },
"yaroslavl, ru" => { location => "ASI|RU|RS093|YAROSLAVL", country => "Russia" },
"yatsushiro, jp" => { location => "ASI|JP|JA021|YATSUSHIRO", country => "Japan" },
"yavatmal, in" => { location => "ASI|IN|IN021|YAVATMAL", country => "India" },
"yazd, ir" => { location => "MEA|IR|IR027|YAZD", country => "Iran" },
"yerevan, am" => { location => "ASI|AM|AM011|YEREVAN", country => "Armenia" },
"yibin, cn" => { location => "ASI|CN|CH026|YIBIN", country => "China" },
"yichang, cn" => { location => "ASI|CN|CH013|YICHANG", country => "China" },
"yichun, cn" => { location => "ASI|CN|CH011|YICHUN", country => "China" },
"yinchuan, cn" => { location => "ASI|CN|CH020|YINCHUAN", country => "China" },
"yingcheng, cn" => { location => "ASI|CN|CH013|YINGCHENG", country => "China" },
"yingkou, cn" => { location => "ASI|CN|CH018|YINGKOU", country => "China" },
"yingtan, cn" => { location => "ASI|CN|CH016|YINGTAN", country => "China" },
"yining, cn" => { location => "ASI|CN|CH016|YINING", country => "China" },
"yiwu, cn" => { location => "ASI|CN|CH028|YIWU", country => "China" },
"yixing, cn" => { location => "ASI|CN|CH015|YIXING", country => "China" },
"yiyang, cn" => { location => "ASI|CN|CH012|YIYANG", country => "China" },
"yizhou, cn" => { location => "ASI|CN|CH010|YIZHOU", country => "China" },
"yogyakarta, id" => { location => "ASI|ID|ID005|YOGYAKARTA", country => "Indonesia" },
"yokkaichi, jp" => { location => "ASI|JP|JA030|YOKKAICHI", country => "Japan" },
"yokohama, jp" => { location => "ASI|JP|JA019|YOKOHAMA", country => "Japan" },
"yokosuka, jp" => { location => "ASI|JP|JA019|YOKOSUKA", country => "Japan" },
"yonago, jp" => { location => "ASI|JP|JA042|YONAGO", country => "Japan" },
"yongan, cn" => { location => "ASI|CN|CH025|YONGAN", country => "China" },
"yongzhou, cn" => { location => "ASI|CN|CH014|YONGZHOU", country => "China" },
"yonkers, ny, us" => { location => "NAM|US|NY|YONKERS", country => "United States" },
"york, ca" => { location => "NAM|CA|QC|YORK", country => "Canada" },
"york, uk" => { location => "EUR|UK|UK001|YORK", country => "United Kingdom" },
"yoshkar-ola, ru" => { location => "ASI|RU|RS049|YOSHKAR-OLA", country => "Russia" },
"yosu, kr" => { location => "ASI|KR|KS005|YOSU", country => "South Korea" },
"ystad, se" => { location => "EUR|SE|SW013|YSTAD", country => "Sweden" },
"yuanjiang, cn" => { location => "ASI|CN|CH030|YUANJIANG", country => "China" },
"yuci, cn" => { location => "ASI|CN|CH025|YUCI", country => "China" },
"yueyang, cn" => { location => "ASI|CN|CH014|YUEYANG", country => "China" },
"yulin, guangxi, cn" => { location => "ASI|CN|CH007|YULIN", country => "China" },
"yulin, shaanxi, cn" => { location => "ASI|CN|CH022|YULIN", country => "China" },
"yumen, cn" => { location => "ASI|CN|CH005|YUMEN", country => "China" },
"yuncheng, cn" => { location => "ASI|CN|CH025|YUNCHENG", country => "China" },
"yutian, cn" => { location => "ASI|CN|CH010|YUTIAN", country => "China" },
"yuxi, cn" => { location => "ASI|CN|CH004|YUXI", country => "China" },
"yuyao, cn" => { location => "ASI|CN|CH004|YUYAO", country => "China" },
"yuzhno-sahalinsk, ru" => { location => "ASI|RU|RS067|YUZHNO-SAHALINSK", country => "Russia" },
"yuzhou, cn" => { location => "ASI|CN|CH012|YUZHOU", country => "China" },
"zaanstad, nl" => { location => "EUR|NL|NL008|ZAANSTAD", country => "Netherlands" },
"zabol, ir" => { location => "MEA|IR|IR025|ZABOL", country => "Iran" },
"zabrze, pl" => { location => "EUR|PL|PL012|ZABRZE", country => "Poland" },
"zacatecas, mx" => { location => "NAM|MX|MX032|ZACATECAS", country => "Mexico" },
"zagazig, eg" => { location => "AFR|EG|EG015|ZAGAZIG", country => "Egypt" },
"zagreb, hr" => { location => "EUR|HR|HR004|ZAGREB", country => "Croatia" },
"zahedan, ir" => { location => "MEA|IR|IR025|ZAHEDAN", country => "Iran" },
"zama, jp" => { location => "ASI|JP|JA019|ZAMA", country => "Japan" },
"zamboanga, ph" => { location => "ASI|PH|RP130|ZAMBOANGA", country => "Philippines" },
"zamora de hidalgo, mx" => { location => "NAM|MX|MX016|ZAMORA DE HIDALGO", country => "Mexico" },
"zanjan, ir" => { location => "MEA|IR|IR028|ZANJAN", country => "Iran" },
"zanzibar, tz" => { location => "AFR|TZ|TZ000|ZANZIBAR", country => "Tanzania" },
"zaozhuang, cn" => { location => "ASI|CN|CH023|ZAOZHUANG", country => "China" },
"zapopan, mx" => { location => "NAM|MX|MX014|ZAPOPAN", country => "Mexico" },
"zaporozhye, ua" => { location => "EUR|UA|UP022|ZAPOROZHYE", country => "Ukraine" },
"zaragoza, es" => { location => "EUR|ES|SP002|ZARAGOZA", country => "Spain" },
"zaria, ng" => { location => "AFR|NG|NI000|ZARIA", country => "Nigeria" },
"zastron, za" => { location => "AFR|ZA|SF003|ZASTRON", country => "South Africa" },
"zelenograd, ru" => { location => "ASI|RU|RS052|ZELENOGRAD", country => "Russia" },
"zenica, ba" => { location => "EUR|BA|BK001|ZENICA", country => "Bosnia And Herzegovina" },
"zhalantun, cn" => { location => "ASI|CN|CH019|ZHALANTUN", country => "China" },
"zhangjiagang, cn" => { location => "ASI|CN|CH015|ZHANGJIAGANG", country => "China" },
"zhangjiakou, cn" => { location => "ASI|CN|CH010|ZHANGJIAKOU", country => "China" },
"zhangshu, cn" => { location => "ASI|CN|CH015|ZHANGSHU", country => "China" },
"zhangye, cn" => { location => "ASI|CN|CH005|ZHANGYE", country => "China" },
"zhangzhou, cn" => { location => "ASI|CN|CH004|ZHANGZHOU", country => "China" },
"zhanjiang, cn" => { location => "ASI|CN|CH006|ZHANJIANG", country => "China" },
"zhaodong, cn" => { location => "ASI|CN|CH011|ZHAODONG", country => "China" },
"zhaoqing, cn" => { location => "ASI|CN|CH006|ZHAOQING", country => "China" },
"zhaotong, cn" => { location => "ASI|CN|CH030|ZHAOTONG", country => "China" },
"zhaoyang, cn" => { location => "ASI|CN|CH015|ZHAOYANG", country => "China" },
"zhengzhou, cn" => { location => "ASI|CN|CH012|ZHENGZHOU", country => "China" },
"zhenjiang, cn" => { location => "ASI|CN|CH015|ZHENJIANG", country => "China" },
"zhicheng, cn" => { location => "ASI|CN|CH031|ZHICHENG", country => "China" },
"zhitomir, ua" => { location => "EUR|UA|UP023|ZHITOMIR", country => "Ukraine" },
"zhongshan, cn" => { location => "ASI|CN|CH004|ZHONGSHAN", country => "China" },
"zhoushan, cn" => { location => "ASI|CN|CH031|ZHOUSHAN", country => "China" },
"zhucheng, cn" => { location => "ASI|CN|CH015|ZHUCHENG", country => "China" },
"zhuhai, cn" => { location => "ASI|CN|CH006|ZHUHAI", country => "China" },
"zhuji, cn" => { location => "ASI|CN|CH023|ZHUJI", country => "China" },
"zhumadian, cn" => { location => "ASI|CN|CH012|ZHUMADIAN", country => "China" },
"zhuozhou, cn" => { location => "ASI|CN|CH010|ZHUOZHOU", country => "China" },
"zhuzhou, cn" => { location => "ASI|CN|CH014|ZHUZHOU", country => "China" },
"zibo, cn" => { location => "ASI|CN|CH023|ZIBO", country => "China" },
"zielona gora, pl" => { location => "EUR|PL|PL005|ZIELONA GÓRA", country => "Poland" },
"zigong, cn" => { location => "ASI|CN|CH026|ZIGONG", country => "China" },
"ziguinchor, sn" => { location => "AFR|SN|SG010|ZIGUINCHOR", country => "Senegal" },
"zinder, ne" => { location => "AFR|NE|NG008|ZINDER", country => "Niger" },
"zixing, cn" => { location => "ASI|CN|CH014|ZIXING", country => "China" },
"zlatoust, ru" => { location => "ASI|RU|RS013|ZLATOUST", country => "Russia" },
"zoetermeer, nl" => { location => "EUR|NL|NL012|ZOETERMEER", country => "Netherlands" },
"zonguldak, tr" => { location => "MEA|TR|TU000|ZONGULDAK", country => "Turkey" },
"zrenjanin, cs" => { location => "EUR|CS|YI003|ZRENJANIN", country => "Serbia" },
"zunyi, cn" => { location => "ASI|CN|CH008|ZUNYI", country => "China" },
"zurich, ch" => { location => "EUR|CH|SZ026|ZÜRICH", country => "Switzerland" },
"zuwarah, ly" => { location => "AFR|LY|LY008|ZUWARAH", country => "Libya" },
"zwickau, de" => { location => "EUR|DE|GM014|ZWICKAU", country => "Germany" },
"zwolle, nl" => { location => "EUR|NL|NL009|ZWOLLE", country => "Netherlands" },
);
if (exists $locations{$location}) {
return $locations{$location}->{location};
}
return $location;
}
1;