Geography-Country-Utils
view release on metacpan or search on metacpan
lib/Geography/Country/TZ/Zone.pm view on Meta::CPAN
$t = &conv($t) if ($t);
while (<DATA>) {
chop;
my @tokens = split(/\s+/);
last if ($tokens[0] ne 'Rule' || $tokens[1] ne $cn);
last if ($tokens[2] > $y);
next if ($tokens[3] =~ /^\d+$/ && $tokens[3]);
next if ($tokens[3] eq 'only' && $y != $tokens[2]);
last if (($mm = $map{$tokens[5]}) > $m);
next if ($m == $mm && &find($tokens[6], $m, $y) > $d);
$def = $tokens[8];
}
&conv($def);
}
@map2{qw(Sun Mon Tue Wed Thu Fri Sat)} = (1 .. 7);
sub find {
my ($exp, $m, $y) = @_;
return $exp if ($exp =~ /^\d+$/);
my $d;
if ($exp =~ s/^last//) {
my $l = $map2{$exp};
my $t = maketime(1, $m, $y);
for (;;) {
my @t = gmtime($t);
last if ($t[4] + 1 != $m);
$d = $t[3] if ($t[6] + 1 == $l);
$t += 3600 * 24;
}
return $d;
}
# $exp = "$exp>=1" if ($map2{$exp});
if ($exp =~ s/([<>])\=(\d+)$//) {
my $val = $2;
my $neg = ($1 eq "<") ? -1 : 1;
my $l = $map2{$exp};
my $t = maketime($val, $m, $y);
for (;;) {
my @t = gmtime($t);
return $t[3] if ($t[6] + 1 == $l);
$t += 3600 * 24 * $neg;
}
}
die "Unparsable $exp";
}
sub maketime {
require Time::Local;
Time::Local::timegm(0, 0, 0, $_[0], $_[1] - 1, $_[2] - 1900);
}
1;
__DATA__
Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
0:00 Algeria WE%sT 1940 Feb 25 2:00
1:00 Algeria CE%sT 1946 Oct 7
0:00 - WET 1956 Jan 29
1:00 - CET 1963 Apr 14
0:00 Algeria WE%sT 1977 Oct 21
1:00 Algeria CE%sT 1979 Oct 26
0:00 Algeria WE%sT 1981 May
1:00 - CET
Zone Africa/Luanda 0:52:56 - LMT 1892
0:52:04 - LMT 1911 May 26 # Luanda Mean Time?
1:00 - WAT
Zone Africa/Porto-Novo 0:10:28 - LMT 1912
0:00 - GMT 1934 Feb 26
1:00 - WAT
Zone Africa/Gaborone 1:43:40 - LMT 1885
2:00 - CAT 1943 Sep 19 2:00
2:00 1:00 CAST 1944 Mar 19 2:00
2:00 - CAT
Zone Africa/Ouagadougou -0:06:04 - LMT 1912
0:00 - GMT
Zone Africa/Bujumbura 1:57:28 - LMT 1890
2:00 - CAT
Zone Africa/Douala 0:38:48 - LMT 1912
1:00 - WAT
Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
-2:00 - CVT 1942 Sep
-2:00 1:00 CVST 1945 Oct 15
-2:00 - CVT 1975 Nov 25 2:00
-1:00 - CVT
Zone Africa/Bangui 1:14:20 - LMT 1912
1:00 - WAT
Zone Africa/Ndjamena 1:00:12 - LMT 1912
1:00 - WAT 1979 Oct 14
1:00 1:00 WAST 1980 Mar 8
1:00 - WAT
Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
3:00 - EAT
Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
1:00 - WAT
Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
2:00 - CAT
Zone Africa/Brazzaville 1:01:08 - LMT 1912
1:00 - WAT
Zone Africa/Abidjan -0:16:08 - LMT 1912
0:00 - GMT
Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
3:00 - EAT
Zone Africa/Cairo 2:05:00 - LMT 1900 Oct
2:00 Egypt EE%sT
Zone Africa/Malabo 0:35:08 - LMT 1912
0:00 - GMT 1963 Dec 15
1:00 - WAT
Zone Africa/Asmera 2:35:32 - LMT 1870
2:35:32 - AMT 1890 # Asmera Mean Time
2:35:20 - ADMT 1936 May 5 # Adis Dera MT
3:00 - EAT
Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
2:35:20 - ADMT 1936 May 5 # Adis Dera MT
3:00 - EAT
Zone Africa/Libreville 0:37:48 - LMT 1912
1:00 - WAT
Zone Africa/Banjul -1:06:36 - LMT 1912
-1:06:36 - BMT 1935 # Banjul Mean Time
-1:00 - WAT 1964
0:00 - GMT
Zone Africa/Accra -0:00:52 - LMT 1918
0:00 Ghana %s
Zone Africa/Conakry -0:54:52 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960
0:00 - GMT
Zone Africa/Bissau -1:02:20 - LMT 1911 May 26
-1:00 - WAT 1975
0:00 - GMT
Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
3:00 - EAT 1930
2:30 - BEAT 1940
2:45 - BEAUT 1960
3:00 - EAT
Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
2:00 - SAST 1943 Sep 19 2:00
2:00 1:00 SAST 1944 Mar 19 2:00
2:00 - SAST
Zone Africa/Monrovia -0:43:08 - LMT 1882
-0:43:08 - MMT 1919 Mar # Monrovia Mean Time
-0:44:30 - LRT 1972 May # Liberia Time
0:00 - GMT
Zone Africa/Tripoli 0:52:44 - LMT 1920
1:00 Libya CE%sT 1959
2:00 - EET 1982
1:00 Libya CE%sT 1990 May 4
2:00 - EET 1996 Sep 30
1:00 - CET 1997 Apr 4
1:00 1:00 CEST 1997 Oct 4
2:00 - EET
Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
3:00 - EAT 1954 Feb 27 23:00s
3:00 1:00 EAST 1954 May 29 23:00s
3:00 - EAT
Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
2:00 - CAT
Zone Africa/Bamako -0:32:00 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960 Jun 20
0:00 - GMT
Zone Africa/Timbuktu -0:12:04 - LMT 1912
0:00 - GMT
Zone Africa/Nouakchott -1:03:48 - LMT 1912
0:00 - GMT 1934 Feb 26
-1:00 - WAT 1960 Nov 28
0:00 - GMT
Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
4:00 - MUT # Mauritius Time
Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
3:00 - EAT
Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
0:00 Morocco WE%sT 1984 Mar 16
1:00 - CET 1986
0:00 - WET
Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan
-1:00 - WAT 1976 Apr 14
0:00 - WET
Zone Africa/Maputo 2:10:20 - LMT 1903 Mar
2:00 - CAT
Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
1:30 - SWAT 1903 Mar # SW Africa Time
2:00 - SAST 1942 Sep 20 2:00
2:00 1:00 SAST 1943 Mar 21 2:00
2:00 - SAST 1990 Mar 21 # independence
2:00 - CAT 1994 Apr 3
1:00 Namibia WA%sT
Zone Africa/Niamey 0:08:28 - LMT 1912
-1:00 - WAT 1934 Feb 26
0:00 - GMT 1960
1:00 - WAT
Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
1:00 - WAT
Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
4:00 - RET # Reunion Time
Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
2:00 - CAT
Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
-0:22:48 - JMT 1951 # Jamestown Mean Time
0:00 - GMT
Zone Africa/Sao_Tome 0:26:56 - LMT 1884
-0:36:32 - LMT 1912 # Lisbon Mean Time
0:00 - GMT
Zone Africa/Dakar -1:09:44 - LMT 1912
-1:00 - WAT 1941 Jun
0:00 - GMT
Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
4:00 - SCT # Seychelles Time
Zone Africa/Freetown -0:53:00 - LMT 1882
-0:53:00 - FMT 1913 Jun # Freetown Mean Time
-1:00 SL %s 1957
0:00 SL %s
Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
3:00 - EAT 1931
2:30 - BEAT 1957
3:00 - EAT
Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
1:30 - SAST 1903 Mar
2:00 SA SAST
Zone Africa/Khartoum 2:10:08 - LMT 1931
lib/Geography/Country/TZ/Zone.pm view on Meta::CPAN
Zone Europe/London -0:01:15 - LMT 1847 Dec 1
0:00 GB-Eire %s 1968 Oct 27
1:00 - BST 1971 Oct 31 2:00u
0:00 GB-Eire %s 1996
0:00 EU GMT/BST
Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
-0:25:21 1:00 IST 1916 Oct 1 2:00s # Irish Summer Time
0:00 GB-Eire %s 1968 Oct 27
1:00 - BST 1971 Oct 31 2:00u
0:00 GB-Eire %s 1996
0:00 EU GMT/BST
Zone Europe/Dublin -0:25:21 - LMT 1880 Aug 2
-0:25:21 - DMT 1916 May 21 2:00 # Dublin MT
-0:25:21 1:00 IST 1916 Oct 1 2:00s
0:00 GB-Eire %s 1921 Dec 6 # independence
0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
0:00 1:00 IST 1946 Oct 6 2:00
0:00 - GMT 1947 Mar 16 2:00
0:00 1:00 IST 1947 Nov 2 2:00
0:00 - GMT 1948 Apr 18 2:00
0:00 GB-Eire GMT/IST 1968 Oct 27
1:00 - IST 1971 Oct 31 2:00u
0:00 GB-Eire GMT/IST 1996
0:00 EU GMT/IST
Zone WET 0:00 EU WE%sT
Zone CET 1:00 C-Eur CE%sT
Zone MET 1:00 C-Eur ME%sT
Zone EET 2:00 EU EE%sT
Zone Europe/Tirane 1:19:20 - LMT 1914
1:00 - CET 1940 Jun 16
1:00 Albania CE%sT 1984 Jul
1:00 EU CE%sT
Zone Europe/Andorra 0:06:04 - LMT 1901
0:00 - WET 1946 Sep 30
1:00 - CET 1985 Mar 31 2:00
1:00 EU CE%sT
Zone Europe/Vienna 1:05:20 - LMT 1893 Apr
1:00 C-Eur CE%sT 1918 Jun 16 3:00
1:00 Austria CE%sT 1940 Apr 1 2:00
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Austria CE%sT 1981
1:00 EU CE%sT
Zone Europe/Minsk 1:50:16 - LMT 1880
1:50 - MMT 1924 May 2 # Minsk Mean Time
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Jun 28
1:00 C-Eur CE%sT 1944 Jul 3
3:00 Russia MSK/MSD 1990
3:00 - MSK 1991 Mar 31 2:00s
2:00 1:00 EEST 1991 Sep 29 2:00s
2:00 - EET 1992 Mar 29 0:00s
2:00 1:00 EEST 1992 Sep 27 0:00s
2:00 Russia EE%sT
Zone Europe/Brussels 0:17:30 - LMT 1880
0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
0:00 - WET 1914 Nov 8
1:00 - CET 1916 May 1 0:00
1:00 C-Eur CE%sT 1918 Nov 11 11:00u
0:00 Belgium WE%sT 1940 May 20 2:00s
1:00 C-Eur CE%sT 1944 Sep 3
1:00 Belgium CE%sT 1977
1:00 EU CE%sT
Zone Europe/Sofia 1:33:16 - LMT 1880
1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
2:00 - EET 1942 Nov 2 3:00
1:00 C-Eur CE%sT 1945 Apr 2 3:00
2:00 - EET 1979 Mar 31 23:00
2:00 Bulg EE%sT 1982 Sep 26 2:00
2:00 C-Eur EE%sT 1991
2:00 E-Eur EE%sT 1997
2:00 EU EE%sT
Zone Europe/Prague 0:57:44 - LMT 1850
0:57:44 - PMT 1891 Oct # Prague Mean Time
1:00 C-Eur CE%sT 1944 Sep 17 2:00s
1:00 Czech CE%sT 1979
1:00 EU CE%sT
Zone Europe/Copenhagen 0:50:20 - LMT 1890
0:50:20 - CMT 1894 Apr # Copenhagen Mean Time
1:00 Denmark CE%sT 1942 Nov 2 2:00s
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Denmark CE%sT 1980
1:00 EU CE%sT
Zone Atlantic/Faeroe -0:27:04 - LMT 1908 Jan 11 # Torshavn
0:00 - WET 1981
0:00 EU WE%sT
Zone America/Scoresbysund -1:29:00 - LMT 1916 Jul 28 # Ittoqqortoormiit
-2:00 - CGT 1980 Apr 6 2:00
-2:00 C-Eur CG%sT 1981 Mar 29
-1:00 EU EG%sT
Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
-3:00 - WGT 1980 Apr 6 2:00
-3:00 EU WG%sT
Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
-4:00 Thule A%sT
Zone Europe/Tallinn 1:39:00 - LMT 1880
1:39:00 - TMT 1918 Feb # Tallinn Mean Time
1:00 C-Eur CE%sT 1919 Jul
1:39:00 - TMT 1921 May
2:00 - EET 1940 Aug 6
3:00 - MSK 1941 Sep 15
1:00 C-Eur CE%sT 1944 Sep 22
3:00 Russia MSK/MSD 1989 Mar 26 2:00s
2:00 1:00 EEST 1989 Sep 24 2:00s
2:00 C-Eur EE%sT 1998 Sep 22
2:00 EU EE%sT 1999 Nov 1
2:00 - EET
Zone Europe/Helsinki 1:39:52 - LMT 1878 May 31
1:39:52 - HMT 1921 May # Helsinki Mean Time
2:00 Finland EE%sT 1981 Mar 29 2:00
2:00 EU EE%sT
Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
0:00 France WE%sT 1940 Jun 14 23:00
1:00 C-Eur CE%sT 1944 Aug 25
0:00 France WE%sT 1945 Sep 16 3:00
1:00 France CE%sT 1977
1:00 EU CE%sT
Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Germany CE%sT 1980
1:00 EU CE%sT
Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2
0:00 GB-Eire %s 1957 Apr 14 2:00
1:00 - CET 1982
1:00 EU CE%sT
Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
2:00 Greece EE%sT 1941 Apr 30
1:00 Greece CE%sT 1944 Apr 4
2:00 Greece EE%sT 1981
# Shanks says they switched to C-Eur in 1981;
# go with EU instead, since Greece joined it on Jan 1.
2:00 EU EE%sT
Zone Europe/Budapest 1:16:20 - LMT 1890 Oct
1:00 C-Eur CE%sT 1918
1:00 Hungary CE%sT 1941 Apr 6 2:00
1:00 C-Eur CE%sT 1945 May 1 23:00
1:00 Hungary CE%sT 1980 Sep 28 2:00s
1:00 EU CE%sT
Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
-1:27:48 - RMT 1908 # Reykjavik Mean Time?
-1:00 Iceland IS%sT 1968 Apr 7 1:00s
0:00 - GMT
Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
0:49:56 - RMT 1893 Nov # Rome Mean Time
1:00 Italy CE%sT 1942 Nov 2 2:00s
1:00 C-Eur CE%sT 1944 Jul
1:00 Italy CE%sT 1980
1:00 EU CE%sT
Zone Europe/Riga 1:36:24 - LMT 1880
1:36:24 - RMT 1918 Apr 15 2:00 #Riga Mean Time
1:36:24 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
1:36:24 - RMT 1919 Apr 1 2:00
1:36:24 1:00 LST 1919 May 22 3:00
1:36:24 - RMT 1926 May 11
2:00 - EET 1940 Aug 5
3:00 - MSK 1941 Jul
1:00 C-Eur CE%sT 1944 Oct 13
3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
2:00 1:00 EEST 1989 Sep lastSun 2:00s
2:00 Latvia EE%sT 1997 Jan 21
2:00 EU EE%sT 2000 Feb 29
2:00 - EET
Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
1:00 - CET 1981
1:00 EU CE%sT
Zone Europe/Vilnius 1:41:16 - LMT 1880
1:24:00 - WMT 1917 # Warsaw Mean Time
1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
1:00 - CET 1920 Jul 12
2:00 - EET 1920 Oct 9
1:00 - CET 1940 Aug 3
3:00 - MSK 1941 Jun 24
1:00 C-Eur CE%sT 1944 Aug
3:00 Russia MSK/MSD 1991 Mar 31 2:00s
2:00 1:00 EEST 1991 Sep 29 2:00s
2:00 C-Eur EE%sT 1998
2:00 - EET 1998 Mar 29 1:00u
1:00 EU CE%sT 1999 Oct 31 1:00u
2:00 - EET
Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
1:00 Lux CE%sT 1918 Nov 25
0:00 Lux WE%sT 1929 Oct 6 2:00s
0:00 Belgium WE%sT 1940 May 14 3:00
1:00 C-Eur WE%sT 1944 Sep 18 3:00
1:00 Belgium CE%sT 1977
1:00 EU CE%sT
Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 # Valletta
1:00 Italy CE%sT 1942 Nov 2 2:00s
1:00 C-Eur CE%sT 1945 Apr 2 2:00s
1:00 Italy CE%sT 1973 Mar 31
1:00 Malta CE%sT 1981
1:00 EU CE%sT
Zone Europe/Chisinau 1:55:20 - LMT 1880
1:55 - CMT 1918 Feb 15 # Chisinau MT
1:44:24 - BMT 1931 Jul 24 # Bucharest MT
2:00 Romania EE%sT 1940 Aug 15
2:00 1:00 EEST 1941 Jul 17
1:00 C-Eur CE%sT 1944 Aug 24
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 May 6
2:00 - EET 1991
2:00 Russia EE%sT 1992
2:00 E-Eur EE%sT 1997
2:00 EU EE%sT
Zone Europe/Tiraspol 1:58:32 - LMT 1880
1:55 - CMT 1918 Feb 15 # Chisinau MT
1:44:24 - BMT 1931 Jul 24 # Bucharest MT
2:00 Romania EE%sT 1940 Aug 15
2:00 1:00 EEST 1941 Jul 17
1:00 C-Eur CE%sT 1944 Aug 24
3:00 Russia MSK/MSD 1991 Mar 31 2:00
2:00 Russia EE%sT 1992 Jan 19 2:00
3:00 Russia MSK/MSD
Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
0:00 France WE%sT 1945 Sep 16 3:00
1:00 France CE%sT 1977
1:00 EU CE%sT
Zone Europe/Amsterdam 0:19:28 - LMT 1892 May
0:19:28 Neth %s 1937 Jul
0:20 Neth NE%sT 1940 May 16 0:40
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Neth CE%sT 1977
1:00 EU CE%sT
Zone Europe/Oslo 0:43:00 - LMT 1895
1:00 Norway CE%sT 1940 Aug 10 23:00
1:00 C-Eur CE%sT 1945 Apr 2 2:00
1:00 Norway CE%sT 1980
1:00 EU CE%sT
Zone Atlantic/Jan_Mayen -1:00 - EGT
Zone Europe/Warsaw 1:24:00 - LMT 1880
1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
1:00 C-Eur CE%sT 1918 Sep 16 3:00
2:00 Poland EE%sT 1922 Jun
1:00 Poland CE%sT 1940 Jun 23 2:00
1:00 C-Eur CE%sT 1944 Oct
1:00 Poland CE%sT 1977 Apr 3 1:00
1:00 W-Eur CE%sT 1999
1:00 EU CE%sT
Zone Europe/Lisbon -0:36:32 - LMT 1884
-0:36:32 - LMT 1911 May 24 # Lisbon Mean Time
0:00 Port WE%sT 1966 Apr 3 2:00
1:00 - CET 1976 Sep 26 1:00
0:00 Port WE%sT 1983 Sep 25 1:00s
0:00 W-Eur WE%sT 1992 Sep 27 1:00s
1:00 EU CE%sT 1996 Mar 31 1:00u
0:00 EU WE%sT
Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
-1:55 - HMT 1911 May 24 # Horta Mean Time
-2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
-1:00 Port AZO%sT 1983 Sep 25 1:00s
-1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
0:00 EU WE%sT 1993 Mar 28 1:00u
-1:00 EU AZO%sT
Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
-1:08 - FMT 1911 May 24 # Funchal Mean Time
-1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
0:00 Port WE%sT 1983 Sep 25 1:00s
0:00 EU WE%sT
Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
1:44:24 - BMT 1931 Jul 24 # Bucharest MT
2:00 Romania EE%sT 1981 Mar 29 2:00s
2:00 C-Eur EE%sT 1991
2:00 Romania EE%sT 1994
2:00 E-Eur EE%sT 1997
2:00 EU EE%sT
Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
1:00 C-Eur CE%sT 1945
2:00 Poland CE%sT 1946
3:00 Russia MSK/MSD 1991 Mar 31 2:00s
2:00 Russia EE%sT
Zone Europe/Moscow 2:30:20 - LMT 1880
2:30 - MMT 1916 Jul 3 # Moscow Mean Time
2:30:48 Russia %s 1919 Jul 1 2:00
3:00 Russia MSK/MSD 1922 Oct
2:00 - EET 1930 Jun 21
3:00 Russia MSK/MSD 1991 Mar 31 2:00s
2:00 Russia EE%sT 1992 Jan 19 2:00s
3:00 Russia MSK/MSD
Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
3:00 - KUYT 1930 Jun 21 # Kuybyshev
4:00 Russia KUY%sT 1989 Mar 26 2:00s
3:00 Russia KUY%sT 1991 Mar 31 2:00s
2:00 Russia KUY%sT 1991 Sep 29 2:00s
3:00 - KUYT 1991 Oct 20 3:00
4:00 Russia SAM%sT # Samara Time
Zone Asia/Yekaterinburg 4:02:24 - LMT 1919 Jul 15 4:00
4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
5:00 Russia SVE%sT 1991 Mar 31 2:00s
4:00 Russia SVE%sT 1992 Jan 19 2:00s
5:00 Russia YEK%sT # Yekaterinburg Time
Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
5:00 - OMST 1930 Jun 21 # Omsk TIme
6:00 Russia OMS%sT 1991 Mar 31 2:00s
5:00 Russia OMS%sT 1992 Jan 19 2:00s
6:00 Russia OMS%sT
Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
7:00 Russia NOV%sT 1991 Mar 31 2:00s
6:00 Russia NOV%sT 1992 Jan 19 2:00s
7:00 Russia NOV%sT 1993 May 23 # says Shanks
6:00 Russia NOV%sT
Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
7:00 Russia KRA%sT 1991 Mar 31 2:00s
6:00 Russia KRA%sT 1992 Jan 19 2:00s
7:00 Russia KRA%sT
Zone Asia/Irkutsk 6:57:20 - LMT 1880
6:57:20 - IMT 1920 Jan 25 # Irkutsk Mean Time
7:00 - IRKT 1930 Jun 21 # Irkutsk Time
8:00 Russia IRK%sT 1991 Mar 31 2:00s
7:00 Russia IRK%sT 1992 Jan 19 2:00s
8:00 Russia IRK%sT
Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
8:00 - YAKT 1930 Jun 21 # Yakutsk Time
9:00 Russia YAK%sT 1991 Mar 31 2:00s
8:00 Russia YAK%sT 1992 Jan 19 2:00s
9:00 Russia YAK%sT
Zone Asia/Vladivostok 8:47:44 - LMT 1922 Nov 15
9:00 - VLAT 1930 Jun 21 # Vladivostok Time
10:00 Russia VLA%sT 1991 Mar 31 2:00s
9:00 Russia VLA%sST 1992 Jan 19 2:00s
10:00 Russia VLA%sT
Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
10:00 - MAGT 1930 Jun 21 # Magadan Time
11:00 Russia MAG%sT 1991 Mar 31 2:00s
10:00 Russia MAG%sT 1992 Jan 19 2:00s
11:00 Russia MAG%sT
Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
11:00 - PETT 1930 Jun 21 # P-K Time
12:00 Russia PET%sT 1991 Mar 31 2:00s
11:00 Russia PET%sT 1992 Jan 19 2:00s
12:00 Russia PET%sT
Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
12:00 - ANAT 1930 Jun 21 # Anadyr Time
13:00 Russia ANA%sT 1982 Apr 1 0:00s
12:00 Russia ANA%sT 1991 Mar 31 2:00s
11:00 Russia ANA%sT 1992 Jan 19 2:00s
12:00 Russia ANA%sT
Zone Europe/Madrid -0:14:44 - LMT 1901
0:00 Spain WE%sT 1946 Sep 30
1:00 Spain CE%sT 1979
1:00 EU CE%sT
Zone Africa/Ceuta -0:21:16 - LMT 1901
0:00 - WET 1918 May 6 23:00
0:00 1:00 WEST 1918 Oct 7 23:00
0:00 - WET 1924
0:00 Spain WE%sT 1929
0:00 SpainAfrica WE%sT 1984 Mar 16
1:00 - CET 1986
1:00 EU CE%sT
Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
-1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
0:00 - WET 1980 Apr 6 0:00s
0:00 1:00 WEST 1980 Sep 28 0:00s
0:00 EU WE%sT
Zone Europe/Stockholm 1:12:12 - LMT 1878 May 31
1:12:12 - SMT 1900 Jan 1 1:00 # Stockholm MT
1:00 - CET 1916 Apr 14 23:00s
1:00 1:00 CEST 1916 Sep 30 23:00s
1:00 - CET 1980
1:00 EU CE%sT
Zone Europe/Zurich 0:34:08 - LMT 1848 Sep 12
0:29:44 - BMT 1894 Jun # Bern Mean Time
1:00 Swiss CE%sT 1981
1:00 EU CE%sT
Zone Europe/Istanbul 1:55:52 - LMT 1880
1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
2:00 Turkey EE%sT 1978 Oct 15
3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
2:00 Turkey EE%sT 1986
2:00 C-Eur EE%sT 1991
2:00 EU EE%sT
Zone Europe/Kiev 2:02:04 - LMT 1880
2:02:04 - KMT 1924 May 2 # Kiev Mean Time
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Sep 20
1:00 C-Eur CE%sT 1943 Nov 6
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
2:00 - EET 1992
2:00 E-Eur EE%sT 1995
2:00 EU EE%sT
Zone Europe/Uzhgorod 1:29:12 - LMT 1890 Oct
1:00 - CET 1940
1:00 C-Eur CE%sT 1944 Oct
1:00 1:00 CEST 1944 Oct 26
1:00 - CET 1945 Jun 29
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
1:00 - CET 1991 Mar 31 3:00
2:00 - EET 1992
2:00 E-Eur EE%sT 1995
2:00 EU EE%sT
Zone Europe/Zaporozhye 2:20:40 - LMT 1880
2:20 - CUT 1924 May 2 # Central Ukraine T
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Aug 25
1:00 C-Eur CE%sT 1943 Oct 25
3:00 Russia MSK/MSD 1991 Mar 31 2:00
2:00 E-Eur EE%sT 1995
2:00 EU EE%sT
Zone Europe/Simferopol 2:16:24 - LMT 1880
2:16 - SMT 1924 May 2 # Simferopol Mean T
2:00 - EET 1930 Jun 21
3:00 - MSK 1941 Nov
1:00 C-Eur CE%sT 1944 Apr 13
3:00 Russia MSK/MSD 1990
3:00 - MSK 1990 Jul 1 2:00
2:00 - EET 1992
2:00 E-Eur EE%sT 1994 May
3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
3:00 1:00 MSD 1996 Oct 27 3:00s
3:00 Russia MSK/MSD 1997
3:00 - MSK 1997 Mar lastSun 1:00u
2:00 EU EE%sT
Zone Europe/Belgrade 1:22:00 - LMT 1884
1:00 - CET 1941 Apr 18 23:00
1:00 C-Eur CE%sT 1945 May 8 2:00s
1:00 1:00 CEST 1945 Sep 16 2:00s
1:00 - CET 1982 Nov 27
1:00 EU CE%sT
Zone America/New_York -4:56:02 - LMT 1883 Nov 18 12:00
-5:00 US E%sT 1920
-5:00 NYC E%sT 1942
-5:00 US E%sT 1946
-5:00 NYC E%sT 1967
-5:00 US E%sT
Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:00
-6:00 US C%sT 1920
-6:00 Chicago C%sT 1936 Mar 1 2:00
-5:00 - EST 1936 Nov 15 2:00
-6:00 Chicago C%sT 1942
-6:00 US C%sT 1946
-6:00 Chicago C%sT 1967
-6:00 US C%sT
Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:00
-7:00 US M%sT 1920
-7:00 Denver M%sT 1942
-7:00 US M%sT 1946
-7:00 Denver M%sT 1967
-7:00 US M%sT
Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 18 12:00
-8:00 US P%sT 1946
-8:00 CA P%sT 1967
-8:00 US P%sT
Zone America/Juneau -8:57:41 - LMT 1900 Aug 20 12:00
-8:00 - PST 1942
-8:00 US P%sT 1946
-8:00 - PST 1969
-8:00 US P%sT 1983 Oct 30 2:00
-9:00 US AK%sT
Zone America/Yakutat -9:18:55 - LMT 1900 Aug 20 12:00
-9:00 - YST 1942
-9:00 US Y%sT 1946
-9:00 - YST 1969
-9:00 US Y%sT 1983 Oct 30 2:00
-9:00 US AK%sT
Zone America/Anchorage -9:59:36 - LMT 1900 Aug 20 12:00
-10:00 - CAT 1942
-10:00 US CAT/CAWT 1946
-10:00 - CAT 1967 Apr
-10:00 - AHST 1969
-10:00 US AH%sT 1983 Oct 30 2:00
-9:00 US AK%sT
Zone America/Nome -11:01:38 - LMT 1900 Aug 20 12:00
-11:00 - NST 1942
-11:00 US N%sT 1946
-11:00 - NST 1967 Apr
-11:00 - BST 1969
-11:00 US B%sT 1983 Oct 30 2:00
-9:00 US AK%sT
Zone America/Adak -11:46:38 - LMT 1900 Aug 20 12:00
-11:00 - NST 1942
( run in 0.982 second using v1.01-cache-2.11-cpan-e1769b4cff6 )