ICU-20536 ICU 50.2 release tasks
diff --git a/.gitignore b/.gitignore
index d66b5c9..9a86085 100644
--- a/.gitignore
+++ b/.gitignore
@@ -922,6 +922,7 @@
 icu4c/source/uconfig.h.prepend
 icu4j/*.jar
 icu4j/.project
+icu4j/build-local.properties
 icu4j/demos/out
 icu4j/doc
 icu4j/eclipse-build/out
diff --git a/icu4c/readme.html b/icu4c/readme.html
index d1db2a4..853685e 100644
--- a/icu4c/readme.html
+++ b/icu4c/readme.html
@@ -3,7 +3,7 @@
 
 <html lang="en-US" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en-US">
   <head>
-    <title>ReadMe for ICU 50.1.2</title>
+    <title>ReadMe for ICU 50.2</title>
     <meta name="COPYRIGHT" content=
     "Copyright (c) 1997-2013 IBM Corporation and others. All Rights Reserved." />
     <meta name="KEYWORDS" content=
@@ -16,7 +16,7 @@
 
   <body class="draft">
     <h1>International Components for Unicode<br />
-     <abbr title="International Components for Unicode">ICU</abbr> 50.1.2 ReadMe</h1>
+     <abbr title="International Components for Unicode">ICU</abbr> 50.2 ReadMe</h1>
 
     <!--<p><b>Note:</b> This is a development milestone release of ICU4C 50.
     This milestone is intended for those wishing to get an early look at ICU 50 new features and API changes.
@@ -24,7 +24,7 @@
     <!--<p><b>Note:</b> This is a release candidate version of ICU4C 50.
     It is not recommended for production use.</p>-->
 
-    <p>Last updated: 2013-Jan-10<br />
+    <p>Last updated: 2019-Apr-10<br />
      Copyright &copy; 1997-2013 International Business Machines Corporation and
     others. All Rights Reserved.</p>
     <!-- Remember that there is a copyright at the end too -->
diff --git a/icu4c/source/common/unicode/uvernum.h b/icu4c/source/common/unicode/uvernum.h
index b3a858b..14656ac 100644
--- a/icu4c/source/common/unicode/uvernum.h
+++ b/icu4c/source/common/unicode/uvernum.h
@@ -63,13 +63,13 @@
  *  This value will change in the subsequent releases of ICU
  *  @stable ICU 2.6
  */
-#define U_ICU_VERSION_MINOR_NUM 1
+#define U_ICU_VERSION_MINOR_NUM 2
 
 /** The current ICU patchlevel version as an integer.  
  *  This value will change in the subsequent releases of ICU
  *  @stable ICU 2.4
  */
-#define U_ICU_VERSION_PATCHLEVEL_NUM 2
+#define U_ICU_VERSION_PATCHLEVEL_NUM 0
 
 /** The current ICU build level version as an integer.  
  *  This value is for use by ICU clients. It defaults to 0.
@@ -118,7 +118,7 @@
  *  This value will change in the subsequent releases of ICU
  *  @stable ICU 2.4
  */
-#define U_ICU_VERSION "50.1.2"
+#define U_ICU_VERSION "50.2"
 
 /** The current ICU library major/minor version as a string without dots, for library name suffixes. 
  *  This value will change in the subsequent releases of ICU
@@ -130,7 +130,7 @@
 /** Data version in ICU4C.
  * @internal ICU 4.4 Internal Use Only
  **/
-#define U_ICU_DATA_VERSION "50.1"
+#define U_ICU_DATA_VERSION "50.2"
 #endif  /* U_HIDE_INTERNAL_API */
 
 /*===========================================================================
diff --git a/icu4c/source/data/misc/icuver.txt b/icu4c/source/data/misc/icuver.txt
index 21416f4..53fc1e3 100644
--- a/icu4c/source/data/misc/icuver.txt
+++ b/icu4c/source/data/misc/icuver.txt
@@ -6,6 +6,6 @@
 // ***************************************************************************
 
 icuver:table(nofallback){ 
-    DataVersion { "50.1.1.0" }
-    ICUVersion  { "50.1.1.0" }
+    DataVersion { "50.2.0.0" }
+    ICUVersion  { "50.2.0.0" }
 }
diff --git a/icu4c/source/data/misc/metaZones.txt b/icu4c/source/data/misc/metaZones.txt
index 44ca811..d6b0020 100644
--- a/icu4c/source/data/misc/metaZones.txt
+++ b/icu4c/source/data/misc/metaZones.txt
@@ -1,11 +1,5 @@
-// ***************************************************************************
-// *
-// * Copyright (C) 2013 International Business Machines
-// * Corporation and others. All Rights Reserved.
-// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
-// * Source File: <path>/metaZones.xml
-// *
-// ***************************************************************************
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html#License
 metaZones:table(nofallback){
     mapTimezones{
         Acre{
@@ -90,7 +84,6 @@
             JM{"America/Jamaica"}
             KY{"America/Cayman"}
             PA{"America/Panama"}
-            TC{"America/Grand_Turk"}
         }
         America_Mountain{
             001{"America/Denver"}
@@ -105,6 +98,9 @@
         Anadyr{
             001{"Asia/Anadyr"}
         }
+        Apia{
+            001{"Pacific/Apia"}
+        }
         Aqtau{
             001{"Asia/Aqtau"}
         }
@@ -135,11 +131,11 @@
             001{"America/Halifax"}
             AG{"America/Antigua"}
             AI{"America/Anguilla"}
-            AN{"America/Curacao"}
             AW{"America/Aruba"}
             BB{"America/Barbados"}
             BM{"Atlantic/Bermuda"}
             BQ{"America/Kralendijk"}
+            CW{"America/Curacao"}
             DM{"America/Dominica"}
             GD{"America/Grenada"}
             GL{"America/Thule"}
@@ -211,15 +207,11 @@
             001{"Pacific/Saipan"}
             GU{"Pacific/Guam"}
         }
-        Changbai{
-            001{"Asia/Harbin"}
-        }
         Chatham{
             001{"Pacific/Chatham"}
         }
         Chile{
             001{"America/Santiago"}
-            AQ{"Antarctica/Palmer"}
         }
         China{
             001{"Asia/Shanghai"}
@@ -301,6 +293,7 @@
             SM{"Europe/San_Marino"}
             TN{"Africa/Tunis"}
             VA{"Europe/Vatican"}
+            XK{"Europe/Belgrade"}
         }
         Europe_Eastern{
             001{"Europe/Bucharest"}
@@ -314,6 +307,10 @@
             LB{"Asia/Beirut"}
             SY{"Asia/Damascus"}
         }
+        Europe_Further_Eastern{
+            001{"Europe/Minsk"}
+            RU{"Europe/Kaliningrad"}
+        }
         Europe_Western{
             001{"Atlantic/Canary"}
             FO{"Atlantic/Faeroe"}
@@ -347,7 +344,6 @@
             SH{"Atlantic/St_Helena"}
             SL{"Africa/Freetown"}
             SN{"Africa/Dakar"}
-            ST{"Africa/Sao_Tome"}
             TG{"Africa/Lome"}
         }
         Galapagos{
@@ -401,10 +397,9 @@
             001{"Indian/Chagos"}
         }
         Indochina{
-            001{"Asia/Saigon"}
+            001{"Asia/Bangkok"}
             KH{"Asia/Phnom_Penh"}
             LA{"Asia/Vientiane"}
-            TH{"Asia/Bangkok"}
         }
         Indonesia_Central{
             001{"Asia/Makassar"}
@@ -436,9 +431,6 @@
         Karachi{
             001{"Asia/Karachi"}
         }
-        Kashgar{
-            001{"Asia/Kashgar"}
-        }
         Kazakhstan_Eastern{
             001{"Asia/Almaty"}
         }
@@ -450,7 +442,6 @@
         }
         Korea{
             001{"Asia/Seoul"}
-            KP{"Asia/Pyongyang"}
         }
         Kosrae{
             001{"Pacific/Kosrae"}
@@ -476,9 +467,6 @@
         Line_Islands{
             001{"Pacific/Kiritimati"}
         }
-        Long_Shu{
-            001{"Asia/Chongqing"}
-        }
         Lord_Howe{
             001{"Australia/Lord_Howe"}
         }
@@ -512,6 +500,12 @@
         Mawson{
             001{"Antarctica/Mawson"}
         }
+        Mexico_Northwest{
+            001{"America/Santa_Isabel"}
+        }
+        Mexico_Pacific{
+            001{"America/Mazatlan"}
+        }
         Mongolia{
             001{"Asia/Ulaanbaatar"}
         }
@@ -588,6 +582,9 @@
         Ponape{
             001{"Pacific/Ponape"}
         }
+        Pyongyang{
+            001{"Asia/Pyongyang"}
+        }
         Qyzylorda{
             001{"Asia/Qyzylorda"}
         }
@@ -607,7 +604,7 @@
             001{"Asia/Samarkand"}
         }
         Samoa{
-            001{"Pacific/Apia"}
+            001{"Pacific/Pago_Pago"}
         }
         Seychelles{
             001{"Indian/Mahe"}
@@ -816,7 +813,7 @@
             {
                 "Europe_Western",
                 "1985-12-31 23:00",
-                "9999-12-31 23:59",
+                "2018-10-28 02:00",
             }
         }
         "Africa:Ceuta"{
@@ -865,7 +862,7 @@
             {
                 "Europe_Western",
                 "1976-04-14 01:00",
-                "9999-12-31 23:59",
+                "2018-10-28 02:00",
             }
         }
         "Africa:Freetown"{
@@ -914,6 +911,11 @@
             {
                 "Africa_Eastern",
                 "2000-01-15 10:00",
+                "2017-10-31 21:00",
+            }
+            {
+                "Africa_Central",
+                "2017-10-31 21:00",
                 "9999-12-31 23:59",
             }
         }
@@ -1027,6 +1029,18 @@
         "Africa:Sao_Tome"{
             {
                 "GMT",
+                "1970-01-01 00:00",
+                "2018-01-01 01:00",
+            }
+            {
+                "Africa_Western",
+                "2018-01-01 01:00",
+                "2019-01-01 01:00",
+            }
+            {
+                "GMT",
+                "2019-01-01 01:00",
+                "9999-12-31 23:59",
             }
         }
         "Africa:Tripoli"{
@@ -1058,6 +1072,11 @@
             {
                 "Europe_Central",
                 "2012-11-10 00:00",
+                "2013-10-25 00:00",
+            }
+            {
+                "Europe_Eastern",
+                "2013-10-25 00:00",
                 "9999-12-31 23:59",
             }
         }
@@ -1075,11 +1094,16 @@
             {
                 "Africa_Central",
                 "1990-03-20 22:00",
-                "1994-04-02 22:00",
+                "1994-03-20 22:00",
             }
             {
                 "Africa_Western",
-                "1994-04-02 22:00",
+                "1994-03-20 22:00",
+                "2017-10-23 22:00",
+            }
+            {
+                "Africa_Central",
+                "2017-10-23 22:00",
                 "9999-12-31 23:59",
             }
         }
@@ -1404,6 +1428,11 @@
             {
                 "America_Central",
                 "1998-08-02 06:00",
+                "2015-02-01 08:00",
+            }
+            {
+                "America_Eastern",
+                "2015-02-01 08:00",
                 "9999-12-31 23:59",
             }
         }
@@ -1456,7 +1485,7 @@
                 "1998-04-05 09:00",
             }
             {
-                "America_Mountain",
+                "Mexico_Pacific",
                 "1998-04-05 09:00",
                 "9999-12-31 23:59",
             }
@@ -1563,6 +1592,11 @@
             {
                 "Amazon",
                 "2008-06-24 05:00",
+                "2013-11-10 04:00",
+            }
+            {
+                "Acre",
+                "2013-11-10 04:00",
                 "9999-12-31 23:59",
             }
         }
@@ -1571,6 +1605,18 @@
                 "America_Central",
             }
         }
+        "America:Fort_Nelson"{
+            {
+                "America_Pacific",
+                "1970-01-01 00:00",
+                "2015-03-08 10:00",
+            }
+            {
+                "America_Mountain",
+                "2015-03-08 10:00",
+                "9999-12-31 23:59",
+            }
+        }
         "America:Fortaleza"{
             {
                 "Brasilia",
@@ -1606,6 +1652,18 @@
         "America:Grand_Turk"{
             {
                 "America_Eastern",
+                "1970-01-01 00:00",
+                "2015-11-01 06:00",
+            }
+            {
+                "Atlantic",
+                "2015-11-01 06:00",
+                "2018-03-11 07:00",
+            }
+            {
+                "America_Eastern",
+                "2018-03-11 07:00",
+                "9999-12-31 23:59",
             }
         }
         "America:Grenada"{
@@ -1650,7 +1708,7 @@
                 "1970-01-01 08:00",
             }
             {
-                "America_Mountain",
+                "Mexico_Pacific",
                 "1970-01-01 08:00",
                 "9999-12-31 23:59",
             }
@@ -1963,7 +2021,7 @@
                 "1970-01-01 08:00",
             }
             {
-                "America_Mountain",
+                "Mexico_Pacific",
                 "1970-01-01 08:00",
                 "9999-12-31 23:59",
             }
@@ -2017,6 +2075,23 @@
         "America:Metlakatla"{
             {
                 "America_Pacific",
+                "1970-01-01 00:00",
+                "2015-11-01 10:00",
+            }
+            {
+                "Alaska",
+                "2015-11-01 10:00",
+                "2018-11-04 10:00",
+            }
+            {
+                "America_Pacific",
+                "2018-11-04 10:00",
+                "2019-01-20 10:00",
+            }
+            {
+                "Alaska",
+                "2019-01-20 10:00",
+                "9999-12-31 23:59",
             }
         }
         "America:Mexico_City"{
@@ -2051,11 +2126,6 @@
                 "Uruguay",
             }
         }
-        "America:Montreal"{
-            {
-                "America_Eastern",
-            }
-        }
         "America:Montserrat"{
             {
                 "Atlantic",
@@ -2210,6 +2280,13 @@
                 "Atlantic",
             }
         }
+        "America:Punta_Arenas"{
+            {
+                "Chile",
+                "1970-01-01 00:00",
+                "2016-12-03 23:00",
+            }
+        }
         "America:Rainy_River"{
             {
                 "America_Central",
@@ -2278,12 +2355,17 @@
             {
                 "Amazon",
                 "2008-06-24 05:00",
+                "2013-11-10 04:00",
+            }
+            {
+                "Acre",
+                "2013-11-10 04:00",
                 "9999-12-31 23:59",
             }
         }
         "America:Santa_Isabel"{
             {
-                "America_Pacific",
+                "Mexico_Northwest",
             }
         }
         "America:Santarem"{
@@ -2342,11 +2424,6 @@
                 "9999-12-31 23:59",
             }
         }
-        "America:Shiprock"{
-            {
-                "America_Mountain",
-            }
-        }
         "America:Sitka"{
             {
                 "America_Pacific",
@@ -2492,6 +2569,16 @@
             {
                 "Australia_Western",
                 "2012-02-21 17:00",
+                "2016-10-21 16:00",
+            }
+            {
+                "Casey",
+                "2016-10-21 16:00",
+                "2018-03-10 17:00",
+            }
+            {
+                "Australia_Western",
+                "2018-03-10 17:00",
                 "9999-12-31 23:59",
             }
         }
@@ -2536,7 +2623,7 @@
             {
                 "Chile",
                 "1982-05-01 03:00",
-                "9999-12-31 23:59",
+                "2016-12-03 23:00",
             }
         }
         "Antarctica:Rothera"{
@@ -2549,6 +2636,11 @@
                 "Syowa",
             }
         }
+        "Antarctica:Troll"{
+            {
+                "GMT",
+            }
+        }
         "Antarctica:Vostok"{
             {
                 "Vostok",
@@ -2568,11 +2660,11 @@
             {
                 "Almaty",
                 "1970-01-01 00:00",
-                "2005-03-14 18:00",
+                "2004-10-30 20:00",
             }
             {
                 "Kazakhstan_Eastern",
-                "2005-03-14 18:00",
+                "2004-10-30 20:00",
                 "9999-12-31 23:59",
             }
         }
@@ -2590,6 +2682,11 @@
             {
                 "Magadan",
                 "2010-03-27 14:00",
+                "2014-10-25 14:00",
+            }
+            {
+                "Anadyr",
+                "2014-10-25 14:00",
                 "9999-12-31 23:59",
             }
         }
@@ -2602,11 +2699,11 @@
             {
                 "Aqtau",
                 "1991-12-15 19:00",
-                "2005-03-14 20:00",
+                "2004-10-30 22:00",
             }
             {
                 "Kazakhstan_Western",
-                "2005-03-14 20:00",
+                "2004-10-30 22:00",
                 "9999-12-31 23:59",
             }
         }
@@ -2619,11 +2716,11 @@
             {
                 "Aqtobe",
                 "1991-12-15 19:00",
-                "2005-03-14 19:00",
+                "2004-10-30 21:00",
             }
             {
                 "Kazakhstan_Western",
-                "2005-03-14 19:00",
+                "2005-10-30 21:00",
                 "9999-12-31 23:59",
             }
         }
@@ -2639,6 +2736,13 @@
                 "9999-12-31 23:59",
             }
         }
+        "Asia:Atyrau"{
+            {
+                "Kazakhstan_Western",
+                "2004-10-30 22:00",
+                "9999-12-31 23:59",
+            }
+        }
         "Asia:Baghdad"{
             {
                 "Arabian",
@@ -2700,6 +2804,23 @@
                 "India",
             }
         }
+        "Asia:Chita"{
+            {
+                "Yakutsk",
+                "1970-01-01 00:00",
+                "2014-10-25 16:00",
+            }
+            {
+                "Irkutsk",
+                "2014-10-25 16:00",
+                "2016-03-26 18:00",
+            }
+            {
+                "Yakutsk",
+                "2016-03-26 18:00",
+                "9999-12-31 23:59",
+            }
+        }
         "Asia:Choibalsan"{
             {
                 "Mongolia",
@@ -2712,18 +2833,6 @@
                 "9999-12-31 23:59",
             }
         }
-        "Asia:Chongqing"{
-            {
-                "Long_Shu",
-                "1970-01-01 00:00",
-                "1980-04-30 17:00",
-            }
-            {
-                "China",
-                "1980-04-30 17:00",
-                "9999-12-31 23:59",
-            }
-        }
         "Asia:Colombo"{
             {
                 "India",
@@ -2792,6 +2901,13 @@
                 "9999-12-31 23:59",
             }
         }
+        "Asia:Famagusta"{
+            {
+                "Europe_Eastern",
+                "1970-01-01 00:00",
+                "2016-09-07 21:00",
+            }
+        }
         "Asia:Gaza"{
             {
                 "Israel",
@@ -2804,18 +2920,6 @@
                 "9999-12-31 23:59",
             }
         }
-        "Asia:Harbin"{
-            {
-                "Changbai",
-                "1970-01-01 00:00",
-                "1980-04-30 15:30",
-            }
-            {
-                "China",
-                "1980-04-30 15:30",
-                "9999-12-31 23:59",
-            }
-        }
         "Asia:Hebron"{
             {
                 "Israel",
@@ -2866,13 +2970,6 @@
         "Asia:Kamchatka"{
             {
                 "Kamchatka",
-                "1970-01-01 00:00",
-                "2010-03-27 14:00",
-            }
-            {
-                "Magadan",
-                "2010-03-27 14:00",
-                "9999-12-31 23:59",
             }
         }
         "Asia:Karachi"{
@@ -2887,18 +2984,6 @@
                 "9999-12-31 23:59",
             }
         }
-        "Asia:Kashgar"{
-            {
-                "Kashgar",
-                "1970-01-01 00:00",
-                "1980-04-30 19:00",
-            }
-            {
-                "China",
-                "1980-04-30 19:00",
-                "9999-12-31 23:59",
-            }
-        }
         "Asia:Katmandu"{
             {
                 "Nepal",
@@ -3001,6 +3086,11 @@
             {
                 "Novosibirsk",
                 "2010-03-27 19:00",
+                "2014-10-25 19:00",
+            }
+            {
+                "Krasnoyarsk",
+                "2014-10-25 19:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3023,11 +3113,11 @@
             {
                 "Oral",
                 "1991-12-15 20:00",
-                "2005-03-14 20:00",
+                "2004-10-30 22:00",
             }
             {
                 "Kazakhstan_Western",
-                "2005-03-14 20:00",
+                "2004-10-30 22:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3051,6 +3141,18 @@
         "Asia:Pyongyang"{
             {
                 "Korea",
+                "1970-01-01 00:00",
+                "2015-08-14 15:00",
+            }
+            {
+                "Pyongyang",
+                "2015-08-14 15:00",
+                "2018-05-04 15:00",
+            }
+            {
+                "Korea",
+                "2018-05-04 15:00",
+                "9999-12-31 23:59",
             }
         }
         "Asia:Qatar"{
@@ -3065,6 +3167,13 @@
                 "9999-12-31 23:59",
             }
         }
+        "Asia:Qostanay"{
+            {
+                "Kazakhstan_Eastern",
+                "2004-10-30 21:00",
+                "9999-12-31 23:59",
+            }
+        }
         "Asia:Qyzylorda"{
             {
                 "Kizilorda",
@@ -3074,11 +3183,16 @@
             {
                 "Qyzylorda",
                 "1991-12-15 19:00",
-                "2005-03-14 18:00",
+                "2004-10-30 21:00",
             }
             {
                 "Kazakhstan_Eastern",
-                "2005-03-14 18:00",
+                "2004-10-30 21:00",
+                "2018-12-20 18:00",
+            }
+            {
+                "Kazakhstan_Western",
+                "2018-12-20 18:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3095,6 +3209,8 @@
         "Asia:Saigon"{
             {
                 "Indochina",
+                "1975-06-12 16:00",
+                "9999-12-31 23:59",
             }
         }
         "Asia:Sakhalin"{
@@ -3139,6 +3255,13 @@
                 "Singapore",
             }
         }
+        "Asia:Srednekolymsk"{
+            {
+                "Magadan",
+                "1970-01-01 00:00",
+                "2014-10-25 14:00",
+            }
+        }
         "Asia:Taipei"{
             {
                 "Taipei",
@@ -3198,13 +3321,6 @@
         "Asia:Urumqi"{
             {
                 "Urumqi",
-                "1970-01-01 00:00",
-                "1980-04-30 18:00",
-            }
-            {
-                "China",
-                "1980-04-30 18:00",
-                "9999-12-31 23:59",
             }
         }
         "Asia:Ust-Nera"{
@@ -3402,6 +3518,11 @@
                 "America_Eastern",
             }
         }
+        "Etc:GMT"{
+            {
+                "GMT",
+            }
+        }
         "Europe:Amsterdam"{
             {
                 "Europe_Central",
@@ -3412,6 +3533,13 @@
                 "Europe_Central",
             }
         }
+        "Europe:Astrakhan"{
+            {
+                "Moscow",
+                "1992-03-28 22:00",
+                "2016-03-26 23:00",
+            }
+        }
         "Europe:Athens"{
             {
                 "Europe_Eastern",
@@ -3529,6 +3657,11 @@
             {
                 "Europe_Eastern",
                 "1985-04-19 21:00",
+                "2016-09-06 21:00",
+            }
+            {
+                "Turkey",
+                "2016-09-06 21:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3548,23 +3681,33 @@
             {
                 "Moscow",
                 "1970-01-01 00:00",
-                "1991-03-30 23:00",
+                "1989-03-25 23:00",
             }
             {
                 "Europe_Eastern",
-                "1991-03-30 23:00",
+                "1989-03-25 23:00",
                 "2011-03-27 00:00",
             }
+            {
+                "Europe_Further_Eastern",
+                "2011-03-27 00:00",
+                "2014-10-25 23:00",
+            }
+            {
+                "Europe_Eastern",
+                "2014-10-25 23:00",
+                "9999-12-31 23:59",
+            }
         }
         "Europe:Kiev"{
             {
                 "Moscow",
                 "1970-01-01 00:00",
-                "1990-06-30 23:00",
+                "1990-06-30 22:00",
             }
             {
                 "Europe_Eastern",
-                "1990-06-30 23:00",
+                "1990-06-30 22:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3638,6 +3781,16 @@
                 "1991-03-30 23:00",
                 "2011-03-27 00:00",
             }
+            {
+                "Europe_Further_Eastern",
+                "2011-03-27 00:00",
+                "2014-10-26 22:00",
+            }
+            {
+                "Moscow",
+                "2014-10-26 22:00",
+                "9999-12-31 23:59",
+            }
         }
         "Europe:Monaco"{
             {
@@ -3702,16 +3855,21 @@
             {
                 "Kuybyshev",
                 "1970-01-01 00:00",
-                "1991-10-20 00:00",
-            }
-            {
-                "Samara",
-                "1991-10-20 00:00",
-                "2010-03-27 22:00",
+                "1989-03-25 22:00",
             }
             {
                 "Moscow",
-                "2010-03-27 22:00",
+                "1989-03-25 22:00",
+                "1991-03-30 23:00",
+            }
+            {
+                "Europe_Eastern",
+                "1991-03-30 23:00",
+                "1991-09-29 00:00",
+            }
+            {
+                "Samara",
+                "1991-09-29 00:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3725,6 +3883,13 @@
                 "Europe_Central",
             }
         }
+        "Europe:Saratov"{
+            {
+                "Moscow",
+                "1992-03-28 22:00",
+                "2016-12-03 23:00",
+            }
+        }
         "Europe:Simferopol"{
             {
                 "Moscow",
@@ -3744,6 +3909,11 @@
             {
                 "Europe_Eastern",
                 "1997-03-30 01:00",
+                "2014-03-30 00:00",
+            }
+            {
+                "Moscow",
+                "2014-03-30 00:00",
                 "9999-12-31 23:59",
             }
         }
@@ -3779,6 +3949,13 @@
                 "Europe_Central",
             }
         }
+        "Europe:Ulyanovsk"{
+            {
+                "Moscow",
+                "1992-01-19 00:00",
+                "2016-03-26 23:00",
+            }
+        }
         "Europe:Uzhgorod"{
             {
                 "Moscow",
@@ -3815,11 +3992,11 @@
             {
                 "Moscow",
                 "1970-01-01 00:00",
-                "1991-03-30 23:00",
+                "1989-03-25 23:00",
             }
             {
                 "Europe_Eastern",
-                "1991-03-30 23:00",
+                "1989-03-25 23:00",
                 "1998-03-29 01:00",
             }
             {
@@ -3836,6 +4013,18 @@
         "Europe:Volgograd"{
             {
                 "Volgograd",
+                "1970-01-01 00:00",
+                "1992-03-28 22:00",
+            }
+            {
+                "Moscow",
+                "1992-03-28 22:00",
+                "2018-10-27 23:00",
+            }
+            {
+                "Volgograd",
+                "2018-10-27 23:00",
+                "9999-12-31 23:59",
             }
         }
         "Europe:Warsaw"{
@@ -3932,14 +4121,7 @@
         }
         "Pacific:Apia"{
             {
-                "Bering",
-                "1970-01-01 00:00",
-                "1983-10-30 12:00",
-            }
-            {
-                "Samoa",
-                "1983-10-30 12:00",
-                "9999-12-31 23:59",
+                "Apia",
             }
         }
         "Pacific:Auckland"{
@@ -3947,6 +4129,13 @@
                 "New_Zealand",
             }
         }
+        "Pacific:Bougainville"{
+            {
+                "Papua_New_Guinea",
+                "1970-01-01 00:00",
+                "2014-12-27 16:00",
+            }
+        }
         "Pacific:Chatham"{
             {
                 "Chatham",
@@ -4054,11 +4243,11 @@
             {
                 "Kwajalein",
                 "1970-01-01 00:00",
-                "1993-08-20 12:00",
+                "1993-08-21 12:00",
             }
             {
                 "Marshall_Islands",
-                "1993-08-20 12:00",
+                "1993-08-21 12:00",
                 "9999-12-31 23:59",
             }
         }
diff --git a/icu4c/source/data/misc/timezoneTypes.txt b/icu4c/source/data/misc/timezoneTypes.txt
index 378eb75..4bcf727 100644
--- a/icu4c/source/data/misc/timezoneTypes.txt
+++ b/icu4c/source/data/misc/timezoneTypes.txt
@@ -1,12 +1,15 @@
-// ***************************************************************************
-// *
-// * Copyright (C) 2013 International Business Machines
-// * Corporation and others. All Rights Reserved.
-// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
-// * Source File: <path>/common/bcp47/timezone.xml
-// *
-// ***************************************************************************
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html#License
 timezoneTypes:table(nofallback){
+    bcpTypeAlias{
+        tz{
+            aqams{"nzakl"}
+            cnckg{"cnsha"}
+            cnhrb{"cnsha"}
+            cnkhg{"cnurc"}
+            usnavajo{"usden"}
+        }
+    }
     typeAlias{
         timezone{
             "Africa:Asmara"{"Africa/Asmera"}
@@ -26,12 +29,17 @@
             "America:Knox_IN"{"America/Indiana/Knox"}
             "America:Porto_Acre"{"America/Rio_Branco"}
             "America:Rosario"{"America/Cordoba"}
+            "America:Shiprock"{"America/Denver"}
             "America:Virgin"{"America/St_Thomas"}
+            "Antarctica:South_Pole"{"Pacific/Auckland"}
             "Asia:Ashkhabad"{"Asia/Ashgabat"}
-            "Asia:Chungking"{"Asia/Chongqing"}
+            "Asia:Chongqing"{"Asia/Shanghai"}
+            "Asia:Chungking"{"Asia/Shanghai"}
             "Asia:Dacca"{"Asia/Dhaka"}
+            "Asia:Harbin"{"Asia/Shanghai"}
             "Asia:Ho_Chi_Minh"{"Asia/Saigon"}
             "Asia:Istanbul"{"Europe/Istanbul"}
+            "Asia:Kashgar"{"Asia/Urumqi"}
             "Asia:Kathmandu"{"Asia/Katmandu"}
             "Asia:Kolkata"{"Asia/Calcutta"}
             "Asia:Macao"{"Asia/Macau"}
@@ -39,6 +47,7 @@
             "Asia:Thimbu"{"Asia/Thimphu"}
             "Asia:Ujung_Pandang"{"Asia/Makassar"}
             "Asia:Ulan_Bator"{"Asia/Ulaanbaatar"}
+            "Asia:Yangon"{"Asia/Rangoon"}
             "Atlantic:Faroe"{"Atlantic/Faeroe"}
             "Atlantic:Jan_Mayen"{"Arctic/Longyearbyen"}
             "Australia:ACT"{"Australia/Sydney"}
@@ -71,10 +80,9 @@
             "Etc:GMT-0"{"Etc/GMT"}
             "Etc:GMT0"{"Etc/GMT"}
             "Etc:Greenwich"{"Etc/GMT"}
-            "Etc:UCT"{"Etc/GMT"}
-            "Etc:UTC"{"Etc/GMT"}
-            "Etc:Universal"{"Etc/GMT"}
-            "Etc:Zulu"{"Etc/GMT"}
+            "Etc:UCT"{"Etc/UTC"}
+            "Etc:Universal"{"Etc/UTC"}
+            "Etc:Zulu"{"Etc/UTC"}
             "Europe:Belfast"{"Europe/London"}
             "Europe:Nicosia"{"Asia/Nicosia"}
             "Europe:Tiraspol"{"Europe/Chisinau"}
@@ -121,7 +129,7 @@
             MST{"Etc/GMT+7"}
             NZ{"Pacific/Auckland"}
             NZ-CHAT{"Pacific/Chatham"}
-            Navajo{"America/Shiprock"}
+            Navajo{"America/Denver"}
             PRC{"Asia/Shanghai"}
             Poland{"Europe/Warsaw"}
             Portugal{"Europe/Lisbon"}
@@ -129,11 +137,11 @@
             ROK{"Asia/Seoul"}
             Singapore{"Asia/Singapore"}
             Turkey{"Europe/Istanbul"}
-            UCT{"Etc/GMT"}
-            UTC{"Etc/GMT"}
-            Universal{"Etc/GMT"}
+            UCT{"Etc/UTC"}
+            UTC{"Etc/UTC"}
+            Universal{"Etc/UTC"}
             W-SU{"Europe/Moscow"}
-            Zulu{"Etc/GMT"}
+            Zulu{"Etc/UTC"}
         }
     }
     typeMap{
@@ -238,6 +246,7 @@
             "America:Edmonton"{"caedm"}
             "America:Eirunepe"{"brern"}
             "America:El_Salvador"{"svsal"}
+            "America:Fort_Nelson"{"cafne"}
             "America:Fortaleza"{"brfor"}
             "America:Glace_Bay"{"caglb"}
             "America:Godthab"{"glgoh"}
@@ -306,6 +315,7 @@
             "America:Port_of_Spain"{"ttpos"}
             "America:Porto_Velho"{"brpvh"}
             "America:Puerto_Rico"{"prsju"}
+            "America:Punta_Arenas"{"clpuq"}
             "America:Rainy_River"{"caffs"}
             "America:Rankin_Inlet"{"cayek"}
             "America:Recife"{"brrec"}
@@ -318,7 +328,6 @@
             "America:Santo_Domingo"{"dosdq"}
             "America:Sao_Paulo"{"brsao"}
             "America:Scoresbysund"{"globy"}
-            "America:Shiprock"{"usnavajo"}
             "America:Sitka"{"ussit"}
             "America:St_Barthelemy"{"gpsbh"}
             "America:St_Johns"{"casjf"}
@@ -346,8 +355,8 @@
             "Antarctica:McMurdo"{"aqmcm"}
             "Antarctica:Palmer"{"aqplm"}
             "Antarctica:Rothera"{"aqrot"}
-            "Antarctica:South_Pole"{"aqams"}
             "Antarctica:Syowa"{"aqsyw"}
+            "Antarctica:Troll"{"aqtrl"}
             "Antarctica:Vostok"{"aqvos"}
             "Arctic:Longyearbyen"{"sjlyr"}
             "Asia:Aden"{"yeade"}
@@ -357,24 +366,26 @@
             "Asia:Aqtau"{"kzaau"}
             "Asia:Aqtobe"{"kzakx"}
             "Asia:Ashgabat"{"tmasb"}
+            "Asia:Atyrau"{"kzguw"}
             "Asia:Baghdad"{"iqbgw"}
             "Asia:Bahrain"{"bhbah"}
             "Asia:Baku"{"azbak"}
             "Asia:Bangkok"{"thbkk"}
+            "Asia:Barnaul"{"rubax"}
             "Asia:Beirut"{"lbbey"}
             "Asia:Bishkek"{"kgfru"}
             "Asia:Brunei"{"bnbwn"}
             "Asia:Calcutta"{"inccu"}
+            "Asia:Chita"{"ruchita"}
             "Asia:Choibalsan"{"mncoq"}
-            "Asia:Chongqing"{"cnckg"}
             "Asia:Colombo"{"lkcmb"}
             "Asia:Damascus"{"sydam"}
             "Asia:Dhaka"{"bddac"}
             "Asia:Dili"{"tldil"}
             "Asia:Dubai"{"aedxb"}
             "Asia:Dushanbe"{"tjdyu"}
+            "Asia:Famagusta"{"cyfmg"}
             "Asia:Gaza"{"gaza"}
-            "Asia:Harbin"{"cnhrb"}
             "Asia:Hebron"{"hebron"}
             "Asia:Hong_Kong"{"hkhkg"}
             "Asia:Hovd"{"mnhvd"}
@@ -385,7 +396,6 @@
             "Asia:Kabul"{"afkbl"}
             "Asia:Kamchatka"{"rupkc"}
             "Asia:Karachi"{"pkkhi"}
-            "Asia:Kashgar"{"cnkhg"}
             "Asia:Katmandu"{"npktm"}
             "Asia:Khandyga"{"rukhndg"}
             "Asia:Krasnoyarsk"{"rukra"}
@@ -406,6 +416,7 @@
             "Asia:Pontianak"{"idpnk"}
             "Asia:Pyongyang"{"kpfnj"}
             "Asia:Qatar"{"qadoh"}
+            "Asia:Qostanay"{"kzksn"}
             "Asia:Qyzylorda"{"kzkzo"}
             "Asia:Rangoon"{"mmrgn"}
             "Asia:Riyadh"{"saruh"}
@@ -415,12 +426,14 @@
             "Asia:Seoul"{"krsel"}
             "Asia:Shanghai"{"cnsha"}
             "Asia:Singapore"{"sgsin"}
+            "Asia:Srednekolymsk"{"rusred"}
             "Asia:Taipei"{"twtpe"}
             "Asia:Tashkent"{"uztas"}
             "Asia:Tbilisi"{"getbs"}
             "Asia:Tehran"{"irthr"}
             "Asia:Thimphu"{"btthi"}
             "Asia:Tokyo"{"jptyo"}
+            "Asia:Tomsk"{"rutof"}
             "Asia:Ulaanbaatar"{"mnuln"}
             "Asia:Urumqi"{"cnurc"}
             "Asia:Ust-Nera"{"ruunera"}
@@ -451,7 +464,7 @@
             "Australia:Melbourne"{"aumel"}
             "Australia:Perth"{"auper"}
             "Australia:Sydney"{"ausyd"}
-            "Etc:GMT"{"utc"}
+            "Etc:GMT"{"gmt"}
             "Etc:GMT+1"{"utcw01"}
             "Etc:GMT+10"{"utcw10"}
             "Etc:GMT+11"{"utcw11"}
@@ -478,9 +491,11 @@
             "Etc:GMT-7"{"utce07"}
             "Etc:GMT-8"{"utce08"}
             "Etc:GMT-9"{"utce09"}
+            "Etc:UTC"{"utc"}
             "Etc:Unknown"{"unk"}
             "Europe:Amsterdam"{"nlams"}
             "Europe:Andorra"{"adalv"}
+            "Europe:Astrakhan"{"ruasf"}
             "Europe:Athens"{"grath"}
             "Europe:Belgrade"{"rsbeg"}
             "Europe:Berlin"{"deber"}
@@ -500,6 +515,7 @@
             "Europe:Jersey"{"jesth"}
             "Europe:Kaliningrad"{"rukgd"}
             "Europe:Kiev"{"uaiev"}
+            "Europe:Kirov"{"rukvx"}
             "Europe:Lisbon"{"ptlis"}
             "Europe:Ljubljana"{"silju"}
             "Europe:London"{"gblon"}
@@ -519,12 +535,14 @@
             "Europe:Samara"{"rukuf"}
             "Europe:San_Marino"{"smsai"}
             "Europe:Sarajevo"{"basjj"}
+            "Europe:Saratov"{"rurtw"}
             "Europe:Simferopol"{"uasip"}
             "Europe:Skopje"{"mkskp"}
             "Europe:Sofia"{"bgsof"}
             "Europe:Stockholm"{"sesto"}
             "Europe:Tallinn"{"eetll"}
             "Europe:Tirane"{"altia"}
+            "Europe:Ulyanovsk"{"ruuly"}
             "Europe:Uzhgorod"{"uauzh"}
             "Europe:Vaduz"{"livdz"}
             "Europe:Vatican"{"vavat"}
@@ -548,6 +566,7 @@
             "Indian:Reunion"{"rereu"}
             "Pacific:Apia"{"wsapw"}
             "Pacific:Auckland"{"nzakl"}
+            "Pacific:Bougainville"{"pgraw"}
             "Pacific:Chatham"{"nzcht"}
             "Pacific:Easter"{"clipc"}
             "Pacific:Efate"{"vuvli"}
diff --git a/icu4c/source/data/misc/windowsZones.txt b/icu4c/source/data/misc/windowsZones.txt
index 7396cf7..e29b769 100644
--- a/icu4c/source/data/misc/windowsZones.txt
+++ b/icu4c/source/data/misc/windowsZones.txt
@@ -1,11 +1,5 @@
-// ***************************************************************************
-// *
-// * Copyright (C) 2013 International Business Machines
-// * Corporation and others. All Rights Reserved.
-// * Tool: org.unicode.cldr.icu.NewLdml2IcuConverter
-// * Source File: <path>/windowsZones.xml
-// *
-// ***************************************************************************
+// © 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html#License
 windowsZones:table(nofallback){
     mapTimezones{
         "AUS Central Standard Time"{
@@ -27,6 +21,14 @@
                 "Yakutat"
             }
         }
+        "Aleutian Standard Time"{
+            001{"America/Adak"}
+            US{"America/Adak"}
+        }
+        "Altai Standard Time"{
+            001{"Asia/Barnaul"}
+            RU{"Asia/Barnaul"}
+        }
         "Arab Standard Time"{
             001{"Asia/Riyadh"}
             BH{"Asia/Bahrain"}
@@ -54,12 +56,20 @@
                 "uaia America/Catamarca America/Cordoba America/Jujuy America/Mendoza"
             }
         }
+        "Astrakhan Standard Time"{
+            001{"Europe/Astrakhan"}
+            RU{"Europe/Astrakhan Europe/Ulyanovsk"}
+        }
         "Atlantic Standard Time"{
             001{"America/Halifax"}
             BM{"Atlantic/Bermuda"}
             CA{"America/Halifax America/Glace_Bay America/Goose_Bay America/Moncton"}
             GL{"America/Thule"}
         }
+        "Aus Central W. Standard Time"{
+            001{"Australia/Eucla"}
+            AU{"Australia/Eucla"}
+        }
         "Azerbaijan Standard Time"{
             001{"Asia/Baku"}
             AZ{"Asia/Baku"}
@@ -78,6 +88,14 @@
             BD{"Asia/Dhaka"}
             BT{"Asia/Thimphu"}
         }
+        "Belarus Standard Time"{
+            001{"Europe/Minsk"}
+            BY{"Europe/Minsk"}
+        }
+        "Bougainville Standard Time"{
+            001{"Pacific/Bougainville"}
+            PG{"Pacific/Bougainville"}
+        }
         "Canada Central Standard Time"{
             001{"America/Regina"}
             CA{"America/Regina America/Swift_Current"}
@@ -109,9 +127,10 @@
         "Central Asia Standard Time"{
             001{"Asia/Almaty"}
             AQ{"Antarctica/Vostok"}
+            CN{"Asia/Urumqi"}
             IO{"Indian/Chagos"}
             KG{"Asia/Bishkek"}
-            KZ{"Asia/Almaty Asia/Qyzylorda"}
+            KZ{"Asia/Almaty Asia/Qostanay"}
             ZZ{"Etc/GMT-6"}
         }
         "Central Brazilian Standard Time"{
@@ -137,7 +156,7 @@
         }
         "Central Pacific Standard Time"{
             001{"Pacific/Guadalcanal"}
-            AQ{"Antarctica/Macquarie"}
+            AU{"Antarctica/Macquarie"}
             FM{"Pacific/Ponape Pacific/Kosrae"}
             NC{"Pacific/Noumea"}
             SB{"Pacific/Guadalcanal"}
@@ -147,8 +166,8 @@
         "Central Standard Time (Mexico)"{
             001{"America/Mexico_City"}
             MX{
-                "America/Mexico_City America/Bahia_Banderas America/Cancun America/Me"
-                "rida America/Monterrey"
+                "America/Mexico_City America/Bahia_Banderas America/Merida America/Mo"
+                "nterrey"
             }
         }
         "Central Standard Time"{
@@ -165,12 +184,20 @@
             }
             ZZ{"CST6CDT"}
         }
+        "Chatham Islands Standard Time"{
+            001{"Pacific/Chatham"}
+            NZ{"Pacific/Chatham"}
+        }
         "China Standard Time"{
             001{"Asia/Shanghai"}
-            CN{"Asia/Shanghai Asia/Chongqing Asia/Harbin Asia/Kashgar Asia/Urumqi"}
+            CN{"Asia/Shanghai"}
             HK{"Asia/Hong_Kong"}
             MO{"Asia/Macau"}
         }
+        "Cuba Standard Time"{
+            001{"America/Havana"}
+            CU{"America/Havana"}
+        }
         "Dateline Standard Time"{
             001{"Etc/GMT+12"}
             ZZ{"Etc/GMT+12"}
@@ -184,7 +211,6 @@
             KE{"Africa/Nairobi"}
             KM{"Indian/Comoro"}
             MG{"Indian/Antananarivo"}
-            SD{"Africa/Khartoum"}
             SO{"Africa/Mogadishu"}
             SS{"Africa/Juba"}
             TZ{"Africa/Dar_es_Salaam"}
@@ -197,12 +223,20 @@
             AU{"Australia/Brisbane Australia/Lindeman"}
         }
         "E. Europe Standard Time"{
-            001{"Asia/Nicosia"}
-            CY{"Asia/Nicosia"}
+            001{"Europe/Chisinau"}
+            MD{"Europe/Chisinau"}
         }
         "E. South America Standard Time"{
             001{"America/Sao_Paulo"}
-            BR{"America/Sao_Paulo America/Araguaina"}
+            BR{"America/Sao_Paulo"}
+        }
+        "Easter Island Standard Time"{
+            001{"Pacific/Easter"}
+            CL{"Pacific/Easter"}
+        }
+        "Eastern Standard Time (Mexico)"{
+            001{"America/Cancun"}
+            MX{"America/Cancun"}
         }
         "Eastern Standard Time"{
             001{"America/New_York"}
@@ -211,7 +245,6 @@
                 "America/Toronto America/Iqaluit America/Montreal America/Nipigon Ame"
                 "rica/Pangnirtung America/Thunder_Bay"
             }
-            TC{"America/Grand_Turk"}
             US{
                 "America/New_York America/Detroit America/Indiana/Petersburg America/"
                 "Indiana/Vincennes America/Indiana/Winamac America/Kentucky/Monticell"
@@ -222,7 +255,6 @@
         "Egypt Standard Time"{
             001{"Africa/Cairo"}
             EG{"Africa/Cairo"}
-            PS{"Asia/Gaza Asia/Hebron"}
         }
         "Ekaterinburg Standard Time"{
             001{"Asia/Yekaterinburg"}
@@ -236,7 +268,7 @@
             FI{"Europe/Helsinki"}
             LT{"Europe/Vilnius"}
             LV{"Europe/Riga"}
-            UA{"Europe/Kiev Europe/Simferopol Europe/Uzhgorod Europe/Zaporozhye"}
+            UA{"Europe/Kiev Europe/Uzhgorod Europe/Zaporozhye"}
         }
         "Fiji Standard Time"{
             001{"Pacific/Fiji"}
@@ -255,8 +287,8 @@
         }
         "GTB Standard Time"{
             001{"Europe/Bucharest"}
+            CY{"Asia/Famagusta Asia/Nicosia"}
             GR{"Europe/Athens"}
-            MD{"Europe/Chisinau"}
             RO{"Europe/Bucharest"}
         }
         "Georgian Standard Time"{
@@ -271,7 +303,6 @@
             001{"Atlantic/Reykjavik"}
             BF{"Africa/Ouagadougou"}
             CI{"Africa/Abidjan"}
-            EH{"Africa/El_Aaiun"}
             GH{"Africa/Accra"}
             GM{"Africa/Banjul"}
             GN{"Africa/Conakry"}
@@ -283,9 +314,12 @@
             SH{"Atlantic/St_Helena"}
             SL{"Africa/Freetown"}
             SN{"Africa/Dakar"}
-            ST{"Africa/Sao_Tome"}
             TG{"Africa/Lome"}
         }
+        "Haiti Standard Time"{
+            001{"America/Port-au-Prince"}
+            HT{"America/Port-au-Prince"}
+        }
         "Hawaiian Standard Time"{
             001{"Pacific/Honolulu"}
             CK{"Pacific/Rarotonga"}
@@ -312,17 +346,37 @@
         }
         "Kaliningrad Standard Time"{
             001{"Europe/Kaliningrad"}
-            BY{"Europe/Minsk"}
             RU{"Europe/Kaliningrad"}
         }
         "Korea Standard Time"{
             001{"Asia/Seoul"}
-            KP{"Asia/Pyongyang"}
             KR{"Asia/Seoul"}
         }
+        "Libya Standard Time"{
+            001{"Africa/Tripoli"}
+            LY{"Africa/Tripoli"}
+        }
+        "Line Islands Standard Time"{
+            001{"Pacific/Kiritimati"}
+            KI{"Pacific/Kiritimati"}
+            ZZ{"Etc/GMT-14"}
+        }
+        "Lord Howe Standard Time"{
+            001{"Australia/Lord_Howe"}
+            AU{"Australia/Lord_Howe"}
+        }
         "Magadan Standard Time"{
             001{"Asia/Magadan"}
-            RU{"Asia/Magadan Asia/Anadyr Asia/Kamchatka"}
+            RU{"Asia/Magadan"}
+        }
+        "Magallanes Standard Time"{
+            001{"America/Punta_Arenas"}
+            AQ{"Antarctica/Palmer"}
+            CL{"America/Punta_Arenas"}
+        }
+        "Marquesas Standard Time"{
+            001{"Pacific/Marquesas"}
+            PF{"Pacific/Marquesas"}
         }
         "Mauritius Standard Time"{
             001{"Indian/Mauritius"}
@@ -340,6 +394,7 @@
         }
         "Morocco Standard Time"{
             001{"Africa/Casablanca"}
+            EH{"Africa/El_Aaiun"}
             MA{"Africa/Casablanca"}
         }
         "Mountain Standard Time (Mexico)"{
@@ -353,7 +408,7 @@
                 "knife"
             }
             MX{"America/Ojinaga"}
-            US{"America/Denver America/Boise America/Shiprock"}
+            US{"America/Denver America/Boise"}
             ZZ{"MST7MDT"}
         }
         "Myanmar Standard Time"{
@@ -363,7 +418,7 @@
         }
         "N. Central Asia Standard Time"{
             001{"Asia/Novosibirsk"}
-            RU{"Asia/Novosibirsk Asia/Novokuznetsk Asia/Omsk"}
+            RU{"Asia/Novosibirsk"}
         }
         "Namibia Standard Time"{
             001{"Africa/Windhoek"}
@@ -375,35 +430,45 @@
         }
         "New Zealand Standard Time"{
             001{"Pacific/Auckland"}
-            AQ{"Antarctica/South_Pole Antarctica/McMurdo"}
+            AQ{"Antarctica/McMurdo"}
             NZ{"Pacific/Auckland"}
         }
         "Newfoundland Standard Time"{
             001{"America/St_Johns"}
             CA{"America/St_Johns"}
         }
+        "Norfolk Standard Time"{
+            001{"Pacific/Norfolk"}
+            NF{"Pacific/Norfolk"}
+        }
         "North Asia East Standard Time"{
             001{"Asia/Irkutsk"}
             RU{"Asia/Irkutsk"}
         }
         "North Asia Standard Time"{
             001{"Asia/Krasnoyarsk"}
-            RU{"Asia/Krasnoyarsk"}
+            RU{"Asia/Krasnoyarsk Asia/Novokuznetsk"}
+        }
+        "North Korea Standard Time"{
+            001{"Asia/Pyongyang"}
+            KP{"Asia/Pyongyang"}
+        }
+        "Omsk Standard Time"{
+            001{"Asia/Omsk"}
+            RU{"Asia/Omsk"}
         }
         "Pacific SA Standard Time"{
             001{"America/Santiago"}
-            AQ{"Antarctica/Palmer"}
             CL{"America/Santiago"}
         }
         "Pacific Standard Time (Mexico)"{
-            001{"America/Santa_Isabel"}
-            MX{"America/Santa_Isabel"}
+            001{"America/Tijuana"}
+            MX{"America/Tijuana America/Santa_Isabel"}
         }
         "Pacific Standard Time"{
             001{"America/Los_Angeles"}
             CA{"America/Vancouver America/Dawson America/Whitehorse"}
-            MX{"America/Tijuana"}
-            US{"America/Los_Angeles"}
+            US{"America/Los_Angeles America/Metlakatla"}
             ZZ{"PST8PDT"}
         }
         "Pakistan Standard Time"{
@@ -421,9 +486,22 @@
             ES{"Europe/Madrid Africa/Ceuta"}
             FR{"Europe/Paris"}
         }
+        "Russia Time Zone 10"{
+            001{"Asia/Srednekolymsk"}
+            RU{"Asia/Srednekolymsk"}
+        }
+        "Russia Time Zone 11"{
+            001{"Asia/Kamchatka"}
+            RU{"Asia/Kamchatka Asia/Anadyr"}
+        }
+        "Russia Time Zone 3"{
+            001{"Europe/Samara"}
+            RU{"Europe/Samara"}
+        }
         "Russian Standard Time"{
             001{"Europe/Moscow"}
-            RU{"Europe/Moscow Europe/Samara Europe/Volgograd"}
+            RU{"Europe/Moscow Europe/Kirov Europe/Volgograd"}
+            UA{"Europe/Simferopol"}
         }
         "SA Eastern Standard Time"{
             001{"America/Cayenne"}
@@ -439,10 +517,10 @@
         }
         "SA Pacific Standard Time"{
             001{"America/Bogota"}
+            BR{"America/Rio_Branco America/Eirunepe"}
             CA{"America/Coral_Harbour"}
             CO{"America/Bogota"}
             EC{"America/Guayaquil"}
-            HT{"America/Port-au-Prince"}
             JM{"America/Jamaica"}
             KY{"America/Cayman"}
             PA{"America/Panama"}
@@ -458,10 +536,7 @@
             BL{"America/St_Barthelemy"}
             BO{"America/La_Paz"}
             BQ{"America/Kralendijk"}
-            BR{
-                "America/Manaus America/Boa_Vista America/Eirunepe America/Porto_Velh"
-                "o America/Rio_Branco"
-            }
+            BR{"America/Manaus America/Boa_Vista America/Porto_Velho"}
             CA{"America/Blanc-Sablon"}
             CW{"America/Curacao"}
             DM{"America/Dominica"}
@@ -489,15 +564,30 @@
             ID{"Asia/Jakarta Asia/Pontianak"}
             KH{"Asia/Phnom_Penh"}
             LA{"Asia/Vientiane"}
-            MN{"Asia/Hovd"}
             TH{"Asia/Bangkok"}
             VN{"Asia/Saigon"}
             ZZ{"Etc/GMT-7"}
         }
+        "Saint Pierre Standard Time"{
+            001{"America/Miquelon"}
+            PM{"America/Miquelon"}
+        }
+        "Sakhalin Standard Time"{
+            001{"Asia/Sakhalin"}
+            RU{"Asia/Sakhalin"}
+        }
         "Samoa Standard Time"{
             001{"Pacific/Apia"}
             WS{"Pacific/Apia"}
         }
+        "Sao Tome Standard Time"{
+            001{"Africa/Sao_Tome"}
+            ST{"Africa/Sao_Tome"}
+        }
+        "Saratov Standard Time"{
+            001{"Europe/Saratov"}
+            RU{"Europe/Saratov"}
+        }
         "Singapore Standard Time"{
             001{"Asia/Singapore"}
             BN{"Asia/Brunei"}
@@ -526,6 +616,10 @@
             001{"Asia/Colombo"}
             LK{"Asia/Colombo"}
         }
+        "Sudan Standard Time"{
+            001{"Africa/Khartoum"}
+            SD{"Africa/Khartoum"}
+        }
         "Syria Standard Time"{
             001{"Asia/Damascus"}
             SY{"Asia/Damascus"}
@@ -538,6 +632,10 @@
             001{"Australia/Hobart"}
             AU{"Australia/Hobart Australia/Currie"}
         }
+        "Tocantins Standard Time"{
+            001{"America/Araguaina"}
+            BR{"America/Araguaina"}
+        }
         "Tokyo Standard Time"{
             001{"Asia/Tokyo"}
             ID{"Asia/Jayapura"}
@@ -546,24 +644,33 @@
             TL{"Asia/Dili"}
             ZZ{"Etc/GMT-9"}
         }
+        "Tomsk Standard Time"{
+            001{"Asia/Tomsk"}
+            RU{"Asia/Tomsk"}
+        }
         "Tonga Standard Time"{
             001{"Pacific/Tongatapu"}
-            KI{"Pacific/Enderbury"}
-            TK{"Pacific/Fakaofo"}
             TO{"Pacific/Tongatapu"}
-            ZZ{"Etc/GMT-13"}
+        }
+        "Transbaikal Standard Time"{
+            001{"Asia/Chita"}
+            RU{"Asia/Chita"}
         }
         "Turkey Standard Time"{
             001{"Europe/Istanbul"}
             TR{"Europe/Istanbul"}
         }
+        "Turks And Caicos Standard Time"{
+            001{"America/Grand_Turk"}
+            TC{"America/Grand_Turk"}
+        }
         "US Eastern Standard Time"{
             001{"America/Indianapolis"}
             US{"America/Indianapolis America/Indiana/Marengo America/Indiana/Vevay"}
         }
         "US Mountain Standard Time"{
             001{"America/Phoenix"}
-            CA{"America/Dawson_Creek America/Creston"}
+            CA{"America/Dawson_Creek America/Creston America/Fort_Nelson"}
             MX{"America/Hermosillo"}
             US{"America/Phoenix"}
             ZZ{"Etc/GMT+7"}
@@ -571,7 +678,7 @@
         "UTC"{
             001{"Etc/GMT"}
             GL{"America/Danmarkshavn"}
-            ZZ{"Etc/GMT"}
+            ZZ{"Etc/GMT Etc/UTC"}
         }
         "UTC+12"{
             001{"Etc/GMT-12"}
@@ -583,12 +690,28 @@
             WF{"Pacific/Wallis"}
             ZZ{"Etc/GMT-12"}
         }
+        "UTC+13"{
+            001{"Etc/GMT-13"}
+            KI{"Pacific/Enderbury"}
+            TK{"Pacific/Fakaofo"}
+            ZZ{"Etc/GMT-13"}
+        }
         "UTC-02"{
             001{"Etc/GMT+2"}
             BR{"America/Noronha"}
             GS{"Atlantic/South_Georgia"}
             ZZ{"Etc/GMT+2"}
         }
+        "UTC-08"{
+            001{"Etc/GMT+8"}
+            PN{"Pacific/Pitcairn"}
+            ZZ{"Etc/GMT+8"}
+        }
+        "UTC-09"{
+            001{"Etc/GMT+9"}
+            PF{"Pacific/Gambier"}
+            ZZ{"Etc/GMT+9"}
+        }
         "UTC-11"{
             001{"Etc/GMT+11"}
             AS{"Pacific/Pago_Pago"}
@@ -606,7 +729,7 @@
         }
         "Vladivostok Standard Time"{
             001{"Asia/Vladivostok"}
-            RU{"Asia/Vladivostok Asia/Sakhalin Asia/Ust-Nera"}
+            RU{"Asia/Vladivostok Asia/Ust-Nera"}
         }
         "W. Australia Standard Time"{
             001{"Australia/Perth"}
@@ -640,7 +763,6 @@
             IT{"Europe/Rome"}
             LI{"Europe/Vaduz"}
             LU{"Europe/Luxembourg"}
-            LY{"Africa/Tripoli"}
             MC{"Europe/Monaco"}
             MT{"Europe/Malta"}
             NL{"Europe/Amsterdam"}
@@ -650,10 +772,14 @@
             SM{"Europe/San_Marino"}
             VA{"Europe/Vatican"}
         }
+        "W. Mongolia Standard Time"{
+            001{"Asia/Hovd"}
+            MN{"Asia/Hovd"}
+        }
         "West Asia Standard Time"{
             001{"Asia/Tashkent"}
             AQ{"Antarctica/Mawson"}
-            KZ{"Asia/Oral Asia/Aqtau Asia/Aqtobe"}
+            KZ{"Asia/Oral Asia/Aqtau Asia/Aqtobe Asia/Atyrau Asia/Qyzylorda"}
             MV{"Indian/Maldives"}
             TF{"Indian/Kerguelen"}
             TJ{"Asia/Dushanbe"}
@@ -661,6 +787,10 @@
             UZ{"Asia/Tashkent Asia/Samarkand"}
             ZZ{"Etc/GMT-5"}
         }
+        "West Bank Standard Time"{
+            001{"Asia/Hebron"}
+            PS{"Asia/Hebron Asia/Gaza"}
+        }
         "West Pacific Standard Time"{
             001{"Pacific/Port_Moresby"}
             AQ{"Antarctica/DumontDUrville"}
diff --git a/icu4c/source/data/misc/zoneinfo64.txt b/icu4c/source/data/misc/zoneinfo64.txt
index bceb91f..e649434 100644
--- a/icu4c/source/data/misc/zoneinfo64.txt
+++ b/icu4c/source/data/misc/zoneinfo64.txt
@@ -1,22 +1,22 @@
 //---------------------------------------------------------
-// Copyright (C) 2003-2013, International Business Machines
-// Corporation and others.  All Rights Reserved.
+// Copyright (C) 2016 and later: Unicode, Inc. and others.
+// License & terms of use: http://www.unicode.org/copyright.html#License
 //---------------------------------------------------------
-// Build tool: tz2icu
-// Build date: Wed Mar  6 17:26:30 2013
-// Olson source: ftp://elsie.nci.nih.gov/pub/
-// Olson version: 2013a
-// ICU version: 51.1
+// Build tool:  tz2icu
+// Build date:  Tue Mar 26 16:57:59 2019
+// tz database: ftp://ftp.iana.org/tz/
+// tz version:  2019a
+// ICU version: 64.1
 //---------------------------------------------------------
 // >> !!! >>   THIS IS A MACHINE-GENERATED FILE   << !!! <<
 // >> !!! >>>            DO NOT EDIT             <<< !!! <<
 //---------------------------------------------------------
 
 zoneinfo64:table(nofallback) {
- TZVersion { "2013a" }
+ TZVersion { "2019a" }
  Zones:array { 
-  /* ACT */ :int { 347 } //Z#0
-  /* AET */ :int { 359 } //Z#1
+  /* ACT */ :int { 355 } //Z#0
+  /* AET */ :int { 367 } //Z#1
   /* AGT */ :int { 64 } //Z#2
   /* ART */ :int { 18 } //Z#3
   /* AST */ :int { 60 } //Z#4
@@ -24,230 +24,110 @@
     trans:intvector { -1830383032 }
     typeOffsets:intvector { -968, 0, 0, 0 }
     typeMap:bin { "01" }
+    links:intvector { 5, 11, 13, 21, 22, 27, 38, 51, 52, 55, 347 }
   } //Z#5
   /* Africa/Accra */ :table {
-    trans:intvector { -1640995148, -1051920000, -1041466800, -1020384000, -1009930800, -988848000, -978394800, -957312000, -946858800, -925689600, -915236400, -894153600, -883700400, -862617600, -852164400 }
+    trans:intvector { -1640995148, -1556841600, -1546388400, -1525305600, -1514852400, -1493769600, -1483316400, -1462233600, -1451780400, -1430611200, -1420158000, -1399075200, -1388622000, -1367539200, -1357086000, -1336003200, -1325550000, -1304380800, -1293927600, -1272844800, -1262391600, -1241308800, -1230855600, -1209772800, -1199319600, -1178150400, -1167697200, -1146614400, -1136161200, -1115078400, -1104625200, -1083542400, -1073089200, -1051920000, -1041466800, -1020384000, -1009930800, -988848000, -978394800, -957312000, -946858800, -925689600, -915236400, -894153600, -883700400, -862617600, -852164400 }
     typeOffsets:intvector { -52, 0, 0, 0, 0, 1200 }
-    typeMap:bin { "010201020102010201020102010201" }
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
   } //Z#6
-  /* Africa/Addis_Ababa */ :table {
-    transPre32:intvector { -1, 1139284408 }
-    trans:intvector { -1062210920 }
-    typeOffsets:intvector { 9288, 0, 9320, 0, 10800, 0 }
-    typeMap:bin { "0102" }
-    links:intvector { 7, 388 }
-  } //Z#7
+  /* Africa/Addis_Ababa */ :int { 48 } //Z#7
   /* Africa/Algiers */ :table {
     transPre32:intvector { -1, 1808288224 }
     trans:intvector { -1855958961, -1689814800, -1680397200, -1665363600, -1648342800, -1635123600, -1616893200, -1604278800, -1585443600, -1574038800, -1552266000, -1539997200, -1531443600, -956365200, -950486400, -942012000, -812502000, -796262400, -781052400, -766630800, -733280400, -439430400, -212029200, 41468400, 54774000, 231724800, 246236400, 259545600, 275274000, 309740400, 325468800, 341802000, 357523200 }
     typeOffsets:intvector { 732, 0, 0, 0, 0, 3600, 561, 0, 3600, 0, 3600, 3600 }
     typeMap:bin { "03010201020102010201020102010201040504050401040102010204050401020104" }
   } //Z#8
-  /* Africa/Asmara */ :table {
-    transPre32:intvector { -1, 1770436364 }
-    trans:intvector { -1062210920 }
-    typeOffsets:intvector { 9332, 0, 9320, 0, 10800, 0 }
-    typeMap:bin { "0102" }
-    links:intvector { 9, 10 }
-  } //Z#9
-  /* Africa/Asmera */ :int { 9 } //Z#10
-  /* Africa/Bamako */ :table {
-    trans:intvector { -1830382080, -1131235200, -300841200 }
-    typeOffsets:intvector { -1920, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "020102" }
-    links:intvector { 11, 55 }
-  } //Z#11
-  /* Africa/Bangui */ :table {
-    trans:intvector { -1830388460 }
-    typeOffsets:intvector { 4460, 0, 3600, 0 }
-    typeMap:bin { "01" }
-  } //Z#12
-  /* Africa/Banjul */ :table {
-    trans:intvector { -1104533604, -189385200 }
-    typeOffsets:intvector { -3996, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "0102" }
-  } //Z#13
+  /* Africa/Asmara */ :int { 48 } //Z#9
+  /* Africa/Asmera */ :int { 48 } //Z#10
+  /* Africa/Bamako */ :int { 5 } //Z#11
+  /* Africa/Bangui */ :int { 36 } //Z#12
+  /* Africa/Banjul */ :int { 5 } //Z#13
   /* Africa/Bissau */ :table {
-    trans:intvector { -1849388260, 157770000 }
+    trans:intvector { -1830380400, 157770000 }
     typeOffsets:intvector { -3740, 0, -3600, 0, 0, 0 }
     typeMap:bin { "0102" }
   } //Z#14
-  /* Africa/Blantyre */ :table {
-    trans:intvector { -2109291600 }
-    typeOffsets:intvector { 8400, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#15
-  /* Africa/Brazzaville */ :table {
-    trans:intvector { -1830387668 }
-    typeOffsets:intvector { 3668, 0, 3600, 0 }
-    typeMap:bin { "01" }
-  } //Z#16
-  /* Africa/Bujumbura */ :table {
-    transPre32:intvector { -1, 1770438648 }
-    typeOffsets:intvector { 7048, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#17
+  /* Africa/Blantyre */ :int { 43 } //Z#15
+  /* Africa/Brazzaville */ :int { 36 } //Z#16
+  /* Africa/Bujumbura */ :int { 43 } //Z#17
   /* Africa/Cairo */ :table {
     transPre32:intvector { -1, 2109558187 }
-    trans:intvector { -929844000, -923108400, -906170400, -892868400, -875844000, -857790000, -844308000, -825822000, -812685600, -794199600, -779853600, -762663600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -71107200, -52707600, -39484800, -21171600, -7948800, 10364400, 23587200, 41900400, 55123200, 73522800, 86745600, 105058800, 118281600, 136594800, 149817600, 168130800, 181353600, 199753200, 212976000, 231289200, 244512000, 262825200, 276048000, 294361200, 307584000, 325983600, 339206400, 357519600, 370742400, 396399600, 402278400, 426812400, 433814400, 452214000, 465436800, 483750000, 496972800, 515286000, 528508800, 546822000, 560044800, 578444400, 591667200, 610412400, 623203200, 641516400, 654739200, 673052400, 686275200, 704674800, 717897600, 736210800, 749433600, 767746800, 780969600, 799020000, 812322000, 830469600, 843771600, 861919200, 875221200, 893368800, 906670800, 925423200, 938725200, 956872800, 970174800, 988322400, 1001624400, 1019772000, 1033074000, 1051221600, 1064523600, 1083276000, 1096578000, 1114725600, 1128027600, 1146175200, 1158872400, 1177624800, 1189112400, 1209074400, 1219957200, 1240524000, 1250802000, 1272578400, 1281474000, 1284069600, 1285880400 }
+    trans:intvector { -929844000, -923108400, -906170400, -892868400, -875844000, -857790000, -844308000, -825822000, -812685600, -794199600, -779853600, -762663600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -71107200, -52707600, -39484800, -21171600, -7948800, 10364400, 23587200, 41900400, 55123200, 73522800, 86745600, 105058800, 118281600, 136594800, 149817600, 168130800, 181353600, 199753200, 212976000, 231289200, 244512000, 262825200, 276048000, 294361200, 307584000, 325983600, 339206400, 357519600, 370742400, 396399600, 402278400, 426812400, 433814400, 452214000, 465436800, 483750000, 496972800, 515286000, 528508800, 546822000, 560044800, 578444400, 591667200, 610412400, 623203200, 641516400, 654739200, 673052400, 686275200, 704674800, 717897600, 736210800, 749433600, 767746800, 780969600, 799020000, 812322000, 830469600, 843771600, 861919200, 875221200, 893368800, 906670800, 925423200, 938725200, 956872800, 970174800, 988322400, 1001624400, 1019772000, 1033074000, 1051221600, 1064523600, 1083276000, 1096578000, 1114725600, 1128027600, 1146175200, 1158872400, 1177624800, 1189112400, 1209074400, 1219957200, 1240524000, 1250802000, 1272578400, 1281474000, 1284069600, 1285880400, 1400191200, 1403816400, 1406844000, 1411678800 }
     typeOffsets:intvector { 7509, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 3, 18, 393 }
+    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 3, 18, 401 }
   } //Z#18
   /* Africa/Casablanca */ :table {
-    trans:intvector { -1773012580, -956361600, -950490000, -942019200, -761187600, -617241600, -605149200, -81432000, -71110800, 141264000, 147222000, 199756800, 207702000, 231292800, 244249200, 265507200, 271033200, 448243200, 504918000, 1212278400, 1220223600, 1243814400, 1250809200, 1272758400, 1281222000, 1301788800, 1312066800, 1335664800, 1342749600, 1345428000, 1348970400 }
+    trans:intvector { -1773012580, -956361600, -950490000, -942019200, -761187600, -617241600, -605149200, -81432000, -71110800, 141264000, 147222000, 199756800, 207702000, 231292800, 244249200, 265507200, 271033200, 448243200, 504918000, 1212278400, 1220223600, 1243814400, 1250809200, 1272758400, 1281222000, 1301788800, 1312066800, 1335664800, 1342749600, 1345428000, 1348970400, 1367114400, 1373162400, 1376100000, 1382839200, 1396144800, 1403920800, 1406944800, 1414288800, 1427594400, 1434247200, 1437271200, 1445738400, 1459044000, 1465092000, 1468116000, 1477792800, 1490493600, 1495332000, 1498960800, 1509242400, 1521943200, 1526176800, 1529200800, 1557021600, 1560045600, 1587261600, 1590285600, 1618106400, 1621130400, 1648346400, 1651975200, 1679191200, 1682215200, 1710036000, 1713060000, 1740276000, 1743904800, 1771120800, 1774144800, 1801965600, 1804989600, 1832205600, 1835229600, 1863050400, 1866074400, 1893290400, 1896919200, 1924135200, 1927159200, 1954980000, 1958004000, 1985220000, 1988848800, 2016064800, 2019088800, 2046304800, 2049933600, 2077149600, 2080173600, 2107994400, 2111018400, 2138234400, 2141863200 }
     typeOffsets:intvector { -1820, 0, 0, 0, 0, 3600, 3600, 0 }
-    typeMap:bin { "01020102010201020102010201020102010301020102010201020102010201" }
-    finalRule { "Morocco" }
-    finalRaw:int { 0 }
-    finalYear:int { 2013 }
+    typeMap:bin { "01020102010201020102010201020102010301020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
   } //Z#19
   /* Africa/Ceuta */ :table {
-    transPre32:intvector { -1, 2117515772 }
-    trans:intvector { -1630112400, -1616810400, -1442451600, -1427677200, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -81432000, -71110800, 141264000, 147222000, 199756800, 207702000, 231292800, 244249200, 265507200, 271033200, 448243200, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    transPre32:intvector { -1, 2117514496 }
+    trans:intvector { -1630112400, -1616810400, -1442451600, -1427673600, -1379293200, -1364774400, -1348448400, -1333324800, -1316390400, -1301270400, -81432000, -71110800, 141264000, 147222000, 199756800, 207702000, 231292800, 244249200, 265507200, 271033200, 448243200, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -1276, 0, 0, 0, 0, 3600, 3600, 0, 3600, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010304030403040304030403040304030403040304030403" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
   } //Z#20
-  /* Africa/Conakry */ :table {
-    trans:intvector { -1830380708, -1131235200, -315615600 }
-    typeOffsets:intvector { -3292, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "020102" }
-  } //Z#21
-  /* Africa/Dakar */ :table {
-    trans:intvector { -1830379816, -902098800 }
-    typeOffsets:intvector { -4184, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "0102" }
-  } //Z#22
-  /* Africa/Dar_es_Salaam */ :table {
-    trans:intvector { -1230777428, -694321200, -284006700 }
-    typeOffsets:intvector { 9428, 0, 9900, 0, 10800, 0 }
-    typeMap:bin { "020102" }
-  } //Z#23
-  /* Africa/Djibouti */ :table {
-    trans:intvector { -1846291956 }
-    typeOffsets:intvector { 10356, 0, 10800, 0 }
-    typeMap:bin { "01" }
-  } //Z#24
-  /* Africa/Douala */ :table {
-    trans:intvector { -1830386328 }
-    typeOffsets:intvector { 2328, 0, 3600, 0 }
-    typeMap:bin { "01" }
-  } //Z#25
+  /* Africa/Conakry */ :int { 5 } //Z#21
+  /* Africa/Dakar */ :int { 5 } //Z#22
+  /* Africa/Dar_es_Salaam */ :int { 48 } //Z#23
+  /* Africa/Djibouti */ :int { 48 } //Z#24
+  /* Africa/Douala */ :int { 36 } //Z#25
   /* Africa/El_Aaiun */ :table {
-    trans:intvector { -1136070432, 198291600 }
-    typeOffsets:intvector { -3168, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "0102" }
+    trans:intvector { -1136070432, 198291600, 199756800, 207702000, 231292800, 244249200, 265507200, 271033200, 1212278400, 1220223600, 1243814400, 1250809200, 1272758400, 1281222000, 1301788800, 1312066800, 1335664800, 1342749600, 1345428000, 1348970400, 1367114400, 1373162400, 1376100000, 1382839200, 1396144800, 1403920800, 1406944800, 1414288800, 1427594400, 1434247200, 1437271200, 1445738400, 1459044000, 1465092000, 1468116000, 1477792800, 1490493600, 1495332000, 1498960800, 1509242400, 1521943200, 1526176800, 1529200800, 1557021600, 1560045600, 1587261600, 1590285600, 1618106400, 1621130400, 1648346400, 1651975200, 1679191200, 1682215200, 1710036000, 1713060000, 1740276000, 1743904800, 1771120800, 1774144800, 1801965600, 1804989600, 1832205600, 1835229600, 1863050400, 1866074400, 1893290400, 1896919200, 1924135200, 1927159200, 1954980000, 1958004000, 1985220000, 1988848800, 2016064800, 2019088800, 2046304800, 2049933600, 2077149600, 2080173600, 2107994400, 2111018400, 2138234400, 2141863200 }
+    typeOffsets:intvector { -3168, 0, -3600, 0, 0, 0, 0, 3600 }
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203" }
   } //Z#26
-  /* Africa/Freetown */ :table {
-    trans:intvector { -1785712020, -1091487600, -1080949200, -1059865200, -1049326800, -1028329200, -1017790800, -996793200, -986254800, -965257200, -954718800, -933634800, -923096400, -902098800, -891560400, -870562800, -860024400, -410223600, -397180800, -389235600, -365644800, -357699600, -334108800, -326163600, -302486400, -294541200, -270950400, -263005200, -239414400, -231469200 }
-    typeOffsets:intvector { -3180, 0, -3600, 0, -3600, 2400, 0, 0, 0, 3600 }
-    typeMap:bin { "010201020102010201020102010201020103040304030403040304030403" }
-  } //Z#27
-  /* Africa/Gaborone */ :table {
-    transPre32:intvector { -1, 1612673076 }
-    trans:intvector { -2109288600, -829526400, -813805200 }
-    typeOffsets:intvector { 6220, 0, 5400, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "01020302" }
-  } //Z#28
-  /* Africa/Harare */ :table {
-    trans:intvector { -2109290652 }
-    typeOffsets:intvector { 7452, 0, 7200, 0 }
-    typeMap:bin { "01" }
-    links:intvector { 29, 370 }
-  } //Z#29
+  /* Africa/Freetown */ :int { 5 } //Z#27
+  /* Africa/Gaborone */ :int { 43 } //Z#28
+  /* Africa/Harare */ :int { 43 } //Z#29
   /* Africa/Johannesburg */ :table {
     transPre32:intvector { -1, 1836794176 }
     trans:intvector { -2109288600, -860976000, -845254800, -829526400, -813805200 }
     typeOffsets:intvector { 6720, 0, 5400, 0, 7200, 0, 7200, 3600 }
     typeMap:bin { "010203020302" }
+    links:intvector { 30, 44, 45 }
   } //Z#30
   /* Africa/Juba */ :table {
-    trans:intvector { -1230775584, 10360800, 24786000, 41810400, 56322000, 73432800, 87944400, 104882400, 119480400, 136332000, 151016400, 167781600, 182552400, 199231200, 214174800, 230680800, 245710800, 262735200, 277246800, 294184800, 308782800, 325634400, 340405200, 357084000, 371941200, 388533600, 403477200, 419983200, 435013200, 452037600, 466635600, 483487200, 498171600, 947930400 }
-    typeOffsets:intvector { 7584, 0, 7200, 0, 7200, 3600, 10800, 0 }
+    trans:intvector { -1230775588, 10360800, 24786000, 41810400, 56322000, 73432800, 87944400, 104882400, 119480400, 136332000, 151016400, 167781600, 182552400, 199231200, 214174800, 230680800, 245710800, 262735200, 277246800, 294184800, 308782800, 325634400, 340405200, 357084000, 371941200, 388533600, 403477200, 419983200, 435013200, 452037600, 466635600, 483487200, 498171600, 947930400 }
+    typeOffsets:intvector { 7588, 0, 7200, 0, 7200, 3600, 10800, 0 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020103" }
   } //Z#31
-  /* Africa/Kampala */ :table {
-    trans:intvector { -1309745380, -1262314800, -694319400, -410237100 }
-    typeOffsets:intvector { 7780, 0, 9000, 0, 9900, 0, 10800, 0 }
-    typeMap:bin { "03010203" }
-  } //Z#32
+  /* Africa/Kampala */ :int { 48 } //Z#32
   /* Africa/Khartoum */ :table {
-    trans:intvector { -1230775808, 10360800, 24786000, 41810400, 56322000, 73432800, 87944400, 104882400, 119480400, 136332000, 151016400, 167781600, 182552400, 199231200, 214174800, 230680800, 245710800, 262735200, 277246800, 294184800, 308782800, 325634400, 340405200, 357084000, 371941200, 388533600, 403477200, 419983200, 435013200, 452037600, 466635600, 483487200, 498171600, 947930400 }
+    trans:intvector { -1230775808, 10360800, 24786000, 41810400, 56322000, 73432800, 87944400, 104882400, 119480400, 136332000, 151016400, 167781600, 182552400, 199231200, 214174800, 230680800, 245710800, 262735200, 277246800, 294184800, 308782800, 325634400, 340405200, 357084000, 371941200, 388533600, 403477200, 419983200, 435013200, 452037600, 466635600, 483487200, 498171600, 947930400, 1509483600 }
     typeOffsets:intvector { 7808, 0, 7200, 0, 7200, 3600, 10800, 0 }
-    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020103" }
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010301" }
   } //Z#33
-  /* Africa/Kigali */ :table {
-    trans:intvector { -1091498416 }
-    typeOffsets:intvector { 7216, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#34
-  /* Africa/Kinshasa */ :table {
-    transPre32:intvector { -1, 2018323624 }
-    typeOffsets:intvector { 3672, 0, 3600, 0 }
-    typeMap:bin { "01" }
-  } //Z#35
+  /* Africa/Kigali */ :int { 43 } //Z#34
+  /* Africa/Kinshasa */ :int { 36 } //Z#35
   /* Africa/Lagos */ :table {
     trans:intvector { -1588464816 }
     typeOffsets:intvector { 816, 0, 3600, 0 }
     typeMap:bin { "01" }
+    links:intvector { 12, 16, 25, 35, 36, 37, 39, 42, 50, 53 }
   } //Z#36
-  /* Africa/Libreville */ :table {
-    trans:intvector { -1830386268 }
-    typeOffsets:intvector { 2268, 0, 3600, 0 }
-    typeMap:bin { "01" }
-  } //Z#37
-  /* Africa/Lome */ :table {
-    transPre32:intvector { -1, 1865139804 }
-    typeOffsets:intvector { 292, 0, 0, 0 }
-    typeMap:bin { "01" }
-  } //Z#38
-  /* Africa/Luanda */ :table {
-    transPre32:intvector { -1, 1833514520 }
-    trans:intvector { -1849395124 }
-    typeOffsets:intvector { 3176, 0, 3124, 0, 3600, 0 }
-    typeMap:bin { "0102" }
-  } //Z#39
-  /* Africa/Lubumbashi */ :table {
-    transPre32:intvector { -1, 2018320704 }
-    typeOffsets:intvector { 6592, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#40
-  /* Africa/Lusaka */ :table {
-    trans:intvector { -2109289988 }
-    typeOffsets:intvector { 6788, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#41
-  /* Africa/Malabo */ :table {
-    trans:intvector { -1830386108, -190857600 }
-    typeOffsets:intvector { 2108, 0, 0, 0, 3600, 0 }
-    typeMap:bin { "0102" }
-  } //Z#42
+  /* Africa/Libreville */ :int { 36 } //Z#37
+  /* Africa/Lome */ :int { 5 } //Z#38
+  /* Africa/Luanda */ :int { 36 } //Z#39
+  /* Africa/Lubumbashi */ :int { 43 } //Z#40
+  /* Africa/Lusaka */ :int { 43 } //Z#41
+  /* Africa/Malabo */ :int { 36 } //Z#42
   /* Africa/Maputo */ :table {
     trans:intvector { -2109291020 }
     typeOffsets:intvector { 7820, 0, 7200, 0 }
     typeMap:bin { "01" }
+    links:intvector { 15, 17, 28, 29, 34, 40, 41, 43, 378 }
   } //Z#43
-  /* Africa/Maseru */ :table {
-    trans:intvector { -2109289800, -829526400, -813805200 }
-    typeOffsets:intvector { 6600, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "010201" }
-  } //Z#44
-  /* Africa/Mbabane */ :table {
-    trans:intvector { -2109290664 }
-    typeOffsets:intvector { 7464, 0, 7200, 0 }
-    typeMap:bin { "01" }
-  } //Z#45
-  /* Africa/Mogadishu */ :table {
-    transPre32:intvector { -1, 1891394808 }
-    trans:intvector { -1230778800, -410236200 }
-    typeOffsets:intvector { 10888, 0, 9000, 0, 10800, 0 }
-    typeMap:bin { "020102" }
-  } //Z#46
+  /* Africa/Maseru */ :int { 30 } //Z#44
+  /* Africa/Mbabane */ :int { 30 } //Z#45
+  /* Africa/Mogadishu */ :int { 48 } //Z#46
   /* Africa/Monrovia */ :table {
-    trans:intvector { -1604359012, 73529070 }
+    trans:intvector { -1604359012, 63593070 }
     typeOffsets:intvector { -2588, 0, -2670, 0, 0, 0 }
     typeMap:bin { "0102" }
   } //Z#47
@@ -255,47 +135,29 @@
     trans:intvector { -1309746436, -1262314800, -946780200, -315629100 }
     typeOffsets:intvector { 8836, 0, 9000, 0, 9900, 0, 10800, 0 }
     typeMap:bin { "03010203" }
+    links:intvector { 7, 9, 10, 23, 24, 32, 46, 48, 396, 515, 519, 524 }
   } //Z#48
   /* Africa/Ndjamena */ :table {
     trans:intvector { -1830387612, 308703600, 321314400 }
     typeOffsets:intvector { 3612, 0, 3600, 0, 3600, 3600 }
     typeMap:bin { "010201" }
   } //Z#49
-  /* Africa/Niamey */ :table {
-    trans:intvector { -1830384508, -1131231600, -315619200 }
-    typeOffsets:intvector { 508, 0, -3600, 0, 0, 0, 3600, 0 }
-    typeMap:bin { "010203" }
-  } //Z#50
-  /* Africa/Nouakchott */ :table {
-    trans:intvector { -1830380172, -1131235200, -286930800 }
-    typeOffsets:intvector { -3828, 0, -3600, 0, 0, 0 }
-    typeMap:bin { "020102" }
-  } //Z#51
-  /* Africa/Ouagadougou */ :table {
-    trans:intvector { -1830383636 }
-    typeOffsets:intvector { -364, 0, 0, 0 }
-    typeMap:bin { "01" }
-  } //Z#52
-  /* Africa/Porto-Novo */ :table {
-    trans:intvector { -1830384628, -1131235200 }
-    typeOffsets:intvector { 628, 0, 0, 0, 3600, 0 }
-    typeMap:bin { "0102" }
-  } //Z#53
+  /* Africa/Niamey */ :int { 36 } //Z#50
+  /* Africa/Nouakchott */ :int { 5 } //Z#51
+  /* Africa/Ouagadougou */ :int { 5 } //Z#52
+  /* Africa/Porto-Novo */ :int { 36 } //Z#53
   /* Africa/Sao_Tome */ :table {
     transPre32:intvector { -1, 1581055280 }
-    trans:intvector { -1830381808 }
-    typeOffsets:intvector { 1616, 0, -2192, 0, 0, 0 }
-    typeMap:bin { "0102" }
+    trans:intvector { -1830384000, 1514768400, 1546304400 }
+    typeOffsets:intvector { 1616, 0, -2205, 0, 0, 0, 3600, 0 }
+    typeMap:bin { "01020302" }
   } //Z#54
-  /* Africa/Timbuktu */ :int { 11 } //Z#55
+  /* Africa/Timbuktu */ :int { 5 } //Z#55
   /* Africa/Tripoli */ :table {
     trans:intvector { -1577926364, -574902000, -568087200, -512175600, -504928800, -449888400, -441856800, -347158800, 378684000, 386463600, 402271200, 417999600, 433807200, 449622000, 465429600, 481590000, 496965600, 512953200, 528674400, 544230000, 560037600, 575852400, 591660000, 607388400, 623196000, 641775600, 844034400, 860108400, 875916000, 1352505600, 1364515200, 1382659200 }
     typeOffsets:intvector { 3164, 0, 3600, 0, 3600, 3600, 7200, 0 }
-    typeMap:bin { "0102010201020103010201020102010201020102010201020103010203010201" }
-    finalRule { "Libya" }
-    finalRaw:int { 3600 }
-    finalYear:int { 2014 }
-    links:intvector { 56, 520 }
+    typeMap:bin { "0102010201020103010201020102010201020102010201020103010203010203" }
+    links:intvector { 56, 532 }
   } //Z#56
   /* Africa/Tunis */ :table {
     transPre32:intvector { -1, 1497764852 }
@@ -305,51 +167,36 @@
   } //Z#57
   /* Africa/Windhoek */ :table {
     transPre32:intvector { -1, 1836796792 }
-    trans:intvector { -2109288600, -860976000, -845254800, 765324000, 778640400, 796780800, 810090000 }
+    trans:intvector { -2109288600, -860976000, -845254800, 764200800, 778640400, 796780800, 810090000, 828835200, 841539600, 860284800, 873594000, 891734400, 905043600, 923184000, 936493200, 954633600, 967942800, 986083200, 999392400, 1018137600, 1030842000, 1049587200, 1062896400, 1081036800, 1094346000, 1112486400, 1125795600, 1143936000, 1157245200, 1175385600, 1188694800, 1207440000, 1220749200, 1238889600, 1252198800, 1270339200, 1283648400, 1301788800, 1315098000, 1333238400, 1346547600, 1365292800, 1377997200, 1396742400, 1410051600, 1428192000, 1441501200, 1459641600, 1472950800, 1491091200, 1504400400, 1508796000 }
     typeOffsets:intvector { 4104, 0, 3600, 0, 3600, 3600, 5400, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "0304050401020102" }
-    finalRule { "Namibia" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1996 }
+    typeMap:bin { "0304050401020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010204" }
   } //Z#58
   /* America/Adak */ :table {
-    transPre32:intvector { -1, 1069611295, -1, 2106022494 }
+    transPre32:intvector { -1, 1069743569, -1, 2106022494 }
     trans:intvector { -880196400, -765374400, -21466800, -5745600, 9982800, 25704000, 41432400, 57758400, 73486800, 89208000, 104936400, 120657600, 126709200, 152107200, 162392400, 183556800, 199285200, 215611200, 230734800, 247060800, 262789200, 278510400, 294238800, 309960000, 325688400, 341409600, 357138000, 372859200, 388587600, 404913600, 420037200, 436363200, 452088000, 467809200, 483537600, 499258800, 514987200, 530708400, 544622400, 562158000, 576072000, 594212400, 607521600, 625662000, 638971200, 657111600, 671025600, 688561200, 702475200, 720010800, 733924800, 752065200, 765374400, 783514800, 796824000, 814964400, 828878400, 846414000, 860328000, 877863600, 891777600, 909313200, 923227200, 941367600, 954676800, 972817200, 986126400, 1004266800, 1018180800, 1035716400, 1049630400, 1067166000, 1081080000, 1099220400, 1112529600, 1130670000, 1143979200, 1162119600, 1173614400, 1194174000 }
-    typeOffsets:intvector { 44001, 0, -42398, 0, -39600, 0, -39600, 3600, -36000, 0, -36000, 3600 }
+    typeOffsets:intvector { 44002, 0, -42398, 0, -39600, 0, -39600, 3600, -36000, 0, -36000, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020304050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "US" }
     finalRaw:int { -36000 }
     finalYear:int { 2008 }
-    links:intvector { 59, 80, 606 }
+    links:intvector { 59, 80, 616 }
   } //Z#59
   /* America/Anchorage */ :table {
-    transPre32:intvector { -1, 1069604872, -1, 2106016072 }
+    transPre32:intvector { -1, 1069743569, -1, 2106016072 }
     trans:intvector { -880200000, -765378000, -21470400, -5749200, 9979200, 25700400, 41428800, 57754800, 73483200, 89204400, 104932800, 120654000, 126705600, 152103600, 162388800, 183553200, 199281600, 215607600, 230731200, 247057200, 262785600, 278506800, 294235200, 309956400, 325684800, 341406000, 357134400, 372855600, 388584000, 404910000, 420033600, 436359600, 452084400, 467805600, 483534000, 499255200, 514983600, 530704800, 544618800, 562154400, 576068400, 594208800, 607518000, 625658400, 638967600, 657108000, 671022000, 688557600, 702471600, 720007200, 733921200, 752061600, 765370800, 783511200, 796820400, 814960800, 828874800, 846410400, 860324400, 877860000, 891774000, 909309600, 923223600, 941364000, 954673200, 972813600, 986122800, 1004263200, 1018177200, 1035712800, 1049626800, 1067162400, 1081076400, 1099216800, 1112526000, 1130666400, 1143975600, 1162116000, 1173610800, 1194170400 }
     typeOffsets:intvector { 50424, 0, -36000, 0, -36000, 3600, -35976, 0, -32400, 0, -32400, 3600 }
     typeMap:bin { "03010201020102010201020102010201020102010201020102010201020102010204050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-    links:intvector { 4, 60, 605 }
+    links:intvector { 4, 60, 615 }
   } //Z#60
-  /* America/Anguilla */ :table {
-    trans:intvector { -1825098464 }
-    typeOffsets:intvector { -15136, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#61
-  /* America/Antigua */ :table {
-    trans:intvector { -1825098768, -599598000 }
-    typeOffsets:intvector { -14832, 0, -18000, 0, -14400, 0 }
-    typeMap:bin { "0102" }
-  } //Z#62
+  /* America/Anguilla */ :int { 186 } //Z#61
+  /* America/Antigua */ :int { 186 } //Z#62
   /* America/Araguaina */ :table {
-    trans:intvector { -1767214032, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -191365200, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 813726000, 824004000, 844570800, 856058400, 876106800, 888717600, 908074800, 919562400, 938919600, 951616800, 970974000, 982461600, 1003028400, 1013911200, 1036292400, 1045360800, 1350788400, 1361066400, 1382238000, 1392516000, 1413687600, 1424570400, 1445137200, 1456020000, 1476586800, 1487469600, 1508036400, 1518919200, 1540090800, 1550368800, 1571540400, 1581818400, 1602990000, 1613872800, 1634439600, 1645322400, 1665889200, 1677376800, 1697338800, 1708221600, 1729393200, 1739671200, 1760842800, 1771725600, 1792292400, 1803175200, 1823742000, 1834624800, 1855191600, 1866074400, 1887246000, 1897524000, 1918695600, 1928973600, 1950145200, 1960423200, 1981594800, 1992477600, 2013044400, 2024532000, 2044494000, 2055376800, 2076548400, 2086826400, 2107998000, 2118880800, 2139447600 }
-    transPost32:intvector { 0, -2144636896, 0, -2124070096 }
+    trans:intvector { -1767214032, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -191365200, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 813726000, 824004000, 844570800, 856058400, 876106800, 888717600, 908074800, 919562400, 938919600, 951616800, 970974000, 982461600, 1003028400, 1013911200, 1036292400, 1045360800, 1350788400, 1361066400 }
     typeOffsets:intvector { -11568, 0, -10800, 0, -10800, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
-    finalRule { "Brazil" }
-    finalRaw:int { -10800 }
-    finalYear:int { 2039 }
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
   } //Z#63
   /* America/Argentina/Buenos_Aires */ :table {
     transPre32:intvector { -1, 1922869324 }
@@ -370,14 +217,14 @@
     trans:intvector { -1567453392, -1233432000, -1222981200, -1205956800, -1194037200, -1172865600, -1162501200, -1141329600, -1130965200, -1109793600, -1099429200, -1078257600, -1067806800, -1046635200, -1036270800, -1015099200, -1004734800, -983563200, -973198800, -952027200, -941576400, -931032000, -900882000, -890337600, -833749200, -827265600, -752274000, -733780800, -197326800, -190843200, -184194000, -164491200, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 596948400, 605066400, 624423600, 636516000, 656478000, 667965600, 687931200, 699415200, 719377200, 731469600, 938919600, 952052400, 1198983600, 1205632800, 1224385200, 1237082400 }
     typeOffsets:intvector { -15408, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020103040304030403040104030403020304030403" }
-    links:intvector { 67, 101, 195 }
+    links:intvector { 67, 101, 197 }
   } //Z#67
   /* America/Argentina/Jujuy */ :table {
     transPre32:intvector { -1, 1922870968 }
     trans:intvector { -1567453392, -1233432000, -1222981200, -1205956800, -1194037200, -1172865600, -1162501200, -1141329600, -1130965200, -1109793600, -1099429200, -1078257600, -1067806800, -1046635200, -1036270800, -1015099200, -1004734800, -983563200, -973198800, -952027200, -941576400, -931032000, -900882000, -890337600, -833749200, -827265600, -752274000, -733780800, -197326800, -190843200, -184194000, -164491200, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 596948400, 605066400, 624423600, 636516000, 657086400, 669178800, 686721600, 699415200, 719377200, 731469600, 938919600, 952052400, 1198983600, 1205632800 }
     typeOffsets:intvector { -15672, 0, -15408, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
     typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020405040504050203020504050403040504" }
-    links:intvector { 68, 142 }
+    links:intvector { 68, 143 }
   } //Z#68
   /* America/Argentina/La_Rioja */ :table {
     transPre32:intvector { -1, 1922871340 }
@@ -390,7 +237,7 @@
     trans:intvector { -1567453392, -1233432000, -1222981200, -1205956800, -1194037200, -1172865600, -1162501200, -1141329600, -1130965200, -1109793600, -1099429200, -1078257600, -1067806800, -1046635200, -1036270800, -1015099200, -1004734800, -983563200, -973198800, -952027200, -941576400, -931032000, -900882000, -890337600, -833749200, -827265600, -752274000, -733780800, -197326800, -190843200, -184194000, -164491200, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 596948400, 605066400, 624423600, 636516000, 655963200, 667796400, 687499200, 699418800, 719380800, 731469600, 938919600, 952052400, 1085281200, 1096171200, 1198983600, 1205632800 }
     typeOffsets:intvector { -16516, 0, -15408, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030204050405040502030203020504030402040504" }
-    links:intvector { 70, 160 }
+    links:intvector { 70, 161 }
   } //Z#70
   /* America/Argentina/Rio_Gallegos */ :table {
     transPre32:intvector { -1, 1922871908 }
@@ -414,7 +261,7 @@
     transPre32:intvector { -1, 1922871220 }
     trans:intvector { -1567453392, -1233432000, -1222981200, -1205956800, -1194037200, -1172865600, -1162501200, -1141329600, -1130965200, -1109793600, -1099429200, -1078257600, -1067806800, -1046635200, -1036270800, -1015099200, -1004734800, -983563200, -973198800, -952027200, -941576400, -931032000, -900882000, -890337600, -833749200, -827265600, -752274000, -733780800, -197326800, -190843200, -184194000, -164491200, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 596948400, 605066400, 624423600, 637380000, 655963200, 667796400, 675748800, 938919600, 952052400, 1085972400, 1090728000, 1198983600, 1200880800, 1205031600, 1223784000, 1236481200, 1255233600 }
     typeOffsets:intvector { -15924, 0, -15408, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
-    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020405040504050203020403040204050302030203" }
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020405040504050203020403040204050302030204" }
   } //Z#74
   /* America/Argentina/Tucuman */ :table {
     transPre32:intvector { -1, 1922870948 }
@@ -428,18 +275,14 @@
     typeOffsets:intvector { -16392, 0, -15408, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030204050405040504050405040504030402040504" }
   } //Z#76
-  /* America/Aruba */ :table {
-    trans:intvector { -1826738376, -157750200 }
-    typeOffsets:intvector { -16824, 0, -16200, 0, -14400, 0 }
-    typeMap:bin { "0102" }
-  } //Z#77
+  /* America/Aruba */ :int { 105 } //Z#77
   /* America/Asuncion */ :table {
-    trans:intvector { -1206389360, 86760000, 134017200, 181368000, 194497200, 212990400, 226033200, 244526400, 257569200, 276062400, 291783600, 307598400, 323406000, 339220800, 354942000, 370756800, 386478000, 402292800, 418014000, 433828800, 449636400, 465451200, 481172400, 496987200, 512708400, 528523200, 544244400, 560059200, 575866800, 591681600, 607402800, 625032000, 638938800, 654753600, 670474800, 686721600, 699418800, 718257600, 733546800, 749448000, 762318000, 780984000, 793767600, 812520000, 825649200, 844574400, 856666800, 876024000, 888721200, 907473600, 920775600, 938923200, 952225200, 970372800, 983674800, 1002427200, 1018148400, 1030852800, 1049598000, 1062907200, 1081047600, 1097985600, 1110682800, 1129435200, 1142132400, 1160884800, 1173582000, 1192939200, 1205031600, 1224388800, 1236481200, 1255838400, 1270954800, 1286078400 }
+    trans:intvector { -1206389360, 86760000, 134017200, 181368000, 194497200, 212990400, 226033200, 244526400, 257569200, 276062400, 291783600, 307598400, 323406000, 339220800, 354942000, 370756800, 386478000, 402292800, 418014000, 433828800, 449636400, 465451200, 481172400, 496987200, 512708400, 528523200, 544244400, 560059200, 575866800, 591681600, 607402800, 625032000, 638938800, 654753600, 670474800, 686721600, 699418800, 718257600, 733546800, 749448000, 762318000, 780984000, 793767600, 812520000, 825649200, 844574400, 856666800, 876024000, 888721200, 907473600, 920775600, 938923200, 952225200, 970372800, 983674800, 1002427200, 1018148400, 1030852800, 1049598000, 1062907200, 1081047600, 1097985600, 1110682800, 1129435200, 1142132400, 1160884800, 1173582000, 1192939200, 1205031600, 1224388800, 1236481200, 1255838400, 1270954800, 1286078400, 1302404400, 1317528000, 1333854000, 1349582400, 1364094000, 1381032000 }
     typeOffsets:intvector { -13840, 0, -14400, 0, -14400, 3600, -10800, 0 }
-    typeMap:bin { "0103010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
+    typeMap:bin { "0103010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
     finalRule { "Para" }
     finalRaw:int { -14400 }
-    finalYear:int { 2011 }
+    finalYear:int { 2014 }
   } //Z#78
   /* America/Atikokan */ :table {
     transPre32:intvector { -1, 1928234084 }
@@ -512,8 +355,8 @@
     finalYear:int { 2008 }
   } //Z#91
   /* America/Campo_Grande */ :table {
-    trans:intvector { -1767212492, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 592977600, 602046000, 624427200, 634705200, 656481600, 666759600, 687931200, 697604400, 719985600, 728449200, 750830400, 761713200, 782280000, 793162800, 813729600, 824007600, 844574400, 856062000, 876110400, 888721200, 908078400, 919566000, 938923200, 951620400, 970977600, 982465200, 1003032000, 1013914800, 1036296000, 1045364400, 1066536000, 1076814000, 1099368000, 1108868400, 1129435200, 1140318000, 1162699200, 1172372400, 1192334400, 1203217200, 1224388800, 1234666800, 1255838400, 1266721200, 1287288000, 1298170800, 1318737600, 1330225200, 1350792000, 1361070000, 1382241600, 1392519600, 1413691200, 1424574000, 1445140800, 1456023600, 1476590400, 1487473200, 1508040000, 1518922800, 1540094400, 1550372400, 1571544000, 1581822000, 1602993600, 1613876400, 1634443200, 1645326000, 1665892800, 1677380400, 1697342400, 1708225200, 1729396800, 1739674800, 1760846400, 1771729200, 1792296000, 1803178800, 1823745600, 1834628400, 1855195200, 1866078000, 1887249600, 1897527600, 1918699200, 1928977200, 1950148800, 1960426800, 1981598400, 1992481200, 2013048000, 2024535600, 2044497600, 2055380400, 2076552000, 2086830000, 2108001600, 2118884400, 2139451200 }
-    transPost32:intvector { 0, -2144633296, 0, -2124066496 }
+    trans:intvector { -1767212492, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 592977600, 602046000, 624427200, 634705200, 656481600, 666759600, 687931200, 697604400, 719985600, 728449200, 750830400, 761713200, 782280000, 793162800, 813729600, 824007600, 844574400, 856062000, 876110400, 888721200, 908078400, 919566000, 938923200, 951620400, 970977600, 982465200, 1003032000, 1013914800, 1036296000, 1045364400, 1066536000, 1076814000, 1099368000, 1108868400, 1129435200, 1140318000, 1162699200, 1172372400, 1192334400, 1203217200, 1224388800, 1234666800, 1255838400, 1266721200, 1287288000, 1298170800, 1318737600, 1330225200, 1350792000, 1361070000, 1382241600, 1392519600, 1413691200, 1424574000, 1445140800, 1456023600, 1476590400, 1487473200, 1508040000, 1518922800, 1541304000, 1550372400, 1572753600, 1581822000, 1604203200, 1613876400, 1636257600, 1645326000, 1667707200, 1677380400, 1699156800, 1708225200, 1730606400, 1739674800, 1762056000, 1771729200, 1793505600, 1803178800, 1825560000, 1834628400, 1857009600, 1866078000, 1888459200, 1897527600, 1919908800, 1928977200, 1951358400, 1960426800, 1983412800, 1992481200, 2014862400, 2024535600, 2046312000, 2055380400, 2077761600, 2086830000, 2109211200, 2118884400, 2140660800 }
+    transPost32:intvector { 0, -2144633296, 0, -2122252096 }
     typeOffsets:intvector { -13108, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
     finalRule { "Brazil" }
@@ -521,18 +364,15 @@
     finalYear:int { 2039 }
   } //Z#92
   /* America/Cancun */ :table {
-    trans:intvector { -1514743200, 377935200, 828860400, 846396000, 860310000, 877845600, 891759600, 902037600, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000 }
+    trans:intvector { -1514743200, 377935200, 828860400, 846396000, 860310000, 877845600, 891759600, 902037600, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1175414400, 1193554800, 1207468800, 1225004400, 1238918400, 1256454000, 1270368000, 1288508400, 1301817600, 1319958000, 1333267200, 1351407600, 1365321600, 1382857200, 1396771200, 1414306800, 1422777600 }
     typeOffsets:intvector { -20824, 0, -21600, 0, -21600, 3600, -18000, 0, -18000, 3600 }
-    typeMap:bin { "0103040304030402010201020102010201" }
-    finalRule { "Mexico" }
-    finalRaw:int { -21600 }
-    finalYear:int { 2003 }
+    typeMap:bin { "010304030403040201020102010201020102010201020102010201020102010201020102010201020103" }
   } //Z#93
   /* America/Caracas */ :table {
     transPre32:intvector { -1, 1770461760 }
-    trans:intvector { -1826739140, -157750200, 1197183600 }
+    trans:intvector { -1826739140, -157750200, 1197183600, 1462086000 }
     typeOffsets:intvector { -16064, 0, -16200, 0, -16060, 0, -14400, 0 }
-    typeMap:bin { "02010301" }
+    typeMap:bin { "0201030103" }
   } //Z#94
   /* America/Catamarca */ :int { 65 } //Z#95
   /* America/Cayenne */ :table {
@@ -540,12 +380,7 @@
     typeOffsets:intvector { -12560, 0, -14400, 0, -10800, 0 }
     typeMap:bin { "0102" }
   } //Z#96
-  /* America/Cayman */ :table {
-    transPre32:intvector { -1, 1770465228 }
-    trans:intvector { -1827687168 }
-    typeOffsets:intvector { -19532, 0, -18432, 0, -18000, 0 }
-    typeMap:bin { "0102" }
-  } //Z#97
+  /* America/Cayman */ :int { 181 } //Z#97
   /* America/Chicago */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -1563724800, -1551632400, -1538928000, -1520182800, -1504454400, -1491757200, -1473004800, -1459702800, -1441555200, -1428253200, -1410105600, -1396803600, -1378656000, -1365354000, -1347206400, -1333904400, -1315152000, -1301850000, -1283702400, -1270400400, -1252252800, -1238950800, -1220803200, -1207501200, -1189353600, -1176051600, -1157299200, -1144602000, -1125849600, -1112547600, -1094400000, -1081098000, -1067788800, -1045414800, -1031500800, -1018198800, -1000051200, -986749200, -967996800, -955299600, -936547200, -923245200, -905097600, -891795600, -880214400, -765392400, -747244800, -733942800, -715795200, -702493200, -684345600, -671043600, -652896000, -639594000, -620841600, -608144400, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -447267600, -431539200, -415818000, -400089600, -384368400, -368640000, -352918800, -337190400, -321469200, -305740800, -289414800, -273686400, -257965200, -242236800, -226515600, -210787200, -195066000, -179337600, -163616400, -147888000, -131562000, -116438400, -100112400, -84384000, -68662800, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -554,7 +389,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-    links:intvector { 98, 373, 608 }
+    links:intvector { 98, 381, 618 }
   } //Z#98
   /* America/Chihuahua */ :table {
     trans:intvector { -1514739600, -1343066400, -1234807200, -1220292000, -1207159200, -1191344400, 828864000, 846399600, 860313600, 877849200, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 989139600, 1001836800, 1018170000, 1035705600 }
@@ -578,8 +413,8 @@
     typeMap:bin { "020102" }
   } //Z#103
   /* America/Cuiaba */ :table {
-    trans:intvector { -1767212140, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 592977600, 602046000, 624427200, 634705200, 656481600, 666759600, 687931200, 697604400, 719985600, 728449200, 750830400, 761713200, 782280000, 793162800, 813729600, 824007600, 844574400, 856062000, 876110400, 888721200, 908078400, 919566000, 938923200, 951620400, 970977600, 982465200, 1003032000, 1013914800, 1036296000, 1045364400, 1099368000, 1108868400, 1129435200, 1140318000, 1162699200, 1172372400, 1192334400, 1203217200, 1224388800, 1234666800, 1255838400, 1266721200, 1287288000, 1298170800, 1318737600, 1330225200, 1350792000, 1361070000, 1382241600, 1392519600, 1413691200, 1424574000, 1445140800, 1456023600, 1476590400, 1487473200, 1508040000, 1518922800, 1540094400, 1550372400, 1571544000, 1581822000, 1602993600, 1613876400, 1634443200, 1645326000, 1665892800, 1677380400, 1697342400, 1708225200, 1729396800, 1739674800, 1760846400, 1771729200, 1792296000, 1803178800, 1823745600, 1834628400, 1855195200, 1866078000, 1887249600, 1897527600, 1918699200, 1928977200, 1950148800, 1960426800, 1981598400, 1992481200, 2013048000, 2024535600, 2044497600, 2055380400, 2076552000, 2086830000, 2108001600, 2118884400, 2139451200 }
-    transPost32:intvector { 0, -2144633296, 0, -2124066496 }
+    trans:intvector { -1767212140, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 592977600, 602046000, 624427200, 634705200, 656481600, 666759600, 687931200, 697604400, 719985600, 728449200, 750830400, 761713200, 782280000, 793162800, 813729600, 824007600, 844574400, 856062000, 876110400, 888721200, 908078400, 919566000, 938923200, 951620400, 970977600, 982465200, 1003032000, 1013914800, 1036296000, 1045364400, 1099368000, 1108868400, 1129435200, 1140318000, 1162699200, 1172372400, 1192334400, 1203217200, 1224388800, 1234666800, 1255838400, 1266721200, 1287288000, 1298170800, 1318737600, 1330225200, 1350792000, 1361070000, 1382241600, 1392519600, 1413691200, 1424574000, 1445140800, 1456023600, 1476590400, 1487473200, 1508040000, 1518922800, 1541304000, 1550372400, 1572753600, 1581822000, 1604203200, 1613876400, 1636257600, 1645326000, 1667707200, 1677380400, 1699156800, 1708225200, 1730606400, 1739674800, 1762056000, 1771729200, 1793505600, 1803178800, 1825560000, 1834628400, 1857009600, 1866078000, 1888459200, 1897527600, 1919908800, 1928977200, 1951358400, 1960426800, 1983412800, 1992481200, 2014862400, 2024535600, 2046312000, 2055380400, 2077761600, 2086830000, 2109211200, 2118884400, 2140660800 }
+    transPost32:intvector { 0, -2144633296, 0, -2122252096 }
     typeOffsets:intvector { -13460, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
     finalRule { "Brazil" }
@@ -590,7 +425,7 @@
     trans:intvector { -1826738653, -157750200 }
     typeOffsets:intvector { -16547, 0, -16200, 0, -14400, 0 }
     typeMap:bin { "0102" }
-    links:intvector { 105, 147, 152 }
+    links:intvector { 77, 105, 148, 153 }
   } //Z#105
   /* America/Danmarkshavn */ :table {
     trans:intvector { -1686091520, 323845200, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 820465200 }
@@ -620,22 +455,18 @@
     finalRule { "US" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-    links:intvector { 109, 202, 535, 614 }
+    links:intvector { 109, 204, 544, 624 }
   } //Z#109
   /* America/Detroit */ :table {
-    trans:intvector { -2051202469, -1724083200, -880218000, -765396000, -684349200, -671047200, -80499600, -68666400, 104914800, 120636000, 126687600, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
+    trans:intvector { -2051202469, -1724083200, -880218000, -765396000, -684349200, -671047200, 104914800, 120636000, 126687600, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
     typeOffsets:intvector { -19931, 0, -21600, 0, -18000, 0, -18000, 3600 }
-    typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
+    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 110, 613 }
+    links:intvector { 110, 623 }
   } //Z#110
-  /* America/Dominica */ :table {
-    trans:intvector { -1846266804 }
-    typeOffsets:intvector { -14736, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#111
+  /* America/Dominica */ :int { 186 } //Z#111
   /* America/Edmonton */ :table {
     trans:intvector { -1998663968, -1632063600, -1615132800, -1600614000, -1596816000, -1567954800, -1551628800, -1536505200, -1523203200, -1504450800, -1491753600, -1473001200, -1459699200, -880210800, -765388800, -715791600, -702489600, -84380400, -68659200, -21481200, -5760000, 73472400, 89193600, 104922000, 120643200, 136371600, 152092800, 167821200, 183542400, 199270800, 215596800, 230720400, 247046400, 262774800, 278496000, 294224400, 309945600, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1173603600, 1194163200 }
     typeOffsets:intvector { -27232, 0, -25200, 0, -25200, 3600 }
@@ -643,25 +474,31 @@
     finalRule { "Canada" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-    links:intvector { 112, 380 }
+    links:intvector { 112, 388 }
   } //Z#112
   /* America/Eirunepe */ :table {
-    trans:intvector { -1767208832, -1206950400, -1191355200, -1175367600, -1159819200, -633812400, -622062000, -602276400, -591825600, -570740400, -560203200, -539118000, -531345600, -191358000, -184190400, -155156400, -150062400, -128890800, -121118400, -99946800, -89582400, -68410800, -57960000, 499755600, 511243200, 530600400, 540273600, 562136400, 571204800, 750834000, 761716800, 1214283600 }
+    trans:intvector { -1767208832, -1206950400, -1191355200, -1175367600, -1159819200, -633812400, -622062000, -602276400, -591825600, -570740400, -560203200, -539118000, -531345600, -191358000, -184190400, -155156400, -150062400, -128890800, -121118400, -99946800, -89582400, -68410800, -57960000, 499755600, 511243200, 530600400, 540273600, 562136400, 571204800, 750834000, 761716800, 1214283600, 1384056000 }
     typeOffsets:intvector { -16768, 0, -18000, 0, -18000, 3600, -14400, 0 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020103" }
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010301" }
   } //Z#113
   /* America/El_Salvador */ :table {
     trans:intvector { -1546279392, 547020000, 559717200, 578469600, 591166800 }
     typeOffsets:intvector { -21408, 0, -21600, 0, -21600, 3600 }
     typeMap:bin { "0102010201" }
   } //Z#114
-  /* America/Ensenada */ :int { 214 } //Z#115
-  /* America/Fort_Wayne */ :int { 130 } //Z#116
+  /* America/Ensenada */ :int { 216 } //Z#115
+  /* America/Fort_Nelson */ :table {
+    transPre32:intvector { -1, 1581086343 }
+    trans:intvector { -1632060000, -1615129200, -880207200, -765385200, -715788000, -702486000, -684338400, -671036400, -652888800, -639586800, -620834400, -608137200, -589384800, -576082800, -557935200, -544633200, -526485600, -513183600, -495036000, -481734000, -463586400, -450284400, -431532000, -418230000, -400082400, -386780400, -368632800, -355330800, -337183200, -323881200, -305733600, -292431600, -273679200, -260982000, -242229600, -226508400, -210780000, -195058800, -179330400, -163609200, -147880800, -131554800, -116431200, -100105200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 136375200, 152096400, 167824800, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800, 1205056800, 1225616400, 1236506400, 1257066000, 1268560800, 1289120400, 1300010400, 1320570000, 1331460000, 1352019600, 1362909600, 1383469200, 1394359200, 1414918800, 1425808800 }
+    typeOffsets:intvector { -29447, 0, -28800, 0, -28800, 3600, -25200, 0 }
+    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
+  } //Z#116
+  /* America/Fort_Wayne */ :int { 131 } //Z#117
   /* America/Fortaleza */ :table {
     trans:intvector { -1767216360, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -191365200, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 938919600, 951616800, 970974000, 972180000, 1003028400, 1013911200 }
     typeOffsets:intvector { -9240, 0, -10800, 0, -10800, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#117
+  } //Z#118
   /* America/Glace_Bay */ :table {
     trans:intvector { -2131646412, -1632074400, -1615143600, -880221600, -765399600, -526500000, -513198000, 73461600, 89182800, 104911200, 120632400, 136360800, 152082000, 167810400, 183531600, 199260000, 215586000, 230709600, 247035600, 262764000, 278485200, 294213600, 309934800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544600800, 562136400, 576050400, 594190800, 607500000, 625640400, 638949600, 657090000, 671004000, 688539600, 702453600, 719989200, 733903200, 752043600, 765352800, 783493200, 796802400, 814942800, 828856800, 846392400, 860306400, 877842000, 891756000, 909291600, 923205600, 941346000, 954655200, 972795600, 986104800, 1004245200, 1018159200, 1035694800, 1049608800, 1067144400, 1081058400, 1099198800, 1112508000, 1130648400, 1143957600, 1162098000, 1173592800, 1194152400 }
     typeOffsets:intvector { -14388, 0, -14400, 0, -14400, 3600 }
@@ -669,7 +506,7 @@
     finalRule { "Canada" }
     finalRaw:int { -14400 }
     finalYear:int { 2008 }
-  } //Z#118
+  } //Z#119
   /* America/Godthab */ :table {
     trans:intvector { -1686083584, 323845200, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -12416, 0, -10800, 0, -10800, 3600 }
@@ -677,7 +514,7 @@
     finalRule { "EU" }
     finalRaw:int { -10800 }
     finalYear:int { 1997 }
-  } //Z#119
+  } //Z#120
   /* America/Goose_Bay */ :table {
     transPre32:intvector { -1, 1581071396 }
     trans:intvector { -1632076148, -1615145348, -1096921748, -1061670600, -1048973400, -1030221000, -1017523800, -998771400, -986074200, -966717000, -954624600, -935267400, -922570200, -903817800, -891120600, -872368200, -765401400, -746044200, -733347000, -714594600, -701897400, -683145000, -670447800, -651695400, -638998200, -619641000, -606943800, -589401000, -576099000, -557951400, -544649400, -526501800, -513199800, -495052200, -481750200, -463602600, -450300600, -431548200, -418246200, -400098600, -386796600, -368649000, -355347000, -337199400, -323897400, -305749800, -289423800, -273695400, -257974200, -242245800, -226524600, -210796200, -195075000, -179346600, -163625400, -147897000, -131571000, -119903400, -116445600, -100119600, -84391200, -68670000, -52941600, -37220400, -21492000, -5770800, 9957600, 25678800, 41407200, 57733200, 73461600, 89182800, 104911200, 120632400, 136360800, 152082000, 167810400, 183531600, 199260000, 215586000, 230709600, 247035600, 262764000, 278485200, 294213600, 309934800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544593660, 562129260, 576043260, 594180060, 607492860, 625633260, 638942460, 657082860, 670996860, 688532460, 702446460, 719982060, 733896060, 752036460, 765345660, 783486060, 796795260, 814935660, 828849660, 846385260, 860299260, 877834860, 891748860, 909284460, 923198460, 941338860, 954648060, 972788460, 986097660, 1004238060, 1018152060, 1035687660, 1049601660, 1067137260, 1081051260, 1099191660, 1112500860, 1130641260, 1143950460, 1162090860, 1173585660, 1194145260, 1205035260, 1225594860, 1236484860, 1257044460, 1268539260, 1289098860, 1299988860, 1320555600, 1331445600, 1352005200 }
@@ -686,43 +523,34 @@
     finalRule { "Canada" }
     finalRaw:int { -14400 }
     finalYear:int { 2013 }
-  } //Z#120
+  } //Z#121
   /* America/Grand_Turk */ :table {
     transPre32:intvector { -1, 1770462768 }
-    trans:intvector { -1827687168, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
-    typeOffsets:intvector { -17072, 0, -18432, 0, -18000, 0, -18000, 3600 }
-    typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-    finalRule { "TC" }
+    trans:intvector { -1827687170, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000, 1205046000, 1225605600, 1236495600, 1257055200, 1268550000, 1289109600, 1299999600, 1320559200, 1331449200, 1352008800, 1362898800, 1383458400, 1394348400, 1414908000, 1425798000, 1446357600, 1520751600, 1541311200 }
+    typeOffsets:intvector { -17072, 0, -18430, 0, -18000, 0, -18000, 3600, -14400, 0 }
+    typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203040302" }
+    finalRule { "US" }
     finalRaw:int { -18000 }
-    finalYear:int { 2008 }
-  } //Z#121
-  /* America/Grenada */ :table {
-    trans:intvector { -1846266780 }
-    typeOffsets:intvector { -14820, 0, -14400, 0 }
-    typeMap:bin { "01" }
+    finalYear:int { 2019 }
   } //Z#122
-  /* America/Guadeloupe */ :table {
-    trans:intvector { -1848254032 }
-    typeOffsets:intvector { -14768, 0, -14400, 0 }
-    typeMap:bin { "01" }
-    links:intvector { 123, 156, 204 }
-  } //Z#123
+  /* America/Grenada */ :int { 186 } //Z#123
+  /* America/Guadeloupe */ :int { 186 } //Z#124
   /* America/Guatemala */ :table {
     trans:intvector { -1617040676, 123055200, 130914000, 422344800, 433054800, 669708000, 684219600, 1146376800, 1159678800 }
     typeOffsets:intvector { -21724, 0, -21600, 0, -21600, 3600 }
     typeMap:bin { "010201020102010201" }
-  } //Z#124
+  } //Z#125
   /* America/Guayaquil */ :table {
     transPre32:intvector { -1, 1770464856 }
-    trans:intvector { -1230749160 }
-    typeOffsets:intvector { -19160, 0, -18840, 0, -18000, 0 }
-    typeMap:bin { "0102" }
-  } //Z#125
+    trans:intvector { -1230749160, 722926800, 728884800 }
+    typeOffsets:intvector { -19160, 0, -18840, 0, -18000, 0, -18000, 3600 }
+    typeMap:bin { "01020302" }
+  } //Z#126
   /* America/Guyana */ :table {
     trans:intvector { -1730578040, 176010300, 662698800 }
     typeOffsets:intvector { -13960, 0, -14400, 0, -13500, 0, -10800, 0 }
     typeMap:bin { "020301" }
-  } //Z#126
+  } //Z#127
   /* America/Halifax */ :table {
     trans:intvector { -2131645536, -1696276800, -1680469200, -1632074400, -1615143600, -1566763200, -1557090000, -1535486400, -1524949200, -1504468800, -1493413200, -1472414400, -1461963600, -1440964800, -1429390800, -1409515200, -1396731600, -1376856000, -1366491600, -1346616000, -1333832400, -1313956800, -1303678800, -1282507200, -1272661200, -1251057600, -1240088400, -1219608000, -1207429200, -1188763200, -1175979600, -1157313600, -1143925200, -1124049600, -1113771600, -1091390400, -1081026000, -1059854400, -1050786000, -1030910400, -1018126800, -999460800, -986677200, -965592000, -955227600, -935956800, -923173200, -904507200, -891723600, -880221600, -765399600, -747252000, -733950000, -715802400, -702500400, -684352800, -671050800, -652903200, -639601200, -589399200, -576097200, -557949600, -544647600, -526500000, -513198000, -495050400, -481748400, -431546400, -418244400, -400096800, -386794800, -368647200, -355345200, -337197600, -323895600, -242244000, -226522800, -210794400, -195073200, -179344800, -163623600, -147895200, -131569200, -116445600, -100119600, -84391200, -68670000, -52941600, -37220400, -21492000, -5770800, 9957600, 25678800, 41407200, 57733200, 73461600, 89182800, 104911200, 120632400, 136360800, 152082000, 167810400, 183531600, 199260000, 215586000, 230709600, 247035600, 262764000, 278485200, 294213600, 309934800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544600800, 562136400, 576050400, 594190800, 607500000, 625640400, 638949600, 657090000, 671004000, 688539600, 702453600, 719989200, 733903200, 752043600, 765352800, 783493200, 796802400, 814942800, 828856800, 846392400, 860306400, 877842000, 891756000, 909291600, 923205600, 941346000, 954655200, 972795600, 986104800, 1004245200, 1018159200, 1035694800, 1049608800, 1067144400, 1081058400, 1099198800, 1112508000, 1130648400, 1143957600, 1162098000, 1173592800, 1194152400 }
     typeOffsets:intvector { -15264, 0, -14400, 0, -14400, 3600 }
@@ -730,23 +558,23 @@
     finalRule { "Canada" }
     finalRaw:int { -14400 }
     finalYear:int { 2008 }
-    links:intvector { 127, 376 }
-  } //Z#127
+    links:intvector { 128, 384 }
+  } //Z#128
   /* America/Havana */ :table {
     transPre32:intvector { -1, 1770465464 }
-    trans:intvector { -1402813824, -1311534000, -1300996800, -933534000, -925675200, -902084400, -893620800, -870030000, -862171200, -775681200, -767822400, -744231600, -736372800, -144702000, -134251200, -113425200, -102542400, -86295600, -72907200, -54154800, -41457600, -21495600, -5774400, 9954000, 25675200, 41403600, 57729600, 73458000, 87364800, 104907600, 118900800, 136357200, 150436800, 167806800, 183528000, 199256400, 215582400, 230706000, 247032000, 263365200, 276667200, 290581200, 308721600, 322030800, 340171200, 358318800, 371620800, 389768400, 403070400, 421218000, 434520000, 452667600, 466574400, 484117200, 498024000, 511333200, 529473600, 542782800, 560923200, 574837200, 592372800, 606286800, 623822400, 638946000, 655876800, 671000400, 687330000, 702450000, 718779600, 733899600, 750229200, 765349200, 781678800, 796798800, 813128400, 828853200, 844578000, 860302800, 876632400, 891147600, 909291600, 922597200, 941346000, 954651600, 972795600, 986101200, 1004245200, 1018155600, 1035694800, 1049605200, 1067144400, 1081054800, 1162098000, 1173589200, 1193547600, 1205643600, 1224997200, 1236488400, 1256446800, 1268542800, 1288501200, 1300597200, 1321160400, 1333256400, 1352005200, 1362891600, 1383454800 }
+    trans:intvector { -1402813824, -1311534000, -1300996800, -933534000, -925675200, -902084400, -893620800, -870030000, -862171200, -775681200, -767822400, -744231600, -736372800, -144702000, -134251200, -113425200, -102542400, -86295600, -72907200, -54154800, -41457600, -21495600, -5774400, 9954000, 25675200, 41403600, 57729600, 73458000, 87364800, 104907600, 118900800, 136357200, 150436800, 167806800, 183528000, 199256400, 215582400, 230706000, 247032000, 263365200, 276667200, 290581200, 308721600, 322030800, 340171200, 358318800, 371620800, 389768400, 403070400, 421218000, 434520000, 452667600, 466574400, 484117200, 498024000, 511333200, 529473600, 542782800, 560923200, 574837200, 592372800, 606286800, 623822400, 638946000, 655876800, 671000400, 687330000, 702450000, 718779600, 733899600, 750229200, 765349200, 781678800, 796798800, 813128400, 828853200, 844578000, 860302800, 876632400, 891147600, 909291600, 922597200, 941346000, 954651600, 972795600, 986101200, 1004245200, 1018155600, 1035694800, 1049605200, 1067144400, 1080450000, 1162098000, 1173589200, 1193547600, 1205643600, 1224997200, 1236488400, 1256446800, 1268542800, 1288501200, 1300597200, 1321160400, 1333256400, 1352005200, 1362891600, 1383454800 }
     typeOffsets:intvector { -19768, 0, -19776, 0, -18000, 0, -18000, 3600 }
     typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "Cuba" }
     finalRaw:int { -18000 }
     finalYear:int { 2014 }
-    links:intvector { 128, 387 }
-  } //Z#128
+    links:intvector { 129, 395 }
+  } //Z#129
   /* America/Hermosillo */ :table {
     trans:intvector { -1514739600, -1343066400, -1234807200, -1220292000, -1207159200, -1191344400, -873828000, -661539600, 28800, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400 }
     typeOffsets:intvector { -26632, 0, -28800, 0, -25200, 0, -25200, 3600, -21600, 0 }
     typeMap:bin { "020402040204020102030203020302" }
-  } //Z#129
+  } //Z#130
   /* America/Indiana/Indianapolis */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -900259200, -891795600, -880214400, -765392400, -747244800, -733942800, -715795200, -702493200, -684345600, -671043600, -652896000, -639594000, -620841600, -608144400, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -386787600, -368640000, -21488400, -5767200, 9961200, 25682400, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -755,8 +583,8 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 116, 130, 138, 500, 609 }
-  } //Z#130
+    links:intvector { 117, 131, 139, 512, 619 }
+  } //Z#131
   /* America/Indiana/Knox */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -715795200, -702493200, -684345600, -671043600, -652896000, -639594000, -620841600, -608144400, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -447267600, -431539200, -415818000, -400089600, -386787600, -368640000, -355338000, -337190400, -321469200, -305740800, -289414800, -273686400, -257965200, -242236800, -195066000, -84384000, -68662800, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 1143961200, 1162105200, 1173600000, 1194159600 }
@@ -765,8 +593,8 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-    links:intvector { 131, 146, 612 }
-  } //Z#131
+    links:intvector { 132, 147, 622 }
+  } //Z#132
   /* America/Indiana/Marengo */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -589392000, -576090000, -495043200, -481741200, -463593600, -450291600, -431539200, -418237200, -400089600, -386787600, -368640000, -355338000, -337190400, -323888400, -305740800, -292438800, -273686400, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 126687600, 152089200, 162370800, 183535200, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -775,7 +603,7 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#132
+  } //Z#133
   /* America/Indiana/Petersburg */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -462996000, -450291600, -431539200, -418237200, -400089600, -386787600, -368640000, -355338000, -337190400, -323888400, -305740800, -292438800, -273686400, -257965200, -242236800, -226515600, -210787200, -195066000, -179337600, -163616400, -147888000, -100112400, -84384000, -68662800, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 1143961200, 1162105200, 1173600000, 1194159600, 1205046000, 1225605600 }
@@ -784,7 +612,7 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2009 }
-  } //Z#133
+  } //Z#134
   /* America/Indiana/Tell_City */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -747244800, -733942800, -526492800, -513190800, -495043200, -481741200, -462996000, -450291600, -431539200, -418237200, -400089600, -386787600, -368640000, -355338000, -337190400, -323888400, -305740800, -289414800, -273686400, -260989200, -242236800, -226515600, -210787200, -195066000, -179337600, -21488400, -5767200, 9961200, 25682400, 1143961200, 1162105200, 1173600000, 1194159600 }
@@ -793,7 +621,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#134
+  } //Z#135
   /* America/Indiana/Vevay */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -495043200, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -802,7 +630,7 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#135
+  } //Z#136
   /* America/Indiana/Vincennes */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -747244800, -733942800, -526492800, -513190800, -495043200, -481741200, -462996000, -450291600, -431539200, -418237200, -400089600, -386787600, -368640000, -355338000, -337190400, -323888400, -305740800, -289414800, -273686400, -260989200, -242236800, -226515600, -210787200, -195066000, -179337600, -21488400, -5767200, 9961200, 25682400, 1143961200, 1162105200, 1173600000, 1194159600, 1205046000, 1225605600 }
@@ -811,7 +639,7 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2009 }
-  } //Z#136
+  } //Z#137
   /* America/Indiana/Winamac */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -747244800, -733942800, -715795200, -702493200, -684345600, -671043600, -652896000, -639594000, -620841600, -608144400, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -447267600, -431539200, -415818000, -400089600, -386787600, -368640000, -355338000, -337190400, -323888400, -305740800, -292438800, -273686400, -21488400, -5767200, 9961200, 25682400, 1143961200, 1162105200, 1173600000, 1194156000, 1205046000, 1225605600 }
@@ -820,8 +648,8 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2009 }
-  } //Z#137
-  /* America/Indianapolis */ :int { 130 } //Z#138
+  } //Z#138
+  /* America/Indianapolis */ :int { 131 } //Z#139
   /* America/Inuvik */ :table {
     trans:intvector { -536457600, -147888000, -131558400, 294228000, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1173603600, 1194163200 }
     typeOffsets:intvector { 0, 0, -28800, 0, -28800, 7200, -25200, 0, -25200, 3600 }
@@ -829,7 +657,7 @@
     finalRule { "Canada" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-  } //Z#139
+  } //Z#140
   /* America/Iqaluit */ :table {
     trans:intvector { -865296000, -765396000, -147898800, -131569200, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954662400, 972802800, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
     typeOffsets:intvector { 0, 0, -21600, 0, -21600, 3600, -18000, 0, -18000, 3600, -18000, 7200 }
@@ -837,23 +665,23 @@
     finalRule { "Canada" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#140
-  /* America/Jamaica */ :table {
-    trans:intvector { -1827687168, 136364400, 152085600, 162370800, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600 }
-    typeOffsets:intvector { -18432, 0, -18000, 0, -18000, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201" }
-    links:intvector { 141, 517 }
   } //Z#141
-  /* America/Jujuy */ :int { 68 } //Z#142
+  /* America/Jamaica */ :table {
+    trans:intvector { -1827687170, 126687600, 152085600, 162370800, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600 }
+    typeOffsets:intvector { -18430, 0, -18000, 0, -18000, 3600 }
+    typeMap:bin { "010201020102010201020102010201020102010201" }
+    links:intvector { 142, 529 }
+  } //Z#142
+  /* America/Jujuy */ :int { 68 } //Z#143
   /* America/Juneau */ :table {
-    transPre32:intvector { -1, 1069601157, -1, 2106012357 }
+    transPre32:intvector { -1, 1069743569, -1, 2106012357 }
     trans:intvector { -880207200, -765385200, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341402400, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452084400, 467805600, 483534000, 499255200, 514983600, 530704800, 544618800, 562154400, 576068400, 594208800, 607518000, 625658400, 638967600, 657108000, 671022000, 688557600, 702471600, 720007200, 733921200, 752061600, 765370800, 783511200, 796820400, 814960800, 828874800, 846410400, 860324400, 877860000, 891774000, 909309600, 923223600, 941364000, 954673200, 972813600, 986122800, 1004263200, 1018177200, 1035712800, 1049626800, 1067162400, 1081076400, 1099216800, 1112526000, 1130666400, 1143975600, 1162116000, 1173610800, 1194170400 }
     typeOffsets:intvector { 54139, 0, -32400, 0, -32400, 3600, -32261, 0, -28800, 0, -28800, 3600 }
     typeMap:bin { "03040504050405040504050405040504050405040504050405040204050405040501020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-  } //Z#143
+  } //Z#144
   /* America/Kentucky/Louisville */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -1535904000, -1525280400, -905097600, -891795600, -880214400, -765392400, -757360800, -744224400, -715795200, -608144400, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -450291600, -431539200, -415818000, -400089600, -384368400, -368640000, -352918800, -337190400, -321469200, -305740800, -289414800, -273686400, -266432400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 126687600, 152089200, 162370800, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -862,8 +690,8 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 144, 151 }
-  } //Z#144
+    links:intvector { 145, 152 }
+  } //Z#145
   /* America/Kentucky/Monticello */ :table {
     transPre32:intvector { -1, 1577320096 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -872,55 +700,55 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#145
-  /* America/Knox_IN */ :int { 131 } //Z#146
-  /* America/Kralendijk */ :int { 105 } //Z#147
+  } //Z#146
+  /* America/Knox_IN */ :int { 132 } //Z#147
+  /* America/Kralendijk */ :int { 105 } //Z#148
   /* America/La_Paz */ :table {
     trans:intvector { -1205954844, -1192307244 }
     typeOffsets:intvector { -16356, 0, -16356, 3600, -14400, 0 }
     typeMap:bin { "0102" }
-  } //Z#148
+  } //Z#149
   /* America/Lima */ :table {
     transPre32:intvector { -1, 1770464188 }
     trans:intvector { -1938538284, -1009825200, -1002052800, -986756400, -971035200, -955306800, -939585600, 504939600, 512712000, 536475600, 544248000, 631170000, 638942400, 757400400, 765172800 }
     typeOffsets:intvector { -18492, 0, -18516, 0, -18000, 0, -18000, 3600 }
     typeMap:bin { "01020302030203020302030203020302" }
-  } //Z#149
+  } //Z#150
   /* America/Los_Angeles */ :table {
     transPre32:intvector { -1, 1577327296 }
-    trans:intvector { -1633269600, -1615129200, -1601820000, -1583679600, -880207200, -765385200, -687967200, -662655600, -620834400, -608137200, -589384800, -576082800, -557935200, -544633200, -526485600, -513183600, -495036000, -481734000, -463586400, -450284400, -431532000, -418230000, -400082400, -386780400, -368632800, -355330800, -337183200, -323881200, -305733600, -292431600, -273679200, -260982000, -242229600, -226508400, -210780000, -195058800, -179330400, -163609200, -147880800, -131554800, -116431200, -100105200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
+    trans:intvector { -1633269600, -1615129200, -1601820000, -1583679600, -880207200, -765385200, -687967140, -662655600, -620838000, -608137200, -589388400, -576082800, -557938800, -544633200, -526489200, -513183600, -495039600, -481734000, -463590000, -450284400, -431535600, -418230000, -400086000, -386780400, -368636400, -355330800, -337186800, -323881200, -305737200, -292431600, -273682800, -260982000, -242233200, -226508400, -210783600, -195058800, -179334000, -163609200, -147884400, -131554800, -116434800, -100105200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
     typeOffsets:intvector { -28378, 0, -28800, 0, -28800, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-    links:intvector { 150, 540, 615, 616 }
-  } //Z#150
-  /* America/Louisville */ :int { 144 } //Z#151
-  /* America/Lower_Princes */ :int { 105 } //Z#152
+    links:intvector { 151, 549, 625, 626 }
+  } //Z#151
+  /* America/Louisville */ :int { 145 } //Z#152
+  /* America/Lower_Princes */ :int { 105 } //Z#153
   /* America/Maceio */ :table {
     trans:intvector { -1767217028, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -191365200, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 813726000, 824004000, 938919600, 951616800, 970974000, 972180000, 1003028400, 1013911200 }
     typeOffsets:intvector { -8572, 0, -10800, 0, -10800, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#153
+  } //Z#154
   /* America/Managua */ :table {
     transPre32:intvector { -1, 1770466404 }
     trans:intvector { -1121105688, 105084000, 161758800, 290584800, 299134800, 322034400, 330584400, 694260000, 717310800, 725868000, 852094800, 1113112800, 1128229200, 1146384000, 1159682400 }
     typeOffsets:intvector { -20708, 0, -21600, 0, -21600, 3600, -20712, 0, -18000, 0 }
     typeMap:bin { "03010401020102010401040102010201" }
-  } //Z#154
+  } //Z#155
   /* America/Manaus */ :table {
     trans:intvector { -1767211196, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 750830400, 761713200 }
     typeOffsets:intvector { -14404, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 155, 369 }
-  } //Z#155
-  /* America/Marigot */ :int { 123 } //Z#156
+    links:intvector { 156, 377 }
+  } //Z#156
+  /* America/Marigot */ :int { 186 } //Z#157
   /* America/Martinique */ :table {
     trans:intvector { -1851537340, 323841600, 338958000 }
     typeOffsets:intvector { -14660, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "010201" }
-  } //Z#157
+  } //Z#158
   /* America/Matamoros */ :table {
     trans:intvector { -1514743200, 576057600, 594198000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1175414400, 1193554800, 1207468800, 1225004400, 1238918400, 1256454000, 1268553600, 1289113200 }
     typeOffsets:intvector { -24000, 0, -21600, 0, -21600, 3600 }
@@ -928,7 +756,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2011 }
-  } //Z#158
+  } //Z#159
   /* America/Mazatlan */ :table {
     trans:intvector { -1514739600, -1343066400, -1234807200, -1220292000, -1207159200, -1191344400, -873828000, -661539600, 28800, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 989139600, 1001836800, 1018170000, 1035705600 }
     typeOffsets:intvector { -25540, 0, -28800, 0, -25200, 0, -25200, 3600, -21600, 0 }
@@ -936,9 +764,9 @@
     finalRule { "Mexico" }
     finalRaw:int { -25200 }
     finalYear:int { 2003 }
-    links:intvector { 159, 526 }
-  } //Z#159
-  /* America/Mendoza */ :int { 70 } //Z#160
+    links:intvector { 160, 538 }
+  } //Z#160
+  /* America/Mendoza */ :int { 70 } //Z#161
   /* America/Menominee */ :table {
     transPre32:intvector { -1, 1635207523 }
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -747244800, -733942800, -116438400, -100112400, -21484800, 104914800, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -947,7 +775,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#161
+  } //Z#162
   /* America/Merida */ :table {
     trans:intvector { -1514743200, 377935200, 407653200, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000 }
     typeOffsets:intvector { -21508, 0, -21600, 0, -21600, 3600, -18000, 0 }
@@ -955,13 +783,16 @@
     finalRule { "Mexico" }
     finalRaw:int { -21600 }
     finalYear:int { 2003 }
-  } //Z#162
-  /* America/Metlakatla */ :table {
-    transPre32:intvector { -1, 1069600474, -1, 2106011674 }
-    trans:intvector { -880207200, -765385200, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400 }
-    typeOffsets:intvector { 54822, 0, -31578, 0, -28800, 0, -28800, 3600 }
-    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302" }
   } //Z#163
+  /* America/Metlakatla */ :table {
+    transPre32:intvector { -1, 1069743569, -1, 2106011674 }
+    trans:intvector { -880207200, -765385200, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 1446372000, 1457866800, 1478426400, 1489316400, 1509876000, 1520766000, 1541325600, 1547978400, 1552215600, 1572775200 }
+    typeOffsets:intvector { 54822, 0, -32400, 0, -32400, 3600, -31578, 0, -28800, 0, -28800, 3600 }
+    typeMap:bin { "0304050405040504050405040504050405040504050405040504050405040504050401020102010204010201" }
+    finalRule { "US" }
+    finalRaw:int { -32400 }
+    finalYear:int { 2020 }
+  } //Z#164
   /* America/Mexico_City */ :table {
     trans:intvector { -1514739600, -1343066400, -1234807200, -1220292000, -1207159200, -1191344400, -975261600, -963169200, -917114400, -907354800, -821901600, -810068400, -627501600, -612990000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000 }
     typeOffsets:intvector { -23796, 0, -25200, 0, -21600, 0, -21600, 3600 }
@@ -969,8 +800,8 @@
     finalRule { "Mexico" }
     finalRaw:int { -21600 }
     finalYear:int { 2003 }
-    links:intvector { 164, 527 }
-  } //Z#164
+    links:intvector { 165, 539 }
+  } //Z#165
   /* America/Miquelon */ :table {
     trans:intvector { -1850328920, 326001600, 544597200, 562132800, 576046800, 594187200, 607496400, 625636800, 638946000, 657086400, 671000400, 688536000, 702450000, 719985600, 733899600, 752040000, 765349200, 783489600, 796798800, 814939200, 828853200, 846388800, 860302800, 877838400, 891752400, 909288000, 923202000, 941342400, 954651600, 972792000, 986101200, 1004241600, 1018155600, 1035691200, 1049605200, 1067140800, 1081054800, 1099195200, 1112504400, 1130644800, 1143954000, 1162094400, 1173589200, 1194148800 }
     typeOffsets:intvector { -13480, 0, -14400, 0, -10800, 0, -10800, 3600 }
@@ -978,7 +809,7 @@
     finalRule { "Canada" }
     finalRaw:int { -10800 }
     finalYear:int { 2008 }
-  } //Z#165
+  } //Z#166
   /* America/Moncton */ :table {
     transPre32:intvector { -1, 1579085244 }
     trans:intvector { -2131642800, -1632074400, -1615143600, -1153681200, -1145822400, -1122231600, -1114372800, -1090782000, -1082923200, -1059332400, -1051473600, -1027882800, -1020024000, -996433200, -988574400, -965674800, -955396800, -934743600, -923947200, -904503600, -891892800, -880221600, -765399600, -747252000, -733950000, -715802400, -702500400, -684352800, -671050800, -652903200, -639601200, -620848800, -608151600, -589399200, -576097200, -557949600, -544647600, -526500000, -513198000, -495050400, -481748400, -463600800, -450298800, -431546400, -418244400, -400096800, -384375600, -368647200, -352926000, -337197600, -321476400, -305748000, -289422000, -273693600, -257972400, -242244000, -226522800, -210794400, -195073200, -179344800, -163623600, -147895200, -131569200, -116445600, -100119600, -84391200, -68670000, -52941600, -37220400, -21492000, -5770800, 9957600, 25678800, 41407200, 57733200, 73461600, 89182800, 136360800, 152082000, 167810400, 183531600, 199260000, 215586000, 230709600, 247035600, 262764000, 278485200, 294213600, 309934800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544600800, 562136400, 576050400, 594190800, 607500000, 625640400, 638949600, 657090000, 671004000, 688539600, 702453600, 719989200, 733896060, 752036460, 765345660, 783486060, 796795260, 814935660, 828849660, 846385260, 860299260, 877834860, 891748860, 909284460, 923198460, 941338860, 954648060, 972788460, 986097660, 1004238060, 1018152060, 1035687660, 1049601660, 1067137260, 1081051260, 1099191660, 1112500860, 1130641260, 1143950460, 1162090860, 1173592800, 1194152400 }
@@ -987,7 +818,7 @@
     finalRule { "Canada" }
     finalRaw:int { -14400 }
     finalYear:int { 2008 }
-  } //Z#166
+  } //Z#167
   /* America/Monterrey */ :table {
     trans:intvector { -1514743200, 576057600, 594198000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 989136000, 1001833200, 1018166400, 1035702000 }
     typeOffsets:intvector { -24076, 0, -21600, 0, -21600, 3600 }
@@ -995,29 +826,14 @@
     finalRule { "Mexico" }
     finalRaw:int { -21600 }
     finalYear:int { 2003 }
-  } //Z#167
-  /* America/Montevideo */ :table {
-    trans:intvector { -1567455316, -1459542600, -1443819600, -1428006600, -1412283600, -1396470600, -1380747600, -1141590600, -1128286800, -1110141000, -1096837200, -1078691400, -1065387600, -1046637000, -1033938000, -1015187400, -1002488400, -983737800, -971038800, -952288200, -938984400, -920838600, -907534800, -896819400, -883602000, -853619400, -845848800, -334789200, -319672800, -314226000, -309996000, -149720400, -134604000, -118270800, -100044000, -86821200, -68508000, -50446800, -34119000, -18910800, -2583000, 12625200, 28953000, 72932400, 82692000, 132116400, 156911400, 212983200, 250052400, 260244000, 307594800, 325994400, 566449200, 574308000, 597812400, 605671200, 625633200, 636516000, 656478000, 667965600, 688532400, 699415200, 719377200, 730864800, 1095562800, 1111896000, 1128834000, 1142136000, 1159678800, 1173585600, 1191733200 }
-    typeOffsets:intvector { -13484, 0, -12600, 0, -12600, 1800, -10800, 0, -10800, 1800, -10800, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020105030503050305030503050304030403040305030405030503050305030503050305030503050305030503050305" }
-    finalRule { "Uruguay" }
-    finalRaw:int { -10800 }
-    finalYear:int { 2008 }
   } //Z#168
-  /* America/Montreal */ :table {
-    transPre32:intvector { -1, 1581074552 }
-    trans:intvector { -1665334800, -1662753600, -1632070800, -1615140000, -1601742600, -1583775000, -1567355400, -1554053400, -1535907600, -1522603800, -1504458000, -1491154200, -1439830800, -1428255000, -1409504400, -1396805400, -1378054800, -1365355800, -1346612400, -1333915200, -1315162800, -1301860800, -1283713200, -1270411200, -1252263600, -1238961600, -1220814000, -1207512000, -1188759600, -1176062400, -1157310000, -1144008000, -1125860400, -1112558400, -1094410800, -1081108800, -1062961200, -1049659200, -1031511600, -1018209600, -1000062000, -986760000, -968007600, -955310400, -936558000, -765396000, -747248400, -733946400, -715798800, -702496800, -684349200, -671047200, -652899600, -636573600, -620845200, -605124000, -589395600, -576093600, -557946000, -544644000, -526496400, -513194400, -495046800, -481744800, -463597200, -450295200, -431542800, -418240800, -400093200, -384372000, -368643600, -352922400, -337194000, -321472800, -305744400, -289418400, -273690000, -257968800, -242240400, -226519200, -210790800, -195069600, -179341200, -163620000, -147891600, -131565600, -116442000, -100116000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 136364400, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
-    typeOffsets:intvector { -17656, 0, -18000, 0, -18000, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "Canada" }
-    finalRaw:int { -18000 }
-    finalYear:int { 2008 }
+  /* America/Montevideo */ :table {
+    trans:intvector { -1567455309, -1459627200, -1443819600, -1428006600, -1412283600, -1396470600, -1380747600, -1141590600, -1128286800, -1110141000, -1096837200, -1078691400, -1065387600, -1047241800, -1033938000, -1015187400, -1002488400, -983737800, -971038800, -954707400, -938984400, -920838600, -907534800, -896819400, -853621200, -845847000, -334789200, -319671000, -314226000, -309996000, -149720400, -134604000, -50446800, -34205400, 9860400, 14176800, 72846000, 80100000, 127278000, 132111000, 147234600, 156913200, 165376800, 219812400, 226461600, 250052400, 257911200, 282711600, 289360800, 294202800, 322020000, 566449200, 573012000, 597812400, 605066400, 625633200, 635911200, 656478000, 667965600, 688532400, 699415200, 719377200, 730864800, 1095562800, 1111896000, 1128834000, 1142136000, 1159678800, 1173585600, 1191733200, 1205035200, 1223182800, 1236484800, 1254632400, 1268539200, 1286082000, 1299988800, 1317531600, 1331438400, 1349586000, 1362888000, 1381035600, 1394337600, 1412485200, 1425787200 }
+    typeOffsets:intvector { -13491, 0, -14400, 0, -12600, 0, -12600, 1800, -10800, 0, -10800, 1800, -10800, 3600, -10800, 5400 }
+    typeMap:bin { "01030203020302030203020302030203020302030203020305040504060406040504060406040705040604060406040604060406040604060406040604060406040604060406040604060406040604060406040604" }
   } //Z#169
-  /* America/Montserrat */ :table {
-    trans:intvector { -1846266608 }
-    typeOffsets:intvector { -14932, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#170
+  /* America/Montreal */ :int { 217 } //Z#170
+  /* America/Montserrat */ :int { 186 } //Z#171
   /* America/Nassau */ :table {
     trans:intvector { -1825095030, -179341200, -163620000, -147891600, -131565600, -116442000, -100116000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 136364400, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
     typeOffsets:intvector { -18570, 0, -18000, 0, -18000, 3600 }
@@ -1025,7 +841,7 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#171
+  } //Z#172
   /* America/New_York */ :table {
     transPre32:intvector { -1, 1577316496 }
     trans:intvector { -1633280400, -1615140000, -1601830800, -1583690400, -1570381200, -1551636000, -1536512400, -1523210400, -1504458000, -1491760800, -1473008400, -1459706400, -1441558800, -1428256800, -1410109200, -1396807200, -1378659600, -1365357600, -1347210000, -1333908000, -1315155600, -1301853600, -1283706000, -1270404000, -1252256400, -1238954400, -1220806800, -1207504800, -1189357200, -1176055200, -1157302800, -1144605600, -1125853200, -1112551200, -1094403600, -1081101600, -1062954000, -1049652000, -1031504400, -1018202400, -1000054800, -986752800, -968000400, -955303200, -936550800, -923248800, -905101200, -891799200, -880218000, -765396000, -747248400, -733946400, -715798800, -702496800, -684349200, -671047200, -652899600, -639597600, -620845200, -608148000, -589395600, -576093600, -557946000, -544644000, -526496400, -513194400, -495046800, -481744800, -463597200, -447271200, -431542800, -415821600, -400093200, -384372000, -368643600, -352922400, -337194000, -321472800, -305744400, -289418400, -273690000, -257968800, -242240400, -226519200, -210790800, -195069600, -179341200, -163620000, -147891600, -131565600, -116442000, -100116000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 126687600, 152085600, 162370800, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -1034,8 +850,8 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 172, 610 }
-  } //Z#172
+    links:intvector { 173, 620 }
+  } //Z#173
   /* America/Nipigon */ :table {
     transPre32:intvector { -1, 1928233280 }
     trans:intvector { -1632070800, -1615140000, -923252400, -765396000, 136364400, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -1044,22 +860,22 @@
     finalRule { "Canada" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#173
+  } //Z#174
   /* America/Nome */ :table {
-    transPre32:intvector { -1, 1069608595, -1, 2106019794 }
+    transPre32:intvector { -1, 1069743569, -1, 2106019794 }
     trans:intvector { -880196400, -765374400, -21466800, -5745600, 9982800, 25704000, 41432400, 57758400, 73486800, 89208000, 104936400, 120657600, 126709200, 152107200, 162392400, 183556800, 199285200, 215611200, 230734800, 247060800, 262789200, 278510400, 294238800, 309960000, 325688400, 341409600, 357138000, 372859200, 388587600, 404913600, 420037200, 436363200, 452084400, 467805600, 483534000, 499255200, 514983600, 530704800, 544618800, 562154400, 576068400, 594208800, 607518000, 625658400, 638967600, 657108000, 671022000, 688557600, 702471600, 720007200, 733921200, 752061600, 765370800, 783511200, 796820400, 814960800, 828874800, 846410400, 860324400, 877860000, 891774000, 909309600, 923223600, 941364000, 954673200, 972813600, 986122800, 1004263200, 1018177200, 1035712800, 1049626800, 1067162400, 1081076400, 1099216800, 1112526000, 1130666400, 1143975600, 1162116000, 1173610800, 1194170400 }
-    typeOffsets:intvector { 46701, 0, -39698, 0, -39600, 0, -39600, 3600, -32400, 0, -32400, 3600 }
+    typeOffsets:intvector { 46702, 0, -39698, 0, -39600, 0, -39600, 3600, -32400, 0, -32400, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020304050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-  } //Z#174
+  } //Z#175
   /* America/Noronha */ :table {
     trans:intvector { -1767217820, -1206961200, -1191366000, -1175378400, -1159830000, -633823200, -622072800, -602287200, -591836400, -570751200, -560214000, -539128800, -531356400, -191368800, -184201200, -155167200, -150073200, -128901600, -121129200, -99957600, -89593200, -68421600, -57970800, 499744800, 511232400, 530589600, 540262800, 562125600, 571194000, 592970400, 602038800, 624420000, 634698000, 938916000, 951613200, 970970400, 971571600, 1003024800, 1013907600 }
     typeOffsets:intvector { -7780, 0, -7200, 0, -7200, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 175, 367 }
-  } //Z#175
+    links:intvector { 176, 375 }
+  } //Z#176
   /* America/North_Dakota/Beulah */ :table {
     transPre32:intvector { -1, 1577323696 }
     trans:intvector { -1633273200, -1615132800, -1601823600, -1583683200, -880210800, -765388800, -84380400, -68659200, -52930800, -37209600, -21481200, -5760000, 9968400, 25689600, 41418000, 57744000, 73472400, 89193600, 104922000, 120643200, 126694800, 152092800, 162378000, 183542400, 199270800, 215596800, 230720400, 247046400, 262774800, 278496000, 294224400, 309945600, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1173603600, 1194163200, 1205053200, 1225612800, 1236502800, 1257062400, 1268557200, 1289116800, 1300003200, 1320562800 }
@@ -1068,7 +884,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2012 }
-  } //Z#176
+  } //Z#177
   /* America/North_Dakota/Center */ :table {
     transPre32:intvector { -1, 1577323696 }
     trans:intvector { -1633273200, -1615132800, -1601823600, -1583683200, -880210800, -765388800, -84380400, -68659200, -52930800, -37209600, -21481200, -5760000, 9968400, 25689600, 41418000, 57744000, 73472400, 89193600, 104922000, 120643200, 126694800, 152092800, 162378000, 183542400, 199270800, 215596800, 230720400, 247046400, 262774800, 278496000, 294224400, 309945600, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -1077,7 +893,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#177
+  } //Z#178
   /* America/North_Dakota/New_Salem */ :table {
     transPre32:intvector { -1, 1577323696 }
     trans:intvector { -1633273200, -1615132800, -1601823600, -1583683200, -880210800, -765388800, -84380400, -68659200, -52930800, -37209600, -21481200, -5760000, 9968400, 25689600, 41418000, 57744000, 73472400, 89193600, 104922000, 120643200, 126694800, 152092800, 162378000, 183542400, 199270800, 215596800, 230720400, 247046400, 262774800, 278496000, 294224400, 309945600, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -1086,7 +902,7 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#178
+  } //Z#179
   /* America/Ojinaga */ :table {
     trans:intvector { -1514739600, -1343066400, -1234807200, -1220292000, -1207159200, -1191344400, 828864000, 846399600, 860313600, 877849200, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 989139600, 1001836800, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1175418000, 1193558400, 1207472400, 1225008000, 1238922000, 1256457600, 1268557200, 1289116800 }
     typeOffsets:intvector { -25060, 0, -25200, 0, -25200, 3600, -21600, 0, -21600, 3600 }
@@ -1094,13 +910,14 @@
     finalRule { "US" }
     finalRaw:int { -25200 }
     finalYear:int { 2011 }
-  } //Z#179
+  } //Z#180
   /* America/Panama */ :table {
     transPre32:intvector { -1, 1770464784 }
     trans:intvector { -1946918424 }
     typeOffsets:intvector { -19088, 0, -19176, 0, -18000, 0 }
     typeMap:bin { "0102" }
-  } //Z#180
+    links:intvector { 97, 181 }
+  } //Z#181
   /* America/Pangnirtung */ :table {
     trans:intvector { -1546300800, -880221600, -765399600, -147902400, -131572800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544600800, 562136400, 576050400, 594190800, 607500000, 625640400, 638949600, 657090000, 671004000, 688539600, 702453600, 719989200, 733903200, 752043600, 765352800, 783493200, 796802400, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954662400, 972802800, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
     typeOffsets:intvector { 0, 0, -21600, 0, -21600, 3600, -18000, 0, -18000, 3600, -14400, 0, -14400, 3600, -14400, 7200 }
@@ -1108,43 +925,53 @@
     finalRule { "Canada" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#181
+  } //Z#182
   /* America/Paramaribo */ :table {
     trans:intvector { -1861906760, -1104524348, -765317964, 465449400 }
     typeOffsets:intvector { -13240, 0, -13252, 0, -13236, 0, -12600, 0, -10800, 0 }
     typeMap:bin { "01020304" }
-  } //Z#182
+  } //Z#183
   /* America/Phoenix */ :table {
     transPre32:intvector { -1, 1577323696 }
     trans:intvector { -1633273200, -1615132800, -1601823600, -1583683200, -880210800, -820519140, -812653140, -796845540, -84380400, -68659200 }
     typeOffsets:intvector { -26898, 0, -25200, 0, -25200, 3600 }
     typeMap:bin { "0102010201020102010201" }
-    links:intvector { 183, 537, 607 }
-  } //Z#183
+    links:intvector { 184, 546, 617 }
+  } //Z#184
   /* America/Port-au-Prince */ :table {
     transPre32:intvector { -1, 1770463056 }
-    trans:intvector { -1670483460, 421218000, 436334400, 452062800, 467784000, 483512400, 499233600, 514962000, 530683200, 546411600, 562132800, 576050400, 594194400, 607500000, 625644000, 638949600, 657093600, 671004000, 688543200, 702453600, 719992800, 733903200, 752047200, 765352800, 783496800, 796802400, 814946400, 828856800, 846396000, 860306400, 877845600, 1112504400, 1130644800, 1143954000, 1162094400, 1331449200, 1352008800 }
+    trans:intvector { -1670483460, 421218000, 436334400, 452062800, 467784000, 483512400, 499233600, 514962000, 530683200, 546411600, 562132800, 576050400, 594194400, 607500000, 625644000, 638949600, 657093600, 671004000, 688543200, 702453600, 719992800, 733903200, 752047200, 765352800, 783496800, 796802400, 814946400, 828856800, 846396000, 860306400, 877845600, 1112504400, 1130644800, 1143954000, 1162094400, 1331449200, 1352008800, 1362898800, 1383458400, 1394348400, 1414908000, 1425798000, 1446357600, 1489302000, 1509861600 }
     typeOffsets:intvector { -17360, 0, -18000, 0, -18000, 3600, -17340, 0 }
-    typeMap:bin { "0301020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#184
+    typeMap:bin { "03010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    finalRule { "Haiti" }
+    finalRaw:int { -18000 }
+    finalYear:int { 2018 }
+  } //Z#185
   /* America/Port_of_Spain */ :table {
     trans:intvector { -1825098836 }
     typeOffsets:intvector { -14764, 0, -14400, 0 }
     typeMap:bin { "01" }
-  } //Z#185
-  /* America/Porto_Acre */ :int { 194 } //Z#186
+    links:intvector { 61, 62, 111, 123, 124, 157, 171, 186, 206, 208, 209, 210, 211, 218, 220 }
+  } //Z#186
+  /* America/Porto_Acre */ :int { 196 } //Z#187
   /* America/Porto_Velho */ :table {
     trans:intvector { -1767210264, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200 }
     typeOffsets:intvector { -15336, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010201020102010201" }
-  } //Z#187
+  } //Z#188
   /* America/Puerto_Rico */ :table {
     transPre32:intvector { -1, 2061931961 }
     trans:intvector { -873057600, -765399600 }
     typeOffsets:intvector { -15865, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "010201" }
-    links:intvector { 188, 539 }
-  } //Z#188
+    links:intvector { 189, 548 }
+  } //Z#189
+  /* America/Punta_Arenas */ :table {
+    transPre32:intvector { -1, 1770462716 }
+    trans:intvector { -1892661434, -1688410800, -1619205434, -1593806400, -1335986234, -1317585600, -1304362800, -1286049600, -1272826800, -1254513600, -1241290800, -1222977600, -1209754800, -1191355200, -1178132400, -870552000, -865278000, -718056000, -713649600, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277272000, 289969200, 308721600, 321418800, 340171200, 353473200, 371620800, 384922800, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 592372800, 605674800, 624427200, 637124400, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400, 1367118000, 1378612800, 1398567600, 1410062400, 1463281200, 1471147200, 1480820400 }
+    typeOffsets:intvector { -17020, 0, -18000, 0, -18000, 3600, -16966, 0, -14400, 0, -14400, 3600, -10800, 0 }
+    typeMap:bin { "0301030403020102010201020102010401040104050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040506" }
+  } //Z#190
   /* America/Rainy_River */ :table {
     transPre32:intvector { -1, 1928234792 }
     trans:intvector { -1632067200, -1615136400, -923248800, -765392400, 136368000, 152089200, 167817600, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -1153,7 +980,7 @@
     finalRule { "Canada" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#189
+  } //Z#191
   /* America/Rankin_Inlet */ :table {
     trans:intvector { -410227200, -147895200, -131565600, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
     typeOffsets:intvector { 0, 0, -21600, 0, -21600, 3600, -21600, 7200, -18000, 0 }
@@ -1161,18 +988,18 @@
     finalRule { "Canada" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#190
+  } //Z#192
   /* America/Recife */ :table {
     trans:intvector { -1767217224, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -191365200, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 938919600, 951616800, 970974000, 971575200, 1003028400, 1013911200 }
     typeOffsets:intvector { -8376, 0, -10800, 0, -10800, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#191
+  } //Z#193
   /* America/Regina */ :table {
     trans:intvector { -2030202084, -1632063600, -1615132800, -1251651600, -1238349600, -1220202000, -1206900000, -1188752400, -1175450400, -1156698000, -1144000800, -1125248400, -1111946400, -1032714000, -1016992800, -1001264400, -986148000, -969814800, -954093600, -937760400, -922039200, -906310800, -890589600, -880210800, -765388800, -748450800, -732729600, -715791600, -702489600, -684342000, -671040000, -652892400, -639590400, -620838000, -608140800, -589388400, -576086400, -557938800, -544636800, -526489200, -513187200, -495039600, -481737600, -463590000, -450288000, -431535600, -418233600, -400086000, -386784000, -337186800, -321465600, -305737200 }
     typeOffsets:intvector { -25116, 0, -25200, 0, -25200, 3600, -21600, 0 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
-    links:intvector { 192, 378, 383 }
-  } //Z#192
+    links:intvector { 194, 386, 391 }
+  } //Z#194
   /* America/Resolute */ :table {
     trans:intvector { -704937600, -147895200, -131565600, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
     typeOffsets:intvector { 0, 0, -21600, 0, -21600, 3600, -21600, 7200, -18000, 0 }
@@ -1180,52 +1007,45 @@
     finalRule { "Canada" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#193
+  } //Z#195
   /* America/Rio_Branco */ :table {
-    trans:intvector { -1767209328, -1206950400, -1191355200, -1175367600, -1159819200, -633812400, -622062000, -602276400, -591825600, -570740400, -560203200, -539118000, -531345600, -191358000, -184190400, -155156400, -150062400, -128890800, -121118400, -99946800, -89582400, -68410800, -57960000, 499755600, 511243200, 530600400, 540273600, 562136400, 571204800, 1214283600 }
+    trans:intvector { -1767209328, -1206950400, -1191355200, -1175367600, -1159819200, -633812400, -622062000, -602276400, -591825600, -570740400, -560203200, -539118000, -531345600, -191358000, -184190400, -155156400, -150062400, -128890800, -121118400, -99946800, -89582400, -68410800, -57960000, 499755600, 511243200, 530600400, 540273600, 562136400, 571204800, 1214283600, 1384056000 }
     typeOffsets:intvector { -16272, 0, -18000, 0, -18000, 3600, -14400, 0 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020103" }
-    links:intvector { 186, 194, 366 }
-  } //Z#194
-  /* America/Rosario */ :int { 67 } //Z#195
-  /* America/Santa_Isabel */ :table {
-    trans:intvector { -1514736000, -1451667600, -1343062800, -1234803600, -1222963200, -1207242000, -873820800, -761677200, -686073600, -661539600, -495036000, -481734000, -463586400, -450284400, -431532000, -418230000, -400082400, -386780400, -368632800, -355330800, -337183200, -323881200, -305733600, -292431600, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200 }
-    typeOffsets:intvector { -27568, 0, -28800, 0, -28800, 3600, -25200, 0 }
-    typeMap:bin { "030103010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "Mexico" }
-    finalRaw:int { -28800 }
-    finalYear:int { 2003 }
+    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010301" }
+    links:intvector { 187, 196, 374 }
   } //Z#196
+  /* America/Rosario */ :int { 67 } //Z#197
+  /* America/Santa_Isabel */ :int { 216 } //Z#198
   /* America/Santarem */ :table {
     trans:intvector { -1767212472, -1206954000, -1191358800, -1175371200, -1159822800, -633816000, -622065600, -602280000, -591829200, -570744000, -560206800, -539121600, -531349200, -191361600, -184194000, -155160000, -150066000, -128894400, -121122000, -99950400, -89586000, -68414400, -57963600, 499752000, 511239600, 530596800, 540270000, 562132800, 571201200, 1214280000 }
     typeOffsets:intvector { -13128, 0, -14400, 0, -14400, 3600, -10800, 0 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020103" }
-  } //Z#197
+  } //Z#199
   /* America/Santiago */ :table {
-    trans:intvector { -1893439034, -1688410800, -1619983034, -1593806400, -1335986234, -1317585600, -1304362800, -1286049600, -1272826800, -1254513600, -1241290800, -1222977600, -1209754800, -1191355200, -1178132400, -870552000, -865278000, -736376400, -713646000, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277272000, 289969200, 308721600, 321418800, 340171200, 353473200, 371620800, 384922800, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 591768000, 605674800, 624427200, 637729200, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400 }
+    trans:intvector { -1892661434, -1688410800, -1619205434, -1593806400, -1335986234, -1317585600, -1304362800, -1286049600, -1272826800, -1254513600, -1241290800, -1222977600, -1209754800, -1191355200, -1178132400, -870552000, -865278000, -740520000, -736376400, -718056000, -713649600, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277272000, 289969200, 308721600, 321418800, 340171200, 353473200, 371620800, 384922800, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 592372800, 605674800, 624427200, 637124400, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400, 1367118000, 1378612800, 1398567600, 1410062400, 1463281200, 1471147200, 1494730800, 1502596800, 1526180400, 1534046400, 1554606000, 1567915200 }
     typeOffsets:intvector { -16966, 0, -18000, 0, -18000, 3600, -14400, 0, -14400, 3600 }
-    typeMap:bin { "010003000201020102010201020102010201030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
+    typeMap:bin { "0100030002010201020102010201030103040301030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
     finalRule { "Chile" }
     finalRaw:int { -14400 }
-    finalYear:int { 2013 }
-    links:intvector { 198, 385 }
-  } //Z#198
+    finalYear:int { 2020 }
+    links:intvector { 200, 393 }
+  } //Z#200
   /* America/Santo_Domingo */ :table {
     transPre32:intvector { -1, 1770462472 }
     trans:intvector { -1159773600, -100119600, -89668800, -5770800, 4422600, 25678800, 33193800, 57733200, 64816200, 89182800, 96438600, 120632400, 127974600, 152082000, 972799200, 975823200 }
     typeOffsets:intvector { -16776, 0, -18000, 0, -18000, 1800, -18000, 3600, -16800, 0, -14400, 0 }
     typeMap:bin { "0401030102010201020102010201050105" }
-  } //Z#199
+  } //Z#201
   /* America/Sao_Paulo */ :table {
-    trans:intvector { -1767214412, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -195426000, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 656478000, 666756000, 687927600, 697600800, 719982000, 728445600, 750826800, 761709600, 782276400, 793159200, 813726000, 824004000, 844570800, 856058400, 876106800, 888717600, 908074800, 919562400, 938919600, 951616800, 970974000, 982461600, 1003028400, 1013911200, 1036292400, 1045360800, 1066532400, 1076810400, 1099364400, 1108864800, 1129431600, 1140314400, 1162695600, 1172368800, 1192330800, 1203213600, 1224385200, 1234663200, 1255834800, 1266717600, 1287284400, 1298167200, 1318734000, 1330221600, 1350788400, 1361066400, 1382238000, 1392516000, 1413687600, 1424570400, 1445137200, 1456020000, 1476586800, 1487469600, 1508036400, 1518919200, 1540090800, 1550368800, 1571540400, 1581818400, 1602990000, 1613872800, 1634439600, 1645322400, 1665889200, 1677376800, 1697338800, 1708221600, 1729393200, 1739671200, 1760842800, 1771725600, 1792292400, 1803175200, 1823742000, 1834624800, 1855191600, 1866074400, 1887246000, 1897524000, 1918695600, 1928973600, 1950145200, 1960423200, 1981594800, 1992477600, 2013044400, 2024532000, 2044494000, 2055376800, 2076548400, 2086826400, 2107998000, 2118880800, 2139447600 }
-    transPost32:intvector { 0, -2144636896, 0, -2124070096 }
+    trans:intvector { -1767214412, -1206957600, -1191362400, -1175374800, -1159826400, -633819600, -622069200, -602283600, -591832800, -570747600, -560210400, -539125200, -531352800, -195426000, -184197600, -155163600, -150069600, -128898000, -121125600, -99954000, -89589600, -68418000, -57967200, 499748400, 511236000, 530593200, 540266400, 562129200, 571197600, 592974000, 602042400, 624423600, 634701600, 656478000, 666756000, 687927600, 697600800, 719982000, 728445600, 750826800, 761709600, 782276400, 793159200, 813726000, 824004000, 844570800, 856058400, 876106800, 888717600, 908074800, 919562400, 938919600, 951616800, 970974000, 982461600, 1003028400, 1013911200, 1036292400, 1045360800, 1066532400, 1076810400, 1099364400, 1108864800, 1129431600, 1140314400, 1162695600, 1172368800, 1192330800, 1203213600, 1224385200, 1234663200, 1255834800, 1266717600, 1287284400, 1298167200, 1318734000, 1330221600, 1350788400, 1361066400, 1382238000, 1392516000, 1413687600, 1424570400, 1445137200, 1456020000, 1476586800, 1487469600, 1508036400, 1518919200, 1541300400, 1550368800, 1572750000, 1581818400, 1604199600, 1613872800, 1636254000, 1645322400, 1667703600, 1677376800, 1699153200, 1708221600, 1730602800, 1739671200, 1762052400, 1771725600, 1793502000, 1803175200, 1825556400, 1834624800, 1857006000, 1866074400, 1888455600, 1897524000, 1919905200, 1928973600, 1951354800, 1960423200, 1983409200, 1992477600, 2014858800, 2024532000, 2046308400, 2055376800, 2077758000, 2086826400, 2109207600, 2118880800, 2140657200 }
+    transPost32:intvector { 0, -2144636896, 0, -2122255696 }
     typeOffsets:intvector { -11188, 0, -10800, 0, -10800, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
     finalRule { "Brazil" }
     finalRaw:int { -10800 }
     finalYear:int { 2039 }
-    links:intvector { 200, 364, 368 }
-  } //Z#200
+    links:intvector { 202, 372, 376 }
+  } //Z#202
   /* America/Scoresbysund */ :table {
     trans:intvector { -1686090728, 323841600, 338961600, 354679200, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -5272, 0, -7200, 0, -7200, 3600, -3600, 0, -3600, 3600 }
@@ -1233,18 +1053,18 @@
     finalRule { "EU" }
     finalRaw:int { -3600 }
     finalYear:int { 1997 }
-  } //Z#201
-  /* America/Shiprock */ :int { 109 } //Z#202
+  } //Z#203
+  /* America/Shiprock */ :int { 109 } //Z#204
   /* America/Sitka */ :table {
-    transPre32:intvector { -1, 1069601369, -1, 2106012569 }
+    transPre32:intvector { -1, 1069743569, -1, 2106012569 }
     trans:intvector { -880207200, -765385200, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452084400, 467805600, 483534000, 499255200, 514983600, 530704800, 544618800, 562154400, 576068400, 594208800, 607518000, 625658400, 638967600, 657108000, 671022000, 688557600, 702471600, 720007200, 733921200, 752061600, 765370800, 783511200, 796820400, 814960800, 828874800, 846410400, 860324400, 877860000, 891774000, 909309600, 923223600, 941364000, 954673200, 972813600, 986122800, 1004263200, 1018177200, 1035712800, 1049626800, 1067162400, 1081076400, 1099216800, 1112526000, 1130666400, 1143975600, 1162116000, 1173610800, 1194170400 }
     typeOffsets:intvector { 53927, 0, -32473, 0, -32400, 0, -32400, 3600, -28800, 0, -28800, 3600 }
     typeMap:bin { "01040504050405040504050405040504050405040504050405040504050405040502030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-  } //Z#203
-  /* America/St_Barthelemy */ :int { 123 } //Z#204
+  } //Z#205
+  /* America/St_Barthelemy */ :int { 186 } //Z#206
   /* America/St_Johns */ :table {
     trans:intvector { -1664130548, -1650137348, -1632076148, -1615145348, -1598650148, -1590100148, -1567286948, -1551565748, -1535837348, -1520116148, -1503782948, -1488666548, -1472333348, -1457216948, -1440883748, -1425767348, -1409434148, -1394317748, -1377984548, -1362263348, -1346534948, -1330813748, -1314480548, -1299364148, -1283030948, -1267914548, -1251581348, -1236464948, -1220131748, -1205015348, -1188682148, -1172960948, -1156627748, -1141511348, -1125178148, -1110061748, -1096921748, -1093728600, -1078612200, -1061670600, -1048973400, -1030221000, -1017523800, -998771400, -986074200, -966717000, -954624600, -935267400, -922570200, -903817800, -891120600, -872368200, -765401400, -746044200, -733347000, -714594600, -701897400, -683145000, -670447800, -651695400, -638998200, -619641000, -606943800, -589401000, -576099000, -557951400, -544649400, -526501800, -513199800, -495052200, -481750200, -463602600, -450300600, -431548200, -418246200, -400098600, -386796600, -368649000, -355347000, -337199400, -323897400, -305749800, -289423800, -273695400, -257974200, -242245800, -226524600, -210796200, -195075000, -179346600, -163625400, -147897000, -131571000, -116447400, -100121400, -84393000, -68671800, -52943400, -37222200, -21493800, -5772600, 9955800, 25677000, 41405400, 57731400, 73459800, 89181000, 104909400, 120630600, 136359000, 152080200, 167808600, 183529800, 199258200, 215584200, 230707800, 247033800, 262762200, 278483400, 294211800, 309933000, 325661400, 341382600, 357111000, 372832200, 388560600, 404886600, 420010200, 436336200, 452064600, 467785800, 483514200, 499235400, 514963800, 530685000, 544591860, 562127460, 576041460, 594178260, 607491060, 625631460, 638940660, 657081060, 670995060, 688530660, 702444660, 719980260, 733894260, 752034660, 765343860, 783484260, 796793460, 814933860, 828847860, 846383460, 860297460, 877833060, 891747060, 909282660, 923196660, 941337060, 954646260, 972786660, 986095860, 1004236260, 1018150260, 1035685860, 1049599860, 1067135460, 1081049460, 1099189860, 1112499060, 1130639460, 1143948660, 1162089060, 1173583860, 1194143460, 1205033460, 1225593060, 1236483060, 1257042660, 1268537460, 1289097060, 1299987060, 1320553800, 1331443800, 1352003400 }
     typeOffsets:intvector { -12652, 0, -12652, 3600, -12600, 0, -12600, 3600, -12600, 7200 }
@@ -1252,39 +1072,22 @@
     finalRule { "Canada" }
     finalRaw:int { -12600 }
     finalYear:int { 2013 }
-    links:intvector { 205, 372, 381 }
-  } //Z#205
-  /* America/St_Kitts */ :table {
-    trans:intvector { -1825098548 }
-    typeOffsets:intvector { -15052, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#206
-  /* America/St_Lucia */ :table {
-    trans:intvector { -1830369360 }
-    typeOffsets:intvector { -14640, 0, -14400, 0 }
-    typeMap:bin { "01" }
+    links:intvector { 207, 380, 389 }
   } //Z#207
-  /* America/St_Thomas */ :table {
-    trans:intvector { -1846266016 }
-    typeOffsets:intvector { -15584, 0, -14400, 0 }
-    typeMap:bin { "01" }
-    links:intvector { 208, 218 }
-  } //Z#208
-  /* America/St_Vincent */ :table {
-    trans:intvector { -1830369304 }
-    typeOffsets:intvector { -14696, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#209
+  /* America/St_Kitts */ :int { 186 } //Z#208
+  /* America/St_Lucia */ :int { 186 } //Z#209
+  /* America/St_Thomas */ :int { 186 } //Z#210
+  /* America/St_Vincent */ :int { 186 } //Z#211
   /* America/Swift_Current */ :table {
     trans:intvector { -2030201320, -1632063600, -1615132800, -880210800, -765388800, -747241200, -732729600, -715791600, -702489600, -684342000, -671040000, -652892400, -639590400, -400086000, -384364800, -337186800, -321465600, -305737200, -292435200, -273682800, -260985600, 73472400 }
     typeOffsets:intvector { -25880, 0, -25200, 0, -25200, 3600, -21600, 0 }
     typeMap:bin { "01020102010201020102010201020102010201020103" }
-  } //Z#210
+  } //Z#212
   /* America/Tegucigalpa */ :table {
     trans:intvector { -1538503868, 547020000, 559717200, 578469600, 591166800, 1146981600, 1154926800 }
     typeOffsets:intvector { -20932, 0, -21600, 0, -21600, 3600 }
     typeMap:bin { "01020102010201" }
-  } //Z#211
+  } //Z#213
   /* America/Thule */ :table {
     trans:intvector { -1686079492, 670399200, 686120400, 701848800, 717570000, 733903200, 752043600, 765352800, 783493200, 796802400, 814942800, 828856800, 846392400, 860306400, 877842000, 891756000, 909291600, 923205600, 941346000, 954655200, 972795600, 986104800, 1004245200, 1018159200, 1035694800, 1049608800, 1067144400, 1081058400, 1099198800, 1112508000, 1130648400, 1143957600, 1162098000, 1173592800, 1194152400 }
     typeOffsets:intvector { -16508, 0, -14400, 0, -14400, 3600 }
@@ -1292,7 +1095,7 @@
     finalRule { "Thule" }
     finalRaw:int { -14400 }
     finalYear:int { 2008 }
-  } //Z#212
+  } //Z#214
   /* America/Thunder_Bay */ :table {
     transPre32:intvector { -1, 1928233516 }
     trans:intvector { -1893434400, -880218000, -765396000, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 136364400, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -1301,16 +1104,16 @@
     finalRule { "Canada" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#213
+  } //Z#215
   /* America/Tijuana */ :table {
-    trans:intvector { -1514736000, -1451667600, -1343062800, -1234803600, -1222963200, -1207242000, -873820800, -761677200, -686073600, -661539600, -495036000, -481734000, -463586400, -450284400, -431532000, -418230000, -400082400, -386780400, -368632800, -355330800, -337183200, -323881200, -305733600, -292431600, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1175421600, 1193562000, 1207476000, 1225011600, 1238925600, 1256461200, 1268560800, 1289120400 }
+    trans:intvector { -1514736000, -1451667600, -1343062800, -1234803600, -1222963200, -1207242000, -873820800, -761677200, -686073600, -661539600, -495039600, -481734000, -463590000, -450284400, -431535600, -418230000, -400086000, -386780400, -368636400, -355330800, -337186800, -323881200, -305737200, -292431600, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1175421600, 1193562000, 1207476000, 1225011600, 1238925600, 1256461200, 1268560800, 1289120400 }
     typeOffsets:intvector { -28084, 0, -28800, 0, -28800, 3600, -25200, 0 }
     typeMap:bin { "03010301020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2011 }
-    links:intvector { 115, 214, 525 }
-  } //Z#214
+    links:intvector { 115, 198, 216, 537 }
+  } //Z#216
   /* America/Toronto */ :table {
     transPre32:intvector { -1, 1928231148 }
     trans:intvector { -1632070800, -1615140000, -1601753400, -1583697600, -1567357200, -1554667200, -1534698000, -1524074400, -1503248400, -1492365600, -1471798800, -1460916000, -1440954000, -1428861600, -1409504400, -1397412000, -1378054800, -1365962400, -1346605200, -1333908000, -1315155600, -1301853600, -1283706000, -1270404000, -1252256400, -1238954400, -1220806800, -1207504800, -1188752400, -1176055200, -1157302800, -1144000800, -1125853200, -1112551200, -1094403600, -1081101600, -1062954000, -1049652000, -1031504400, -1018202400, -1000054800, -986752800, -968000400, -955303200, -936550800, -765396000, -747248400, -733946400, -715806000, -702504000, -684356400, -671054400, -652906800, -634161600, -620845200, -602704800, -589395600, -576093600, -557946000, -544644000, -526496400, -513194400, -495046800, -481744800, -463597200, -450295200, -431542800, -418240800, -400093200, -384372000, -368643600, -352922400, -337194000, -321472800, -305744400, -289418400, -273690000, -257968800, -242240400, -226519200, -210790800, -195069600, -179341200, -163620000, -147891600, -131565600, -116442000, -100116000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 136364400, 152085600, 167814000, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
@@ -1319,13 +1122,9 @@
     finalRule { "Canada" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 215, 379 }
-  } //Z#215
-  /* America/Tortola */ :table {
-    trans:intvector { -1846266092 }
-    typeOffsets:intvector { -15508, 0, -14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#216
+    links:intvector { 170, 217, 387 }
+  } //Z#217
+  /* America/Tortola */ :int { 186 } //Z#218
   /* America/Vancouver */ :table {
     transPre32:intvector { -1, 1581086444 }
     trans:intvector { -1632060000, -1615129200, -880207200, -765385200, -747237600, -732726000, -715788000, -702486000, -684338400, -671036400, -652888800, -639586800, -620834400, -608137200, -589384800, -576082800, -557935200, -544633200, -526485600, -513183600, -495036000, -481734000, -463586400, -450284400, -431532000, -418230000, -400082400, -386780400, -368632800, -355330800, -337183200, -323881200, -305733600, -292431600, -273679200, -260982000, -242229600, -226508400, -210780000, -195058800, -179330400, -163609200, -147880800, -131554800, -116431200, -100105200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 136375200, 152096400, 167824800, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
@@ -1334,19 +1133,19 @@
     finalRule { "Canada" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-    links:intvector { 217, 382 }
-  } //Z#217
-  /* America/Virgin */ :int { 208 } //Z#218
+    links:intvector { 219, 390 }
+  } //Z#219
+  /* America/Virgin */ :int { 186 } //Z#220
   /* America/Whitehorse */ :table {
     transPre32:intvector { -1, 2105969308 }
-    trans:intvector { -1632056400, -1615125600, -1596978000, -1583164800, -880203600, -765381600, -147884400, -131554800, -110552400, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
+    trans:intvector { -1632056400, -1615125600, -1596978000, -1583164800, -880203600, -765381600, -147884400, -131554800, -81961200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
     typeOffsets:intvector { -32412, 0, -32400, 0, -32400, 3600, -32400, 7200, -28800, 0, -28800, 3600 }
     typeMap:bin { "010201020102010301040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "Canada" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-    links:intvector { 219, 384 }
-  } //Z#219
+    links:intvector { 221, 392 }
+  } //Z#221
   /* America/Winnipeg */ :table {
     transPre32:intvector { -1, 1692709012 }
     trans:intvector { -1694368800, -1681671600, -1632067200, -1615136400, -1029686400, -1018198800, -880214400, -765392400, -746035200, -732733200, -715795200, -702493200, -684345600, -671043600, -652896000, -639594000, -620755200, -607626000, -589392000, -576090000, -557942400, -544640400, -526492800, -513190800, -495043200, -481741200, -463593600, -450291600, -431539200, -418237200, -400089600, -386787600, -368640000, -355338000, -337190400, -321469200, -305740800, -292438800, -210787200, -198090000, -116438400, -100108800, -84384000, -68659200, -52934400, -37209600, -21484800, -5760000, 9964800, 25689600, 41414400, 57744000, 73468800, 89193600, 104918400, 120643200, 136368000, 152092800, 167817600, 183542400, 199267200, 215596800, 230716800, 247046400, 262771200, 278496000, 294220800, 309945600, 325670400, 341395200, 357120000, 372844800, 388569600, 404899200, 420019200, 436348800, 452073600, 467798400, 483523200, 499248000, 514972800, 530697600, 544608000, 562147200, 576057600, 594201600, 607507200, 625651200, 638956800, 657100800, 671011200, 688550400, 702460800, 720000000, 733910400, 752054400, 765360000, 783504000, 796809600, 814953600, 828864000, 846403200, 860313600, 877852800, 891763200, 909302400, 923212800, 941356800, 954662400, 972806400, 986112000, 1004256000, 1018166400, 1035705600, 1049616000, 1067155200, 1081065600, 1099209600, 1112515200, 1130659200, 1143964800, 1162105200, 1173600000, 1194159600 }
@@ -1355,17 +1154,17 @@
     finalRule { "Canada" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-    links:intvector { 220, 377 }
-  } //Z#220
+    links:intvector { 222, 385 }
+  } //Z#222
   /* America/Yakutat */ :table {
-    transPre32:intvector { -1, 1069602431, -1, 2106013631 }
+    transPre32:intvector { -1, 1069743569, -1, 2106013631 }
     trans:intvector { -880203600, -765381600, -21474000, -5752800, 9975600, 25696800, 41425200, 57751200, 73479600, 89200800, 104929200, 120650400, 126702000, 152100000, 162385200, 183549600, 199278000, 215604000, 230727600, 247053600, 262782000, 278503200, 294231600, 309952800, 325681200, 341402400, 357130800, 372852000, 388580400, 404906400, 420030000, 436356000, 452084400, 467805600, 483534000, 499255200, 514983600, 530704800, 544618800, 562154400, 576068400, 594208800, 607518000, 625658400, 638967600, 657108000, 671022000, 688557600, 702471600, 720007200, 733921200, 752061600, 765370800, 783511200, 796820400, 814960800, 828874800, 846410400, 860324400, 877860000, 891774000, 909309600, 923223600, 941364000, 954673200, 972813600, 986122800, 1004263200, 1018177200, 1035712800, 1049626800, 1067162400, 1081076400, 1099216800, 1112526000, 1130666400, 1143975600, 1162116000, 1173610800, 1194170400 }
     typeOffsets:intvector { 52865, 0, -33535, 0, -32400, 0, -32400, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-  } //Z#221
+  } //Z#223
   /* America/Yellowknife */ :table {
     trans:intvector { -1104537600, -880210800, -765388800, -147891600, -131562000, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1173603600, 1194163200 }
     typeOffsets:intvector { 0, 0, -25200, 0, -25200, 3600, -25200, 7200 }
@@ -1373,130 +1172,128 @@
     finalRule { "Canada" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-  } //Z#222
+  } //Z#224
   /* Antarctica/Casey */ :table {
-    trans:intvector { -31536000, 1255802400, 1267714800, 1319738400, 1329843600 }
+    trans:intvector { -31536000, 1255802400, 1267714800, 1319738400, 1329843600, 1477065600, 1520701200 }
     typeOffsets:intvector { 0, 0, 28800, 0, 39600, 0 }
-    typeMap:bin { "0102010201" }
-  } //Z#223
+    typeMap:bin { "01020102010201" }
+  } //Z#225
   /* Antarctica/Davis */ :table {
     trans:intvector { -409190400, -163062000, -28857600, 1255806000, 1268251200, 1319742000, 1329854400 }
     typeOffsets:intvector { 0, 0, 18000, 0, 25200, 0 }
     typeMap:bin { "02000201020102" }
-  } //Z#224
+  } //Z#226
   /* Antarctica/DumontDUrville */ :table {
     trans:intvector { -725846400, -566992800, -415497600 }
     typeOffsets:intvector { 0, 0, 36000, 0 }
     typeMap:bin { "010001" }
-  } //Z#225
+  } //Z#227
   /* Antarctica/Macquarie */ :table {
-    trans:intvector { -1861920000, -1680508800, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, -71136000, -55411200, -37267200, -25776000, -5817600, 5673600, 25632000, 37728000, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 386092800, 404841600, 417542400, 436291200, 447177600, 467740800, 478627200, 499190400, 510076800, 530035200, 542736000, 562089600, 574790400, 594144000, 606240000, 625593600, 637689600, 657043200, 670348800, 686678400, 701798400, 718128000, 733248000, 749577600, 764697600, 781027200, 796147200, 812476800, 828201600, 844531200, 859651200, 875980800, 891100800, 907430400, 922550400, 938880000, 954000000, 967305600, 985449600, 1002384000, 1017504000, 1033833600, 1048953600, 1065283200, 1080403200, 1096732800, 1111852800, 1128182400, 1143907200, 1159632000, 1174752000, 1191686400, 1207411200, 1223136000, 1238860800, 1254585600, 1270310400 }
+    transPre32:intvector { -1, 2080708096 }
+    trans:intvector { -1680508800, -1665392400, -1601719200, -687052800, -71136000, -55411200, -37267200, -25776000, -5817600, 5673600, 25632000, 37728000, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 386092800, 404841600, 417542400, 436291200, 447177600, 467740800, 478627200, 499190400, 510076800, 530035200, 542736000, 562089600, 574790400, 594144000, 606240000, 625593600, 637689600, 657043200, 670348800, 686678400, 701798400, 718128000, 733248000, 749577600, 764697600, 781027200, 796147200, 812476800, 828201600, 844531200, 859651200, 875980800, 891100800, 907430400, 922550400, 938880000, 954000000, 967305600, 985449600, 1002384000, 1017504000, 1033833600, 1048953600, 1065283200, 1080403200, 1096732800, 1111852800, 1128182400, 1143907200, 1159632000, 1174752000, 1191686400, 1207411200, 1223136000, 1238860800, 1254585600, 1270310400 }
     typeOffsets:intvector { 0, 0, 36000, 0, 36000, 3600, 39600, 0 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203" }
-  } //Z#226
+    typeMap:bin { "01020100010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203" }
+  } //Z#228
   /* Antarctica/Mawson */ :table {
     trans:intvector { -501206400, 1255809600 }
     typeOffsets:intvector { 0, 0, 18000, 0, 21600, 0 }
     typeMap:bin { "0201" }
-  } //Z#227
-  /* Antarctica/McMurdo */ :table {
-    trans:intvector { -441849600, 152632800, 162309600, 183477600, 194968800, 215532000, 226418400, 246981600, 257868000, 278431200, 289317600, 309880800, 320767200, 341330400, 352216800, 372780000, 384271200, 404834400, 415720800, 436284000, 447170400, 467733600, 478620000, 499183200, 510069600, 530632800, 541519200, 562082400, 573573600, 594136800, 605023200, 623772000, 637682400, 655221600, 669132000, 686671200, 700581600, 718120800, 732636000, 749570400, 764085600, 781020000, 795535200, 812469600, 826984800, 844524000, 858434400, 875973600, 889884000, 907423200, 921938400, 938872800, 953388000, 970322400, 984837600, 1002376800, 1016287200, 1033826400, 1047736800, 1065276000, 1079791200, 1096725600, 1111240800, 1128175200, 1142690400, 1159624800, 1174140000, 1191074400, 1207404000, 1222524000 }
-    typeOffsets:intvector { 0, 0, 43200, 0, 43200, 3600 }
-    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
-    finalRule { "NZAQ" }
-    finalRaw:int { 43200 }
-    finalYear:int { 2009 }
-    links:intvector { 228, 231 }
-  } //Z#228
-  /* Antarctica/Palmer */ :table {
-    trans:intvector { -157766400, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 389070000, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 591768000, 605674800, 624427200, 637729200, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400 }
-    typeOffsets:intvector { 0, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
-    typeMap:bin { "020102010201020102010304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
-    finalRule { "ChileAQ" }
-    finalRaw:int { -14400 }
-    finalYear:int { 2013 }
   } //Z#229
+  /* Antarctica/McMurdo */ :int { 552 } //Z#230
+  /* Antarctica/Palmer */ :table {
+    trans:intvector { -157766400, -152658000, -132955200, -121122000, -101419200, -86821200, -71092800, -54766800, -39038400, -23317200, -7588800, 128142000, 136605600, 389070000, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 592372800, 605674800, 624427200, 637124400, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400, 1367118000, 1378612800, 1398567600, 1410062400, 1463281200, 1471147200, 1480820400 }
+    typeOffsets:intvector { 0, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
+    typeMap:bin { "02010201020102010201030403010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203" }
+  } //Z#231
   /* Antarctica/Rothera */ :table {
     trans:intvector { 218246400 }
     typeOffsets:intvector { 0, 0, -10800, 0 }
     typeMap:bin { "01" }
-  } //Z#230
-  /* Antarctica/South_Pole */ :int { 228 } //Z#231
+  } //Z#232
+  /* Antarctica/South_Pole */ :int { 552 } //Z#233
   /* Antarctica/Syowa */ :table {
     trans:intvector { -407808000 }
     typeOffsets:intvector { 0, 0, 10800, 0 }
     typeMap:bin { "01" }
-  } //Z#232
+  } //Z#234
+  /* Antarctica/Troll */ :table {
+    trans:intvector { 1111885200, 1130634000 }
+    typeOffsets:intvector { 0, 0, 0, 7200 }
+    typeMap:bin { "0100" }
+    finalRule { "Troll" }
+    finalRaw:int { 0 }
+    finalYear:int { 2006 }
+  } //Z#235
   /* Antarctica/Vostok */ :table {
     trans:intvector { -380073600 }
     typeOffsets:intvector { 0, 0, 21600, 0 }
     typeMap:bin { "01" }
-  } //Z#233
-  /* Arctic/Longyearbyen */ :int { 464 } //Z#234
-  /* Asia/Aden */ :table {
-    trans:intvector { -631162794 }
-    typeOffsets:intvector { 10794, 0, 10800, 0 }
-    typeMap:bin { "01" }
-  } //Z#235
-  /* Asia/Almaty */ :table {
-    trans:intvector { -1441170468, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 701802000, 717523200, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400 }
-    typeOffsets:intvector { 18468, 0, 18000, 0, 21600, 0, 21600, 3600 }
-    typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
   } //Z#236
+  /* Arctic/Longyearbyen */ :int { 474 } //Z#237
+  /* Asia/Aden */ :int { 309 } //Z#238
+  /* Asia/Almaty */ :table {
+    trans:intvector { -1441170468, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600, 695768400, 701812800, 717537600, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400 }
+    typeOffsets:intvector { 18468, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
+    typeMap:bin { "010304030403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030403" }
+  } //Z#239
   /* Asia/Amman */ :table {
-    trans:intvector { -1230776624, 108165600, 118270800, 136591200, 149806800, 168127200, 181342800, 199749600, 215643600, 231285600, 244501200, 262735200, 275950800, 481154400, 496962000, 512949600, 528670800, 544399200, 560120400, 575848800, 592174800, 610581600, 623624400, 641167200, 655074000, 671839200, 685918800, 702856800, 717973200, 733701600, 749422800, 765151200, 779662800, 797205600, 811116000, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 930780000, 938124000, 954367200, 970178400, 985816800, 1001628000, 1017352800, 1033077600, 1048802400, 1066946400, 1080252000, 1097791200, 1112306400, 1128031200, 1143756000, 1161900000, 1175205600, 1193349600, 1206655200, 1225404000, 1238104800, 1256853600, 1269554400, 1288303200, 1301608800, 1319752800, 1333058400, 1382652000 }
+    trans:intvector { -1230776624, 108165600, 118270800, 136591200, 149806800, 168127200, 181342800, 199749600, 215643600, 231285600, 244501200, 262735200, 275950800, 481154400, 496962000, 512949600, 528670800, 544399200, 560120400, 575848800, 592174800, 610581600, 623624400, 641167200, 655074000, 671839200, 685918800, 702856800, 717973200, 733701600, 749422800, 765151200, 779662800, 797205600, 811116000, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 930780000, 938124000, 954367200, 970178400, 985816800, 1001628000, 1017352800, 1033077600, 1048802400, 1066946400, 1080252000, 1097791200, 1112306400, 1128031200, 1143756000, 1161900000, 1175205600, 1193349600, 1206655200, 1225404000, 1238104800, 1256853600, 1269554400, 1288303200, 1301608800, 1319752800, 1333058400, 1387486800, 1395957600, 1414706400 }
     typeOffsets:intvector { 8624, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "Jordan" }
     finalRaw:int { 7200 }
-    finalYear:int { 2014 }
-  } //Z#237
+    finalYear:int { 2015 }
+  } //Z#240
   /* Asia/Anadyr */ :table {
-    trans:intvector { -1441194596, -1247572800, 354884400, 370692000, 386420400, 402231600, 417960000, 433767600, 449582400, 465314400, 481039200, 496764000, 512488800, 528213600, 543938400, 559663200, 575388000, 591112800, 606837600, 622562400, 638287200, 654616800, 670341600, 686070000, 695746800, 701780400, 717501600, 733240800, 748965600, 764690400, 780415200, 796140000, 811864800, 828194400, 846338400, 859644000, 877788000, 891093600, 909237600, 922543200, 941292000, 953992800, 972741600, 985442400, 1004191200, 1017496800, 1035640800, 1048946400, 1067090400, 1080396000, 1099144800, 1111845600, 1130594400, 1143295200, 1162044000, 1174744800, 1193493600, 1206799200, 1224943200, 1238248800, 1256392800, 1269698400, 1288450800, 1301151600 }
+    trans:intvector { -1441194596, -1247572800, 354884400, 370692000, 386420400, 402231600, 417960000, 433767600, 449582400, 465314400, 481039200, 496764000, 512488800, 528213600, 543938400, 559663200, 575388000, 591112800, 606837600, 622562400, 638287200, 654616800, 670341600, 686070000, 695746800, 701791200, 717516000, 733240800, 748965600, 764690400, 780415200, 796140000, 811864800, 828194400, 846338400, 859644000, 877788000, 891093600, 909237600, 922543200, 941292000, 953992800, 972741600, 985442400, 1004191200, 1017496800, 1035640800, 1048946400, 1067090400, 1080396000, 1099144800, 1111845600, 1130594400, 1143295200, 1162044000, 1174744800, 1193493600, 1206799200, 1224943200, 1238248800, 1256392800, 1269698400, 1288450800, 1301151600 }
     typeOffsets:intvector { 42596, 0, 39600, 0, 39600, 3600, 43200, 0, 43200, 3600, 46800, 0, 46800, 3600 }
     typeMap:bin { "03050605040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403020103" }
-  } //Z#238
+  } //Z#241
   /* Asia/Aqtau */ :table {
-    trans:intvector { -1441164064, -1247544000, 370724400, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 701805600, 717526800, 733266000, 748990800, 764715600, 780440400, 796165200, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1110830400 }
+    trans:intvector { -1441164064, -1247544000, 370724400, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701816400, 717541200, 733266000, 748990800, 764715600, 780440400, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600 }
     typeOffsets:intvector { 12064, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
-    typeMap:bin { "010305040304030403040304030403040304030403040304030403020102010201020102010201020102010201020103" }
-  } //Z#239
+    typeMap:bin { "0103050403040304030403040304030403040304030201030403040304010201020102010201020102010201020102010203" }
+  } //Z#242
   /* Asia/Aqtobe */ :table {
-    trans:intvector { -1441165720, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 701805600, 717526800, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000 }
-    typeOffsets:intvector { 13720, 0, 14400, 0, 18000, 0, 18000, 3600, 21600, 0 }
-    typeMap:bin { "010203040302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-  } //Z#240
+    trans:intvector { -1441165720, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701816400, 717541200, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000 }
+    typeOffsets:intvector { 13720, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "010304050403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030403" }
+  } //Z#243
   /* Asia/Ashgabat */ :table {
     trans:intvector { -1441166012, -1247544000, 354913200, 370720800, 386449200, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000 }
     typeOffsets:intvector { 14012, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600 }
     typeMap:bin { "01030403040304030403040304030403040304030403020103" }
-    links:intvector { 241, 242 }
-  } //Z#241
-  /* Asia/Ashkhabad */ :int { 241 } //Z#242
+    links:intvector { 244, 245 }
+  } //Z#244
+  /* Asia/Ashkhabad */ :int { 244 } //Z#245
+  /* Asia/Atyrau */ :table {
+    trans:intvector { -1441164464, -1247540400, 370724400, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701816400, 717541200, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600 }
+    typeOffsets:intvector { 12464, 0, 10800, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "0104060504050405040504050405040504050405040302040504050405040504050405040504030203020302030203020304" }
+  } //Z#246
   /* Asia/Baghdad */ :table {
     transPre32:intvector { -1, 1770435036 }
     trans:intvector { -1641005856, 389048400, 402264000, 417906000, 433800000, 449614800, 465422400, 481150800, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670464000, 686275200, 702086400, 717897600, 733622400, 749433600, 765158400, 780969600, 796694400, 812505600, 828316800, 844128000, 859852800, 875664000, 891388800, 907200000, 922924800, 938736000, 954547200, 970358400, 986083200, 1001894400, 1017619200, 1033430400, 1049155200, 1064966400, 1080777600, 1096588800, 1112313600, 1128124800, 1143849600, 1159660800, 1175385600, 1191196800 }
     typeOffsets:intvector { 10660, 0, 10656, 0, 10800, 0, 10800, 3600 }
     typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-  } //Z#243
-  /* Asia/Bahrain */ :table {
-    trans:intvector { -1577935340, 76190400 }
-    typeOffsets:intvector { 12140, 0, 10800, 0, 14400, 0 }
-    typeMap:bin { "0201" }
-  } //Z#244
+  } //Z#247
+  /* Asia/Bahrain */ :int { 305 } //Z#248
   /* Asia/Baku */ :table {
-    trans:intvector { -1441163964, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701812800, 717534000, 828234000, 846378000, 859680000, 877824000 }
+    trans:intvector { -1441163964, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701823600, 717548400, 828234000, 846378000, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000, 1319932800, 1332633600, 1351382400, 1364688000, 1382832000, 1396137600, 1414281600, 1427587200, 1445731200 }
     typeOffsets:intvector { 11964, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
-    typeMap:bin { "010304030403040304030403040304030403040304030201020304030403" }
-    finalRule { "Azer" }
-    finalRaw:int { 14400 }
-    finalYear:int { 1998 }
-  } //Z#245
+    typeMap:bin { "010304030403040304030403040304030403040304030201020304030403040304030403040304030403040304030403040304030403040304030403040304030403" }
+  } //Z#249
   /* Asia/Bangkok */ :table {
     trans:intvector { -1570084924 }
     typeOffsets:intvector { 24124, 0, 25200, 0 }
     typeMap:bin { "01" }
-  } //Z#246
+    links:intvector { 250, 302, 331 }
+  } //Z#250
+  /* Asia/Barnaul */ :table {
+    trans:intvector { -1579844100, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 748983600, 764708400, 780433200, 796158000, 801590400, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600, 1459022400 }
+    typeOffsets:intvector { 20100, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600 }
+    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040201020102010201020102010201020102010201020102010201020102010201030103" }
+  } //Z#251
   /* Asia/Beirut */ :table {
     transPre32:intvector { -1, 1454817976 }
     trans:intvector { -1570413600, -1552186800, -1538359200, -1522551600, -1507514400, -1490583600, -1473645600, -1460948400, -399866400, -386650800, -368330400, -355114800, -336794400, -323578800, -305172000, -291956400, -273636000, -260420400, 78012000, 86734800, 105055200, 118270800, 136591200, 149806800, 168127200, 181342800, 199749600, 212965200, 231285600, 244501200, 262735200, 275950800, 452210400, 466722000, 483746400, 498258000, 515282400, 529794000, 546818400, 561330000, 581119200, 592952400, 610754400, 624488400, 641512800, 656024400, 673048800, 687560400, 704671200, 718146000, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 843944400, 859672800, 875394000, 891122400, 906843600, 922572000, 941317200 }
@@ -1505,37 +1302,37 @@
     finalRule { "Lebanon" }
     finalRaw:int { 7200 }
     finalYear:int { 2000 }
-  } //Z#247
+  } //Z#252
   /* Asia/Bishkek */ :table {
     trans:intvector { -1441169904, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 683582400, 703018800, 717530400, 734468400, 748980000, 765918000, 780429600, 797367600, 811879200, 828817200, 843933600, 859671000, 877811400, 891120600, 909261000, 922570200, 941315400, 954019800, 972765000, 985469400, 1004214600, 1017523800, 1035664200, 1048973400, 1067113800, 1080423000, 1099168200, 1111872600, 1123783200 }
     typeOffsets:intvector { 17904, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
     typeMap:bin { "01030403040304030403040304030403040304030403020102010201020102010201020102010201020102010201020102010203" }
-  } //Z#248
+  } //Z#253
   /* Asia/Brunei */ :table {
     trans:intvector { -1383464380, -1167636600 }
     typeOffsets:intvector { 27580, 0, 27000, 0, 28800, 0 }
     typeMap:bin { "0102" }
-  } //Z#249
-  /* Asia/Calcutta */ :int { 279 } //Z#250
+  } //Z#254
+  /* Asia/Calcutta */ :int { 286 } //Z#255
+  /* Asia/Chita */ :table {
+    trans:intvector { -1579419232, -1247558400, 354898800, 370706400, 386434800, 402242400, 417970800, 433778400, 449593200, 465325200, 481050000, 496774800, 512499600, 528224400, 543949200, 559674000, 575398800, 591123600, 606848400, 622573200, 638298000, 654627600, 670352400, 686080800, 695757600, 701802000, 717526800, 733251600, 748976400, 764701200, 780426000, 796150800, 811875600, 828205200, 846349200, 859654800, 877798800, 891104400, 909248400, 922554000, 941302800, 954003600, 972752400, 985453200, 1004202000, 1017507600, 1035651600, 1048957200, 1067101200, 1080406800, 1099155600, 1111856400, 1130605200, 1143306000, 1162054800, 1174755600, 1193504400, 1206810000, 1224954000, 1238259600, 1256403600, 1269709200, 1288458000, 1301158800, 1414252800, 1459015200 }
+    typeOffsets:intvector { 27232, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600, 36000, 0 }
+    typeMap:bin { "010304030403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030403040304030403040304030403050103" }
+  } //Z#256
   /* Asia/Choibalsan */ :table {
-    trans:intvector { -2032933080, 252435600, 417974400, 433778400, 449593200, 465314400, 481042800, 496764000, 512492400, 528213600, 543942000, 559663200, 575391600, 591112800, 606841200, 622562400, 638290800, 654616800, 670345200, 686066400, 701794800, 717516000, 733244400, 748965600, 764694000, 780415200, 796143600, 811864800, 828198000, 843919200, 859647600, 875368800, 891097200, 906818400, 988390800, 1001692800, 1017421200, 1033142400, 1048870800, 1064592000, 1080320400, 1096041600, 1111770000, 1127491200, 1143219600, 1159545600, 1206889200 }
-    typeOffsets:intvector { 27480, 0, 25200, 0, 28800, 0, 32400, 0, 32400, 3600 }
-    typeMap:bin { "0102040304030403040304030403040304030403040304030403040304030403040304030403040304030403040302" }
-  } //Z#251
-  /* Asia/Chongqing */ :table {
-    trans:intvector { -1325487980, 325962000, 515520000, 527007600, 545155200, 558457200, 576604800, 589906800, 608659200, 621961200, 640108800, 653410800, 671558400, 684860400 }
-    typeOffsets:intvector { 25580, 0, 25200, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "0102030203020302030203020302" }
-    links:intvector { 252, 253 }
-  } //Z#252
-  /* Asia/Chungking */ :int { 252 } //Z#253
+    trans:intvector { -2032933080, 252435600, 417974400, 433778400, 449593200, 465314400, 481042800, 496764000, 512492400, 528213600, 543942000, 559663200, 575391600, 591112800, 606841200, 622562400, 638290800, 654616800, 670345200, 686066400, 701794800, 717516000, 733244400, 748965600, 764694000, 780415200, 796143600, 811864800, 828198000, 843919200, 859647600, 875368800, 891097200, 906818400, 988390800, 1001692800, 1017421200, 1033142400, 1048870800, 1064592000, 1080320400, 1096041600, 1111770000, 1127491200, 1143219600, 1159545600, 1206889200, 1427479200, 1443193200, 1458928800, 1474642800 }
+    typeOffsets:intvector { 27480, 0, 25200, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600 }
+    typeMap:bin { "010205040504050405040504050405040504050405040504050405040504050405040504050405040504050405040203020302" }
+  } //Z#257
+  /* Asia/Chongqing */ :int { 314 } //Z#258
+  /* Asia/Chungking */ :int { 314 } //Z#259
   /* Asia/Colombo */ :table {
     transPre32:intvector { -1, 1454807332 }
     trans:intvector { -2019705572, -883287000, -862639200, -764051400, 832962600, 846266400, 1145039400 }
     typeOffsets:intvector { 19164, 0, 19172, 0, 19800, 0, 19800, 1800, 19800, 3600, 21600, 0, 23400, 0 }
     typeMap:bin { "0102030402060502" }
-  } //Z#254
-  /* Asia/Dacca */ :int { 257 } //Z#255
+  } //Z#260
+  /* Asia/Dacca */ :int { 263 } //Z#261
   /* Asia/Damascus */ :table {
     trans:intvector { -1577931912, -1568592000, -1554080400, -1537142400, -1522630800, -1505692800, -1491181200, -1474243200, -1459126800, -242265600, -228877200, -210556800, -197427600, -178934400, -165718800, -147398400, -134269200, -116467200, -102646800, -84326400, -71110800, -52704000, -39488400, -21168000, -7952400, 10368000, 23583600, 41904000, 55119600, 73526400, 86742000, 105062400, 118278000, 136598400, 149814000, 168134400, 181350000, 199756800, 212972400, 231292800, 241916400, 262828800, 273452400, 418694400, 433810800, 450316800, 465433200, 508896000, 529196400, 541555200, 562633200, 574387200, 594255600, 607305600, 623199600, 638928000, 654649200, 670456800, 686264400, 702684000, 717886800, 733096800, 748904400, 765151200, 780958800, 796687200, 812494800, 828309600, 844117200, 859759200, 875653200, 891208800, 907189200, 922917600, 938725200, 954540000, 970347600, 986076000, 1001883600, 1017612000, 1033419600, 1049148000, 1064955600, 1080770400, 1096578000, 1112306400, 1128114000, 1143842400, 1158872400, 1175205600, 1193950800, 1207260000, 1225486800, 1238104800, 1256850000, 1270159200, 1288299600, 1301608800, 1319749200, 1333058400, 1351198800 }
     typeOffsets:intvector { 8712, 0, 7200, 0, 7200, 3600 }
@@ -1543,180 +1340,179 @@
     finalRule { "Syria" }
     finalRaw:int { 7200 }
     finalYear:int { 2013 }
-  } //Z#256
+  } //Z#262
   /* Asia/Dhaka */ :table {
     transPre32:intvector { -1, 1770423996 }
-    trans:intvector { -891582800, -872058600, -862637400, -576138600, 1245430800, 1262278740 }
+    trans:intvector { -891582800, -872058600, -862637400, -576138600, 1245430800, 1262278800 }
     typeOffsets:intvector { 21700, 0, 19800, 0, 21200, 0, 21600, 0, 21600, 3600, 23400, 0 }
     typeMap:bin { "02050105030403" }
-    links:intvector { 255, 257, 365 }
-  } //Z#257
+    links:intvector { 261, 263, 373 }
+  } //Z#263
   /* Asia/Dili */ :table {
     trans:intvector { -1830414140, -879152400, 199897200, 969120000 }
     typeOffsets:intvector { 30140, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "01020102" }
-  } //Z#258
+  } //Z#264
   /* Asia/Dubai */ :table {
     trans:intvector { -1577936472 }
     typeOffsets:intvector { 13272, 0, 14400, 0 }
     typeMap:bin { "01" }
-  } //Z#259
+    links:intvector { 265, 296 }
+  } //Z#265
   /* Asia/Dushanbe */ :table {
     trans:intvector { -1441168512, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 684363600 }
     typeOffsets:intvector { 16512, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
     typeMap:bin { "010304030403040304030403040304030403040304030201" }
-  } //Z#260
+  } //Z#266
+  /* Asia/Famagusta */ :table {
+    trans:intvector { -1518920148, 166572000, 182293200, 200959200, 213829200, 228866400, 243982800, 260316000, 276123600, 291765600, 307486800, 323820000, 338936400, 354664800, 370386000, 386114400, 401835600, 417564000, 433285200, 449013600, 465339600, 481068000, 496789200, 512517600, 528238800, 543967200, 559688400, 575416800, 591138000, 606866400, 622587600, 638316000, 654642000, 670370400, 686091600, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 843944400, 859672800, 875394000, 891122400, 909277200, 922582800, 941331600, 954032400, 972781200, 985482000, 1004230800, 1017536400, 1035680400, 1048986000, 1067130000, 1080435600, 1099184400, 1111885200, 1130634000, 1143334800, 1162083600, 1174784400, 1193533200, 1206838800, 1224982800, 1238288400, 1256432400, 1269738000, 1288486800, 1301187600, 1319936400, 1332637200, 1351386000, 1364691600, 1382835600, 1396141200, 1414285200, 1427590800, 1445734800, 1459040400, 1473282000, 1509238800, 1521939600, 1540688400 }
+    typeOffsets:intvector { 8148, 0, 7200, 0, 7200, 3600, 10800, 0 }
+    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203010201" }
+    finalRule { "EUAsia" }
+    finalRaw:int { 7200 }
+    finalYear:int { 2019 }
+  } //Z#267
   /* Asia/Gaza */ :table {
     transPre32:intvector { -1, 2109557424 }
-    trans:intvector { -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -81313200, 142380000, 150843600, 167176800, 178664400, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576540000, 589237200, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 924213600, 939934800, 956268000, 971989200, 987717600, 1003438800, 1019167200, 1034888400, 1050616800, 1066338000, 1082066400, 1096581600, 1113516000, 1128380400, 1143842400, 1158872400, 1175378400, 1189638000, 1207000800, 1219957200, 1238104800, 1252018800, 1269640860, 1281474000, 1301738460, 1312146000, 1333058400, 1348178400 }
+    trans:intvector { -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -81313200, 142380000, 150843600, 167176800, 178664400, 334015200, 337644000, 452556000, 462232800, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576626400, 589323600, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 924213600, 939934800, 956268000, 971989200, 987717600, 1003438800, 1019167200, 1034888400, 1050616800, 1066338000, 1082066400, 1096581600, 1113516000, 1128380400, 1143842400, 1158872400, 1175378400, 1189638000, 1206655200, 1219957200, 1238104800, 1252015200, 1269640860, 1281474000, 1301608860, 1312146000, 1333058400, 1348178400, 1364508000, 1380229200, 1395957600, 1414098000, 1427493600, 1445547600, 1458946800, 1477692000 }
     typeOffsets:intvector { 8272, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#261
-  /* Asia/Harbin */ :table {
-    trans:intvector { -1325492804, -1194078600, -946800000, -115894800, 325956600, 515520000, 527007600, 545155200, 558457200, 576604800, 589906800, 608659200, 621961200, 640108800, 653410800, 671558400, 684860400 }
-    typeOffsets:intvector { 30404, 0, 28800, 0, 28800, 3600, 30600, 0, 32400, 0 }
-    typeMap:bin { "0301040301020102010201020102010201" }
-  } //Z#262
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    finalRule { "Palestine" }
+    finalRaw:int { 7200 }
+    finalYear:int { 2017 }
+  } //Z#268
+  /* Asia/Harbin */ :int { 314 } //Z#269
   /* Asia/Hebron */ :table {
     transPre32:intvector { -1, 2109557273 }
-    trans:intvector { -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -81313200, 142380000, 150843600, 167176800, 178664400, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576540000, 589237200, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 924213600, 939934800, 956268000, 971989200, 987717600, 1003438800, 1019167200, 1034888400, 1050616800, 1066338000, 1082066400, 1096581600, 1113516000, 1128380400, 1143842400, 1158872400, 1175378400, 1189638000, 1207000800, 1220216400, 1238104800, 1252018800, 1269640860, 1281474000, 1301652060, 1312146000, 1314655200, 1317340800, 1333058400, 1348178400 }
+    trans:intvector { -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -81313200, 142380000, 150843600, 167176800, 178664400, 334015200, 337644000, 452556000, 462232800, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576626400, 589323600, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 828655200, 843170400, 860104800, 874620000, 891554400, 906069600, 924213600, 939934800, 956268000, 971989200, 987717600, 1003438800, 1019167200, 1034888400, 1050616800, 1066338000, 1082066400, 1096581600, 1113516000, 1128380400, 1143842400, 1158872400, 1175378400, 1189638000, 1206655200, 1220216400, 1238104800, 1252015200, 1269554400, 1281474000, 1301608860, 1312146000, 1314655200, 1317330000, 1333058400, 1348178400, 1364508000, 1380229200, 1395957600, 1414098000, 1427493600, 1445547600, 1458946800, 1477692000 }
     typeOffsets:intvector { 8423, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-  } //Z#263
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    finalRule { "Palestine" }
+    finalRaw:int { 7200 }
+    finalYear:int { 2017 }
+  } //Z#270
   /* Asia/Ho_Chi_Minh */ :table {
-    trans:intvector { -2005974400, -1855983920, -1819954800, -1220428800 }
-    typeOffsets:intvector { 25600, 0, 25200, 0, 25580, 0, 28800, 0 }
-    typeMap:bin { "02010301" }
-    links:intvector { 264, 305, 620 }
-  } //Z#264
+    trans:intvector { -2004073600, -1851577590, -852105600, -782643600, -767869200, -718095600, -457776000, -315648000, 171820800 }
+    typeOffsets:intvector { 25600, 0, 25200, 0, 25590, 0, 28800, 0, 32400, 0 }
+    typeMap:bin { "020103040103010301" }
+    links:intvector { 271, 310, 630 }
+  } //Z#271
   /* Asia/Hong_Kong */ :table {
-    trans:intvector { -2056693002, -907389000, -891667800, -884246400, -766746000, -747981000, -728544600, -717049800, -694503000, -683785800, -668064600, -654755400, -636615000, -623305800, -605165400, -591856200, -573715800, -559801800, -542352600, -528352200, -510211800, -498112200, -478762200, -466662600, -446707800, -435213000, -415258200, -403158600, -383808600, -371709000, -352359000, -340259400, -320909400, -308809800, -288855000, -277360200, -257405400, -245910600, -225955800, -213856200, -194506200, -182406600, -163056600, -148537800, -132816600, -117088200, -101367000, -85638600, -69312600, -53584200, -37863000, -22134600, -6413400, 9315000, 25036200, 40764600, 56485800, 72214200, 88540200, 104268600, 119989800, 126041400, 151439400, 167167800, 182889000, 198617400, 214338600, 295385400, 309292200 }
-    typeOffsets:intvector { 27402, 0, 28800, 0, 28800, 3600, 32400, 0 }
-    typeMap:bin { "010201030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 265, 499 }
-  } //Z#265
+    trans:intvector { -2056690800, -900909000, -891579600, -884248200, -766659600, -747981000, -728544600, -717049800, -694503000, -683785800, -668064600, -654755400, -636615000, -623305800, -605165400, -591856200, -573715800, -559801800, -541661400, -528352200, -510211800, -498112200, -478762200, -466662600, -446707800, -435213000, -415258200, -403158600, -383808600, -371709000, -352359000, -340259400, -320909400, -308809800, -288855000, -277360200, -257405400, -245910600, -225955800, -213856200, -194506200, -182406600, -163056600, -148537800, -132816600, -117088200, -101367000, -85638600, -69312600, -53584200, -37863000, -22134600, -6413400, 9315000, 25036200, 40764600, 56485800, 72214200, 88540200, 104268600, 119989800, 126041400, 151439400, 167167800, 182889000, 198617400, 214338600, 295385400, 309292200 }
+    typeOffsets:intvector { 27402, 0, 28800, 0, 28800, 3600, 30600, 0, 32400, 0 }
+    typeMap:bin { "010203040102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 272, 511 }
+  } //Z#272
   /* Asia/Hovd */ :table {
-    trans:intvector { -2032927596, 252439200, 417978000, 433785600, 449600400, 465321600, 481050000, 496771200, 512499600, 528220800, 543949200, 559670400, 575398800, 591120000, 606848400, 622569600, 638298000, 654624000, 670352400, 686073600, 701802000, 717523200, 733251600, 748972800, 764701200, 780422400, 796150800, 811872000, 828205200, 843926400, 859654800, 875376000, 891104400, 906825600, 988398000, 1001700000, 1017428400, 1033149600, 1048878000, 1064599200, 1080327600, 1096048800, 1111777200, 1127498400, 1143226800, 1159552800 }
+    trans:intvector { -2032927596, 252439200, 417978000, 433785600, 449600400, 465321600, 481050000, 496771200, 512499600, 528220800, 543949200, 559670400, 575398800, 591120000, 606848400, 622569600, 638298000, 654624000, 670352400, 686073600, 701802000, 717523200, 733251600, 748972800, 764701200, 780422400, 796150800, 811872000, 828205200, 843926400, 859654800, 875376000, 891104400, 906825600, 988398000, 1001700000, 1017428400, 1033149600, 1048878000, 1064599200, 1080327600, 1096048800, 1111777200, 1127498400, 1143226800, 1159552800, 1427482800, 1443196800, 1458932400, 1474646400 }
     typeOffsets:intvector { 21996, 0, 21600, 0, 25200, 0, 25200, 3600 }
-    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-  } //Z#266
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
+  } //Z#273
   /* Asia/Irkutsk */ :table {
-    trans:intvector { -1575874640, -1247554800, 354902400, 370710000, 386438400, 402246000, 417974400, 433782000, 449596800, 465328800, 481053600, 496778400, 512503200, 528228000, 543952800, 559677600, 575402400, 591127200, 606852000, 622576800, 638301600, 654631200, 670356000, 686084400, 695761200, 701794800, 717516000, 733255200, 748980000, 764704800, 780429600, 796154400, 811879200, 828208800, 846352800, 859658400, 877802400, 891108000, 909252000, 922557600, 941306400, 954007200, 972756000, 985456800, 1004205600, 1017511200, 1035655200, 1048960800, 1067104800, 1080410400, 1099159200, 1111860000, 1130608800, 1143309600, 1162058400, 1174759200, 1193508000, 1206813600, 1224957600, 1238263200, 1256407200, 1269712800, 1288461600, 1301162400 }
-    typeOffsets:intvector { 25040, 0, 25200, 0, 25200, 3600, 28800, 0, 28800, 3600, 32400, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#267
-  /* Asia/Istanbul */ :int { 449 } //Z#268
+    trans:intvector { -1575874625, -1247554800, 354902400, 370710000, 386438400, 402246000, 417974400, 433782000, 449596800, 465328800, 481053600, 496778400, 512503200, 528228000, 543952800, 559677600, 575402400, 591127200, 606852000, 622576800, 638301600, 654631200, 670356000, 686084400, 695761200, 701805600, 717530400, 733255200, 748980000, 764704800, 780429600, 796154400, 811879200, 828208800, 846352800, 859658400, 877802400, 891108000, 909252000, 922557600, 941306400, 954007200, 972756000, 985456800, 1004205600, 1017511200, 1035655200, 1048960800, 1067104800, 1080410400, 1099159200, 1111860000, 1130608800, 1143309600, 1162058400, 1174759200, 1193508000, 1206813600, 1224957600, 1238263200, 1256407200, 1269712800, 1288461600, 1301162400, 1414256400 }
+    typeOffsets:intvector { 25025, 0, 25200, 0, 25200, 3600, 28800, 0, 28800, 3600, 32400, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#274
+  /* Asia/Istanbul */ :int { 458 } //Z#275
   /* Asia/Jakarta */ :table {
     trans:intvector { -1451719200, -1172906400, -876641400, -766054800, -683883000, -620812800, -189415800 }
     typeOffsets:intvector { 25632, 0, 25200, 0, 26400, 0, 27000, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "02030503040301" }
-  } //Z#269
+  } //Z#276
   /* Asia/Jayapura */ :table {
     trans:intvector { -1172913768, -799491600, -189423000 }
     typeOffsets:intvector { 33768, 0, 32400, 0, 34200, 0 }
     typeMap:bin { "010201" }
-  } //Z#270
+  } //Z#277
   /* Asia/Jerusalem */ :table {
-    transPre32:intvector { -1, 1454818040 }
-    trans:intvector { -1641003640, -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -681962400, -673243200, -667962000, -652327200, -636426000, -622087200, -608947200, -591847200, -572486400, -558576000, -542851200, -527731200, -514425600, -490845600, -482986800, -459475200, -451537200, -428551200, -418262400, -400032000, -387428400, 142380000, 150843600, 167176800, 178664400, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576540000, 589237200, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 826840800, 842821200, 858895200, 874184400, 890344800, 905029200, 923011200, 936313200, 955670400, 970783200, 986770800, 1001282400, 1017356400, 1033941600, 1048806000, 1065132000, 1081292400, 1095804000, 1112313600, 1128812400, 1143763200, 1159657200, 1175212800, 1189897200, 1206662400, 1223161200, 1238112000, 1254006000, 1269561600, 1284246000, 1301616000, 1317510000, 1333065600, 1348354800, 1364515200, 1381014000, 1395964800, 1412463600, 1427414400, 1443913200, 1458864000, 1475362800, 1490313600, 1507417200, 1521763200, 1538866800, 1553817600, 1570316400, 1585267200, 1601766000, 1616716800, 1633215600, 1648166400, 1664665200, 1679616000, 1696719600, 1711670400, 1728169200, 1743120000, 1759618800, 1774569600, 1791068400, 1806019200, 1822604400, 1837468800, 1854572400 }
-    typeOffsets:intvector { 8456, 0, 7200, 0, 7200, 3600, 7200, 7200, 8440, 0 }
-    typeMap:bin { "0401020102010201020102010302010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    transPre32:intvector { -1, 1454818042 }
+    trans:intvector { -1641003640, -933645600, -857358000, -844300800, -825822000, -812685600, -794199600, -779853600, -762656400, -748310400, -731127600, -681962400, -673243200, -667962000, -652327200, -636426000, -622087200, -608947200, -591847200, -572486400, -558576000, -542851200, -527731200, -514425600, -490845600, -482986800, -459475200, -451537200, -428551200, -418262400, -400032000, -387428400, 142380000, 150843600, 167176800, 178664400, 334015200, 337644000, 452556000, 462232800, 482277600, 495579600, 516751200, 526424400, 545436000, 558478800, 576626400, 589323600, 609890400, 620773200, 638316000, 651618000, 669765600, 683672400, 701820000, 715726800, 733701600, 747176400, 765151200, 778021200, 796600800, 810075600, 826840800, 842821200, 858895200, 874184400, 890344800, 905029200, 923011200, 936313200, 955670400, 970783200, 986770800, 1001282400, 1017356400, 1033941600, 1048806000, 1065132000, 1081292400, 1095804000, 1112313600, 1128812400, 1143763200, 1159657200, 1175212800, 1189897200, 1206662400, 1223161200, 1238112000, 1254006000, 1269561600, 1284246000, 1301616000, 1317510000, 1333065600, 1348354800, 1364515200, 1382828400 }
+    typeOffsets:intvector { 8454, 0, 7200, 0, 7200, 3600, 7200, 7200, 8440, 0 }
+    typeMap:bin { "040102010201020102010201030201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "Zion" }
     finalRaw:int { 7200 }
-    finalYear:int { 2029 }
-    links:intvector { 271, 315, 515 }
-  } //Z#271
+    finalYear:int { 2014 }
+    links:intvector { 278, 321, 527 }
+  } //Z#278
   /* Asia/Kabul */ :table {
     transPre32:intvector { -1, 1770429088 }
     trans:intvector { -788932800 }
     typeOffsets:intvector { 16608, 0, 14400, 0, 16200, 0 }
     typeMap:bin { "0102" }
-  } //Z#272
+  } //Z#279
   /* Asia/Kamchatka */ :table {
-    trans:intvector { -1487759676, -1247569200, 354888000, 370695600, 386424000, 402231600, 417960000, 433767600, 449582400, 465314400, 481039200, 496764000, 512488800, 528213600, 543938400, 559663200, 575388000, 591112800, 606837600, 622562400, 638287200, 654616800, 670341600, 686070000, 695746800, 701780400, 717501600, 733240800, 748965600, 764690400, 780415200, 796140000, 811864800, 828194400, 846338400, 859644000, 877788000, 891093600, 909237600, 922543200, 941292000, 953992800, 972741600, 985442400, 1004191200, 1017496800, 1035640800, 1048946400, 1067090400, 1080396000, 1099144800, 1111845600, 1130594400, 1143295200, 1162044000, 1174744800, 1193493600, 1206799200, 1224943200, 1238248800, 1256392800, 1269698400, 1288450800, 1301151600 }
+    trans:intvector { -1487759676, -1247569200, 354888000, 370695600, 386424000, 402231600, 417960000, 433767600, 449582400, 465314400, 481039200, 496764000, 512488800, 528213600, 543938400, 559663200, 575388000, 591112800, 606837600, 622562400, 638287200, 654616800, 670341600, 686070000, 695746800, 701791200, 717516000, 733240800, 748965600, 764690400, 780415200, 796140000, 811864800, 828194400, 846338400, 859644000, 877788000, 891093600, 909237600, 922543200, 941292000, 953992800, 972741600, 985442400, 1004191200, 1017496800, 1035640800, 1048946400, 1067090400, 1080396000, 1099144800, 1111845600, 1130594400, 1143295200, 1162044000, 1174744800, 1193493600, 1206799200, 1224943200, 1238248800, 1256392800, 1269698400, 1288450800, 1301151600 }
     typeOffsets:intvector { 38076, 0, 39600, 0, 39600, 3600, 43200, 0, 43200, 3600 }
     typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403020103" }
-  } //Z#273
+  } //Z#280
   /* Asia/Karachi */ :table {
-    trans:intvector { -1988166492, -862637400, -764145000, -576135000, 1018119660, 1033840860, 1212260400, 1225476000, 1239735600, 1257012000 }
+    trans:intvector { -1988166492, -862637400, -764145000, -576135000, 1018119600, 1033840800, 1212260400, 1225476000, 1239735600, 1257012000 }
     typeOffsets:intvector { 16092, 0, 18000, 0, 18000, 3600, 19800, 0, 19800, 3600 }
     typeMap:bin { "03040301020102010201" }
-    links:intvector { 274, 536 }
-  } //Z#274
-  /* Asia/Kashgar */ :table {
-    trans:intvector { -1325480636, -946791000, 325969200, 515520000, 527007600, 545155200, 558457200, 576604800, 589906800, 608659200, 621961200, 640108800, 653410800, 671558400, 684860400 }
-    typeOffsets:intvector { 18236, 0, 18000, 0, 19800, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "020103040304030403040304030403" }
-  } //Z#275
+    links:intvector { 281, 545 }
+  } //Z#281
+  /* Asia/Kashgar */ :int { 329 } //Z#282
   /* Asia/Kathmandu */ :table {
     trans:intvector { -1577943676, 504901800 }
     typeOffsets:intvector { 20476, 0, 19800, 0, 20700, 0 }
     typeMap:bin { "0102" }
-    links:intvector { 276, 277 }
-  } //Z#276
-  /* Asia/Katmandu */ :int { 276 } //Z#277
+    links:intvector { 283, 284 }
+  } //Z#283
+  /* Asia/Katmandu */ :int { 283 } //Z#284
   /* Asia/Khandyga */ :table {
-    trans:intvector { -1579424533, -1247558400, 354898800, 370706400, 386434800, 402242400, 417970800, 433778400, 449593200, 465325200, 481050000, 496774800, 512499600, 528224400, 543949200, 559674000, 575398800, 591123600, 606848400, 622573200, 638298000, 654627600, 670352400, 686080800, 695757600, 701791200, 717512400, 733251600, 748976400, 764701200, 780426000, 796150800, 811875600, 828205200, 846349200, 859654800, 877798800, 891104400, 909248400, 922554000, 941302800, 954003600, 972752400, 985453200, 1004202000, 1017507600, 1035651600, 1048957200, 1067101200, 1072882800, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200, 1315832400 }
+    trans:intvector { -1579424533, -1247558400, 354898800, 370706400, 386434800, 402242400, 417970800, 433778400, 449593200, 465325200, 481050000, 496774800, 512499600, 528224400, 543949200, 559674000, 575398800, 591123600, 606848400, 622573200, 638298000, 654627600, 670352400, 686080800, 695757600, 701802000, 717526800, 733251600, 748976400, 764701200, 780426000, 796150800, 811875600, 828205200, 846349200, 859654800, 877798800, 891104400, 909248400, 922554000, 941302800, 954003600, 972752400, 985453200, 1004202000, 1017507600, 1035651600, 1048957200, 1067101200, 1072882800, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200, 1315832400, 1414252800 }
     typeOffsets:intvector { 32533, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600, 36000, 0, 36000, 3600, 39600, 0 }
-    typeMap:bin { "010304030403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030506050605060506050605060506050705" }
-  } //Z#278
+    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403050605060506050605060506050605070503" }
+  } //Z#285
   /* Asia/Kolkata */ :table {
-    transPre32:intvector { -1, 1454805288 }
-    trans:intvector { -891582800, -872058600, -862637400, -764145000 }
-    typeOffsets:intvector { 21208, 0, 19800, 0, 19800, 3600, 21200, 0, 23400, 0 }
-    typeMap:bin { "0304010201" }
-    links:intvector { 250, 279, 501 }
-  } //Z#279
+    transPre32:intvector { -1, 649730088, -1, 1139272496 }
+    trans:intvector { -2019705670, -891581400, -872058600, -862637400, -764145000 }
+    typeOffsets:intvector { 21208, 0, 19270, 0, 19800, 0, 19800, 3600, 21200, 0 }
+    typeMap:bin { "04010203020302" }
+    links:intvector { 255, 286, 513 }
+  } //Z#286
   /* Asia/Krasnoyarsk */ :table {
-    trans:intvector { -1577513480, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701798400, 717519600, 733258800, 748983600, 764708400, 780433200, 796158000, 811882800, 828212400, 846356400, 859662000, 877806000, 891111600, 909255600, 922561200, 941310000, 954010800, 972759600, 985460400, 1004209200, 1017514800, 1035658800, 1048964400, 1067108400, 1080414000, 1099162800, 1111863600, 1130612400, 1143313200, 1162062000, 1174762800, 1193511600, 1206817200, 1224961200, 1238266800, 1256410800, 1269716400, 1288465200, 1301166000 }
-    typeOffsets:intvector { 22280, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600, 28800, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#280
+    trans:intvector { -1577513486, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 748983600, 764708400, 780433200, 796158000, 811882800, 828212400, 846356400, 859662000, 877806000, 891111600, 909255600, 922561200, 941310000, 954010800, 972759600, 985460400, 1004209200, 1017514800, 1035658800, 1048964400, 1067108400, 1080414000, 1099162800, 1111863600, 1130612400, 1143313200, 1162062000, 1174762800, 1193511600, 1206817200, 1224961200, 1238266800, 1256410800, 1269716400, 1288465200, 1301166000, 1414260000 }
+    typeOffsets:intvector { 22286, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600, 28800, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#287
   /* Asia/Kuala_Lumpur */ :table {
     transPre32:intvector { -1, 2117490090 }
     trans:intvector { -2038200925, -1167634800, -1073028000, -894180000, -879665400, -767005200, 378664200 }
     typeOffsets:intvector { 24406, 0, 24925, 0, 25200, 0, 25200, 1200, 26400, 0, 27000, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "0102030405070506" }
-  } //Z#281
+  } //Z#288
   /* Asia/Kuching */ :table {
     trans:intvector { -1383463280, -1167636600, -1082448000, -1074586800, -1050825600, -1042964400, -1019289600, -1011428400, -987753600, -979892400, -956217600, -948356400, -924595200, -916734000, -893059200, -885198000, -879667200, -767005200 }
     typeOffsets:intvector { 26480, 0, 27000, 0, 28800, 0, 28800, 1200, 32400, 0 }
     typeMap:bin { "010203020302030203020302030203020402" }
-  } //Z#282
-  /* Asia/Kuwait */ :table {
-    trans:intvector { -631163516 }
-    typeOffsets:intvector { 11516, 0, 10800, 0 }
-    typeMap:bin { "01" }
-  } //Z#283
-  /* Asia/Macao */ :int { 285 } //Z#284
+  } //Z#289
+  /* Asia/Kuwait */ :int { 309 } //Z#290
+  /* Asia/Macao */ :int { 292 } //Z#291
   /* Asia/Macau */ :table {
-    trans:intvector { -1830411260, -277360200, -257405400, -245910600, -225955800, -214473600, -194506200, -182406600, -163056600, -150969600, -131619600, -117088200, -101367000, -85638600, -69312600, -53584200, -37863000, -22134600, -6413400, 9315000, 25036200, 40764600, 56485800, 72201600, 87922800, 103651200, 119977200, 135705600, 151439400, 167167800, 182889000, 198617400, 214338600, 230067000, 245788200, 261504000, 277225200, 292953600, 309279600, 325008000, 340729200 }
-    typeOffsets:intvector { 27260, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 284, 285 }
-  } //Z#285
+    trans:intvector { -2056692850, -884509200, -873280800, -855918000, -841744800, -828529200, -765363600, -747046800, -733827600, -716461200, -697021200, -683715600, -667990800, -654771600, -636627600, -623322000, -605178000, -591872400, -573642000, -559818000, -541674000, -528368400, -510224400, -498128400, -478774800, -466678800, -446720400, -435229200, -415258200, -403158600, -383808600, -371709000, -352359000, -340259400, -320909400, -308809800, -288855000, -277360200, -257405400, -245910600, -225955800, -213856200, -194506200, -182406600, -163056600, -148537800, -132820200, -117088200, -101370600, -85638600, -69312600, -53584200, -37863000, -22134600, -6413400, 9315000, 25036200, 40764600, 56485800, 72214200, 88540200, 104268600, 119989800, 126041400, 151439400, 167167800, 182889000, 198617400, 214338600, 295385400, 309292200 }
+    typeOffsets:intvector { 27250, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600 }
+    typeMap:bin { "0103040304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 291, 292 }
+  } //Z#292
   /* Asia/Magadan */ :table {
-    trans:intvector { -1441188192, -1247565600, 354891600, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701784000, 717505200, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877791600, 891097200, 909241200, 922546800, 941295600, 953996400, 972745200, 985446000, 1004194800, 1017500400, 1035644400, 1048950000, 1067094000, 1080399600, 1099148400, 1111849200, 1130598000, 1143298800, 1162047600, 1174748400, 1193497200, 1206802800, 1224946800, 1238252400, 1256396400, 1269702000, 1288450800, 1301151600 }
+    trans:intvector { -1441188192, -1247565600, 354891600, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701794800, 717519600, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877791600, 891097200, 909241200, 922546800, 941295600, 953996400, 972745200, 985446000, 1004194800, 1017500400, 1035644400, 1048950000, 1067094000, 1080399600, 1099148400, 1111849200, 1130598000, 1143298800, 1162047600, 1174748400, 1193497200, 1206802800, 1224946800, 1238252400, 1256396400, 1269702000, 1288450800, 1301151600, 1414245600, 1461427200 }
     typeOffsets:intvector { 36192, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600, 43200, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#286
+    typeMap:bin { "010304030403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030403040304030403040304030403050103" }
+  } //Z#293
   /* Asia/Makassar */ :table {
     trans:intvector { -1172908656, -880272000, -766054800 }
     typeOffsets:intvector { 28656, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "010201" }
-    links:intvector { 287, 319 }
-  } //Z#287
+    links:intvector { 294, 326 }
+  } //Z#294
   /* Asia/Manila */ :table {
     transPre32:intvector { -1, 350346256, -1, 2065645456 }
     trans:intvector { -1046678400, -1038733200, -873273600, -794221200, -496224000, -489315600, 259344000, 275151600 }
     typeOffsets:intvector { -57360, 0, 28800, 0, 28800, 3600, 29040, 0, 32400, 0 }
     typeMap:bin { "03010201040102010201" }
-  } //Z#288
-  /* Asia/Muscat */ :table {
-    trans:intvector { -1577937264 }
-    typeOffsets:intvector { 14064, 0, 14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#289
+  } //Z#295
+  /* Asia/Muscat */ :int { 265 } //Z#296
   /* Asia/Nicosia */ :table {
     trans:intvector { -1518920008, 166572000, 182293200, 200959200, 213829200, 228866400, 243982800, 260316000, 276123600, 291765600, 307486800, 323820000, 338936400, 354664800, 370386000, 386114400, 401835600, 417564000, 433285200, 449013600, 465339600, 481068000, 496789200, 512517600, 528238800, 543967200, 559688400, 575416800, 591138000, 606866400, 622587600, 638316000, 654642000, 670370400, 686091600, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 843944400, 859672800, 875394000, 891122400, 909277200, 922582800, 941331600 }
     typeOffsets:intvector { 8008, 0, 7200, 0, 7200, 3600 }
@@ -1724,203 +1520,200 @@
     finalRule { "EUAsia" }
     finalRaw:int { 7200 }
     finalYear:int { 2000 }
-    links:intvector { 290, 463 }
-  } //Z#290
+    links:intvector { 297, 473 }
+  } //Z#297
   /* Asia/Novokuznetsk */ :table {
-    trans:intvector { -1577512128, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701798400, 717519600, 733258800, 748983600, 764708400, 780433200, 796158000, 811882800, 828212400, 846356400, 859662000, 877806000, 891111600, 909255600, 922561200, 941310000, 954010800, 972759600, 985460400, 1004209200, 1017514800, 1035658800, 1048964400, 1067108400, 1080414000, 1099162800, 1111863600, 1130612400, 1143313200, 1162062000, 1174762800, 1193511600, 1206817200, 1224961200, 1238266800, 1256410800, 1269716400, 1288468800, 1301169600 }
+    trans:intvector { -1441259328, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 748983600, 764708400, 780433200, 796158000, 811882800, 828212400, 846356400, 859662000, 877806000, 891111600, 909255600, 922561200, 941310000, 954010800, 972759600, 985460400, 1004209200, 1017514800, 1035658800, 1048964400, 1067108400, 1080414000, 1099162800, 1111863600, 1130612400, 1143313200, 1162062000, 1174762800, 1193511600, 1206817200, 1224961200, 1238266800, 1256410800, 1269716400, 1288468800, 1301169600 }
     typeOffsets:intvector { 20928, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600 }
     typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403020103" }
-  } //Z#291
+  } //Z#298
   /* Asia/Novosibirsk */ :table {
-    trans:intvector { -1579476700, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701798400, 717519600, 733258800, 738086400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600 }
+    trans:intvector { -1579476700, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 738086400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600, 1469304000 }
     typeOffsets:intvector { 19900, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600 }
-    typeMap:bin { "0103040304030403040304030403040304030403040302010304030402010201020102010201020102010201020102010201020102010201020102010201020103" }
-  } //Z#292
+    typeMap:bin { "01030403040304030403040304030403040304030403020103040304020102010201020102010201020102010201020102010201020102010201020102010201030103" }
+  } //Z#299
   /* Asia/Omsk */ :table {
-    trans:intvector { -1582088016, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600, 695768400, 701802000, 717523200, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600 }
-    typeOffsets:intvector { 17616, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600, 25200, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#293
+    trans:intvector { -1582088010, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600, 695768400, 701812800, 717537600, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600 }
+    typeOffsets:intvector { 17610, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600, 25200, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#300
   /* Asia/Oral */ :table {
-    trans:intvector { -1441164324, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622591200, 638316000, 654645600, 701809200, 717530400, 733269600, 748994400, 764719200, 780444000, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1110830400 }
-    typeOffsets:intvector { 12324, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
-    typeMap:bin { "01030405040304030403040304030403040302010201020102010201020102010201020102010201020102010201020103" }
-  } //Z#294
-  /* Asia/Phnom_Penh */ :table {
-    trans:intvector { -2005973980, -1855983920, -1819954800, -1220428800 }
-    typeOffsets:intvector { 25180, 0, 25200, 0, 25580, 0, 28800, 0 }
-    typeMap:bin { "02010301" }
-  } //Z#295
+    trans:intvector { -1441164324, -1247540400, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622591200, 638316000, 654645600, 670370400, 686095200, 695772000, 701816400, 717544800, 733269600, 748994400, 764719200, 780444000, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600 }
+    typeOffsets:intvector { 12324, 0, 10800, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "010405060504050405040504050405040504030203020302040302030203020302030203020302030203020302030203020304" }
+  } //Z#301
+  /* Asia/Phnom_Penh */ :int { 250 } //Z#302
   /* Asia/Pontianak */ :table {
     trans:intvector { -1172906240, -881220600, -766054800, -683883000, -620812800, -189415800, 567964800 }
     typeOffsets:intvector { 26240, 0, 25200, 0, 27000, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "02040203020301" }
-  } //Z#296
+  } //Z#303
   /* Asia/Pyongyang */ :table {
-    transPre32:intvector { -1, 1770415516 }
-    trans:intvector { -2053931400, -1325494800, -1199262600, -498128400, -264931200 }
-    typeOffsets:intvector { 30180, 0, 28800, 0, 30600, 0, 32400, 0 }
-    typeMap:bin { "020302030103" }
-  } //Z#297
+    trans:intvector { -1948782180, -1830414600, 1439564400, 1525446000 }
+    typeOffsets:intvector { 30180, 0, 30600, 0, 32400, 0 }
+    typeMap:bin { "01020102" }
+  } //Z#304
   /* Asia/Qatar */ :table {
     trans:intvector { -1577935568, 76190400 }
     typeOffsets:intvector { 12368, 0, 10800, 0, 14400, 0 }
     typeMap:bin { "0201" }
-  } //Z#298
+    links:intvector { 248, 305 }
+  } //Z#305
+  /* Asia/Qostanay */ :table {
+    trans:intvector { -1441167268, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701816400, 717541200, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000 }
+    typeOffsets:intvector { 15268, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "010304050403040304030403040304030403040304030201030403040304030403040304030403040304030403040304030405" }
+  } //Z#306
   /* Asia/Qyzylorda */ :table {
-    trans:intvector { -1441167712, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 695768400, 701802000, 717523200, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400 }
-    typeOffsets:intvector { 15712, 0, 14400, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
-    typeMap:bin { "01020304030203020302030203020302030203020302040504050405040504050405040504050405040504050405040504" }
-  } //Z#299
-  /* Asia/Rangoon */ :table {
-    trans:intvector { -1577946280, -873268200, -778410000 }
-    typeOffsets:intvector { 23080, 0, 23400, 0, 32400, 0 }
-    typeMap:bin { "010201" }
-  } //Z#300
+    trans:intvector { -1441167712, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695768400, 701812800, 717541200, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000, 1545328800 }
+    typeOffsets:intvector { 15712, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "01030405040304030403040304030403040304030403020305040304030403040304030403040304030403040304030403040503" }
+  } //Z#307
+  /* Asia/Rangoon */ :int { 334 } //Z#308
   /* Asia/Riyadh */ :table {
-    trans:intvector { -631163212 }
+    trans:intvector { -719636812 }
     typeOffsets:intvector { 11212, 0, 10800, 0 }
     typeMap:bin { "01" }
-  } //Z#301
-  /* Asia/Riyadh87 */ :table {
-    trans:intvector { 536489776, 536576206, 536662631, 536749061, 536835486, 536921916, 537008341, 537094766, 537181191, 537267616, 537354041, 537440466, 537526886, 537613311, 537699731, 537786151, 537872571, 537958991, 538045411, 538131831, 538218246, 538304666, 538391081, 538477496, 538563911, 538650326, 538736736, 538823151, 538909561, 538995971, 539082381, 539168791, 539255196, 539341606, 539428011, 539514416, 539600821, 539687226, 539860031, 540378426, 540551221, 540637616, 540724011, 540810406, 540896801, 540983191, 541069586, 541155976, 541242366, 541328756, 541415146, 541501536, 541587926, 541674316, 541760701, 541847091, 541933476, 542019861, 542106251, 542192636, 542279021, 542365406, 542451791, 542538171, 542624556, 542710941, 542797326, 542883706, 542970091, 543056471, 543142856, 543229236, 543315621, 543402001, 543488386, 543574766, 543661146, 543747531, 543833911, 543920291, 544006676, 544093056, 544179441, 544265821, 544352201, 544438586, 544524966, 544611351, 544697731, 544784116, 544870501, 544956881, 545043266, 545129651, 545216031, 545302416, 545388801, 545475186, 545561571, 545647961, 545734346, 545820731, 545907121, 545993506, 546079896, 546166281, 546252671, 546339061, 546425451, 546511841, 546598231, 546684621, 546771011, 546857406, 546943796, 547030191, 547116586, 547202981, 547289376, 547375771, 547462166, 547548561, 547721356, 548412561, 548585366, 548671771, 548758176, 548844581, 548930986, 549017391, 549103796, 549190206, 549276611, 549363021, 549449426, 549535836, 549622246, 549708656, 549795066, 549881476, 549967886, 550054296, 550140706, 550227121, 550313531, 550399946, 550486356, 550572766, 550659181, 550745591, 550832006, 550918421, 551004831, 551091246, 551177656, 551264071, 551350486, 551436896, 551523311, 551609721, 551696136, 551782546, 551868961, 551955371, 552041786, 552128196, 552214606, 552301021, 552387431, 552473841, 552560251, 552646661, 552733071, 552819481, 552905891, 552992296, 553078706, 553165116, 553251521, 553337926, 553424336, 553510741, 553597146, 553683551, 553856356, 553942761, 554201966, 554547561, 554806756, 554893151, 554979546, 555065941, 555152336, 555238731, 555325126, 555411516, 555497911, 555584301, 555670691, 555757081, 555843471, 555929861, 556016251, 556102641, 556189026, 556275416, 556361801, 556448186, 556534571, 556620956, 556707341, 556793726, 556880111, 556966496, 557052876, 557139261, 557225641, 557312026, 557398406, 557484786, 557571166, 557657551, 557743931, 557830311, 557916691, 558003071, 558089451, 558175826, 558262206, 558348586, 558434966, 558521346, 558607721, 558694101, 558780481, 558866861, 558953236, 559039616, 559125996, 559212371, 559298751, 559385131, 559471511, 559557891, 559644271, 559730646, 559817026, 559903406, 559989786, 560076166, 560162551, 560248931, 560335311, 560421691, 560508076, 560594456, 560680841, 560767221, 560853606, 560939991, 561026376, 561112761, 561199146, 561285531, 561371921, 561458306, 561544696, 561631081, 561717471, 561803861, 561890251, 561976641, 562063036, 562149426, 562235821, 562322211, 562408606, 562495001, 562667796, 562840591, 563186196, 563359001, 563445406, 563531811, 563618216, 563704621, 563791031, 563877436, 563963846, 564050256, 564136666, 564223081, 564309491, 564395906, 564482321, 564568736, 564655151, 564741566, 564827986, 564914406, 565000821, 565087241, 565173661, 565260086, 565346506, 565432926, 565519351, 565605776, 565692201, 565778626, 565865051, 565951476, 566037901, 566124326, 566210756, 566297181, 566383611, 566470041, 566556466, 566642896, 566729326, 566815756, 566902186, 566988616, 567075046, 567161476, 567247906, 567334336, 567420766, 567507196, 567593621, 567680051, 567766481, 567852911, 567939341, 567982541 }
-    typeOffsets:intvector { 11224, 0, 11224, -855, 11224, -850, 11224, -845, 11224, -840, 11224, -835, 11224, -830, 11224, -825, 11224, -820, 11224, -815, 11224, -810, 11224, -805, 11224, -800, 11224, -795, 11224, -790, 11224, -785, 11224, -780, 11224, -775, 11224, -770, 11224, -760, 11224, -750, 11224, -740, 11224, -735, 11224, -725, 11224, -720, 11224, -715, 11224, -705, 11224, -700, 11224, -690, 11224, -685, 11224, -675, 11224, -670, 11224, -660, 11224, -655, 11224, -645, 11224, -635, 11224, -630, 11224, -615, 11224, -595, 11224, -580, 11224, -575, 11224, -565, 11224, -555, 11224, -550, 11224, -535, 11224, -530, 11224, -515, 11224, -510, 11224, -495, 11224, -490, 11224, -480, 11224, -465, 11224, -460, 11224, -445, 11224, -440, 11224, -425, 11224, -415, 11224, -410, 11224, -390, 11224, -385, 11224, -380, 11224, -375, 11224, -370, 11224, -365, 11224, -360, 11224, -355, 11224, -350, 11224, -345, 11224, -340, 11224, -335, 11224, -330, 11224, -325, 11224, -320, 11224, -315, 11224, -310, 11224, -305, 11224, -300, 11224, -295, 11224, -285, 11224, -280, 11224, -275, 11224, -265, 11224, -255, 11224, -250, 11224, -245, 11224, -240, 11224, -230, 11224, -225, 11224, -220, 11224, -210, 11224, -200, 11224, -195, 11224, -190, 11224, -185, 11224, -180, 11224, -175, 11224, -170, 11224, -165, 11224, -160, 11224, -155, 11224, -150, 11224, -145, 11224, -140, 11224, -135, 11224, -125, 11224, -120, 11224, -110, 11224, -105, 11224, -100, 11224, -95, 11224, -90, 11224, -85, 11224, -80, 11224, -75, 11224, -70, 11224, -65, 11224, -55, 11224, -50, 11224, -45, 11224, -40, 11224, -30, 11224, -25, 11224, -20, 11224, -15, 11224, -10, 11224, -5, 11224, 5, 11224, 10, 11224, 15, 11224, 20, 11224, 25, 11224, 30, 11224, 40, 11224, 45, 11224, 55, 11224, 65, 11224, 70, 11224, 80, 11224, 85, 11224, 90, 11224, 95, 11224, 100, 11224, 105, 11224, 110, 11224, 115, 11224, 120, 11224, 125, 11224, 130, 11224, 135, 11224, 140, 11224, 145, 11224, 150, 11224, 155, 11224, 160, 11224, 165, 11224, 170, 11224, 180, 11224, 185, 11224, 190, 11224, 195, 11224, 200, 11224, 205, 11224, 210, 11224, 215, 11224, 220, 11224, 230, 11224, 250, 11224, 255, 11224, 275, 11224, 280, 11224, 295, 11224, 310, 11224, 315, 11224, 335, 11224, 340, 11224, 360, 11224, 365, 11224, 380, 11224, 395, 11224, 405, 11224, 420, 11224, 425, 11224, 445, 11224, 450, 11224, 465, 11224, 475, 11224, 485, 11224, 500, 11224, 505, 11224, 525, 11224, 530, 11224, 550, 11224, 570, 11224, 575, 11224, 590, 11224, 600, 11224, 610, 11224, 625, 11224, 645, 11224, 650, 11224, 665, 11224, 670, 11224, 685, 11224, 690, 11224, 700, 11224, 715, 11224, 720, 11224, 735, 11224, 755, 11224, 770, 11224, 785, 11224, 790, 11224, 800, 11224, 810, 11224, 815, 11224, 825, 11224, 830, 11224, 840, 11224, 845, 11224, 855, 11224, 870, 11224, 880, 11224, 885, 11224, 895, 11224, 905, 11224, 910, 11224, 915, 11224, 920, 11224, 925, 11224, 930, 11224, 935, 11224, 940, 11224, 945, 11224, 950, 11224, 955, 11224, 960, 11224, 965, 11224, 970, 11224, 975, 11224, 980, 11224, 985 }
-    typeMap:bin { "5a56524e4a443f3a383633312f2c2a28262523211f1c1a18161413110f0d0b0908060504030201020304050607090a0c0e101213141517191b1d1e202224252627292b2d2e3032343537393a3e4145494c4f515457595c5f6366686b6e717477797c7e8083858688898c8e90929496989a9b9c9d9e9fa0a1a2a3a4a3a2a1a09f9e9d9c9b9a98979593918f8d8b8988868583817f7d7b78767472706d6a69676562605d5b595856545251504e4d4b494846444342403f3e3d3c3b3a3b3c3d3e3f404142444547494b4d4e5051535557595b5e616467696c6f7375787c7f8285878a8e92979b9ea2a5a7a8aaacaeafb1b3b5b6b8babcbebfc0c2c4c5c6c8cacccecfd0d1d2d4d6d8dadbdcdddfe0e2e4e6e7e9eaecedeeeff0efeeedecebeae8e7e5e3e1dfdedcdbd9d7d5d3d1d0cfcdcbc9c7c5c3c1bfbdbbb9b7b4b2b0adaba9a6a49e99938d88847f7a76716b676100" }
-    links:intvector { 302, 528 }
-  } //Z#302
-  /* Asia/Riyadh88 */ :table {
-    trans:intvector { 568025771, 568112196, 568198626, 568285056, 568371481, 568457906, 568544336, 568630761, 568717186, 568803611, 568890036, 568976461, 569062881, 569149306, 569235726, 569322146, 569408566, 569494986, 569581406, 569667826, 569754241, 569840661, 569927076, 570013491, 570099906, 570186321, 570272736, 570359146, 570445556, 570531966, 570618376, 570704786, 570791196, 570877601, 570964011, 571050416, 571136821, 571223226, 571396031, 571914426, 572087221, 572173616, 572260011, 572346406, 572432801, 572519196, 572605586, 572691976, 572778371, 572864761, 572951151, 573037541, 573123926, 573210316, 573296706, 573383091, 573469481, 573555866, 573642251, 573728636, 573815021, 573901406, 573987791, 574074176, 574160561, 574246946, 574333326, 574419711, 574506096, 574592476, 574678861, 574765241, 574851626, 574938006, 575024386, 575110771, 575197151, 575283536, 575369916, 575456296, 575542681, 575629061, 575715441, 575801826, 575888206, 575974591, 576060971, 576147356, 576233736, 576320121, 576406501, 576492886, 576579271, 576665651, 576752036, 576838421, 576924806, 577011191, 577097576, 577183961, 577270346, 577356736, 577443121, 577529511, 577615896, 577702286, 577788671, 577875061, 577961451, 578047841, 578134231, 578220626, 578307016, 578393406, 578479801, 578566191, 578652586, 578738981, 578825376, 578911771, 578998166, 579084561, 579257356, 579948561, 580121366, 580207771, 580294176, 580380581, 580466986, 580553391, 580639796, 580726201, 580812611, 580899016, 580985426, 581071836, 581158246, 581244651, 581331061, 581417471, 581503886, 581590296, 581676706, 581763116, 581849531, 581935941, 582022351, 582108766, 582195176, 582281591, 582368001, 582454416, 582540831, 582627241, 582713656, 582800066, 582886481, 582972896, 583059306, 583145721, 583232131, 583318546, 583404956, 583491371, 583577781, 583664196, 583750606, 583837016, 583923426, 584009841, 584096251, 584182661, 584269071, 584355481, 584441886, 584528296, 584614706, 584701111, 584787521, 584873926, 584960331, 585046736, 585133141, 585219546, 585305951, 585392356, 585478761, 585737966, 586169961, 586342756, 586429151, 586601946, 586688341, 586774731, 586861126, 586947521, 587033911, 587120301, 587206696, 587293086, 587379476, 587465866, 587552251, 587638641, 587725031, 587811416, 587897806, 587984191, 588070576, 588156961, 588243346, 588329731, 588416116, 588502496, 588588881, 588675266, 588761646, 588848026, 588934411, 589020791, 589107171, 589193551, 589279936, 589366316, 589452696, 589539076, 589625456, 589711831, 589798211, 589884591, 589970971, 590057351, 590143726, 590230106, 590316486, 590402866, 590489241, 590575621, 590662001, 590748381, 590834756, 590921136, 591007516, 591093896, 591180276, 591266651, 591353031, 591439411, 591525791, 591612171, 591698551, 591784936, 591871316, 591957696, 592044081, 592130461, 592216846, 592303226, 592389611, 592475996, 592562381, 592648766, 592735151, 592821536, 592907921, 592994311, 593080696, 593167086, 593253476, 593339861, 593426256, 593512646, 593599036, 593685426, 593771821, 593858216, 593944611, 594031006, 594117401, 594203796, 594376591, 594722196, 594895001, 595067806, 595154216, 595240621, 595327026, 595413436, 595499846, 595586256, 595672666, 595759076, 595845491, 595931901, 596018316, 596104731, 596191146, 596277566, 596363981, 596450401, 596536816, 596623236, 596709656, 596796081, 596882501, 596968921, 597055346, 597141771, 597228191, 597314616, 597401041, 597487471, 597573896, 597660321, 597746751, 597833176, 597919606, 598006031, 598092461, 598178891, 598265321, 598351751, 598438176, 598524606, 598611036, 598697466, 598783896, 598870326, 598956756, 599043186, 599129616, 599216046, 599302476, 599388906, 599475331, 599561761, 599604961 }
-    typeOffsets:intvector { 11224, 0, 11224, -855, 11224, -850, 11224, -845, 11224, -840, 11224, -835, 11224, -830, 11224, -825, 11224, -820, 11224, -810, 11224, -800, 11224, -795, 11224, -790, 11224, -785, 11224, -780, 11224, -775, 11224, -770, 11224, -765, 11224, -760, 11224, -750, 11224, -745, 11224, -740, 11224, -730, 11224, -715, 11224, -705, 11224, -700, 11224, -690, 11224, -685, 11224, -675, 11224, -665, 11224, -660, 11224, -650, 11224, -645, 11224, -630, 11224, -615, 11224, -610, 11224, -600, 11224, -590, 11224, -585, 11224, -570, 11224, -550, 11224, -535, 11224, -530, 11224, -520, 11224, -505, 11224, -500, 11224, -485, 11224, -465, 11224, -460, 11224, -450, 11224, -435, 11224, -430, 11224, -410, 11224, -395, 11224, -390, 11224, -385, 11224, -380, 11224, -375, 11224, -370, 11224, -365, 11224, -360, 11224, -355, 11224, -350, 11224, -345, 11224, -340, 11224, -335, 11224, -330, 11224, -325, 11224, -320, 11224, -310, 11224, -305, 11224, -300, 11224, -295, 11224, -290, 11224, -285, 11224, -280, 11224, -275, 11224, -265, 11224, -255, 11224, -250, 11224, -240, 11224, -230, 11224, -220, 11224, -215, 11224, -205, 11224, -200, 11224, -195, 11224, -185, 11224, -180, 11224, -170, 11224, -160, 11224, -155, 11224, -145, 11224, -140, 11224, -130, 11224, -125, 11224, -120, 11224, -110, 11224, -105, 11224, -100, 11224, -95, 11224, -90, 11224, -80, 11224, -75, 11224, -70, 11224, -65, 11224, -60, 11224, -55, 11224, -50, 11224, -45, 11224, -40, 11224, -35, 11224, -30, 11224, -25, 11224, -15, 11224, -10, 11224, 5, 11224, 10, 11224, 15, 11224, 20, 11224, 25, 11224, 30, 11224, 35, 11224, 40, 11224, 45, 11224, 50, 11224, 55, 11224, 60, 11224, 65, 11224, 70, 11224, 80, 11224, 90, 11224, 100, 11224, 105, 11224, 110, 11224, 115, 11224, 120, 11224, 125, 11224, 130, 11224, 135, 11224, 140, 11224, 145, 11224, 150, 11224, 160, 11224, 165, 11224, 170, 11224, 175, 11224, 180, 11224, 185, 11224, 190, 11224, 195, 11224, 200, 11224, 205, 11224, 210, 11224, 215, 11224, 220, 11224, 225, 11224, 250, 11224, 255, 11224, 270, 11224, 285, 11224, 290, 11224, 310, 11224, 315, 11224, 335, 11224, 345, 11224, 355, 11224, 370, 11224, 375, 11224, 395, 11224, 400, 11224, 420, 11224, 425, 11224, 440, 11224, 455, 11224, 460, 11224, 480, 11224, 500, 11224, 505, 11224, 525, 11224, 535, 11224, 545, 11224, 560, 11224, 565, 11224, 585, 11224, 605, 11224, 625, 11224, 630, 11224, 640, 11224, 655, 11224, 660, 11224, 675, 11224, 680, 11224, 695, 11224, 715, 11224, 720, 11224, 730, 11224, 740, 11224, 750, 11224, 760, 11224, 765, 11224, 775, 11224, 780, 11224, 795, 11224, 810, 11224, 825, 11224, 830, 11224, 840, 11224, 845, 11224, 855, 11224, 860, 11224, 865, 11224, 875, 11224, 880, 11224, 885, 11224, 890, 11224, 900, 11224, 910, 11224, 915, 11224, 920, 11224, 930, 11224, 940, 11224, 950, 11224, 955, 11224, 960, 11224, 965, 11224, 970, 11224, 975, 11224, 980, 11224, 985 }
-    typeMap:bin { "56524f4b46423c373432302e2c2a28272523211f1d1b1917161412100e0c0a090807050403020102030405060708090a0b0d0f1113151617181a1c1e20212224262728292b2d2e2f31333435393c4044464a4d4f515356585a5c5f6164676a6d70720076797b7e8082838587898b8d8e8f91929495969798999a9b9a9998979695949392908f8e8c8a8987858382817f7c7a78750072716e6b69666562605e5c5b595856545251504f4d4c4a4846454442413f3e3d3c3b3a393837363738393a3b3d3e3f4143444547494c4d4e5051535557595b5d606265686c6f7274787b7f8284888d9094989c9d9fa1a2a4a6a8a9abadafb0b1b3b5b7b8b9babcbec0c1c2c4c6c8cacbcccdcfd1d3d5d7d8dadbdcdddedfe0e1e2e3e4e5e4e3e2e0dfdedddcdbd9d8d6d4d2d0cecccbc9c7c5c3c1bfbdbbb9b8b6b4b2b0aeacaaa7a5a3a09e9c97918c86827d77736e68635e5b5700" }
-    links:intvector { 303, 529 }
-  } //Z#303
-  /* Asia/Riyadh89 */ :table {
-    trans:intvector { 599648191, 599734621, 599821046, 599907476, 599993901, 600080326, 600166751, 600253181, 600339606, 600426031, 600512451, 600598876, 600685301, 600771721, 600858141, 600944561, 601030981, 601117401, 601203821, 601290241, 601376656, 601463071, 601549491, 601635906, 601722316, 601808731, 601895146, 601981556, 602067966, 602154376, 602240786, 602327196, 602413601, 602500011, 602586416, 602672821, 602759226, 602932031, 603104836, 603364031, 603536826, 603709621, 603796016, 603882411, 603968806, 604055196, 604141591, 604227981, 604314371, 604400761, 604487151, 604573541, 604659931, 604746321, 604832706, 604919096, 605005481, 605091871, 605178256, 605264641, 605351026, 605437411, 605523796, 605610181, 605696566, 605782946, 605869331, 605955716, 606042096, 606128481, 606214861, 606301246, 606387626, 606474011, 606560391, 606646771, 606733156, 606819536, 606905916, 606992301, 607078681, 607165066, 607251446, 607337826, 607424211, 607510591, 607596976, 607683356, 607769741, 607856121, 607942506, 608028886, 608115271, 608201656, 608288041, 608374426, 608460811, 608547196, 608633581, 608719966, 608806351, 608892736, 608979126, 609065511, 609151901, 609238286, 609324676, 609411066, 609497456, 609583846, 609670236, 609756626, 609843016, 609929411, 610015801, 610102196, 610188586, 610274981, 610361376, 610447771, 610534166, 610706961, 610879756, 611484561, 611657366, 611743771, 611916576, 612002981, 612089391, 612175796, 612262201, 612348611, 612435016, 612521426, 612607831, 612694241, 612780651, 612867061, 612953471, 613039881, 613126291, 613212701, 613299116, 613385526, 613471936, 613558351, 613644761, 613731176, 613817586, 613904001, 613990411, 614076826, 614163241, 614249651, 614336066, 614422476, 614508891, 614595306, 614681716, 614768131, 614854541, 614940956, 615027366, 615113781, 615200191, 615286601, 615373016, 615459426, 615545836, 615632246, 615718656, 615805066, 615891476, 615977886, 616064296, 616150701, 616237111, 616323516, 616409926, 616496331, 616582736, 616669141, 616755546, 616841951, 616928356, 617101161, 617273966, 617705961, 617878756, 618051551, 618137946, 618224341, 618310736, 618397126, 618483521, 618569911, 618656306, 618742696, 618829086, 618915476, 619001866, 619088256, 619174646, 619261031, 619347421, 619433806, 619520191, 619606581, 619692966, 619779351, 619865736, 619952116, 620038501, 620124886, 620211266, 620297651, 620384031, 620470416, 620556796, 620643176, 620729561, 620815941, 620902321, 620988701, 621075081, 621161461, 621247841, 621334216, 621420596, 621506976, 621593356, 621679736, 621766111, 621852491, 621938871, 622025251, 622111626, 622198006, 622284386, 622370766, 622457141, 622543521, 622629901, 622716281, 622802661, 622889041, 622975416, 623061796, 623148176, 623234561, 623320941, 623407321, 623493701, 623580086, 623666466, 623752846, 623839231, 623925616, 624011996, 624098381, 624184766, 624271151, 624357536, 624443926, 624530311, 624616696, 624703086, 624789476, 624875866, 624962256, 625048646, 625135036, 625221426, 625307821, 625394216, 625480606, 625567001, 625653396, 625826191, 626085386, 626171791, 626430996, 626517401, 626603806, 626690211, 626776616, 626863021, 626949431, 627035841, 627122251, 627208661, 627295071, 627381486, 627467896, 627554311, 627640726, 627727141, 627813561, 627899976, 627986396, 628072816, 628159231, 628245651, 628332076, 628418496, 628504916, 628591341, 628677766, 628764191, 628850611, 628937036, 629023466, 629109891, 629196316, 629282746, 629369171, 629455601, 629542026, 629628456, 629714886, 629801316, 629887741, 629974171, 630060601, 630147031, 630233461, 630319891, 630406321, 630492751, 630579181, 630665611, 630752041, 630838471, 630924896, 631011326, 631097756, 631140956 }
-    typeOffsets:intvector { 11224, 0, 11224, -860, 11224, -855, 11224, -850, 11224, -845, 11224, -840, 11224, -835, 11224, -830, 11224, -825, 11224, -820, 11224, -815, 11224, -810, 11224, -805, 11224, -800, 11224, -795, 11224, -790, 11224, -785, 11224, -780, 11224, -775, 11224, -770, 11224, -765, 11224, -755, 11224, -745, 11224, -740, 11224, -730, 11224, -720, 11224, -715, 11224, -705, 11224, -695, 11224, -680, 11224, -665, 11224, -650, 11224, -645, 11224, -635, 11224, -625, 11224, -620, 11224, -605, 11224, -590, 11224, -585, 11224, -570, 11224, -565, 11224, -555, 11224, -545, 11224, -540, 11224, -525, 11224, -520, 11224, -505, 11224, -500, 11224, -485, 11224, -475, 11224, -470, 11224, -455, 11224, -450, 11224, -435, 11224, -430, 11224, -415, 11224, -405, 11224, -395, 11224, -390, 11224, -385, 11224, -380, 11224, -375, 11224, -370, 11224, -365, 11224, -360, 11224, -355, 11224, -350, 11224, -345, 11224, -340, 11224, -335, 11224, -330, 11224, -325, 11224, -320, 11224, -310, 11224, -305, 11224, -300, 11224, -290, 11224, -280, 11224, -270, 11224, -260, 11224, -255, 11224, -250, 11224, -245, 11224, -240, 11224, -235, 11224, -230, 11224, -225, 11224, -215, 11224, -205, 11224, -200, 11224, -190, 11224, -180, 11224, -175, 11224, -165, 11224, -160, 11224, -155, 11224, -150, 11224, -145, 11224, -140, 11224, -130, 11224, -125, 11224, -120, 11224, -115, 11224, -110, 11224, -100, 11224, -95, 11224, -90, 11224, -80, 11224, -75, 11224, -65, 11224, -55, 11224, -50, 11224, -40, 11224, -35, 11224, -25, 11224, -20, 11224, -10, 11224, -5, 11224, 10, 11224, 15, 11224, 25, 11224, 35, 11224, 40, 11224, 50, 11224, 55, 11224, 60, 11224, 65, 11224, 75, 11224, 85, 11224, 90, 11224, 95, 11224, 100, 11224, 105, 11224, 110, 11224, 115, 11224, 120, 11224, 125, 11224, 130, 11224, 135, 11224, 140, 11224, 145, 11224, 150, 11224, 160, 11224, 165, 11224, 175, 11224, 180, 11224, 185, 11224, 190, 11224, 195, 11224, 200, 11224, 205, 11224, 210, 11224, 215, 11224, 220, 11224, 235, 11224, 240, 11224, 260, 11224, 265, 11224, 285, 11224, 290, 11224, 305, 11224, 320, 11224, 325, 11224, 350, 11224, 370, 11224, 375, 11224, 390, 11224, 405, 11224, 410, 11224, 430, 11224, 435, 11224, 455, 11224, 460, 11224, 475, 11224, 485, 11224, 495, 11224, 510, 11224, 515, 11224, 535, 11224, 540, 11224, 560, 11224, 565, 11224, 580, 11224, 585, 11224, 600, 11224, 610, 11224, 615, 11224, 635, 11224, 655, 11224, 660, 11224, 675, 11224, 680, 11224, 690, 11224, 700, 11224, 710, 11224, 725, 11224, 730, 11224, 745, 11224, 760, 11224, 780, 11224, 795, 11224, 800, 11224, 810, 11224, 815, 11224, 825, 11224, 835, 11224, 840, 11224, 850, 11224, 865, 11224, 880, 11224, 890, 11224, 900, 11224, 905, 11224, 910, 11224, 915, 11224, 920, 11224, 925, 11224, 930, 11224, 935, 11224, 940, 11224, 945, 11224, 950, 11224, 955, 11224, 960, 11224, 965, 11224, 970, 11224, 975, 11224, 980, 11224, 985, 11224, 990 }
-    typeMap:bin { "57524e4b47423d383633312f2c2a28262422201e1d1c1a18171513110f0d0b0908060504030201020304050607090a0c0e101214151618191b1c1d1e1f2123242527292b2d2e3032343537393c4044474a4c4e515457595b5d616367696b6d6f71737576787a7b7e7f81838587898b8d8e8f90919394959697989998979695949291908f8e8d8c8a88868482807f7d7b7a7877007472716f6d6c6a686663625f5d5b5a58575653514f4e4d4c4b49484745444241403f3e3d3c3b3a3b3c3d3e3f404243454648494b4c4d4e50525557585a5c5e6264676a6c6e70730077797c7f82868a8e9195999b9d9ea0a2a3a4a6a8aaabadafb1b2b4b6b8babbbcbec0c2c4c5c6c7c8cacccecfd0d1d2d3d5d7d9dbdddedfe1e2e3e4e5e4e3e2e1e0dfdedcdad8d6d4d2d1d0cfcdcbc9c7c6c5c3c1bfbdbbb9b7b5b3b0aeaca9a7a5a3a19f9c9a96908c86807c7875716d6965605b00" }
-    links:intvector { 304, 530 }
-  } //Z#304
-  /* Asia/Saigon */ :int { 264 } //Z#305
-  /* Asia/Sakhalin */ :table {
-    trans:intvector { -2031039048, -768560400, 354891600, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701784000, 717505200, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 972748800, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200 }
-    typeOffsets:intvector { 34248, 0, 32400, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600 }
-    typeMap:bin { "01040504050405040504050405040504050405040504030204050405040504050405040302030203020302030203020302030203020302030203020302030204" }
-  } //Z#306
-  /* Asia/Samarkand */ :table {
-    trans:intvector { -1441168032, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686091600 }
-    typeOffsets:intvector { 16032, 0, 14400, 0, 18000, 0, 18000, 3600, 21600, 0 }
-    typeMap:bin { "010203040302030203020302030203020302030203020302" }
-  } //Z#307
-  /* Asia/Seoul */ :table {
-    transPre32:intvector { -1, 1770415224 }
-    trans:intvector { -2053931400, -1325494800, -1199262600, -498128400, -303984000, -293533200, -264931200, -39515400, 547570800, 560872800, 579020400, 592322400 }
-    typeOffsets:intvector { 30472, 0, 28800, 0, 28800, 3600, 30600, 0, 32400, 0, 32400, 3600 }
-    typeMap:bin { "03040304010201030405040504" }
-    links:intvector { 308, 587 }
-  } //Z#308
-  /* Asia/Shanghai */ :table {
-    trans:intvector { -1325491557, -933494400, -923130000, -908784000, -891594000, 515520000, 527007600, 545155200, 558457200, 576604800, 589906800, 608659200, 621961200, 640108800, 653410800, 671558400, 684860400 }
-    typeOffsets:intvector { 29157, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201" }
-    links:intvector { 309, 375, 538 }
+    links:intvector { 238, 290, 309 }
   } //Z#309
+  /* Asia/Saigon */ :int { 271 } //Z#310
+  /* Asia/Sakhalin */ :table {
+    trans:intvector { -2031039048, -768560400, 354891600, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701794800, 717519600, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 972748800, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200, 1414249200, 1459008000 }
+    typeOffsets:intvector { 34248, 0, 32400, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600 }
+    typeMap:bin { "010405040504050405040504050405040504050405040302040504050405040504050403020302030203020302030203020302030203020302030203020302040204" }
+  } //Z#311
+  /* Asia/Samarkand */ :table {
+    trans:intvector { -1441168073, -1247544000, 354913200, 370720800, 386445600, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686091600 }
+    typeOffsets:intvector { 16073, 0, 14400, 0, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "010203040302030203020302030203020302030203020302" }
+  } //Z#312
+  /* Asia/Seoul */ :table {
+    trans:intvector { -1948782472, -1830414600, -498128400, -462702600, -451733400, -429784200, -418296600, -399544200, -387451800, -368094600, -356002200, -336645000, -324552600, -305195400, -293103000, -264933000, 547578000, 560883600, 579027600, 592333200 }
+    typeOffsets:intvector { 30472, 0, 30600, 0, 30600, 3600, 32400, 0, 32400, 3600 }
+    typeMap:bin { "0103010201020102010201020102010304030403" }
+    links:intvector { 313, 597 }
+  } //Z#313
+  /* Asia/Shanghai */ :table {
+    transPre32:intvector { -1, 2117485353 }
+    trans:intvector { -933667200, -922093200, -908870400, -888829200, -881049600, -767869200, -745833600, -733827600, -716889600, -699613200, -683884800, -670669200, -652348800, -650019600, 515527200, 527014800, 545162400, 558464400, 577216800, 589914000, 608666400, 621968400, 640116000, 653418000, 671565600, 684867600 }
+    typeOffsets:intvector { 29143, 0, 28800, 0, 28800, 3600 }
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 258, 259, 269, 314, 383, 547 }
+  } //Z#314
   /* Asia/Singapore */ :table {
     trans:intvector { -2038200925, -1167634800, -1073028000, -894180000, -879665400, -767005200, 378664200 }
     typeOffsets:intvector { 24925, 0, 25200, 0, 25200, 1200, 26400, 0, 27000, 0, 28800, 0, 32400, 0 }
     typeMap:bin { "01020304060405" }
-    links:intvector { 310, 589 }
-  } //Z#310
+    links:intvector { 315, 599 }
+  } //Z#315
+  /* Asia/Srednekolymsk */ :table {
+    trans:intvector { -1441188892, -1247565600, 354891600, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701794800, 717519600, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877791600, 891097200, 909241200, 922546800, 941295600, 953996400, 972745200, 985446000, 1004194800, 1017500400, 1035644400, 1048950000, 1067094000, 1080399600, 1099148400, 1111849200, 1130598000, 1143298800, 1162047600, 1174748400, 1193497200, 1206802800, 1224946800, 1238252400, 1256396400, 1269702000, 1288450800, 1301151600, 1414245600 }
+    typeOffsets:intvector { 36892, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600, 43200, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#316
   /* Asia/Taipei */ :table {
     transPre32:intvector { -1, 1959718936 }
-    trans:intvector { -778579200, -765363600, -747043200, -733827600, -715507200, -702291600, -683884800, -670669200, -652348800, -639133200, -620812800, -607597200, -589276800, -576061200, -562924800, -541760400, -528710400, -510224400, -497174400, -478688400, -465638400, -449830800, -434016000, -418208400, -402480000, -386672400, -370944000, -355136400, -339408000, -323600400, -302515200, -291978000, -270979200, -260442000, 133977600, 149785200, 165513600, 181321200, 299520000, 307465200 }
-    typeOffsets:intvector { 29160, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 311, 586 }
-  } //Z#311
+    trans:intvector { -1017820800, -766224000, -745833600, -733827600, -716889600, -699613200, -683884800, -670669200, -652348800, -639133200, -620812800, -607597200, -589276800, -576061200, -562924800, -541760400, -528710400, -510224400, -497174400, -478688400, -465638400, -449830800, -434016000, -418208400, -402480000, -386672400, -370944000, -355136400, -339408000, -323600400, -302515200, -291978000, -270979200, -260442000, 133977600, 149785200, 165513600, 181321200, 299606400, 307551600 }
+    typeOffsets:intvector { 29160, 0, 28800, 0, 28800, 3600, 32400, 0 }
+    typeMap:bin { "0103010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 317, 596 }
+  } //Z#317
   /* Asia/Tashkent */ :table {
-    trans:intvector { -1441168632, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600 }
-    typeOffsets:intvector { 16632, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
+    trans:intvector { -1441168631, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600 }
+    typeOffsets:intvector { 16631, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
     typeMap:bin { "010304030403040304030403040304030403040304030201" }
-  } //Z#312
+  } //Z#318
   /* Asia/Tbilisi */ :table {
-    trans:intvector { -1441162756, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701816400, 717537600, 733266000, 748987200, 764715600, 780436800, 796161600, 811882800, 828216000, 877806000, 891115200, 909255600, 922564800, 941310000, 954014400, 972759600, 985464000, 1004209200, 1017518400, 1035658800, 1048968000, 1067108400, 1080417600, 1088276400, 1099177200, 1111878000 }
-    typeOffsets:intvector { 10756, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    trans:intvector { -1441162751, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701816400, 717537600, 733266000, 748987200, 764715600, 780436800, 796161600, 811882800, 828216000, 877806000, 891115200, 909255600, 922564800, 941310000, 954014400, 972759600, 985464000, 1004209200, 1017518400, 1035658800, 1048968000, 1067108400, 1080417600, 1088276400, 1099177200, 1111878000 }
+    typeOffsets:intvector { 10751, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "0103040304030403040304030403040304030403040302010201020102030403040304030403040304030403040304020103" }
-  } //Z#313
+  } //Z#319
   /* Asia/Tehran */ :table {
     trans:intvector { -757394744, 247177800, 259272000, 277758000, 283982400, 290809800, 306531000, 322432200, 338499000, 673216200, 685481400, 701209800, 717103800, 732745800, 748639800, 764281800, 780175800, 795817800, 811711800, 827353800, 843247800, 858976200, 874870200, 890512200, 906406200, 922048200, 937942200, 953584200, 969478200, 985206600, 1001100600, 1016742600, 1032636600, 1048278600, 1064172600, 1079814600, 1095708600, 1111437000, 1127331000, 1206045000, 1221939000, 1237667400, 1253561400, 1269203400, 1285097400, 1300739400, 1316633400, 1332275400, 1348169400, 1363897800, 1379791800, 1395433800, 1411327800, 1426969800, 1442863800, 1458505800, 1474399800, 1490128200, 1506022200, 1521664200, 1537558200, 1553200200, 1569094200, 1584736200, 1600630200, 1616358600, 1632252600, 1647894600, 1663788600, 1679430600, 1695324600, 1710966600, 1726860600, 1742589000, 1758483000, 1774125000, 1790019000, 1805661000, 1821555000, 1837197000, 1853091000, 1868733000, 1884627000, 1900355400, 1916249400, 1931891400, 1947785400, 1963427400, 1979321400, 1994963400, 2010857400, 2026585800, 2042479800, 2058121800, 2074015800, 2089657800, 2105551800, 2121193800, 2137087800 }
+    transPost32:intvector { 0, -2142151096, 0, -2126257096, 0, -2110615096, 0, -2094721096, 0, -2079079096, 0, -2063185096, 0, -2047543096, 0, -2031649096, 0, -2015920696, 0, -2000026696, 0, -1984384696, 0, -1968490696, 0, -1952848696, 0, -1936954696, 0, -1921312696, 0, -1905418696, 0, -1889690296, 0, -1873796296, 0, -1858154296, 0, -1842260296, 0, -1826618296, 0, -1810724296, 0, -1795082296, 0, -1779188296, 0, -1763459896, 0, -1747565896, 0, -1731923896, 0, -1716029896, 0, -1700387896, 0, -1684493896, 0, -1668851896, 0, -1652957896, 0, -1637229496, 0, -1621335496, 0, -1605693496, 0, -1589799496, 0, -1574157496, 0, -1558263496, 0, -1542621496, 0, -1526727496, 0, -1510999096, 0, -1495105096, 0, -1479463096, 0, -1463569096, 0, -1447927096, 0, -1432033096, 0, -1416391096, 0, -1400497096, 0, -1384855096, 0, -1368961096, 0, -1353232696, 0, -1337338696, 0, -1321696696, 0, -1305802696, 0, -1290160696, 0, -1274266696, 0, -1258624696, 0, -1242730696, 0, -1227002296, 0, -1211108296, 0, -1195466296, 0, -1179572296, 0, -1163930296, 0, -1148036296, 0, -1132394296, 0, -1116500296, 0, -1100771896, 0, -1084877896, 0, -1069235896, 0, -1053341896, 0, -1037699896, 0, -1021805896, 0, -1006163896, 0, -990269896, 0, -974541496, 0, -958647496, 0, -943005496, 0, -927111496, 0, -911469496, 0, -895575496, 0, -879933496, 0, -864039496, 0, -848311096, 0, -832417096, 0, -816775096, 0, -800881096, 0, -785239096, 0, -769345096, 0, -753703096, 0, -737809096, 0, -722080696, 0, -706186696, 0, -690544696, 0, -674650696, 0, -659008696, 0, -643114696, 0, -627472696, 0, -611578696, 0, -595850296, 0, -579956296, 0, -564314296, 0, -548420296 }
     typeOffsets:intvector { 12344, 0, 12600, 0, 12600, 3600, 14400, 0, 14400, 3600 }
-    typeMap:bin { "010304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 314, 514 }
-  } //Z#314
-  /* Asia/Tel_Aviv */ :int { 271 } //Z#315
-  /* Asia/Thimbu */ :int { 317 } //Z#316
+    typeMap:bin { "010304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    finalRule { "Iran" }
+    finalRaw:int { 12600 }
+    finalYear:int { 2089 }
+    links:intvector { 320, 526 }
+  } //Z#320
+  /* Asia/Tel_Aviv */ :int { 278 } //Z#321
+  /* Asia/Thimbu */ :int { 323 } //Z#322
   /* Asia/Thimphu */ :table {
     trans:intvector { -706341516, 560025000 }
     typeOffsets:intvector { 21516, 0, 19800, 0, 21600, 0 }
     typeMap:bin { "0102" }
-    links:intvector { 316, 317 }
-  } //Z#317
+    links:intvector { 322, 323 }
+  } //Z#323
   /* Asia/Tokyo */ :table {
     transPre32:intvector { -1, 1707254896 }
-    trans:intvector { -683794800, -672393600, -654764400, -640944000, -620290800, -609494400, -588841200, -578044800 }
+    trans:intvector { -683802000, -672310800, -654771600, -640861200, -620298000, -609411600, -588848400, -577962000 }
     typeOffsets:intvector { 33539, 0, 32400, 0, 32400, 3600 }
     typeMap:bin { "010201020102010201" }
-    links:intvector { 318, 516, 518 }
-  } //Z#318
-  /* Asia/Ujung_Pandang */ :int { 287 } //Z#319
-  /* Asia/Ulaanbaatar */ :table {
-    trans:intvector { -2032931252, 252435600, 417974400, 433782000, 449596800, 465318000, 481046400, 496767600, 512496000, 528217200, 543945600, 559666800, 575395200, 591116400, 606844800, 622566000, 638294400, 654620400, 670348800, 686070000, 701798400, 717519600, 733248000, 748969200, 764697600, 780418800, 796147200, 811868400, 828201600, 843922800, 859651200, 875372400, 891100800, 906822000, 988394400, 1001696400, 1017424800, 1033146000, 1048874400, 1064595600, 1080324000, 1096045200, 1111773600, 1127494800, 1143223200, 1159549200 }
-    typeOffsets:intvector { 25652, 0, 25200, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-    links:intvector { 320, 321 }
-  } //Z#320
-  /* Asia/Ulan_Bator */ :int { 320 } //Z#321
-  /* Asia/Urumqi */ :table {
-    trans:intvector { -1325483420, 325965600, 515520000, 527007600, 545155200, 558457200, 576604800, 589906800, 608659200, 621961200, 640108800, 653410800, 671558400, 684860400 }
-    typeOffsets:intvector { 21020, 0, 21600, 0, 28800, 0, 28800, 3600 }
-    typeMap:bin { "0102030203020302030203020302" }
-  } //Z#322
-  /* Asia/Ust-Nera */ :table {
-    trans:intvector { -1579426374, -1247558400, 354898800, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701784000, 717505200, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877791600, 891097200, 909241200, 922546800, 941295600, 953996400, 972745200, 985446000, 1004194800, 1017500400, 1035644400, 1048950000, 1067094000, 1080399600, 1099148400, 1111849200, 1130598000, 1143298800, 1162047600, 1174748400, 1193497200, 1206802800, 1224946800, 1238252400, 1256396400, 1269702000, 1288450800, 1301151600, 1315828800 }
-    typeOffsets:intvector { 34374, 0, 28800, 0, 32400, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600, 43200, 0 }
-    typeMap:bin { "0102060506050605060506050605060506050605060504030506050605060506050605060506050605060506050605060506050605060506050605060506050705" }
-  } //Z#323
-  /* Asia/Vientiane */ :table {
-    trans:intvector { -2005973424, -1855983920, -1819954800, -1220428800 }
-    typeOffsets:intvector { 24624, 0, 25200, 0, 25580, 0, 28800, 0 }
-    typeMap:bin { "02010301" }
+    links:intvector { 324, 528, 530 }
   } //Z#324
-  /* Asia/Vladivostok */ :table {
-    trans:intvector { -1487321264, -1247562000, 354895200, 370702800, 386431200, 402238800, 417967200, 433774800, 449589600, 465321600, 481046400, 496771200, 512496000, 528220800, 543945600, 559670400, 575395200, 591120000, 606844800, 622569600, 638294400, 654624000, 670348800, 686077200, 695754000, 701787600, 717508800, 733248000, 748972800, 764697600, 780422400, 796147200, 811872000, 828201600, 846345600, 859651200, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 972748800, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200 }
-    typeOffsets:intvector { 31664, 0, 32400, 0, 32400, 3600, 36000, 0, 36000, 3600, 39600, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
+  /* Asia/Tomsk */ :table {
+    trans:intvector { -1578807591, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 748983600, 764708400, 780433200, 796158000, 811882800, 828212400, 846356400, 859662000, 877806000, 891111600, 909255600, 922561200, 941310000, 954010800, 972759600, 985460400, 1004209200, 1017514800, 1020193200, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600, 1464465600 }
+    typeOffsets:intvector { 20391, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600 }
+    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304020102010201020102010201020102010201030103" }
   } //Z#325
-  /* Asia/Yakutsk */ :table {
-    trans:intvector { -1579423120, -1247558400, 354898800, 370706400, 386434800, 402242400, 417970800, 433778400, 449593200, 465325200, 481050000, 496774800, 512499600, 528224400, 543949200, 559674000, 575398800, 591123600, 606848400, 622573200, 638298000, 654627600, 670352400, 686080800, 695757600, 701791200, 717512400, 733251600, 748976400, 764701200, 780426000, 796150800, 811875600, 828205200, 846349200, 859654800, 877798800, 891104400, 909248400, 922554000, 941302800, 954003600, 972752400, 985453200, 1004202000, 1017507600, 1035651600, 1048957200, 1067101200, 1080406800, 1099155600, 1111856400, 1130605200, 1143306000, 1162054800, 1174755600, 1193504400, 1206810000, 1224954000, 1238259600, 1256403600, 1269709200, 1288458000, 1301158800 }
-    typeOffsets:intvector { 31120, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600, 36000, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#326
-  /* Asia/Yekaterinburg */ :table {
-    trans:intvector { -1592611344, -1247544000, 354913200, 370720800, 386449200, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701805600, 717526800, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000, 1111870800, 1130619600, 1143320400, 1162069200, 1174770000, 1193518800, 1206824400, 1224968400, 1238274000, 1256418000, 1269723600, 1288472400, 1301173200 }
-    typeOffsets:intvector { 14544, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
-    typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403040305" }
+  /* Asia/Ujung_Pandang */ :int { 294 } //Z#326
+  /* Asia/Ulaanbaatar */ :table {
+    trans:intvector { -2032931252, 252435600, 417974400, 433782000, 449596800, 465318000, 481046400, 496767600, 512496000, 528217200, 543945600, 559666800, 575395200, 591116400, 606844800, 622566000, 638294400, 654620400, 670348800, 686070000, 701798400, 717519600, 733248000, 748969200, 764697600, 780418800, 796147200, 811868400, 828201600, 843922800, 859651200, 875372400, 891100800, 906822000, 988394400, 1001696400, 1017424800, 1033146000, 1048874400, 1064595600, 1080324000, 1096045200, 1111773600, 1127494800, 1143223200, 1159549200, 1427479200, 1443193200, 1458928800, 1474642800 }
+    typeOffsets:intvector { 25652, 0, 25200, 0, 28800, 0, 28800, 3600 }
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
+    links:intvector { 327, 328 }
   } //Z#327
+  /* Asia/Ulan_Bator */ :int { 327 } //Z#328
+  /* Asia/Urumqi */ :table {
+    trans:intvector { -1325483420 }
+    typeOffsets:intvector { 21020, 0, 21600, 0 }
+    typeMap:bin { "01" }
+    links:intvector { 282, 329 }
+  } //Z#329
+  /* Asia/Ust-Nera */ :table {
+    trans:intvector { -1579426374, -1247558400, 354898800, 370699200, 386427600, 402235200, 417963600, 433771200, 449586000, 465318000, 481042800, 496767600, 512492400, 528217200, 543942000, 559666800, 575391600, 591116400, 606841200, 622566000, 638290800, 654620400, 670345200, 686073600, 695750400, 701794800, 717519600, 733244400, 748969200, 764694000, 780418800, 796143600, 811868400, 828198000, 846342000, 859647600, 877791600, 891097200, 909241200, 922546800, 941295600, 953996400, 972745200, 985446000, 1004194800, 1017500400, 1035644400, 1048950000, 1067094000, 1080399600, 1099148400, 1111849200, 1130598000, 1143298800, 1162047600, 1174748400, 1193497200, 1206802800, 1224946800, 1238252400, 1256396400, 1269702000, 1288450800, 1301151600, 1315828800, 1414249200 }
+    typeOffsets:intvector { 34374, 0, 28800, 0, 32400, 0, 36000, 0, 36000, 3600, 39600, 0, 39600, 3600, 43200, 0 }
+    typeMap:bin { "010206050605060506050605060506050605060506050403050605060506050605060506050605060506050605060506050605060506050605060506050605070503" }
+  } //Z#330
+  /* Asia/Vientiane */ :int { 250 } //Z#331
+  /* Asia/Vladivostok */ :table {
+    trans:intvector { -1487321251, -1247562000, 354895200, 370702800, 386431200, 402238800, 417967200, 433774800, 449589600, 465321600, 481046400, 496771200, 512496000, 528220800, 543945600, 559670400, 575395200, 591120000, 606844800, 622569600, 638294400, 654624000, 670348800, 686077200, 695754000, 701798400, 717523200, 733248000, 748972800, 764697600, 780422400, 796147200, 811872000, 828201600, 846345600, 859651200, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 972748800, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143302400, 1162051200, 1174752000, 1193500800, 1206806400, 1224950400, 1238256000, 1256400000, 1269705600, 1288454400, 1301155200, 1414249200 }
+    typeOffsets:intvector { 31651, 0, 32400, 0, 32400, 3600, 36000, 0, 36000, 3600, 39600, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#332
+  /* Asia/Yakutsk */ :table {
+    trans:intvector { -1579423138, -1247558400, 354898800, 370706400, 386434800, 402242400, 417970800, 433778400, 449593200, 465325200, 481050000, 496774800, 512499600, 528224400, 543949200, 559674000, 575398800, 591123600, 606848400, 622573200, 638298000, 654627600, 670352400, 686080800, 695757600, 701802000, 717526800, 733251600, 748976400, 764701200, 780426000, 796150800, 811875600, 828205200, 846349200, 859654800, 877798800, 891104400, 909248400, 922554000, 941302800, 954003600, 972752400, 985453200, 1004202000, 1017507600, 1035651600, 1048957200, 1067101200, 1080406800, 1099155600, 1111856400, 1130605200, 1143306000, 1162054800, 1174755600, 1193504400, 1206810000, 1224954000, 1238259600, 1256403600, 1269709200, 1288458000, 1301158800, 1414252800 }
+    typeOffsets:intvector { 31138, 0, 28800, 0, 28800, 3600, 32400, 0, 32400, 3600, 36000, 0 }
+    typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#333
+  /* Asia/Yangon */ :table {
+    trans:intvector { -1577946287, -873268200, -778410000 }
+    typeOffsets:intvector { 23087, 0, 23400, 0, 32400, 0 }
+    typeMap:bin { "010201" }
+    links:intvector { 308, 334 }
+  } //Z#334
+  /* Asia/Yekaterinburg */ :table {
+    trans:intvector { -1688270553, -1592610305, -1247544000, 354913200, 370720800, 386449200, 402256800, 417985200, 433792800, 449607600, 465339600, 481064400, 496789200, 512514000, 528238800, 543963600, 559688400, 575413200, 591138000, 606862800, 622587600, 638312400, 654642000, 670366800, 686095200, 695772000, 701816400, 717541200, 733266000, 748990800, 764715600, 780440400, 796165200, 811890000, 828219600, 846363600, 859669200, 877813200, 891118800, 909262800, 922568400, 941317200, 954018000, 972766800, 985467600, 1004216400, 1017522000, 1035666000, 1048971600, 1067115600, 1080421200, 1099170000, 1111870800, 1130619600, 1143320400, 1162069200, 1174770000, 1193518800, 1206824400, 1224968400, 1238274000, 1256418000, 1269723600, 1288472400, 1301173200, 1414267200 }
+    typeOffsets:intvector { 14553, 0, 13505, 0, 14400, 0, 14400, 3600, 18000, 0, 18000, 3600, 21600, 0 }
+    typeMap:bin { "010204050405040504050405040504050405040504050403020405040504050405040504050405040504050405040504050405040504050405040504050405040604" }
+  } //Z#335
   /* Asia/Yerevan */ :table {
-    trans:intvector { -1441162680, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701812800, 717534000, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1111874400, 1130623200, 1143324000, 1162072800, 1174773600, 1193522400, 1206828000, 1224972000, 1238277600, 1256421600, 1269727200, 1288476000, 1301176800, 1319925600 }
+    trans:intvector { -1441162680, -405140400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622591200, 638316000, 654645600, 670370400, 686098800, 701823600, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1111874400, 1130623200, 1143324000, 1162072800, 1174773600, 1193522400, 1206828000, 1224972000, 1238277600, 1256421600, 1269727200, 1288476000, 1301176800, 1319925600 }
     typeOffsets:intvector { 10680, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "0103040304030403040304030403040304030403040302010201020102010203040304030403040304030403040304030403040304030403040304030403" }
-    links:intvector { 328, 531 }
-  } //Z#328
+    links:intvector { 336, 540 }
+  } //Z#336
   /* Atlantic/Azores */ :table {
     transPre32:intvector { -1, 1581063056 }
-    trans:intvector { -1849557928, -1689548400, -1677794400, -1667430000, -1647730800, -1635807600, -1616194800, -1604358000, -1584658800, -1572735600, -1553036400, -1541199600, -1521500400, -1442444400, -1426806000, -1379286000, -1364770800, -1348441200, -1333321200, -1316386800, -1301266800, -1284332400, -1269817200, -1221433200, -1206918000, -1191193200, -1175468400, -1127689200, -1111964400, -1096844400, -1080514800, -1063580400, -1049065200, -1033340400, -1017615600, -1002495600, -986166000, -969231600, -950482800, -942015600, -922662000, -906937200, -891126000, -877302000, -873676800, -864000000, -857948400, -845852400, -842832000, -831340800, -825894000, -814402800, -810777600, -799891200, -794444400, -782953200, -779328000, -768441600, -762994800, -749084400, -733359600, -717624000, -701899200, -686174400, -670449600, -654724800, -639000000, -591825600, -575496000, -559771200, -544046400, -528321600, -512596800, -496872000, -481147200, -465422400, -449697600, -433972800, -417643200, -401918400, -386193600, -370468800, -354744000, -339019200, -323294400, -307569600, -291844800, -276120000, -260395200, -244670400, -228340800, -212616000, -196891200, -181166400, -165441600, -149716800, -133992000, -118267200, 228272400, 243997200, 260326800, 276051600, 291776400, 307504800, 323226000, 338954400, 354679200, 370404000, 386128800, 401853600, 417582000, 433303200, 449028000, 465357600, 481082400, 496807200, 512532000, 528256800, 543981600, 559706400, 575431200, 591156000, 606880800, 622605600, 638330400, 654660000, 670384800, 686109600, 701834400, 717559200, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    trans:intvector { -1830376800, -1689548400, -1677794400, -1667430000, -1647730800, -1635807600, -1616194800, -1604358000, -1584658800, -1572735600, -1553036400, -1541199600, -1521500400, -1442444400, -1426806000, -1379286000, -1364770800, -1348441200, -1333321200, -1316386800, -1301266800, -1284332400, -1269817200, -1221433200, -1206918000, -1191193200, -1175468400, -1127689200, -1111964400, -1096844400, -1080514800, -1063580400, -1049065200, -1033340400, -1017615600, -1002495600, -986166000, -969231600, -950482800, -942015600, -922662000, -906937200, -891126000, -877302000, -873676800, -864000000, -857948400, -845852400, -842832000, -831340800, -825894000, -814402800, -810777600, -799891200, -794444400, -782953200, -779328000, -768441600, -762994800, -749084400, -733359600, -717624000, -701899200, -686174400, -670449600, -654724800, -639000000, -591825600, -575496000, -559771200, -544046400, -528321600, -512596800, -496872000, -481147200, -465422400, -449697600, -433972800, -417643200, -401918400, -386193600, -370468800, -354744000, -339019200, -323294400, -307569600, -291844800, -276120000, -260395200, -244670400, -228340800, -212616000, -196891200, -181166400, -165441600, -149716800, -133992000, -118267200, 228272400, 243997200, 260326800, 276051600, 291776400, 307504800, 323226000, 338954400, 354679200, 370404000, 386128800, 401853600, 417582000, 433303200, 449028000, 465357600, 481082400, 496807200, 512532000, 528256800, 543981600, 559706400, 575431200, 591156000, 606880800, 622605600, 638330400, 654660000, 670384800, 686109600, 701834400, 717559200, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -6160, 0, -7200, 0, -7200, 3600, -7200, 7200, -6872, 0, -3600, 0, -3600, 3600, 0, 0 }
     typeMap:bin { "04010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203020102030201020302010203020102010201020102010201020102010201020102010201020102010201020102010201020102010506050605060506050605060506050605060506050605060506050605060506070605060506050605" }
     finalRule { "EU" }
     finalRaw:int { -3600 }
     finalYear:int { 1997 }
-  } //Z#329
+  } //Z#337
   /* Atlantic/Bermuda */ :table {
     trans:intvector { -1262281242, 136360800, 152082000, 167810400, 183531600, 199260000, 215586000, 230709600, 247035600, 262764000, 278485200, 294213600, 309934800, 325663200, 341384400, 357112800, 372834000, 388562400, 404888400, 420012000, 436338000, 452066400, 467787600, 483516000, 499237200, 514965600, 530686800, 544600800, 562136400, 576050400, 594190800, 607500000, 625640400, 638949600, 657090000, 671004000, 688539600, 702453600, 719989200, 733903200, 752043600, 765352800, 783493200, 796802400, 814942800, 828856800, 846392400, 860306400, 877842000, 891756000, 909291600, 923205600, 941346000, 954655200, 972795600, 986104800, 1004245200, 1018159200, 1035694800, 1049608800, 1067144400, 1081058400, 1099198800, 1112508000, 1130648400, 1143957600, 1162098000, 1173592800, 1194152400 }
     typeOffsets:intvector { -15558, 0, -14400, 0, -14400, 3600 }
@@ -1928,7 +1721,7 @@
     finalRule { "US" }
     finalRaw:int { -14400 }
     finalYear:int { 2008 }
-  } //Z#330
+  } //Z#338
   /* Atlantic/Canary */ :table {
     trans:intvector { -1509663504, -733874400, 323827200, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -3696, 0, -3600, 0, 0, 0, 0, 3600 }
@@ -1936,13 +1729,13 @@
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-  } //Z#331
+  } //Z#339
   /* Atlantic/Cape_Verde */ :table {
-    trans:intvector { -1988144756, -862610400, -764118000, 186120000 }
+    trans:intvector { -1830376800, -862610400, -764118000, 186120000 }
     typeOffsets:intvector { -5644, 0, -7200, 0, -7200, 3600, -3600, 0 }
     typeMap:bin { "01020103" }
-  } //Z#332
-  /* Atlantic/Faeroe */ :int { 334 } //Z#333
+  } //Z#340
+  /* Atlantic/Faeroe */ :int { 342 } //Z#341
   /* Atlantic/Faroe */ :table {
     trans:intvector { -1955748776, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -1624, 0, 0, 0, 0, 3600 }
@@ -1950,40 +1743,35 @@
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 333, 334 }
-  } //Z#334
-  /* Atlantic/Jan_Mayen */ :int { 464 } //Z#335
+    links:intvector { 341, 342 }
+  } //Z#342
+  /* Atlantic/Jan_Mayen */ :int { 474 } //Z#343
   /* Atlantic/Madeira */ :table {
-    trans:intvector { -1849560744, -1689552000, -1677798000, -1667433600, -1647734400, -1635811200, -1616198400, -1604361600, -1584662400, -1572739200, -1553040000, -1541203200, -1521504000, -1442448000, -1426809600, -1379289600, -1364774400, -1348444800, -1333324800, -1316390400, -1301270400, -1284336000, -1269820800, -1221436800, -1206921600, -1191196800, -1175472000, -1127692800, -1111968000, -1096848000, -1080518400, -1063584000, -1049068800, -1033344000, -1017619200, -1002499200, -986169600, -969235200, -950486400, -942019200, -922665600, -906940800, -891129600, -877305600, -873680400, -864003600, -857952000, -845856000, -842835600, -831344400, -825897600, -814406400, -810781200, -799894800, -794448000, -782956800, -779331600, -768445200, -762998400, -749088000, -733363200, -717627600, -701902800, -686178000, -670453200, -654728400, -639003600, -591829200, -575499600, -559774800, -544050000, -528325200, -512600400, -496875600, -481150800, -465426000, -449701200, -433976400, -417646800, -401922000, -386197200, -370472400, -354747600, -339022800, -323298000, -307573200, -291848400, -276123600, -260398800, -244674000, -228344400, -212619600, -196894800, -181170000, -165445200, -149720400, -133995600, -118270800, 228268800, 243993600, 260323200, 276048000, 291772800, 307501200, 323222400, 338950800, 354675600, 370400400, 386125200, 401850000, 417578400, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    trans:intvector { -1830380400, -1689552000, -1677798000, -1667433600, -1647734400, -1635811200, -1616198400, -1604361600, -1584662400, -1572739200, -1553040000, -1541203200, -1521504000, -1442448000, -1426809600, -1379289600, -1364774400, -1348444800, -1333324800, -1316390400, -1301270400, -1284336000, -1269820800, -1221436800, -1206921600, -1191196800, -1175472000, -1127692800, -1111968000, -1096848000, -1080518400, -1063584000, -1049068800, -1033344000, -1017619200, -1002499200, -986169600, -969235200, -950486400, -942019200, -922665600, -906940800, -891129600, -877305600, -873680400, -864003600, -857952000, -845856000, -842835600, -831344400, -825897600, -814406400, -810781200, -799894800, -794448000, -782956800, -779331600, -768445200, -762998400, -749088000, -733363200, -717627600, -701902800, -686178000, -670453200, -654728400, -639003600, -591829200, -575499600, -559774800, -544050000, -528325200, -512600400, -496875600, -481150800, -465426000, -449701200, -433976400, -417646800, -401922000, -386197200, -370472400, -354747600, -339022800, -323298000, -307573200, -291848400, -276123600, -260398800, -244674000, -228344400, -212619600, -196894800, -181170000, -165445200, -149720400, -133995600, -118270800, 228268800, 243993600, 260323200, 276048000, 291772800, 307501200, 323222400, 338950800, 354675600, 370400400, 386125200, 401850000, 417578400, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -4056, 0, -3600, 0, -3600, 3600, -3600, 7200, 0, 0, 0, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203020102030201020302010203020102010201020102010201020102010201020102010201020102010201020102010201020102010405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-  } //Z#336
+  } //Z#344
   /* Atlantic/Reykjavik */ :table {
-    transPre32:intvector { -1, 97919740 }
-    trans:intvector { -1956609132, -1668211200, -1647212400, -1636675200, -1613430000, -968025600, -949615200, -942008400, -920239200, -909957600, -888789600, -877903200, -857944800, -846453600, -826495200, -815004000, -795045600, -783554400, -762991200, -752104800, -731541600, -717631200, -700092000, -686181600, -668642400, -654732000, -636588000, -623282400, -605743200, -591832800, -573688800, -559778400, -542239200, -528328800, -510789600, -496879200, -479340000, -465429600, -447890400, -433980000, -415836000, -401925600, -384386400, -370476000, -352936800, -339026400, -321487200, -307576800, -290037600, -276127200, -258588000, -244677600, -226533600, -212623200, -195084000, -181173600, -163634400, -149724000, -132184800, -118274400, -100735200, -86824800, -68680800, -54770400 }
-    typeOffsets:intvector { -5244, 0, -5268, 0, -3600, 0, -3600, 3600, 0, 0 }
-    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030204" }
-    links:intvector { 337, 502 }
-  } //Z#337
+    trans:intvector { -1956609120, -1668211200, -1647212400, -1636675200, -1613430000, -1605139200, -1581894000, -1539561600, -1531350000, -968025600, -952293600, -942008400, -920239200, -909957600, -888789600, -877903200, -857944800, -846453600, -826495200, -815004000, -795045600, -783554400, -762991200, -752104800, -731541600, -717631200, -700092000, -686181600, -668642400, -654732000, -636588000, -623282400, -605743200, -591832800, -573688800, -559778400, -542239200, -528328800, -510789600, -496879200, -479340000, -465429600, -447890400, -433980000, -415836000, -401925600, -384386400, -370476000, -352936800, -339026400, -321487200, -307576800, -290037600, -276127200, -258588000, -244677600, -226533600, -212623200, -195084000, -181173600, -163634400, -149724000, -132184800, -118274400, -100735200, -86824800, -68680800, -54770400 }
+    typeOffsets:intvector { -5280, 0, -3600, 0, -3600, 3600, 0, 0 }
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
+    links:intvector { 345, 514 }
+  } //Z#345
   /* Atlantic/South_Georgia */ :table {
     transPre32:intvector { -1, 1770454464 }
     typeOffsets:intvector { -8768, 0, -7200, 0 }
     typeMap:bin { "01" }
-  } //Z#338
-  /* Atlantic/St_Helena */ :table {
-    trans:intvector { -599614632 }
-    typeOffsets:intvector { -1368, 0, 0, 0 }
-    typeMap:bin { "01" }
-  } //Z#339
+  } //Z#346
+  /* Atlantic/St_Helena */ :int { 5 } //Z#347
   /* Atlantic/Stanley */ :table {
     trans:intvector { -1824235716, -1018209600, -1003093200, -986760000, -971643600, -954705600, -939589200, -923256000, -908139600, -891806400, -876690000, -860356800, -852066000, 420609600, 433306800, 452052000, 464151600, 483501600, 495601200, 514350000, 527054400, 545799600, 558504000, 577249200, 589953600, 608698800, 621403200, 640753200, 652852800, 672202800, 684907200, 703652400, 716356800, 735102000, 747806400, 766551600, 779256000, 798001200, 810705600, 830055600, 842760000, 861505200, 874209600, 892954800, 905659200, 924404400, 937108800, 955854000, 968558400, 987310800, 999410400, 1019365200, 1030860000, 1050814800, 1062914400, 1082264400, 1094364000, 1113714000, 1125813600, 1145163600, 1157263200, 1176613200, 1188712800, 1208667600, 1220767200, 1240117200, 1252216800, 1271566800, 1283666400 }
     typeOffsets:intvector { -13884, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
     typeMap:bin { "010201020102010201020102010304030403020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
-  } //Z#340
-  /* Australia/ACT */ :int { 359 } //Z#341
+  } //Z#348
+  /* Australia/ACT */ :int { 367 } //Z#349
   /* Australia/Adelaide */ :table {
     transPre32:intvector { -1, 1930857236, -1, 2064778096 }
     trans:intvector { -1672565340, -1665390600, -883639800, -876126600, -860398200, -844677000, -828343800, -813227400, 57688200, 67969800, 89137800, 100024200, 120587400, 131473800, 152037000, 162923400, 183486600, 194977800, 215541000, 226427400, 246990600, 257877000, 278440200, 289326600, 309889800, 320776200, 341339400, 352225800, 372789000, 384280200, 404843400, 415729800, 436293000, 447179400, 467742600, 478629000, 499192200, 511288200, 530037000, 542737800, 562091400, 574792200, 594145800, 606241800, 625595400, 637691400, 657045000, 667931400, 688494600, 701195400, 719944200, 731435400, 751998600, 764094600, 783448200, 796149000, 814897800, 828203400, 846347400, 859653000, 877797000, 891102600, 909246600, 922552200, 941301000, 954001800, 972750600, 985451400, 1004200200, 1017505800, 1035649800, 1048955400, 1067099400, 1080405000, 1099153800, 1111854600, 1130603400, 1143909000, 1162053000, 1174753800, 1193502600, 1207413000, 1223137800 }
@@ -1992,15 +1780,15 @@
     finalRule { "AS" }
     finalRaw:int { 34200 }
     finalYear:int { 2009 }
-    links:intvector { 342, 358 }
-  } //Z#342
+    links:intvector { 350, 366 }
+  } //Z#350
   /* Australia/Brisbane */ :table {
     transPre32:intvector { -1, 1928175368 }
     trans:intvector { -1672567140, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, 57686400, 67968000, 625593600, 636480000, 657043200, 667929600, 688492800, 699379200 }
     typeOffsets:intvector { 36728, 0, 36000, 0, 36000, 3600 }
     typeMap:bin { "0102010201020102010201020102010201" }
-    links:intvector { 343, 357 }
-  } //Z#343
+    links:intvector { 351, 365 }
+  } //Z#351
   /* Australia/Broken_Hill */ :table {
     transPre32:intvector { -1, 1930856548, -1, 1980016096, -1, 2064778096 }
     trans:intvector { -1672565340, -1665390600, -883639800, -876126600, -860398200, -844677000, -828343800, -813227400, 57688200, 67969800, 89137800, 100024200, 120587400, 131473800, 152037000, 162923400, 183486600, 194977800, 215541000, 226427400, 246990600, 257877000, 278440200, 289326600, 309889800, 320776200, 341339400, 352225800, 372789000, 386699400, 404843400, 415729800, 436293000, 447179400, 467742600, 478629000, 499192200, 511288200, 530037000, 542737800, 562091400, 574792200, 594145800, 606241800, 625595400, 636481800, 657045000, 667931400, 688494600, 699381000, 719944200, 731435400, 751998600, 762885000, 783448200, 794334600, 814897800, 828203400, 846347400, 859653000, 877797000, 891102600, 909246600, 922552200, 941301000, 954001800, 972750600, 985451400, 1004200200, 1017505800, 1035649800, 1048955400, 1067099400, 1080405000, 1099153800, 1111854600, 1130603400, 1143909000, 1162053000, 1174753800, 1193502600, 1207413000, 1223137800 }
@@ -2009,9 +1797,9 @@
     finalRule { "AS" }
     finalRaw:int { 34200 }
     finalYear:int { 2009 }
-    links:intvector { 344, 363 }
-  } //Z#344
-  /* Australia/Canberra */ :int { 359 } //Z#345
+    links:intvector { 352, 371 }
+  } //Z#352
+  /* Australia/Canberra */ :int { 367 } //Z#353
   /* Australia/Currie */ :table {
     transPre32:intvector { -1, 1949172768 }
     trans:intvector { -1680508800, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 386092800, 404841600, 417542400, 436291200, 447177600, 467740800, 478627200, 499190400, 510076800, 530035200, 542736000, 562089600, 574790400, 594144000, 606240000, 625593600, 637689600, 657043200, 670348800, 686678400, 701798400, 718128000, 733248000, 749577600, 764697600, 781027200, 796147200, 812476800, 828201600, 844531200, 859651200, 875980800, 891100800, 907430400, 922550400, 938880000, 954000000, 967305600, 985449600, 1002384000, 1017504000, 1033833600, 1048953600, 1065283200, 1080403200, 1096732800, 1111852800, 1128182400, 1143907200, 1159632000, 1174752000, 1191686400, 1207411200, 1223136000 }
@@ -2020,20 +1808,20 @@
     finalRule { "AT" }
     finalRaw:int { 36000 }
     finalYear:int { 2009 }
-  } //Z#346
+  } //Z#354
   /* Australia/Darwin */ :table {
     transPre32:intvector { -1, 1930859096, -1, 2064778096 }
     trans:intvector { -1672565340, -1665390600, -883639800, -876126600, -860398200, -844677000, -828343800, -813227400 }
     typeOffsets:intvector { 31400, 0, 32400, 0, 34200, 0, 34200, 3600 }
     typeMap:bin { "01020302030203020302" }
-    links:intvector { 0, 347, 355 }
-  } //Z#347
+    links:intvector { 0, 355, 363 }
+  } //Z#355
   /* Australia/Eucla */ :table {
     transPre32:intvector { -1, 1957038768 }
     trans:intvector { -1672562640, -1665387900, -883637100, -876123900, -860395500, -844674300, 152039700, 162926100, 436295700, 447182100, 690311700, 699383700, 1165079700, 1174756500, 1193505300, 1206810900, 1224954900, 1238260500 }
     typeOffsets:intvector { 30928, 0, 31500, 0, 31500, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201" }
-  } //Z#348
+  } //Z#356
   /* Australia/Hobart */ :table {
     transPre32:intvector { -1, 1949171940 }
     trans:intvector { -1680508800, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, -71136000, -55411200, -37267200, -25776000, -5817600, 5673600, 25632000, 37728000, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 386092800, 404841600, 417542400, 436291200, 447177600, 467740800, 478627200, 499190400, 510076800, 530035200, 542736000, 562089600, 574790400, 594144000, 606240000, 625593600, 637689600, 657043200, 670348800, 686678400, 701798400, 718128000, 733248000, 749577600, 764697600, 781027200, 796147200, 812476800, 828201600, 844531200, 859651200, 875980800, 891100800, 907430400, 922550400, 938880000, 954000000, 967305600, 985449600, 1002384000, 1017504000, 1033833600, 1048953600, 1065283200, 1080403200, 1096732800, 1111852800, 1128182400, 1143907200, 1159632000, 1174752000, 1191686400, 1207411200, 1223136000 }
@@ -2042,15 +1830,15 @@
     finalRule { "AT" }
     finalRaw:int { 36000 }
     finalYear:int { 2009 }
-    links:intvector { 349, 360 }
-  } //Z#349
-  /* Australia/LHI */ :int { 352 } //Z#350
+    links:intvector { 357, 368 }
+  } //Z#357
+  /* Australia/LHI */ :int { 360 } //Z#358
   /* Australia/Lindeman */ :table {
     transPre32:intvector { -1, 1928176340 }
     trans:intvector { -1672567140, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, 57686400, 67968000, 625593600, 636480000, 657043200, 667929600, 688492800, 699379200, 719942400, 731433600, 751996800, 762883200 }
     typeOffsets:intvector { 35756, 0, 36000, 0, 36000, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201" }
-  } //Z#351
+  } //Z#359
   /* Australia/Lord_Howe */ :table {
     transPre32:intvector { -1, 1930852316 }
     trans:intvector { 352216800, 372785400, 384273000, 404839800, 415722600, 436289400, 447172200, 467739000, 478621800, 499188600, 511282800, 530033400, 542732400, 562087800, 574786800, 594142200, 606236400, 625591800, 636476400, 657041400, 667926000, 688491000, 699375600, 719940600, 731430000, 751995000, 762879600, 783444600, 794329200, 814894200, 828198000, 846343800, 859647600, 877793400, 891097200, 909243000, 922546800, 941297400, 953996400, 967303800, 985446000, 1004196600, 1017500400, 1035646200, 1048950000, 1067095800, 1080399600, 1099150200, 1111849200, 1130599800, 1143903600, 1162049400, 1174748400, 1193499000, 1207407600, 1223134200 }
@@ -2059,8 +1847,8 @@
     finalRule { "LH" }
     finalRaw:int { 37800 }
     finalYear:int { 2009 }
-    links:intvector { 350, 352 }
-  } //Z#352
+    links:intvector { 358, 360 }
+  } //Z#360
   /* Australia/Melbourne */ :table {
     transPre32:intvector { -1, 1930855704 }
     trans:intvector { -1672567140, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 384278400, 404841600, 415728000, 436291200, 447177600, 467740800, 478627200, 499190400, 511286400, 530035200, 542736000, 561484800, 574790400, 594144000, 606240000, 625593600, 637689600, 657043200, 667929600, 688492800, 699379200, 719942400, 731433600, 751996800, 762883200, 783446400, 796147200, 814896000, 828201600, 846345600, 859651200, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 967305600, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143907200, 1162051200, 1174752000, 1193500800, 1207411200, 1223136000 }
@@ -2069,19 +1857,19 @@
     finalRule { "AV" }
     finalRaw:int { 36000 }
     finalYear:int { 2009 }
-    links:intvector { 353, 361 }
-  } //Z#353
-  /* Australia/NSW */ :int { 359 } //Z#354
-  /* Australia/North */ :int { 347 } //Z#355
+    links:intvector { 361, 369 }
+  } //Z#361
+  /* Australia/NSW */ :int { 367 } //Z#362
+  /* Australia/North */ :int { 355 } //Z#363
   /* Australia/Perth */ :table {
     transPre32:intvector { -1, 1957041892 }
     trans:intvector { -1672559940, -1665385200, -883634400, -876121200, -860392800, -844671600, 152042400, 162928800, 436298400, 447184800, 690314400, 699386400, 1165082400, 1174759200, 1193508000, 1206813600, 1224957600, 1238263200 }
     typeOffsets:intvector { 27804, 0, 28800, 0, 28800, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201" }
-    links:intvector { 356, 362 }
-  } //Z#356
-  /* Australia/Queensland */ :int { 343 } //Z#357
-  /* Australia/South */ :int { 342 } //Z#358
+    links:intvector { 364, 370 }
+  } //Z#364
+  /* Australia/Queensland */ :int { 351 } //Z#365
+  /* Australia/South */ :int { 350 } //Z#366
   /* Australia/Sydney */ :table {
     transPre32:intvector { -1, 1930854204 }
     trans:intvector { -1672567140, -1665392400, -883641600, -876128400, -860400000, -844678800, -828345600, -813229200, 57686400, 67968000, 89136000, 100022400, 120585600, 131472000, 152035200, 162921600, 183484800, 194976000, 215539200, 226425600, 246988800, 257875200, 278438400, 289324800, 309888000, 320774400, 341337600, 352224000, 372787200, 386697600, 404841600, 415728000, 436291200, 447177600, 467740800, 478627200, 499190400, 511286400, 530035200, 542736000, 562089600, 574790400, 594144000, 606240000, 625593600, 636480000, 657043200, 667929600, 688492800, 699379200, 719942400, 731433600, 751996800, 762883200, 783446400, 794332800, 814896000, 828201600, 846345600, 859651200, 877795200, 891100800, 909244800, 922550400, 941299200, 954000000, 967305600, 985449600, 1004198400, 1017504000, 1035648000, 1048953600, 1067097600, 1080403200, 1099152000, 1111852800, 1130601600, 1143907200, 1162051200, 1174752000, 1193500800, 1207411200, 1223136000 }
@@ -2090,19 +1878,19 @@
     finalRule { "AN" }
     finalRaw:int { 36000 }
     finalYear:int { 2009 }
-    links:intvector { 1, 341, 345, 354, 359 }
-  } //Z#359
-  /* Australia/Tasmania */ :int { 349 } //Z#360
-  /* Australia/Victoria */ :int { 353 } //Z#361
-  /* Australia/West */ :int { 356 } //Z#362
-  /* Australia/Yancowinna */ :int { 344 } //Z#363
-  /* BET */ :int { 200 } //Z#364
-  /* BST */ :int { 257 } //Z#365
-  /* Brazil/Acre */ :int { 194 } //Z#366
-  /* Brazil/DeNoronha */ :int { 175 } //Z#367
-  /* Brazil/East */ :int { 200 } //Z#368
-  /* Brazil/West */ :int { 155 } //Z#369
-  /* CAT */ :int { 29 } //Z#370
+    links:intvector { 1, 349, 353, 362, 367 }
+  } //Z#367
+  /* Australia/Tasmania */ :int { 357 } //Z#368
+  /* Australia/Victoria */ :int { 361 } //Z#369
+  /* Australia/West */ :int { 364 } //Z#370
+  /* Australia/Yancowinna */ :int { 352 } //Z#371
+  /* BET */ :int { 202 } //Z#372
+  /* BST */ :int { 263 } //Z#373
+  /* Brazil/Acre */ :int { 196 } //Z#374
+  /* Brazil/DeNoronha */ :int { 176 } //Z#375
+  /* Brazil/East */ :int { 202 } //Z#376
+  /* Brazil/West */ :int { 156 } //Z#377
+  /* CAT */ :int { 43 } //Z#378
   /* CET */ :table {
     trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -766623600, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 3600, 0, 3600, 3600 }
@@ -2110,9 +1898,9 @@
     finalRule { "C-Eur" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#371
-  /* CNT */ :int { 205 } //Z#372
-  /* CST */ :int { 98 } //Z#373
+  } //Z#379
+  /* CNT */ :int { 207 } //Z#380
+  /* CST */ :int { 98 } //Z#381
   /* CST6CDT */ :table {
     trans:intvector { -1633276800, -1615136400, -1601827200, -1583686800, -880214400, -765392400, -84384000, -68662800, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 152089200, 162374400, 183538800, 199267200, 215593200, 230716800, 247042800, 262771200, 278492400, 294220800, 309942000, 325670400, 341391600, 357120000, 372841200, 388569600, 404895600, 420019200, 436345200, 452073600, 467794800, 483523200, 499244400, 514972800, 530694000, 544608000, 562143600, 576057600, 594198000, 607507200, 625647600, 638956800, 657097200, 671011200, 688546800, 702460800, 719996400, 733910400, 752050800, 765360000, 783500400, 796809600, 814950000, 828864000, 846399600, 860313600, 877849200, 891763200, 909298800, 923212800, 941353200, 954662400, 972802800, 986112000, 1004252400, 1018166400, 1035702000, 1049616000, 1067151600, 1081065600, 1099206000, 1112515200, 1130655600, 1143964800, 1162105200, 1173600000, 1194159600 }
     typeOffsets:intvector { -21600, 0, -21600, 3600 }
@@ -2120,22 +1908,22 @@
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-  } //Z#374
-  /* CTT */ :int { 309 } //Z#375
-  /* Canada/Atlantic */ :int { 127 } //Z#376
-  /* Canada/Central */ :int { 220 } //Z#377
-  /* Canada/East-Saskatchewan */ :int { 192 } //Z#378
-  /* Canada/Eastern */ :int { 215 } //Z#379
-  /* Canada/Mountain */ :int { 112 } //Z#380
-  /* Canada/Newfoundland */ :int { 205 } //Z#381
-  /* Canada/Pacific */ :int { 217 } //Z#382
-  /* Canada/Saskatchewan */ :int { 192 } //Z#383
-  /* Canada/Yukon */ :int { 219 } //Z#384
-  /* Chile/Continental */ :int { 198 } //Z#385
-  /* Chile/EasterIsland */ :int { 546 } //Z#386
-  /* Cuba */ :int { 128 } //Z#387
-  /* EAT */ :int { 7 } //Z#388
-  /* ECT */ :int { 465 } //Z#389
+  } //Z#382
+  /* CTT */ :int { 314 } //Z#383
+  /* Canada/Atlantic */ :int { 128 } //Z#384
+  /* Canada/Central */ :int { 222 } //Z#385
+  /* Canada/East-Saskatchewan */ :int { 194 } //Z#386
+  /* Canada/Eastern */ :int { 217 } //Z#387
+  /* Canada/Mountain */ :int { 112 } //Z#388
+  /* Canada/Newfoundland */ :int { 207 } //Z#389
+  /* Canada/Pacific */ :int { 219 } //Z#390
+  /* Canada/Saskatchewan */ :int { 194 } //Z#391
+  /* Canada/Yukon */ :int { 221 } //Z#392
+  /* Chile/Continental */ :int { 200 } //Z#393
+  /* Chile/EasterIsland */ :int { 556 } //Z#394
+  /* Cuba */ :int { 129 } //Z#395
+  /* EAT */ :int { 48 } //Z#396
+  /* ECT */ :int { 475 } //Z#397
   /* EET */ :table {
     trans:intvector { 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 7200, 0, 7200, 3600 }
@@ -2143,10 +1931,10 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-  } //Z#390
+  } //Z#398
   /* EST */ :table {
     typeOffsets:intvector { -18000, 0 }
-  } //Z#391
+  } //Z#399
   /* EST5EDT */ :table {
     trans:intvector { -1633280400, -1615140000, -1601830800, -1583690400, -880218000, -765396000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 126687600, 152085600, 162370800, 183535200, 199263600, 215589600, 230713200, 247039200, 262767600, 278488800, 294217200, 309938400, 325666800, 341388000, 357116400, 372837600, 388566000, 404892000, 420015600, 436341600, 452070000, 467791200, 483519600, 499240800, 514969200, 530690400, 544604400, 562140000, 576054000, 594194400, 607503600, 625644000, 638953200, 657093600, 671007600, 688543200, 702457200, 719992800, 733906800, 752047200, 765356400, 783496800, 796806000, 814946400, 828860400, 846396000, 860310000, 877845600, 891759600, 909295200, 923209200, 941349600, 954658800, 972799200, 986108400, 1004248800, 1018162800, 1035698400, 1049612400, 1067148000, 1081062000, 1099202400, 1112511600, 1130652000, 1143961200, 1162101600, 1173596400, 1194156000 }
     typeOffsets:intvector { -18000, 0, -18000, 3600 }
@@ -2154,108 +1942,105 @@
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-  } //Z#392
-  /* Egypt */ :int { 18 } //Z#393
-  /* Eire */ :int { 444 } //Z#394
+  } //Z#400
+  /* Egypt */ :int { 18 } //Z#401
+  /* Eire */ :int { 453 } //Z#402
   /* Etc/GMT */ :table {
     typeOffsets:intvector { 0, 0 }
-    links:intvector { 395, 396, 409, 424, 425, 493, 494, 495, 496, 497 }
-  } //Z#395
-  /* Etc/GMT+0 */ :int { 395 } //Z#396
+    links:intvector { 403, 404, 417, 432, 433, 505, 506, 507, 508, 509 }
+  } //Z#403
+  /* Etc/GMT+0 */ :int { 403 } //Z#404
   /* Etc/GMT+1 */ :table {
     typeOffsets:intvector { -3600, 0 }
-  } //Z#397
+  } //Z#405
   /* Etc/GMT+10 */ :table {
     typeOffsets:intvector { -36000, 0 }
-  } //Z#398
+  } //Z#406
   /* Etc/GMT+11 */ :table {
     typeOffsets:intvector { -39600, 0 }
-  } //Z#399
+  } //Z#407
   /* Etc/GMT+12 */ :table {
     typeOffsets:intvector { -43200, 0 }
-  } //Z#400
+  } //Z#408
   /* Etc/GMT+2 */ :table {
     typeOffsets:intvector { -7200, 0 }
-  } //Z#401
+  } //Z#409
   /* Etc/GMT+3 */ :table {
     typeOffsets:intvector { -10800, 0 }
-  } //Z#402
+  } //Z#410
   /* Etc/GMT+4 */ :table {
     typeOffsets:intvector { -14400, 0 }
-  } //Z#403
+  } //Z#411
   /* Etc/GMT+5 */ :table {
     typeOffsets:intvector { -18000, 0 }
-  } //Z#404
+  } //Z#412
   /* Etc/GMT+6 */ :table {
     typeOffsets:intvector { -21600, 0 }
-  } //Z#405
+  } //Z#413
   /* Etc/GMT+7 */ :table {
     typeOffsets:intvector { -25200, 0 }
-  } //Z#406
+  } //Z#414
   /* Etc/GMT+8 */ :table {
     typeOffsets:intvector { -28800, 0 }
-  } //Z#407
+  } //Z#415
   /* Etc/GMT+9 */ :table {
     typeOffsets:intvector { -32400, 0 }
-  } //Z#408
-  /* Etc/GMT-0 */ :int { 395 } //Z#409
+  } //Z#416
+  /* Etc/GMT-0 */ :int { 403 } //Z#417
   /* Etc/GMT-1 */ :table {
     typeOffsets:intvector { 3600, 0 }
-  } //Z#410
+  } //Z#418
   /* Etc/GMT-10 */ :table {
     typeOffsets:intvector { 36000, 0 }
-  } //Z#411
+  } //Z#419
   /* Etc/GMT-11 */ :table {
     typeOffsets:intvector { 39600, 0 }
-  } //Z#412
+  } //Z#420
   /* Etc/GMT-12 */ :table {
     typeOffsets:intvector { 43200, 0 }
-  } //Z#413
+  } //Z#421
   /* Etc/GMT-13 */ :table {
     typeOffsets:intvector { 46800, 0 }
-  } //Z#414
+  } //Z#422
   /* Etc/GMT-14 */ :table {
     typeOffsets:intvector { 50400, 0 }
-  } //Z#415
+  } //Z#423
   /* Etc/GMT-2 */ :table {
     typeOffsets:intvector { 7200, 0 }
-  } //Z#416
+  } //Z#424
   /* Etc/GMT-3 */ :table {
     typeOffsets:intvector { 10800, 0 }
-  } //Z#417
+  } //Z#425
   /* Etc/GMT-4 */ :table {
     typeOffsets:intvector { 14400, 0 }
-  } //Z#418
+  } //Z#426
   /* Etc/GMT-5 */ :table {
     typeOffsets:intvector { 18000, 0 }
-  } //Z#419
+  } //Z#427
   /* Etc/GMT-6 */ :table {
     typeOffsets:intvector { 21600, 0 }
-  } //Z#420
+  } //Z#428
   /* Etc/GMT-7 */ :table {
     typeOffsets:intvector { 25200, 0 }
-  } //Z#421
+  } //Z#429
   /* Etc/GMT-8 */ :table {
     typeOffsets:intvector { 28800, 0 }
-  } //Z#422
+  } //Z#430
   /* Etc/GMT-9 */ :table {
     typeOffsets:intvector { 32400, 0 }
-  } //Z#423
-  /* Etc/GMT0 */ :int { 395 } //Z#424
-  /* Etc/Greenwich */ :int { 395 } //Z#425
-  /* Etc/UCT */ :table {
-    typeOffsets:intvector { 0, 0 }
-    links:intvector { 426, 604 }
-  } //Z#426
+  } //Z#431
+  /* Etc/GMT0 */ :int { 403 } //Z#432
+  /* Etc/Greenwich */ :int { 403 } //Z#433
+  /* Etc/UCT */ :int { 435 } //Z#434
   /* Etc/UTC */ :table {
     typeOffsets:intvector { 0, 0 }
-    links:intvector { 427, 428, 430, 618, 619, 623 }
-  } //Z#427
-  /* Etc/Universal */ :int { 427 } //Z#428
+    links:intvector { 434, 435, 436, 438, 614, 628, 629, 633 }
+  } //Z#435
+  /* Etc/Universal */ :int { 435 } //Z#436
   /* Etc/Unknown */ :table {
     typeOffsets:intvector { 0, 0 }
-  } //Z#429
-  /* Etc/Zulu */ :int { 427 } //Z#430
+  } //Z#437
+  /* Etc/Zulu */ :int { 435 } //Z#438
   /* Europe/Amsterdam */ :table {
     trans:intvector { -1693700372, -1680484772, -1663453172, -1650147572, -1633213172, -1617488372, -1601158772, -1586038772, -1569709172, -1554589172, -1538259572, -1523139572, -1507501172, -1490566772, -1470176372, -1459117172, -1443997172, -1427667572, -1406672372, -1396217972, -1376950772, -1364768372, -1345414772, -1333318772, -1313792372, -1301264372, -1282256372, -1269814772, -1250720372, -1238365172, -1219184372, -1206915572, -1186957172, -1175465972, -1156025972, -1143411572, -1124489972, -1111961972, -1092953972, -1080512372, -1061331572, -1049062772, -1029190772, -1025745572, -1017613200, -998259600, -986163600, -966723600, -954109200, -935022000, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -766623600, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 1172, 0, 1172, 3600, 1200, 0, 1200, 3600, 3600, 0, 3600, 3600 }
@@ -2263,7 +2048,7 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#431
+  } //Z#439
   /* Europe/Andorra */ :table {
     transPre32:intvector { -1, 2117514132 }
     trans:intvector { -733881600, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2272,7 +2057,12 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#432
+  } //Z#440
+  /* Europe/Astrakhan */ :table {
+    trans:intvector { -1441249932, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 701820000, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400, 1459033200 }
+    typeOffsets:intvector { 11532, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    typeMap:bin { "01030403040304030403040304030403040302010201030201020102010201020102010201020102010201020102010201020102010201020102010201030103" }
+  } //Z#441
   /* Europe/Athens */ :table {
     trans:intvector { -1686101632, -1182996000, -1178161200, -906861600, -904878000, -857257200, -844477200, -828237600, -812422800, -552362400, -541652400, 166485600, 186184800, 198028800, 213753600, 228873600, 244080000, 260323200, 275446800, 291798000, 307407600, 323388000, 338936400, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 5692, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600 }
@@ -2280,8 +2070,8 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-  } //Z#433
-  /* Europe/Belfast */ :int { 455 } //Z#434
+  } //Z#442
+  /* Europe/Belfast */ :int { 465 } //Z#443
   /* Europe/Belgrade */ :table {
     transPre32:intvector { -1, 1581051976 }
     trans:intvector { -905824800, -857257200, -844556400, -828226800, -812502000, -796777200, -777942000, -766623600, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2290,8 +2080,8 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 435, 454, 466, 472, 474, 487 }
-  } //Z#435
+    links:intvector { 444, 464, 476, 482, 485, 499 }
+  } //Z#444
   /* Europe/Berlin */ :table {
     transPre32:intvector { -1, 1872912888 }
     trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -776563200, -765936000, -761180400, -748479600, -733273200, -717631200, -714610800, -710380800, -701910000, -684975600, -670460400, -654130800, -639010800, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2300,8 +2090,8 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#436
-  /* Europe/Bratislava */ :int { 467 } //Z#437
+  } //Z#445
+  /* Europe/Bratislava */ :int { 477 } //Z#446
   /* Europe/Brussels */ :table {
     transPre32:intvector { -1, 1844014246 }
     trans:intvector { -1740355200, -1693702800, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -1613826000, -1604278800, -1585530000, -1574038800, -1552266000, -1539997200, -1520557200, -1507510800, -1490576400, -1473642000, -1459126800, -1444006800, -1427677200, -1411952400, -1396227600, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301263200, -1284328800, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1191189600, -1175464800, -1160344800, -1143410400, -1127685600, -1111960800, -1096840800, -1080511200, -1063576800, -1049061600, -1033336800, -1017612000, -1002492000, -986162400, -969228000, -950479200, -942012000, -934668000, -857257200, -844556400, -828226800, -812502000, -798073200, -781052400, -766623600, -745455600, -733273200, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2310,7 +2100,7 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#438
+  } //Z#447
   /* Europe/Bucharest */ :table {
     trans:intvector { -1213148664, -1187056800, -1175479200, -1159754400, -1144029600, -1127700000, -1111975200, -1096250400, -1080525600, -1064800800, -1049076000, -1033351200, -1017626400, -1001901600, -986176800, -970452000, -954727200, 296604000, 307486800, 323816400, 338940000, 354672000, 370396800, 386121600, 401846400, 417571200, 433296000, 449020800, 465350400, 481075200, 496800000, 512524800, 528249600, 543974400, 559699200, 575424000, 591148800, 606873600, 622598400, 638323200, 654652800, 670370400, 686095200, 701820000, 717544800, 733269600, 748994400, 764719200, 780440400, 796168800, 811890000, 828223200, 846363600, 859683600, 877827600 }
     typeOffsets:intvector { 6264, 0, 7200, 0, 7200, 3600 }
@@ -2318,27 +2108,27 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#439
+  } //Z#448
   /* Europe/Budapest */ :table {
     transPre32:intvector { -1, 1794028316 }
-    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1633212000, -1617577200, -1600466400, -1587250800, -1569708000, -1554332400, -906937200, -857257200, -844556400, -828226800, -812502000, -796777200, -778471200, -762487200, -749689200, -733359600, -717634800, -701910000, -686185200, -670460400, -654130800, -639010800, -621990000, -605660400, -492656400, -481168800, -461120400, -449632800, -428547600, -418269600, -397094400, -386809200, 323827200, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1633212000, -1618700400, -1600466400, -1581202800, -906771600, -857257200, -844556400, -828226800, -812502000, -796777200, -778471200, -762660000, -749689200, -733359600, -717634800, -701910000, -686185200, -670460400, -654130800, -639010800, -621990000, -605660400, -492656400, -481168800, -461120400, -449632800, -428547600, -418269600, -397094400, -386809200, 323827200, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 4580, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#440
-  /* Europe/Busingen */ :int { 489 } //Z#441
+  } //Z#449
+  /* Europe/Busingen */ :int { 501 } //Z#450
   /* Europe/Chisinau */ :table {
     transPre32:intvector { -1, 1454819576 }
-    trans:intvector { -1637114100, -1213148664, -1187056800, -1175479200, -1159754400, -1144029600, -1127700000, -1111975200, -1096250400, -1080525600, -1064800800, -1049076000, -1033351200, -1017626400, -1001901600, -986176800, -970452000, -954727200, -927165600, -898138800, -857257200, -844556400, -828226800, -812502000, -800157600, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 641941200, 670377600, 686102400, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 846363600, 859683600, 877827600 }
+    trans:intvector { -1637114100, -1213148664, -1187056800, -1175479200, -1159754400, -1144029600, -1127700000, -1111975200, -1096250400, -1080525600, -1064800800, -1049076000, -1033351200, -1017626400, -1001901600, -986176800, -970452000, -954727200, -927165600, -898138800, -857257200, -844556400, -828226800, -812502000, -800157600, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 641944800, 654652800, 670377600, 686102400, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 846363600, 859680000, 877824000 }
     typeOffsets:intvector { 6920, 0, 3600, 0, 3600, 3600, 6264, 0, 6900, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
-    typeMap:bin { "0403050605060506050605060506050605060506020102010207080708070807080708070807080708070807050605060506050605060506050605" }
-    finalRule { "EU" }
+    typeMap:bin { "04030506050605060506050605060506050605060201020102070807080708070807080708070807080708070806050605060506050605060506050605" }
+    finalRule { "Moldova" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-    links:intvector { 442, 479 }
-  } //Z#442
+    links:intvector { 451, 490 }
+  } //Z#451
   /* Europe/Copenhagen */ :table {
     transPre32:intvector { -1, 1896673076 }
     trans:intvector { -1692496800, -1680490800, -935110800, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -769388400, -747010800, -736383600, -715215600, -706748400, -683161200, -675298800, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2347,17 +2137,17 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#443
+  } //Z#452
   /* Europe/Dublin */ :table {
     transPre32:intvector { -1, 1473317596 }
-    trans:intvector { -1691962479, -1680471279, -1664143200, -1650146400, -1633903200, -1617487200, -1601848800, -1586037600, -1570399200, -1552168800, -1538344800, -1522533600, -1507500000, -1490565600, -1473631200, -1460930400, -1442786400, -1428876000, -1410732000, -1396216800, -1379282400, -1364767200, -1348437600, -1333317600, -1315778400, -1301263200, -1284328800, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1189980000, -1175464800, -1159135200, -1143410400, -1126476000, -1111960800, -1095631200, -1080511200, -1063576800, -1049061600, -1032127200, -1017612000, -1001282400, -986162400, -969228000, -950479200, -942012000, -733359600, -719445600, -699490800, -684972000, -668037600, -654732000, -636588000, -622072800, -605743200, -590623200, -574293600, -558568800, -542239200, -527119200, -512604000, -496274400, -481154400, -464220000, -449704800, -432165600, -417650400, -401320800, -386200800, -369266400, -354751200, -337816800, -323301600, -306972000, -291852000, -276732000, -257983200, -245282400, -226533600, -213228000, -195084000, -182383200, -163634400, -150933600, -132184800, -119484000, -100735200, -88034400, -68680800, -59004000, -37242000, 57722400, 69818400, 89172000, 101268000, 120621600, 132717600, 152071200, 164167200, 183520800, 196221600, 214970400, 227671200, 246420000, 259120800, 278474400, 290570400, 309924000, 322020000, 341373600, 354675600, 372819600, 386125200, 404269200, 417574800, 435718800, 449024400, 467773200, 481078800, 499222800, 512528400, 530672400, 543978000, 562122000, 575427600, 593571600, 606877200, 625626000, 638326800, 657075600, 670381200, 688525200, 701830800, 719974800, 733280400, 751424400, 764730000, 782874000, 796179600, 814323600, 828234000, 846378000 }
+    trans:intvector { -1691962479, -1680471279, -1664143200, -1650146400, -1633903200, -1617487200, -1601848800, -1586037600, -1570399200, -1552168800, -1538344800, -1522533600, -1507500000, -1490565600, -1473631200, -1460930400, -1442786400, -1428876000, -1410732000, -1396216800, -1379282400, -1364767200, -1348437600, -1333317600, -1315778400, -1301263200, -1284328800, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1189980000, -1175464800, -1159135200, -1143410400, -1126476000, -1111960800, -1095631200, -1080511200, -1063576800, -1049061600, -1032127200, -1017612000, -1001282400, -986162400, -969228000, -950479200, -942012000, -733356000, -719445600, -699487200, -684972000, -668037600, -654732000, -636588000, -622072800, -605743200, -590623200, -574293600, -558568800, -542239200, -527119200, -512604000, -496274400, -481154400, -464220000, -449704800, -432165600, -417650400, -401320800, -386200800, -369266400, -354751200, -337816800, -323301600, -306972000, -291852000, -276732000, -257983200, -245282400, -226533600, -213228000, -195084000, -182383200, -163634400, -150933600, -132184800, -119484000, -100735200, -88034400, -68680800, -59004000, -37242000, 57722400, 69818400, 89172000, 101268000, 120621600, 132717600, 152071200, 164167200, 183520800, 196221600, 214970400, 227671200, 246420000, 259120800, 278474400, 290570400, 309924000, 322020000, 341373600, 354675600, 372819600, 386125200, 404269200, 417574800, 435718800, 449024400, 467773200, 481078800, 499222800, 512528400, 530672400, 543978000, 562122000, 575427600, 593571600, 606877200, 625626000, 638326800, 657075600, 670381200, 688525200, 701830800, 719974800, 733280400, 751424400, 764730000, 782874000, 796179600, 814323600, 828234000, 846378000 }
     typeOffsets:intvector { -1500, 0, -1521, 0, -1521, 3600, 0, 0, 0, 3600, 3600, 0 }
     typeMap:bin { "0102030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030405030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403" }
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 394, 444 }
-  } //Z#444
+    links:intvector { 402, 453 }
+  } //Z#453
   /* Europe/Gibraltar */ :table {
     transPre32:intvector { -1, 1473317380 }
     trans:intvector { -1691964000, -1680472800, -1664143200, -1650146400, -1633903200, -1617487200, -1601848800, -1586037600, -1570399200, -1552168800, -1538344800, -1522533600, -1507500000, -1490565600, -1473631200, -1460930400, -1442786400, -1428876000, -1410732000, -1396216800, -1379282400, -1364767200, -1348437600, -1333317600, -1315778400, -1301263200, -1284328800, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1189980000, -1175464800, -1159135200, -1143410400, -1126476000, -1111960800, -1095631200, -1080511200, -1063576800, -1049061600, -1032127200, -1017612000, -1001282400, -986162400, -969228000, -950479200, -942012000, -904518000, -896050800, -875487600, -864601200, -844038000, -832546800, -812588400, -798073200, -781052400, -772066800, -764805600, -748476000, -733356000, -719445600, -717030000, -706748400, -699487200, -687996000, -668037600, -654732000, -636588000, -622072800, -605743200, -590623200, -574293600, -558568800, -542239200, -527119200, -512604000, -496274400, -481154400, -464220000, -449704800, -432165600, -417650400, -401320800, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2366,53 +2156,55 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#445
-  /* Europe/Guernsey */ :int { 455 } //Z#446
+  } //Z#454
+  /* Europe/Guernsey */ :int { 465 } //Z#455
   /* Europe/Helsinki */ :table {
-    trans:intvector { -1535938792, -875671200, -859863600, 354672000, 370396800, 386121600, 401846400, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
-    typeOffsets:intvector { 5992, 0, 7200, 0, 7200, 3600 }
+    trans:intvector { -1535938789, -875671200, -859773600, 354672000, 370396800, 386121600, 401846400, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    typeOffsets:intvector { 5989, 0, 7200, 0, 7200, 3600 }
     typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-    links:intvector { 447, 459 }
-  } //Z#447
-  /* Europe/Isle_of_Man */ :int { 455 } //Z#448
+    links:intvector { 456, 469 }
+  } //Z#456
+  /* Europe/Isle_of_Man */ :int { 465 } //Z#457
   /* Europe/Istanbul */ :table {
     transPre32:intvector { -1, 1454819544 }
-    trans:intvector { -1869875816, -1693706400, -1680490800, -1570413600, -1552186800, -1538359200, -1522551600, -1507514400, -1490583600, -1440208800, -1428030000, -1409709600, -1396494000, -931140000, -922762800, -917834400, -892436400, -875844000, -857358000, -781063200, -764737200, -744343200, -733806000, -716436000, -701924400, -684986400, -670474800, -654141600, -639025200, -621828000, -606970800, -590032800, -575434800, -235620000, -228279600, -177732000, -165726000, 10533600, 23835600, 41983200, 55285200, 74037600, 87339600, 107910000, 121219200, 133920000, 152676000, 165362400, 183502800, 202428000, 215557200, 228866400, 245797200, 260316000, 277246800, 308779200, 323827200, 340228800, 354672000, 371678400, 386121600, 403128000, 428446800, 433886400, 482792400, 496702800, 512524800, 528249600, 543974400, 559699200, 575424000, 591148800, 606873600, 622598400, 638323200, 654652800, 670374000, 686098800, 701823600, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174784400, 1193533200, 1206838800, 1224982800, 1238288400, 1256432400, 1269738000, 1288486800, 1301274000, 1319936400, 1332637200, 1351386000 }
+    trans:intvector { -1869875816, -1693706400, -1680490800, -1570413600, -1552186800, -1538359200, -1522551600, -1507514400, -1490583600, -1440208800, -1428030000, -1409709600, -1396494000, -931140000, -922762800, -917834400, -892436400, -875844000, -857358000, -781063200, -764737200, -744343200, -733806000, -716436000, -701924400, -684986400, -670474800, -654141600, -639025200, -621828000, -606970800, -590032800, -575434800, -235620000, -228279600, -177732000, -165726000, 10533600, 23835600, 41983200, 55285200, 74037600, 87339600, 107910000, 121219200, 133920000, 152676000, 165362400, 183502800, 202428000, 215557200, 228866400, 245797200, 260316000, 277246800, 308779200, 323827200, 340228800, 354672000, 371678400, 386121600, 403128000, 428446800, 433886400, 482792400, 496702800, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686098800, 701823600, 717548400, 733273200, 748998000, 764118000, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174784400, 1193533200, 1206838800, 1224982800, 1238288400, 1256432400, 1269738000, 1288486800, 1301274000, 1319936400, 1332637200, 1351386000, 1364691600, 1382835600, 1396227600, 1414285200, 1427590800, 1446944400, 1459040400, 1473195600 }
     typeOffsets:intvector { 6952, 0, 7016, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
-    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203050405040504050405040302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
-    finalRule { "EU" }
-    finalRaw:int { 7200 }
-    finalYear:int { 2013 }
-    links:intvector { 268, 449, 603 }
-  } //Z#449
-  /* Europe/Jersey */ :int { 455 } //Z#450
+    typeMap:bin { "010203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030504050405040504050403020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020304" }
+    links:intvector { 275, 458, 613 }
+  } //Z#458
+  /* Europe/Jersey */ :int { 465 } //Z#459
   /* Europe/Kaliningrad */ :table {
     transPre32:intvector { -1, 1872911176 }
-    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -788922000, -778730400, -762663600, -757389600, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686102400, 701816400, 717537600, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000 }
+    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -788922000, -778730400, -762663600, -757389600, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000, 1414278000 }
     typeOffsets:intvector { 4920, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
-    typeMap:bin { "010201020102010201020102010304030506050605060506050605060506050605060506050403040304030403040304030403040304030403040304030403040304030403040304030403040305" }
-  } //Z#451
+    typeMap:bin { "01020102010201020102010201030403050605060506050605060506050605060504030403040304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
+  } //Z#460
   /* Europe/Kiev */ :table {
-    trans:intvector { -1441159324, -1247536800, -892522800, -857257200, -844556400, -828226800, -825382800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 646786800, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796179600, 811904400, 828234000, 846378000 }
+    trans:intvector { -1441159324, -1247536800, -892522800, -857257200, -844556400, -828226800, -825382800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 646783200, 686102400, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 7324, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
-    typeMap:bin { "030502010201050605060506050605060506050605060506050304030403040304030403" }
+    typeMap:bin { "0305020102010506050605060506050605060506050605060506040304030403040304030403" }
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-  } //Z#452
+  } //Z#461
+  /* Europe/Kirov */ :table {
+    trans:intvector { -1593820800, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 701820000, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400 }
+    typeOffsets:intvector { 11928, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    typeMap:bin { "010304030403040304030403040304030403020102010302010201020102010201020102010201020102010201020102010201020102010201020102010301" }
+  } //Z#462
   /* Europe/Lisbon */ :table {
-    trans:intvector { -1830381808, -1689555600, -1677801600, -1667437200, -1647738000, -1635814800, -1616202000, -1604365200, -1584666000, -1572742800, -1553043600, -1541206800, -1521507600, -1442451600, -1426813200, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -1284339600, -1269824400, -1221440400, -1206925200, -1191200400, -1175475600, -1127696400, -1111971600, -1096851600, -1080522000, -1063587600, -1049072400, -1033347600, -1017622800, -1002502800, -986173200, -969238800, -950490000, -942022800, -922669200, -906944400, -891133200, -877309200, -873684000, -864007200, -857955600, -845859600, -842839200, -831348000, -825901200, -814410000, -810784800, -799898400, -794451600, -782960400, -779335200, -768448800, -763002000, -749091600, -733366800, -717631200, -701906400, -686181600, -670456800, -654732000, -639007200, -591832800, -575503200, -559778400, -544053600, -528328800, -512604000, -496879200, -481154400, -465429600, -449704800, -433980000, -417650400, -401925600, -386200800, -370476000, -354751200, -339026400, -323301600, -307576800, -291852000, -276127200, -260402400, -244677600, -228348000, -212623200, -196898400, -181173600, -165448800, -149724000, -133999200, -118274400, 212544000, 228268800, 243993600, 260323200, 276048000, 291772800, 307501200, 323222400, 338950800, 354675600, 370400400, 386125200, 401850000, 417578400, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
-    typeOffsets:intvector { -2192, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
+    trans:intvector { -1830384000, -1689555600, -1677801600, -1667437200, -1647738000, -1635814800, -1616202000, -1604365200, -1584666000, -1572742800, -1553043600, -1541206800, -1521507600, -1442451600, -1426813200, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -1284339600, -1269824400, -1221440400, -1206925200, -1191200400, -1175475600, -1127696400, -1111971600, -1096851600, -1080522000, -1063587600, -1049072400, -1033347600, -1017622800, -1002502800, -986173200, -969238800, -950490000, -942022800, -922669200, -906944400, -891133200, -877309200, -873684000, -864007200, -857955600, -845859600, -842839200, -831348000, -825901200, -814410000, -810784800, -799898400, -794451600, -782960400, -779335200, -768448800, -763002000, -749091600, -733366800, -717631200, -701906400, -686181600, -670456800, -654732000, -639007200, -591832800, -575503200, -559778400, -544053600, -528328800, -512604000, -496879200, -481154400, -465429600, -449704800, -433980000, -417650400, -401925600, -386200800, -370476000, -354751200, -339026400, -323301600, -307576800, -291852000, -276127200, -260402400, -244677600, -228348000, -212623200, -196898400, -181173600, -165448800, -149724000, -133999200, -118274400, 212544000, 228268800, 243993600, 260323200, 276048000, 291772800, 307501200, 323222400, 338950800, 354675600, 370400400, 386125200, 401850000, 417578400, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    typeOffsets:intvector { -2205, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
     typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020302010203020102030201020302010201020102010201020102010201020102010201020102010201020102010201020102010201040102010201020102010201020102010201020102010201020102010201020102040504050405040201" }
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 453, 585 }
-  } //Z#453
-  /* Europe/Ljubljana */ :int { 435 } //Z#454
+    links:intvector { 463, 595 }
+  } //Z#463
+  /* Europe/Ljubljana */ :int { 444 } //Z#464
   /* Europe/London */ :table {
     transPre32:intvector { -1, 442304971 }
     trans:intvector { -1691964000, -1680472800, -1664143200, -1650146400, -1633903200, -1617487200, -1601848800, -1586037600, -1570399200, -1552168800, -1538344800, -1522533600, -1507500000, -1490565600, -1473631200, -1460930400, -1442786400, -1428876000, -1410732000, -1396216800, -1379282400, -1364767200, -1348437600, -1333317600, -1315778400, -1301263200, -1284328800, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1189980000, -1175464800, -1159135200, -1143410400, -1126476000, -1111960800, -1095631200, -1080511200, -1063576800, -1049061600, -1032127200, -1017612000, -1001282400, -986162400, -969228000, -950479200, -942012000, -904518000, -896050800, -875487600, -864601200, -844038000, -832546800, -812588400, -798073200, -781052400, -772066800, -764805600, -748476000, -733356000, -719445600, -717030000, -706748400, -699487200, -687996000, -668037600, -654732000, -636588000, -622072800, -605743200, -590623200, -574293600, -558568800, -542239200, -527119200, -512604000, -496274400, -481154400, -464220000, -449704800, -432165600, -417650400, -401320800, -386200800, -369266400, -354751200, -337816800, -323301600, -306972000, -291852000, -276732000, -257983200, -245282400, -226533600, -213228000, -195084000, -182383200, -163634400, -150933600, -132184800, -119484000, -100735200, -88034400, -68680800, -59004000, -37242000, 57722400, 69818400, 89172000, 101268000, 120621600, 132717600, 152071200, 164167200, 183520800, 196221600, 214970400, 227671200, 246420000, 259120800, 278474400, 290570400, 309924000, 322020000, 341373600, 354675600, 372819600, 386125200, 404269200, 417574800, 435718800, 449024400, 467773200, 481078800, 499222800, 512528400, 530672400, 543978000, 562122000, 575427600, 593571600, 606877200, 625626000, 638326800, 657075600, 670381200, 688525200, 701830800, 719974800, 733280400, 751424400, 764730000, 782874000, 796179600, 814323600, 828234000, 846378000 }
@@ -2421,8 +2213,8 @@
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 434, 446, 448, 450, 455, 491, 492 }
-  } //Z#455
+    links:intvector { 443, 455, 457, 459, 465, 503, 504 }
+  } //Z#465
   /* Europe/Luxembourg */ :table {
     trans:intvector { -2069713476, -1692496800, -1680483600, -1662343200, -1650157200, -1632006000, -1618700400, -1612659600, -1604278800, -1585519200, -1574038800, -1552258800, -1539997200, -1520550000, -1507510800, -1490572800, -1473642000, -1459119600, -1444006800, -1427673600, -1411866000, -1396224000, -1379293200, -1364774400, -1348448400, -1333324800, -1316394000, -1301270400, -1284339600, -1269813600, -1253484000, -1238364000, -1221429600, -1206914400, -1191189600, -1175464800, -1160344800, -1143410400, -1127685600, -1111960800, -1096840800, -1080511200, -1063576800, -1049061600, -1033336800, -1017612000, -1002492000, -986162400, -969228000, -950479200, -942012000, -935186400, -857257200, -844556400, -828226800, -812502000, -797986800, -781052400, -766623600, -745455600, -733273200, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 1476, 0, 0, 0, 0, 3600, 3600, 0, 3600, 3600 }
@@ -2430,32 +2222,32 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#456
+  } //Z#466
   /* Europe/Madrid */ :table {
-    transPre32:intvector { -1, 2117515380 }
-    trans:intvector { -1661734800, -1648429200, -1631926800, -1616893200, -1601254800, -1585357200, -1442451600, -1427677200, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -1284339600, -1269824400, -1029114000, -1017622800, -1002848400, -986173200, -969238800, -954118800, -940208400, -873079200, -862538400, -842839200, -828237600, -811389600, -796010400, -779940000, -765421200, -748490400, -733888800, -652327200, -639190800, 135122400, 150246000, 167176800, 181695600, 196812000, 212540400, 228866400, 243990000, 260402400, 276044400, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    transPre32:intvector { -1, 2117514496 }
+    trans:intvector { -1631926800, -1616889600, -1601168400, -1585353600, -1442451600, -1427673600, -1379293200, -1364774400, -1348448400, -1333324800, -1316390400, -1301270400, -1284339600, -1269820800, -1026954000, -1017619200, -1001898000, -999482400, -986090400, -954115200, -940208400, -873079200, -862621200, -842839200, -828320400, -811389600, -796870800, -779940000, -765421200, -748490400, -733971600, -652327200, -639018000, 135122400, 150246000, 166572000, 181695600, 196812000, 212540400, 228866400, 243990000, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { -884, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
-    typeMap:bin { "01020102010201020102010201020102010201020102010203020302030203020304050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
+    typeMap:bin { "0102010201020102010201020102010201020302010405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#457
+  } //Z#467
   /* Europe/Malta */ :table {
     transPre32:intvector { -1, 1891488612 }
-    trans:intvector { -1690851600, -1680483600, -1664758800, -1649034000, -1635123600, -1616979600, -1604278800, -1585530000, -1571014800, -1555290000, -932432400, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -766717200, -750898800, -733359600, -719456400, -701917200, -689209200, -670460400, -114051600, -103168800, -81997200, -71719200, -50547600, -40269600, -18493200, -8215200, 12956400, 23234400, 43801200, 54687600, 75855600, 86738400, 102380400, 118105200, 135730800, 148518000, 167187600, 180489600, 198637200, 211939200, 230086800, 243388800, 261536400, 274838400, 292986000, 306288000, 323312400, 338342400, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    trans:intvector { -1690765200, -1680487200, -1664758800, -1648951200, -1635123600, -1616896800, -1604278800, -1585533600, -1571014800, -1555293600, -932432400, -857257200, -844556400, -828226800, -812588400, -798073200, -781052400, -766717200, -750898800, -733359600, -719456400, -701917200, -689209200, -670460400, -114051600, -103168800, -81997200, -71715600, -50547600, -40266000, -18493200, -8211600, 12956400, 23238000, 43801200, 54687600, 75855600, 86742000, 102380400, 118105200, 135730800, 148518000, 167187600, 180489600, 198637200, 211939200, 230086800, 243388800, 261536400, 274838400, 292986000, 306288000, 323312400, 338342400, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 3484, 0, 3600, 0, 3600, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#458
-  /* Europe/Mariehamn */ :int { 447 } //Z#459
+  } //Z#468
+  /* Europe/Mariehamn */ :int { 456 } //Z#469
   /* Europe/Minsk */ :table {
     transPre32:intvector { -1, 1454819880 }
-    trans:intvector { -1441158600, -1247536800, -899780400, -857257200, -844556400, -828226800, -812502000, -804650400, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 670374000, 686102400, 701820000, 717544800, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000 }
+    trans:intvector { -1441158600, -1247536800, -899780400, -857257200, -844556400, -828226800, -812502000, -804650400, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 670374000, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000 }
     typeOffsets:intvector { 6616, 0, 3600, 0, 3600, 3600, 6600, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "0304060201020102060706070607060706070607060706070607060504050405040504050405040504050405040504050405040504050405040504050405040504050406" }
-  } //Z#460
+  } //Z#470
   /* Europe/Monaco */ :table {
     transPre32:intvector { -1, 1808287124 }
     trans:intvector { -1855958961, -1689814800, -1680397200, -1665363600, -1648342800, -1635123600, -1616893200, -1604278800, -1585443600, -1574038800, -1552266000, -1539997200, -1520557200, -1507510800, -1490576400, -1470618000, -1459126800, -1444006800, -1427677200, -1411952400, -1396227600, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -1284339600, -1269824400, -1253494800, -1238374800, -1221440400, -1206925200, -1191200400, -1175475600, -1160355600, -1143421200, -1127696400, -1111971600, -1096851600, -1080522000, -1063587600, -1049072400, -1033347600, -1017622800, -1002502800, -986173200, -969238800, -950490000, -942012000, -904438800, -891136800, -877827600, -857257200, -844556400, -828226800, -812502000, -796266000, -781052400, -766623600, 196819200, 212540400, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2464,15 +2256,14 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#461
+  } //Z#471
   /* Europe/Moscow */ :table {
-    transPre32:intvector { -1, 1454817476 }
-    trans:intvector { -1688265000, -1656819048, -1641353448, -1627965048, -1618716648, -1596429048, -1593829848, -1589860800, -1542427200, -1539493200, -1525323600, -1522728000, -1491188400, -1247536800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686102400, 695779200, 701812800, 717534000, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400 }
-    typeOffsets:intvector { 9020, 0, 7200, 0, 7200, 3600, 9000, 0, 9048, 0, 9048, 3600, 9048, 7200, 10800, 0, 10800, 3600, 10800, 7200, 14400, 0 }
-    typeMap:bin { "030405040605060807080908070107080708070807080708070807080708070807080702010708070807080708070807080708070807080708070807080708070807080708070807080708070a" }
-    links:intvector { 462, 621 }
-  } //Z#462
-  /* Europe/Nicosia */ :int { 290 } //Z#463
+    trans:intvector { -1688265017, -1656819079, -1641353479, -1627965079, -1618716679, -1596429079, -1593820800, -1589860800, -1542427200, -1539493200, -1525323600, -1522728000, -1491188400, -1247536800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686102400, 695779200, 701823600, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400 }
+    typeOffsets:intvector { 9017, 0, 7200, 0, 7200, 3600, 9079, 0, 9079, 3600, 9079, 7200, 10800, 0, 10800, 3600, 10800, 7200, 14400, 0 }
+    typeMap:bin { "0304030504050706070807060106070607060706070607060706070607060706070602010607060706070607060706070607060706070607060706070607060706070607060706070607060906" }
+    links:intvector { 472, 631 }
+  } //Z#472
+  /* Europe/Nicosia */ :int { 297 } //Z#473
   /* Europe/Oslo */ :table {
     transPre32:intvector { -1, 1928209516 }
     trans:intvector { -1691884800, -1680573600, -927511200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -765327600, -340844400, -324514800, -308790000, -293065200, -277340400, -261615600, -245890800, -230166000, -214441200, -198716400, -182991600, -166662000, -147913200, -135212400, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2481,8 +2272,8 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 234, 335, 464 }
-  } //Z#464
+    links:intvector { 237, 343, 474 }
+  } //Z#474
   /* Europe/Paris */ :table {
     trans:intvector { -1855958901, -1689814800, -1680397200, -1665363600, -1648342800, -1635123600, -1616893200, -1604278800, -1585443600, -1574038800, -1552266000, -1539997200, -1520557200, -1507510800, -1490576400, -1470618000, -1459126800, -1444006800, -1427677200, -1411952400, -1396227600, -1379293200, -1364778000, -1348448400, -1333328400, -1316394000, -1301274000, -1284339600, -1269824400, -1253494800, -1238374800, -1221440400, -1206925200, -1191200400, -1175475600, -1160355600, -1143421200, -1127696400, -1111971600, -1096851600, -1080522000, -1063587600, -1049072400, -1033347600, -1017622800, -1002502800, -986173200, -969238800, -950490000, -942012000, -932436000, -857257200, -844556400, -828226800, -812502000, -800071200, -796266000, -781052400, -766623600, 196819200, 212540400, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 561, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
@@ -2490,54 +2281,56 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 389, 465 }
-  } //Z#465
-  /* Europe/Podgorica */ :int { 435 } //Z#466
+    links:intvector { 397, 475 }
+  } //Z#475
+  /* Europe/Podgorica */ :int { 444 } //Z#476
   /* Europe/Prague */ :table {
     transPre32:intvector { -1, 1825565432 }
-    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -798073200, -780534000, -761180400, -746578800, -733359600, -716425200, -701910000, -684975600, -670460400, -654217200, -639010800, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
-    typeOffsets:intvector { 3464, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -765327600, -746578800, -733359600, -728517600, -721260000, -716425200, -701910000, -684975600, -670460400, -654217200, -639010800, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    typeOffsets:intvector { 3464, 0, 0, 0, 3600, 0, 3600, 3600 }
+    typeMap:bin { "02030203020302030203020302030203020102030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 437, 467 }
-  } //Z#467
+    links:intvector { 446, 477 }
+  } //Z#477
   /* Europe/Riga */ :table {
-    trans:intvector { -1632008184, -1618702584, -1601681784, -1597275384, -1377308184, -928029600, -899521200, -857257200, -844556400, -828226800, -812502000, -796777200, -795834000, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 843955200, 859683600, 877827600, 891133200, 909277200, 922582800, 941331600, 985482000, 1004230800 }
-    typeOffsets:intvector { 5784, 0, 3600, 0, 3600, 3600, 5784, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
+    trans:intvector { -1632008194, -1618702594, -1601681794, -1597275394, -1377308194, -928029600, -899521200, -857257200, -844556400, -828226800, -812502000, -796777200, -795834000, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 843955200, 859683600, 877827600, 891133200, 909277200, 922582800, 941331600, 985482000, 1004230800 }
+    typeOffsets:intvector { 5794, 0, 3600, 0, 3600, 3600, 5794, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "0300030004060201020102010607060706070607060706070607060706050405040504050405040504050405040504050405040504" }
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2002 }
-  } //Z#468
+  } //Z#478
   /* Europe/Rome */ :table {
-    transPre32:intvector { -1, 1891402700 }
-    trans:intvector { -1690851600, -1680483600, -1664758800, -1649034000, -1635123600, -1616979600, -1604278800, -1585530000, -1571014800, -1555290000, -932432400, -857257200, -844556400, -828226800, -812502000, -798080400, -781052400, -766717200, -750898800, -733359600, -719456400, -701917200, -689209200, -670460400, -114051600, -103168800, -81997200, -71719200, -50547600, -40269600, -18493200, -8215200, 12956400, 23234400, 43801200, 54687600, 75855600, 86738400, 107910000, 118188000, 138754800, 149637600, 170809200, 181090800, 202258800, 212540400, 233103600, 243990000, 265158000, 276044400, 296607600, 307494000, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
+    transPre32:intvector { -1, 1891402096 }
+    trans:intvector { -1690765200, -1680487200, -1664758800, -1648951200, -1635123600, -1616896800, -1604278800, -1585533600, -1571014800, -1555293600, -932432400, -857257200, -844556400, -828226800, -812502000, -798073200, -781052400, -766717200, -750898800, -733359600, -719456400, -701917200, -689209200, -670460400, -114051600, -103168800, -81997200, -71715600, -50547600, -40266000, -18493200, -8211600, 12956400, 23238000, 43801200, 54687600, 75855600, 86742000, 107910000, 118191600, 138754800, 149641200, 170809200, 181090800, 202258800, 212540400, 233103600, 243990000, 265158000, 276044400, 296607600, 307494000, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 2996, 0, 3600, 0, 3600, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 469, 471, 482 }
-  } //Z#469
+    links:intvector { 479, 481, 494 }
+  } //Z#479
   /* Europe/Samara */ :table {
-    trans:intvector { -1593825636, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 686102400, 687916800, 701809200, 717530400, 733269600, 748994400, 764719200, 780444000, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1111874400, 1130623200, 1143324000, 1162072800, 1174773600, 1193522400, 1206828000, 1224972000, 1238277600, 1256421600, 1269727200, 1288479600, 1301180400 }
-    typeOffsets:intvector { 12036, 0, 7200, 3600, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    trans:intvector { -1593820800, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 686102400, 687916800, 701820000, 717544800, 733269600, 748994400, 764719200, 780444000, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 972770400, 985471200, 1004220000, 1017525600, 1035669600, 1048975200, 1067119200, 1080424800, 1099173600, 1111874400, 1130623200, 1143324000, 1162072800, 1174773600, 1193522400, 1206828000, 1224972000, 1238277600, 1256421600, 1269727200, 1288479600, 1301180400 }
+    typeOffsets:intvector { 12020, 0, 7200, 3600, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "02040504050405040504050405040504050403020302010204050405040504050405040504050405040504050405040504050405040504050405040504030204" }
-  } //Z#470
-  /* Europe/San_Marino */ :int { 469 } //Z#471
-  /* Europe/Sarajevo */ :int { 435 } //Z#472
+  } //Z#480
+  /* Europe/San_Marino */ :int { 479 } //Z#481
+  /* Europe/Sarajevo */ :int { 444 } //Z#482
+  /* Europe/Saratov */ :table {
+    trans:intvector { -1593820800, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 701820000, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400, 1480806000 }
+    typeOffsets:intvector { 11058, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    typeMap:bin { "01030403040304030403040304030403020102010201030201020102010201020102010201020102010201020102010201020102010201020102010201030103" }
+  } //Z#483
   /* Europe/Simferopol */ :table {
     transPre32:intvector { -1, 1454818312 }
-    trans:intvector { -1441160160, -1247536800, -888894000, -857257200, -844556400, -828226800, -812502000, -811648800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 646786800, 701820000, 717541200, 733269600, 748990800, 764719200, 767739600, 780436800, 796165200, 811886400, 828219600, 846374400, 859683600, 877827600 }
-    typeOffsets:intvector { 8184, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 8160, 0, 10800, 0, 10800, 3600 }
-    typeMap:bin { "0503060201020102060706070607060706070607060706070607060304030403040706070607060403" }
-    finalRule { "EU" }
-    finalRaw:int { 7200 }
-    finalYear:int { 1998 }
-  } //Z#473
-  /* Europe/Skopje */ :int { 435 } //Z#474
+    trans:intvector { -1441160160, -1247536800, -888894000, -857257200, -844556400, -828226800, -812502000, -811648800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 646786800, 701820000, 717541200, 733269600, 748990800, 764719200, 767739600, 780436800, 796165200, 811886400, 828219600, 846374400, 859683600, 877827600, 891133200, 909277200, 922582800, 941331600, 954032400, 972781200, 985482000, 1004230800, 1017536400, 1035680400, 1048986000, 1067130000, 1080435600, 1099184400, 1111885200, 1130634000, 1143334800, 1162083600, 1174784400, 1193533200, 1206838800, 1224982800, 1238288400, 1256432400, 1269738000, 1288486800, 1301187600, 1319936400, 1332637200, 1351386000, 1364691600, 1382835600, 1396137600, 1414274400 }
+    typeOffsets:intvector { 8184, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 8160, 0, 10800, 0, 10800, 3600, 14400, 0 }
+    typeMap:bin { "050306020102010206070607060706070607060706070607060706030403040304070607060706040304030403040304030403040304030403040304030403040304030403040304030806" }
+  } //Z#484
+  /* Europe/Skopje */ :int { 444 } //Z#485
   /* Europe/Sofia */ :table {
     transPre32:intvector { -1, 1454820900, -1, 1925440280 }
     trans:intvector { -857257200, -844556400, -828226800, -812502000, -796777200, -781048800, 291762000, 307576800, 323816400, 339026400, 355266000, 370393200, 386715600, 401846400, 417571200, 433296000, 449020800, 465350400, 481075200, 496800000, 512524800, 528249600, 543974400, 559699200, 575424000, 591148800, 606873600, 622598400, 638323200, 654652800, 670370400, 686091600, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796168800, 811890000, 828223200, 846363600, 859683600, 877827600 }
@@ -2546,7 +2339,7 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#475
+  } //Z#486
   /* Europe/Stockholm */ :table {
     transPre32:intvector { -1, 1423286164, -1, 2085974882 }
     trans:intvector { -1692496800, -1680483600, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2555,7 +2348,7 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#476
+  } //Z#487
   /* Europe/Tallinn */ :table {
     trans:intvector { -1638322740, -1632006000, -1618700400, -1593824400, -1535938740, -927943200, -892954800, -857257200, -844556400, -828226800, -812502000, -797652000, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909277200, 922582800, 941331600, 1017536400, 1035680400 }
     typeOffsets:intvector { 5940, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
@@ -2563,7 +2356,7 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2003 }
-  } //Z#477
+  } //Z#488
   /* Europe/Tirane */ :table {
     trans:intvector { -1767230360, -932346000, -857257200, -844556400, -843519600, 136854000, 149896800, 168130800, 181432800, 199839600, 213141600, 231894000, 244591200, 263257200, 276040800, 294706800, 307490400, 326156400, 339458400, 357087600, 370389600, 389142000, 402444000, 419468400, 433807200, 449622000, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 4760, 0, 3600, 0, 3600, 3600 }
@@ -2571,8 +2364,13 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#478
-  /* Europe/Tiraspol */ :int { 442 } //Z#479
+  } //Z#489
+  /* Europe/Tiraspol */ :int { 451 } //Z#490
+  /* Europe/Ulyanovsk */ :table {
+    trans:intvector { -1593820800, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 686102400, 695779200, 701823600, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400, 1459033200 }
+    typeOffsets:intvector { 11616, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    typeMap:bin { "030506050605060506050605060506050605040304030201030403040304030403040304030403040304030403040304030403040304030403040304030403050305" }
+  } //Z#491
   /* Europe/Uzhgorod */ :table {
     transPre32:intvector { -1, 1794027544 }
     trans:intvector { -938905200, -857257200, -844556400, -828226800, -812502000, -794714400, -773456400, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 646786800, 670384800, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796179600, 811904400, 828234000, 846378000 }
@@ -2581,17 +2379,9 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-  } //Z#480
-  /* Europe/Vaduz */ :table {
-    transPre32:intvector { -1, 1909720212 }
-    trans:intvector { 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
-    typeOffsets:intvector { 2284, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
-  } //Z#481
-  /* Europe/Vatican */ :int { 469 } //Z#482
+  } //Z#492
+  /* Europe/Vaduz */ :int { 501 } //Z#493
+  /* Europe/Vatican */ :int { 479 } //Z#494
   /* Europe/Vienna */ :table {
     transPre32:intvector { -1, 1872912175 }
     trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -1569711600, -1555801200, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -780188400, -748479600, -733359600, -717634800, -701910000, -684975600, -670460400, 323823600, 338940000, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
@@ -2600,21 +2390,21 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#483
+  } //Z#495
   /* Europe/Vilnius */ :table {
     transPre32:intvector { -1, 1454820420 }
-    trans:intvector { -1672536240, -1585100136, -1561251600, -1553565600, -928198800, -900126000, -857257200, -844556400, -828226800, -812502000, -802144800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891133200, 909277200, 922582800, 941331600, 1048986000, 1067130000 }
+    trans:intvector { -1672536240, -1585100136, -1561251600, -1553565600, -928198800, -900126000, -857257200, -844556400, -828226800, -812502000, -802144800, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891133200, 909277200, 922582800, 941331600, 1048986000, 1067130000 }
     typeOffsets:intvector { 6076, 0, 3600, 0, 3600, 3600, 5040, 0, 5736, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
-    typeMap:bin { "03040105010702010201020708070807080708070807080708070807080708070605060506050605060506050605020102050605" }
+    typeMap:bin { "03040105010702010201020708070807080708070807080708070807060506050605060506050605060506050605020102050605" }
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2004 }
-  } //Z#484
+  } //Z#496
   /* Europe/Volgograd */ :table {
-    trans:intvector { -1577761060, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591141600, 606866400, 622594800, 638319600, 654649200, 670374000, 701820000, 717534000, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400 }
+    trans:intvector { -1577761060, -1247540400, 354916800, 370724400, 386452800, 402260400, 417988800, 433796400, 449611200, 465343200, 481068000, 496792800, 512517600, 528242400, 543967200, 559692000, 575416800, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 701820000, 717548400, 733273200, 748998000, 764722800, 780447600, 796172400, 811897200, 828226800, 846370800, 859676400, 877820400, 891126000, 909270000, 922575600, 941324400, 954025200, 972774000, 985474800, 1004223600, 1017529200, 1035673200, 1048978800, 1067122800, 1080428400, 1099177200, 1111878000, 1130626800, 1143327600, 1162076400, 1174777200, 1193526000, 1206831600, 1224975600, 1238281200, 1256425200, 1269730800, 1288479600, 1301180400, 1414274400, 1540681200 }
     typeOffsets:intvector { 10660, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
-    typeMap:bin { "0103040304030403040304030403040304030201020103020102010201020102010201020102010201020102010201020102010201020102010201020103" }
-  } //Z#485
+    typeMap:bin { "01030403040304030403040304030403020102010201030201020102010201020102010201020102010201020102010201020102010201020102010201030103" }
+  } //Z#497
   /* Europe/Warsaw */ :table {
     trans:intvector { -1717032240, -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -1600473600, -1587168000, -1501725600, -931734000, -857257200, -844556400, -828226800, -812502000, -796608000, -778726800, -762660000, -748486800, -733273200, -715215600, -701910000, -684975600, -670460400, -654130800, -639010800, -397094400, -386812800, -371088000, -355363200, -334195200, -323308800, -307584000, -291859200, -271296000, -260409600, -239846400, -228960000, -208396800, -197510400, -176342400, -166060800, 228873600, 243993600, 260323200, 276048000, 291772800, 307497600, 323827200, 338947200, 354672000, 370396800, 386121600, 401846400, 417571200, 433296000, 449020800, 465350400, 481075200, 496800000, 512524800, 528249600, 543974400, 559699200, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 5040, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600 }
@@ -2622,9 +2412,9 @@
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 486, 584 }
-  } //Z#486
-  /* Europe/Zagreb */ :int { 435 } //Z#487
+    links:intvector { 498, 594 }
+  } //Z#498
+  /* Europe/Zagreb */ :int { 444 } //Z#499
   /* Europe/Zaporozhye */ :table {
     transPre32:intvector { -1, 1454818056 }
     trans:intvector { -1441160400, -1247536800, -894769200, -857257200, -844556400, -828226800, -826419600, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 638319600, 654649200, 670374000, 686091600, 701820000, 717541200, 733269600, 748990800, 764719200, 780440400, 796179600, 811904400, 828234000, 846378000 }
@@ -2633,96 +2423,84 @@
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-  } //Z#488
+  } //Z#500
   /* Europe/Zurich */ :table {
-    transPre32:intvector { -1, 467013248, -1, 1909720712 }
+    transPre32:intvector { -1, 619768448, -1, 1909720710 }
     trans:intvector { -904435200, -891129600, -872985600, -859680000, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
-    typeOffsets:intvector { 2048, 0, 1784, 0, 3600, 0, 3600, 3600 }
+    typeOffsets:intvector { 2048, 0, 1786, 0, 3600, 0, 3600, 3600 }
     typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 441, 489 }
-  } //Z#489
+    links:intvector { 450, 493, 501 }
+  } //Z#501
   /* Factory */ :table {
     typeOffsets:intvector { 0, 0 }
-  } //Z#490
-  /* GB */ :int { 455 } //Z#491
-  /* GB-Eire */ :int { 455 } //Z#492
-  /* GMT */ :int { 395 } //Z#493
-  /* GMT+0 */ :int { 395 } //Z#494
-  /* GMT-0 */ :int { 395 } //Z#495
-  /* GMT0 */ :int { 395 } //Z#496
-  /* Greenwich */ :int { 395 } //Z#497
+  } //Z#502
+  /* GB */ :int { 465 } //Z#503
+  /* GB-Eire */ :int { 465 } //Z#504
+  /* GMT */ :int { 403 } //Z#505
+  /* GMT+0 */ :int { 403 } //Z#506
+  /* GMT-0 */ :int { 403 } //Z#507
+  /* GMT0 */ :int { 403 } //Z#508
+  /* Greenwich */ :int { 403 } //Z#509
   /* HST */ :table {
     typeOffsets:intvector { -36000, 0 }
-  } //Z#498
-  /* Hongkong */ :int { 265 } //Z#499
-  /* IET */ :int { 130 } //Z#500
-  /* IST */ :int { 279 } //Z#501
-  /* Iceland */ :int { 337 } //Z#502
-  /* Indian/Antananarivo */ :table {
-    trans:intvector { -1846293004, -499924800, -492062400 }
-    typeOffsets:intvector { 11404, 0, 10800, 0, 10800, 3600 }
-    typeMap:bin { "010201" }
-  } //Z#503
+  } //Z#510
+  /* Hongkong */ :int { 272 } //Z#511
+  /* IET */ :int { 131 } //Z#512
+  /* IST */ :int { 286 } //Z#513
+  /* Iceland */ :int { 345 } //Z#514
+  /* Indian/Antananarivo */ :int { 48 } //Z#515
   /* Indian/Chagos */ :table {
     trans:intvector { -1988167780, 820436400 }
     typeOffsets:intvector { 17380, 0, 18000, 0, 21600, 0 }
     typeMap:bin { "0102" }
-  } //Z#504
+  } //Z#516
   /* Indian/Christmas */ :table {
     transPre32:intvector { -1, 1930865124 }
     typeOffsets:intvector { 25372, 0, 25200, 0 }
     typeMap:bin { "01" }
-  } //Z#505
+  } //Z#517
   /* Indian/Cocos */ :table {
     transPre32:intvector { -1, 2085955236 }
     typeOffsets:intvector { 23260, 0, 23400, 0 }
     typeMap:bin { "01" }
-  } //Z#506
-  /* Indian/Comoro */ :table {
-    trans:intvector { -1846291984 }
-    typeOffsets:intvector { 10384, 0, 10800, 0 }
-    typeMap:bin { "01" }
-  } //Z#507
+  } //Z#518
+  /* Indian/Comoro */ :int { 48 } //Z#519
   /* Indian/Kerguelen */ :table {
     trans:intvector { -631152000 }
     typeOffsets:intvector { 0, 0, 18000, 0 }
     typeMap:bin { "01" }
-  } //Z#508
+  } //Z#520
   /* Indian/Mahe */ :table {
     trans:intvector { -2006653308 }
     typeOffsets:intvector { 13308, 0, 14400, 0 }
     typeMap:bin { "01" }
-  } //Z#509
+  } //Z#521
   /* Indian/Maldives */ :table {
     trans:intvector { -315636840 }
     typeOffsets:intvector { 17640, 0, 18000, 0 }
     typeMap:bin { "01" }
-  } //Z#510
+  } //Z#522
   /* Indian/Mauritius */ :table {
     trans:intvector { -1988164200, 403041600, 417034800, 1224972000, 1238274000 }
     typeOffsets:intvector { 13800, 0, 14400, 0, 14400, 3600 }
     typeMap:bin { "0102010201" }
-  } //Z#511
-  /* Indian/Mayotte */ :table {
-    trans:intvector { -1846292456 }
-    typeOffsets:intvector { 10856, 0, 10800, 0 }
-    typeMap:bin { "01" }
-  } //Z#512
+  } //Z#523
+  /* Indian/Mayotte */ :int { 48 } //Z#524
   /* Indian/Reunion */ :table {
     trans:intvector { -1848886912 }
     typeOffsets:intvector { 13312, 0, 14400, 0 }
     typeMap:bin { "01" }
-  } //Z#513
-  /* Iran */ :int { 314 } //Z#514
-  /* Israel */ :int { 271 } //Z#515
-  /* JST */ :int { 318 } //Z#516
-  /* Jamaica */ :int { 141 } //Z#517
-  /* Japan */ :int { 318 } //Z#518
-  /* Kwajalein */ :int { 560 } //Z#519
-  /* Libya */ :int { 56 } //Z#520
+  } //Z#525
+  /* Iran */ :int { 320 } //Z#526
+  /* Israel */ :int { 278 } //Z#527
+  /* JST */ :int { 324 } //Z#528
+  /* Jamaica */ :int { 142 } //Z#529
+  /* Japan */ :int { 324 } //Z#530
+  /* Kwajalein */ :int { 570 } //Z#531
+  /* Libya */ :int { 56 } //Z#532
   /* MET */ :table {
     trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -766623600, 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 3600, 0, 3600, 3600 }
@@ -2730,11 +2508,11 @@
     finalRule { "C-Eur" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#521
-  /* MIT */ :int { 542 } //Z#522
+  } //Z#533
+  /* MIT */ :int { 551 } //Z#534
   /* MST */ :table {
     typeOffsets:intvector { -25200, 0 }
-  } //Z#523
+  } //Z#535
   /* MST7MDT */ :table {
     trans:intvector { -1633273200, -1615132800, -1601823600, -1583683200, -880210800, -765388800, -84380400, -68659200, -52930800, -37209600, -21481200, -5760000, 9968400, 25689600, 41418000, 57744000, 73472400, 89193600, 104922000, 120643200, 126694800, 152092800, 162378000, 183542400, 199270800, 215596800, 230720400, 247046400, 262774800, 278496000, 294224400, 309945600, 325674000, 341395200, 357123600, 372844800, 388573200, 404899200, 420022800, 436348800, 452077200, 467798400, 483526800, 499248000, 514976400, 530697600, 544611600, 562147200, 576061200, 594201600, 607510800, 625651200, 638960400, 657100800, 671014800, 688550400, 702464400, 720000000, 733914000, 752054400, 765363600, 783504000, 796813200, 814953600, 828867600, 846403200, 860317200, 877852800, 891766800, 909302400, 923216400, 941356800, 954666000, 972806400, 986115600, 1004256000, 1018170000, 1035705600, 1049619600, 1067155200, 1081069200, 1099209600, 1112518800, 1130659200, 1143968400, 1162108800, 1173603600, 1194163200 }
     typeOffsets:intvector { -25200, 0, -25200, 3600 }
@@ -2742,23 +2520,20 @@
     finalRule { "US" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-  } //Z#524
-  /* Mexico/BajaNorte */ :int { 214 } //Z#525
-  /* Mexico/BajaSur */ :int { 159 } //Z#526
-  /* Mexico/General */ :int { 164 } //Z#527
-  /* Mideast/Riyadh87 */ :int { 302 } //Z#528
-  /* Mideast/Riyadh88 */ :int { 303 } //Z#529
-  /* Mideast/Riyadh89 */ :int { 304 } //Z#530
-  /* NET */ :int { 328 } //Z#531
-  /* NST */ :int { 543 } //Z#532
-  /* NZ */ :int { 543 } //Z#533
-  /* NZ-CHAT */ :int { 544 } //Z#534
-  /* Navajo */ :int { 109 } //Z#535
-  /* PLT */ :int { 274 } //Z#536
-  /* PNT */ :int { 183 } //Z#537
-  /* PRC */ :int { 309 } //Z#538
-  /* PRT */ :int { 188 } //Z#539
-  /* PST */ :int { 150 } //Z#540
+  } //Z#536
+  /* Mexico/BajaNorte */ :int { 216 } //Z#537
+  /* Mexico/BajaSur */ :int { 160 } //Z#538
+  /* Mexico/General */ :int { 165 } //Z#539
+  /* NET */ :int { 336 } //Z#540
+  /* NST */ :int { 552 } //Z#541
+  /* NZ */ :int { 552 } //Z#542
+  /* NZ-CHAT */ :int { 554 } //Z#543
+  /* Navajo */ :int { 109 } //Z#544
+  /* PLT */ :int { 281 } //Z#545
+  /* PNT */ :int { 184 } //Z#546
+  /* PRC */ :int { 314 } //Z#547
+  /* PRT */ :int { 189 } //Z#548
+  /* PST */ :int { 151 } //Z#549
   /* PST8PDT */ :table {
     trans:intvector { -1633269600, -1615129200, -1601820000, -1583679600, -880207200, -765385200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 152096400, 162381600, 183546000, 199274400, 215600400, 230724000, 247050000, 262778400, 278499600, 294228000, 309949200, 325677600, 341398800, 357127200, 372848400, 388576800, 404902800, 420026400, 436352400, 452080800, 467802000, 483530400, 499251600, 514980000, 530701200, 544615200, 562150800, 576064800, 594205200, 607514400, 625654800, 638964000, 657104400, 671018400, 688554000, 702468000, 720003600, 733917600, 752058000, 765367200, 783507600, 796816800, 814957200, 828871200, 846406800, 860320800, 877856400, 891770400, 909306000, 923220000, 941360400, 954669600, 972810000, 986119200, 1004259600, 1018173600, 1035709200, 1049623200, 1067158800, 1081072800, 1099213200, 1112522400, 1130662800, 1143972000, 1162112400, 1173607200, 1194166800 }
     typeOffsets:intvector { -28800, 0, -28800, 3600 }
@@ -2766,17 +2541,17 @@
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-  } //Z#541
+  } //Z#550
   /* Pacific/Apia */ :table {
-    transPre32:intvector { -1, 1439229312 }
+    transPre32:intvector { -1, 1849542912 }
     trans:intvector { -1861878784, -631110600, 1285498800, 1301752800, 1316872800, 1325239200, 1333202400, 1348927200 }
     typeOffsets:intvector { 45184, 0, -41400, 0, -41216, 0, -39600, 0, -39600, 3600, 46800, 0, 46800, 3600 }
     typeMap:bin { "020103040304060506" }
     finalRule { "WS" }
     finalRaw:int { 46800 }
     finalYear:int { 2013 }
-    links:intvector { 522, 542 }
-  } //Z#542
+    links:intvector { 534, 551 }
+  } //Z#551
   /* Pacific/Auckland */ :table {
     transPre32:intvector { -1, 1102531752 }
     trans:intvector { -1330335000, -1320057000, -1300699800, -1287396000, -1269250200, -1255946400, -1237800600, -1224496800, -1206351000, -1192442400, -1174901400, -1160992800, -1143451800, -1125914400, -1112607000, -1094464800, -1081157400, -1063015200, -1049707800, -1031565600, -1018258200, -1000116000, -986808600, -968061600, -955359000, -936612000, -923304600, -757425600, 152632800, 162309600, 183477600, 194968800, 215532000, 226418400, 246981600, 257868000, 278431200, 289317600, 309880800, 320767200, 341330400, 352216800, 372780000, 384271200, 404834400, 415720800, 436284000, 447170400, 467733600, 478620000, 499183200, 510069600, 530632800, 541519200, 562082400, 573573600, 594136800, 605023200, 623772000, 637682400, 655221600, 669132000, 686671200, 700581600, 718120800, 732636000, 749570400, 764085600, 781020000, 795535200, 812469600, 826984800, 844524000, 858434400, 875973600, 889884000, 907423200, 921938400, 938872800, 953388000, 970322400, 984837600, 1002376800, 1016287200, 1033826400, 1047736800, 1065276000, 1079791200, 1096725600, 1111240800, 1128175200, 1142690400, 1159624800, 1174140000, 1191074400, 1207404000, 1222524000 }
@@ -2785,232 +2560,230 @@
     finalRule { "NZ" }
     finalRaw:int { 43200 }
     finalYear:int { 2009 }
-    links:intvector { 532, 533, 543 }
-  } //Z#543
+    links:intvector { 230, 233, 541, 542, 552 }
+  } //Z#552
+  /* Pacific/Bougainville */ :table {
+    transPre32:intvector { -1, 1454789160, -1, 1928176784 }
+    trans:intvector { -868010400, -768906000, 1419696000 }
+    typeOffsets:intvector { 37336, 0, 32400, 0, 35312, 0, 36000, 0, 39600, 0 }
+    typeMap:bin { "0203010304" }
+  } //Z#553
   /* Pacific/Chatham */ :table {
-    trans:intvector { -410271228, 152632800, 162309600, 183477600, 194968800, 215532000, 226418400, 246981600, 257868000, 278431200, 289317600, 309880800, 320767200, 341330400, 352216800, 372780000, 384271200, 404834400, 415720800, 436284000, 447170400, 467733600, 478620000, 499183200, 510069600, 530632800, 541519200, 562082400, 573573600, 594136800, 605023200, 623772000, 637682400, 655221600, 669132000, 686671200, 700581600, 718120800, 732636000, 749570400, 764085600, 781020000, 795535200, 812469600, 826984800, 844524000, 858434400, 875973600, 889884000, 907423200, 921938400, 938872800, 953388000, 970322400, 984837600, 1002376800, 1016287200, 1033826400, 1047736800, 1065276000, 1079791200, 1096725600, 1111240800, 1128175200, 1142690400, 1159624800, 1174140000, 1191074400, 1207404000, 1222524000 }
-    typeOffsets:intvector { 44028, 0, 45900, 0, 45900, 3600 }
-    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
+    transPre32:intvector { -1, 1102529668 }
+    trans:intvector { -757426500, 152632800, 162309600, 183477600, 194968800, 215532000, 226418400, 246981600, 257868000, 278431200, 289317600, 309880800, 320767200, 341330400, 352216800, 372780000, 384271200, 404834400, 415720800, 436284000, 447170400, 467733600, 478620000, 499183200, 510069600, 530632800, 541519200, 562082400, 573573600, 594136800, 605023200, 623772000, 637682400, 655221600, 669132000, 686671200, 700581600, 718120800, 732636000, 749570400, 764085600, 781020000, 795535200, 812469600, 826984800, 844524000, 858434400, 875973600, 889884000, 907423200, 921938400, 938872800, 953388000, 970322400, 984837600, 1002376800, 1016287200, 1033826400, 1047736800, 1065276000, 1079791200, 1096725600, 1111240800, 1128175200, 1142690400, 1159624800, 1174140000, 1191074400, 1207404000, 1222524000 }
+    typeOffsets:intvector { 44028, 0, 44100, 0, 45900, 0, 45900, 3600 }
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203" }
     finalRule { "Chatham" }
     finalRaw:int { 45900 }
     finalYear:int { 2009 }
-    links:intvector { 534, 544 }
-  } //Z#544
+    links:intvector { 543, 554 }
+  } //Z#554
   /* Pacific/Chuuk */ :table {
-    transPre32:intvector { -1, 2117478068 }
-    typeOffsets:intvector { 36428, 0, 36000, 0 }
-    typeMap:bin { "01" }
-    links:intvector { 545, 580, 583 }
-  } //Z#545
+    transPre32:intvector { -1, 350338868, -1, 2117478068 }
+    trans:intvector { -1743674400, -1606813200, -907408800, -770634000 }
+    typeOffsets:intvector { -49972, 0, 32400, 0, 36000, 0, 36428, 0 }
+    typeMap:bin { "030201020102" }
+    links:intvector { 555, 590, 593 }
+  } //Z#555
   /* Pacific/Easter */ :table {
-    transPre32:intvector { -1, 1770471960 }
-    trans:intvector { -1178124152, -870552000, -865278000, -736376400, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277272000, 289969200, 308721600, 321418800, 340171200, 353473200, 371620800, 384922800, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 591768000, 605674800, 624427200, 637729200, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400 }
-    typeOffsets:intvector { -26264, 0, -26248, 0, -25200, 0, -25200, 3600, -21600, 0, -21600, 3600 }
-    typeMap:bin { "01030203020302030203020302030203020302030203020302030203020302030405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405" }
+    trans:intvector { -1178124152, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277272000, 289969200, 308721600, 321418800, 340171200, 353473200, 371620800, 384922800, 403070400, 416372400, 434520000, 447822000, 466574400, 479271600, 498024000, 510721200, 529473600, 545194800, 560923200, 574225200, 592372800, 605674800, 624427200, 637124400, 653457600, 668574000, 687326400, 700628400, 718776000, 732078000, 750225600, 763527600, 781675200, 794977200, 813729600, 826426800, 845179200, 859690800, 876628800, 889930800, 906868800, 923194800, 939528000, 952830000, 971582400, 984279600, 1003032000, 1015729200, 1034481600, 1047178800, 1065931200, 1079233200, 1097380800, 1110682800, 1128830400, 1142132400, 1160884800, 1173582000, 1192334400, 1206846000, 1223784000, 1237086000, 1255233600, 1270350000, 1286683200, 1304823600, 1313899200, 1335668400, 1346558400, 1367118000, 1378612800, 1398567600, 1410062400, 1463281200, 1471147200, 1494730800, 1502596800, 1526180400, 1534046400, 1554606000, 1567915200 }
+    typeOffsets:intvector { -26248, 0, -25200, 0, -25200, 3600, -21600, 0, -21600, 3600 }
+    typeMap:bin { "010201020102010201020102010201020102010201020102010201020304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
     finalRule { "Chile" }
     finalRaw:int { -21600 }
-    finalYear:int { 2013 }
-    links:intvector { 386, 546 }
-  } //Z#546
+    finalYear:int { 2020 }
+    links:intvector { 394, 556 }
+  } //Z#556
   /* Pacific/Efate */ :table {
     trans:intvector { -1829387596, 433256400, 448977600, 467298000, 480427200, 496760400, 511876800, 528210000, 543931200, 559659600, 575380800, 591109200, 606830400, 622558800, 638280000, 654008400, 669729600, 686062800, 696340800, 719931600, 727790400 }
     typeOffsets:intvector { 40396, 0, 39600, 0, 39600, 3600 }
     typeMap:bin { "010201020102010201020102010201020102010201" }
-  } //Z#547
+  } //Z#557
   /* Pacific/Enderbury */ :table {
     transPre32:intvector { -1, 2117555556 }
-    trans:intvector { 307627200, 788958000 }
+    trans:intvector { 307627200, 788871600 }
     typeOffsets:intvector { -41060, 0, -43200, 0, -39600, 0, 46800, 0 }
     typeMap:bin { "010203" }
-  } //Z#548
+  } //Z#558
   /* Pacific/Fakaofo */ :table {
     transPre32:intvector { -1, 2117555592 }
     trans:intvector { 1325242800 }
     typeOffsets:intvector { -41096, 0, -39600, 0, 46800, 0 }
     typeMap:bin { "0102" }
-  } //Z#549
+  } //Z#559
   /* Pacific/Fiji */ :table {
-    trans:intvector { -1709985344, 909842400, 920124000, 941896800, 951573600, 1259416800, 1269698400, 1287842400, 1299333600, 1319292000, 1327154400, 1350741600 }
+    trans:intvector { -1709985344, 909842400, 920124000, 941896800, 951573600, 1259416800, 1269698400, 1287842400, 1299333600, 1319292000, 1327154400, 1350741600, 1358604000, 1382796000, 1390050000, 1414850400, 1421503200, 1446300000 }
     typeOffsets:intvector { 42944, 0, 43200, 0, 43200, 3600 }
-    typeMap:bin { "010201020102010201020102" }
+    typeMap:bin { "010201020102010201020102010201020102" }
     finalRule { "Fiji" }
     finalRaw:int { 43200 }
-    finalYear:int { 2013 }
-  } //Z#550
+    finalYear:int { 2016 }
+  } //Z#560
   /* Pacific/Funafuti */ :table {
     transPre32:intvector { -1, 2117471484 }
     typeOffsets:intvector { 43012, 0, 43200, 0 }
     typeMap:bin { "01" }
-  } //Z#551
+  } //Z#561
   /* Pacific/Galapagos */ :table {
-    trans:intvector { -1230746496, 504939600 }
-    typeOffsets:intvector { -21504, 0, -21600, 0, -18000, 0 }
-    typeMap:bin { "0201" }
-  } //Z#552
+    trans:intvector { -1230746496, 504939600, 722930400, 728888400 }
+    typeOffsets:intvector { -21504, 0, -21600, 0, -21600, 3600, -18000, 0 }
+    typeMap:bin { "03010201" }
+  } //Z#562
   /* Pacific/Gambier */ :table {
     trans:intvector { -1806678012 }
     typeOffsets:intvector { -32388, 0, -32400, 0 }
     typeMap:bin { "01" }
-  } //Z#553
+  } //Z#563
   /* Pacific/Guadalcanal */ :table {
     trans:intvector { -1806748788 }
     typeOffsets:intvector { 38388, 0, 39600, 0 }
     typeMap:bin { "01" }
-    links:intvector { 554, 588 }
-  } //Z#554
+    links:intvector { 564, 598 }
+  } //Z#564
   /* Pacific/Guam */ :table {
     transPre32:intvector { -1, 350340556, -1, 2117479756 }
-    typeOffsets:intvector { -51660, 0, 34740, 0, 36000, 0 }
-    typeMap:bin { "0102" }
-  } //Z#555
+    trans:intvector { -885549600, -802256400, -331891200, -281610000, -73728000, -29415540, -16704000, -10659600, 9907200, 21394800, 41356800, 52844400, 124819200, 130863600, 201888000, 209487660, 230659200, 241542000 }
+    typeOffsets:intvector { -51660, 0, 32400, 0, 34740, 0, 36000, 0, 36000, 3600 }
+    typeMap:bin { "0203010304030403040304030403040304030403" }
+    links:intvector { 565, 585 }
+  } //Z#565
   /* Pacific/Honolulu */ :table {
     transPre32:intvector { -1, 1960865982 }
     trans:intvector { -1157283000, -1155436200, -880198200, -765376200, -712150200 }
     typeOffsets:intvector { -37886, 0, -37800, 0, -37800, 3600, -36000, 0 }
     typeMap:bin { "010201020103" }
-    links:intvector { 556, 611 }
-  } //Z#556
-  /* Pacific/Johnston */ :table {
-    typeOffsets:intvector { -36000, 0 }
-  } //Z#557
+    links:intvector { 566, 567, 621 }
+  } //Z#566
+  /* Pacific/Johnston */ :int { 566 } //Z#567
   /* Pacific/Kiritimati */ :table {
     transPre32:intvector { -1, 2117552256 }
-    trans:intvector { 307622400, 788954400 }
+    trans:intvector { 307622400, 788868000 }
     typeOffsets:intvector { -37760, 0, -38400, 0, -36000, 0, 50400, 0 }
     typeMap:bin { "010203" }
-  } //Z#558
+  } //Z#568
   /* Pacific/Kosrae */ :table {
-    transPre32:intvector { -1, 2117475380 }
-    trans:intvector { -7988400, 915105600 }
-    typeOffsets:intvector { 39116, 0, 39600, 0, 43200, 0 }
-    typeMap:bin { "010201" }
-  } //Z#559
+    transPre32:intvector { -1, 350336180, -1, 2117475380 }
+    trans:intvector { -1743678000, -1606813200, -1041418800, -907408800, -770634000, -7988400, 915105600 }
+    typeOffsets:intvector { -47284, 0, 32400, 0, 36000, 0, 39116, 0, 39600, 0, 43200, 0 }
+    typeMap:bin { "030401040201040504" }
+  } //Z#569
   /* Pacific/Kwajalein */ :table {
     transPre32:intvector { -1, 2117474336 }
-    trans:intvector { -7988400, 745848000 }
-    typeOffsets:intvector { 40160, 0, -43200, 0, 39600, 0, 43200, 0 }
-    typeMap:bin { "020103" }
-    links:intvector { 519, 560 }
-  } //Z#560
+    trans:intvector { -1041418800, -907408800, -817462800, -7988400, 745934400 }
+    typeOffsets:intvector { 40160, 0, -43200, 0, 32400, 0, 36000, 0, 39600, 0, 43200, 0 }
+    typeMap:bin { "040302040105" }
+    links:intvector { 531, 570 }
+  } //Z#570
   /* Pacific/Majuro */ :table {
     transPre32:intvector { -1, 2117473408 }
-    trans:intvector { -7988400 }
-    typeOffsets:intvector { 41088, 0, 39600, 0, 43200, 0 }
-    typeMap:bin { "0102" }
-  } //Z#561
+    trans:intvector { -1743678000, -1606813200, -1041418800, -907408800, -818067600, -7988400 }
+    typeOffsets:intvector { 41088, 0, 32400, 0, 36000, 0, 39600, 0, 43200, 0 }
+    typeMap:bin { "03010302010304" }
+  } //Z#571
   /* Pacific/Marquesas */ :table {
     trans:intvector { -1806676920 }
     typeOffsets:intvector { -33480, 0, -34200, 0 }
     typeMap:bin { "01" }
-  } //Z#562
-  /* Pacific/Midway */ :table {
-    transPre32:intvector { -1, 2117557064 }
-    trans:intvector { -428504400, -420645600 }
-    typeOffsets:intvector { -42568, 0, -39600, 0, -39600, 3600 }
-    typeMap:bin { "010201" }
-  } //Z#563
+  } //Z#572
+  /* Pacific/Midway */ :int { 578 } //Z#573
   /* Pacific/Nauru */ :table {
-    trans:intvector { -1545131260, -877347000, -800960400, 294323400 }
+    trans:intvector { -1545131260, -862918200, -767350800, 287418600 }
     typeOffsets:intvector { 40060, 0, 32400, 0, 41400, 0, 43200, 0 }
     typeMap:bin { "02010203" }
-  } //Z#564
+  } //Z#574
   /* Pacific/Niue */ :table {
     transPre32:intvector { -1, 2117555276 }
     trans:intvector { -599575200, 276089400 }
     typeOffsets:intvector { -40780, 0, -41400, 0, -40800, 0, -39600, 0 }
     typeMap:bin { "020103" }
-  } //Z#565
+  } //Z#575
   /* Pacific/Norfolk */ :table {
     transPre32:intvector { -1, 2117474184 }
-    trans:intvector { -599656320 }
-    typeOffsets:intvector { 40312, 0, 40320, 0, 41400, 0 }
-    typeMap:bin { "0102" }
-  } //Z#566
+    trans:intvector { -599656320, 152029800, 162912600, 1443882600 }
+    typeOffsets:intvector { 40312, 0, 39600, 0, 40320, 0, 41400, 0, 41400, 3600 }
+    typeMap:bin { "0203040301" }
+  } //Z#576
   /* Pacific/Noumea */ :table {
     trans:intvector { -1829387148, 250002000, 257342400, 281451600, 288878400, 849366000, 857228400 }
     typeOffsets:intvector { 39948, 0, 39600, 0, 39600, 3600 }
     typeMap:bin { "01020102010201" }
-  } //Z#567
+  } //Z#577
   /* Pacific/Pago_Pago */ :table {
-    transPre32:intvector { -1, 1439229064 }
-    trans:intvector { -1861879032, -631110600 }
-    typeOffsets:intvector { 45432, 0, -41400, 0, -40968, 0, -39600, 0 }
-    typeMap:bin { "020103" }
-    links:intvector { 568, 576, 617 }
-  } //Z#568
+    transPre32:intvector { -1, 1849542664 }
+    trans:intvector { -1861879032 }
+    typeOffsets:intvector { 45432, 0, -40968, 0, -39600, 0 }
+    typeMap:bin { "0102" }
+    links:intvector { 573, 578, 586, 627 }
+  } //Z#578
   /* Pacific/Palau */ :table {
-    transPre32:intvector { -1, 2117482220 }
-    typeOffsets:intvector { 32276, 0, 32400, 0 }
-    typeMap:bin { "01" }
-  } //Z#569
+    transPre32:intvector { -1, 350343020, -1, 2117482220 }
+    typeOffsets:intvector { -54124, 0, 32276, 0, 32400, 0 }
+    typeMap:bin { "0102" }
+  } //Z#579
   /* Pacific/Pitcairn */ :table {
     transPre32:intvector { -1, 2117545716 }
     trans:intvector { 893665800 }
     typeOffsets:intvector { -31220, 0, -30600, 0, -28800, 0 }
     typeMap:bin { "0102" }
-  } //Z#570
+  } //Z#580
   /* Pacific/Pohnpei */ :table {
-    transPre32:intvector { -1, 2117476524 }
-    typeOffsets:intvector { 37972, 0, 39600, 0 }
-    typeMap:bin { "01" }
-    links:intvector { 571, 572 }
-  } //Z#571
-  /* Pacific/Ponape */ :int { 571 } //Z#572
+    transPre32:intvector { -1, 350337324, -1, 2117476524 }
+    trans:intvector { -1743678000, -1606813200, -1041418800, -907408800, -770634000 }
+    typeOffsets:intvector { -48428, 0, 32400, 0, 36000, 0, 37972, 0, 39600, 0 }
+    typeMap:bin { "03040104020104" }
+    links:intvector { 581, 582 }
+  } //Z#581
+  /* Pacific/Ponape */ :int { 581 } //Z#582
   /* Pacific/Port_Moresby */ :table {
     transPre32:intvector { -1, 1454791176, -1, 1928176784 }
     typeOffsets:intvector { 35320, 0, 35312, 0, 36000, 0 }
     typeMap:bin { "0102" }
-  } //Z#573
+  } //Z#583
   /* Pacific/Rarotonga */ :table {
     transPre32:intvector { -1, 2117552840 }
     trans:intvector { 279714600, 289387800, 309952800, 320837400, 341402400, 352287000, 372852000, 384341400, 404906400, 415791000, 436356000, 447240600, 467805600, 478690200, 499255200, 510139800, 530704800, 541589400, 562154400, 573643800, 594208800, 605093400, 625658400, 636543000, 657108000, 667992600 }
     typeOffsets:intvector { -38344, 0, -37800, 0, -36000, 0, -36000, 1800 }
     typeMap:bin { "010302030203020302030203020302030203020302030203020302" }
-  } //Z#574
-  /* Pacific/Saipan */ :table {
-    transPre32:intvector { -1, 350340316, -1, 2117479516 }
-    trans:intvector { -7981200 }
-    typeOffsets:intvector { -51420, 0, 32400, 0, 34980, 0, 36000, 0 }
-    typeMap:bin { "020103" }
-  } //Z#575
-  /* Pacific/Samoa */ :int { 568 } //Z#576
+  } //Z#584
+  /* Pacific/Saipan */ :int { 565 } //Z#585
+  /* Pacific/Samoa */ :int { 578 } //Z#586
   /* Pacific/Tahiti */ :table {
     trans:intvector { -1806674504 }
     typeOffsets:intvector { -35896, 0, -36000, 0 }
     typeMap:bin { "01" }
-  } //Z#577
+  } //Z#587
   /* Pacific/Tarawa */ :table {
     transPre32:intvector { -1, 2117472972 }
     typeOffsets:intvector { 41524, 0, 43200, 0 }
     typeMap:bin { "01" }
-  } //Z#578
+  } //Z#588
   /* Pacific/Tongatapu */ :table {
     transPre32:intvector { -1, 2117470136 }
-    trans:intvector { -915193200, 939214800, 953384400, 973342800, 980596800, 1004792400, 1012046400 }
+    trans:intvector { -915193200, 939214800, 953384400, 973342800, 980596800, 1004792400, 1012046400, 1478350800, 1484398800 }
     typeOffsets:intvector { 44360, 0, 44400, 0, 46800, 0, 46800, 3600 }
-    typeMap:bin { "0102030203020302" }
-  } //Z#579
-  /* Pacific/Truk */ :int { 545 } //Z#580
+    typeMap:bin { "01020302030203020302" }
+  } //Z#589
+  /* Pacific/Truk */ :int { 555 } //Z#590
   /* Pacific/Wake */ :table {
     transPre32:intvector { -1, 2117474508 }
     typeOffsets:intvector { 39988, 0, 43200, 0 }
     typeMap:bin { "01" }
-  } //Z#581
+  } //Z#591
   /* Pacific/Wallis */ :table {
     transPre32:intvector { -1, 2117470376 }
     typeOffsets:intvector { 44120, 0, 43200, 0 }
     typeMap:bin { "01" }
-  } //Z#582
-  /* Pacific/Yap */ :int { 545 } //Z#583
-  /* Poland */ :int { 486 } //Z#584
-  /* Portugal */ :int { 453 } //Z#585
-  /* ROC */ :int { 311 } //Z#586
-  /* ROK */ :int { 308 } //Z#587
-  /* SST */ :int { 554 } //Z#588
-  /* Singapore */ :int { 310 } //Z#589
+  } //Z#592
+  /* Pacific/Yap */ :int { 555 } //Z#593
+  /* Poland */ :int { 498 } //Z#594
+  /* Portugal */ :int { 463 } //Z#595
+  /* ROC */ :int { 317 } //Z#596
+  /* ROK */ :int { 313 } //Z#597
+  /* SST */ :int { 564 } //Z#598
+  /* Singapore */ :int { 315 } //Z#599
   /* SystemV/AST4 */ :table {
     typeOffsets:intvector { -14400, 0 }
-  } //Z#590
+  } //Z#600
   /* SystemV/AST4ADT */ :table {
     transPre32:intvector { -1, 2096195296, -1, 2111916496, -1, 2127644896, -1, 2143366096 }
     trans:intvector { -2135872800, -2120151600, -2104423200, -2088702000, -2072973600, -2056647600, -2040919200, -2025198000, -2009469600, -1993748400, -1978020000, -1962298800, -1946570400, -1930849200, -1915120800, -1898794800, -1883671200, -1867345200, -1851616800, -1835895600, -1820167200, -1804446000, -1788717600, -1772996400, -1757268000, -1741546800, -1725818400, -1709492400, -1693764000, -1678042800, -1662314400, -1646593200, -1630864800, -1615143600, -1599415200, -1583694000, -1567965600, -1551639600, -1536516000, -1520190000, -1504461600, -1488740400, -1473012000, -1457290800, -1441562400, -1425841200, -1410112800, -1394391600, -1378663200, -1362337200, -1347213600, -1330887600, -1315159200, -1299438000, -1283709600, -1267988400, -1252260000, -1236538800, -1220810400, -1205089200, -1189360800, -1173034800, -1157306400, -1141585200, -1125856800, -1110135600, -1094407200, -1078686000, -1062957600, -1047236400, -1031508000, -1015182000, -1000058400, -983732400, -968004000, -952282800, -936554400, -920833200, -905104800, -889383600, -873655200, -857934000, -842205600, -825879600, -810151200, -794430000, -778701600, -762980400, -747252000, -731530800, -715802400, -700081200, -684352800, -668026800, -652903200, -636577200, -620848800, -605127600, -589399200, -573678000, -557949600, -542228400, -526500000, -510778800, -495050400, -478724400, -463600800, -447274800, -431546400, -415825200, -400096800, -384375600, -368647200, -352926000, -337197600, -321476400, -305748000, -289422000, -273693600, -257972400, -242244000, -226522800, -210794400, -195073200, -179344800, -163623600, -147895200, -131569200, -116445600, -100119600, -84391200, -68670000, -52941600, -37220400, -21492000, -5770800, 9957600, 25678800, 41407200, 57733200, 73461600, 89182800, 104911200, 120632400, 126684000, 154501200, 162367200, 183531600, 199260000, 215586000 }
@@ -3019,10 +2792,10 @@
     finalRule { "SystemV" }
     finalRaw:int { -14400 }
     finalYear:int { 1977 }
-  } //Z#591
+  } //Z#601
   /* SystemV/CST6 */ :table {
     typeOffsets:intvector { -21600, 0 }
-  } //Z#592
+  } //Z#602
   /* SystemV/CST6CDT */ :table {
     transPre32:intvector { -1, 2096202496, -1, 2111923696, -1, 2127652096, -1, 2143373296 }
     trans:intvector { -2135865600, -2120144400, -2104416000, -2088694800, -2072966400, -2056640400, -2040912000, -2025190800, -2009462400, -1993741200, -1978012800, -1962291600, -1946563200, -1930842000, -1915113600, -1898787600, -1883664000, -1867338000, -1851609600, -1835888400, -1820160000, -1804438800, -1788710400, -1772989200, -1757260800, -1741539600, -1725811200, -1709485200, -1693756800, -1678035600, -1662307200, -1646586000, -1630857600, -1615136400, -1599408000, -1583686800, -1567958400, -1551632400, -1536508800, -1520182800, -1504454400, -1488733200, -1473004800, -1457283600, -1441555200, -1425834000, -1410105600, -1394384400, -1378656000, -1362330000, -1347206400, -1330880400, -1315152000, -1299430800, -1283702400, -1267981200, -1252252800, -1236531600, -1220803200, -1205082000, -1189353600, -1173027600, -1157299200, -1141578000, -1125849600, -1110128400, -1094400000, -1078678800, -1062950400, -1047229200, -1031500800, -1015174800, -1000051200, -983725200, -967996800, -952275600, -936547200, -920826000, -905097600, -889376400, -873648000, -857926800, -842198400, -825872400, -810144000, -794422800, -778694400, -762973200, -747244800, -731523600, -715795200, -700074000, -684345600, -668019600, -652896000, -636570000, -620841600, -605120400, -589392000, -573670800, -557942400, -542221200, -526492800, -510771600, -495043200, -478717200, -463593600, -447267600, -431539200, -415818000, -400089600, -384368400, -368640000, -352918800, -337190400, -321469200, -305740800, -289414800, -273686400, -257965200, -242236800, -226515600, -210787200, -195066000, -179337600, -163616400, -147888000, -131562000, -116438400, -100112400, -84384000, -68662800, -52934400, -37213200, -21484800, -5763600, 9964800, 25686000, 41414400, 57740400, 73468800, 89190000, 104918400, 120639600, 126691200, 154508400, 162374400, 183538800, 199267200, 215593200 }
@@ -3031,10 +2804,10 @@
     finalRule { "SystemV" }
     finalRaw:int { -21600 }
     finalYear:int { 1977 }
-  } //Z#593
+  } //Z#603
   /* SystemV/EST5 */ :table {
     typeOffsets:intvector { -18000, 0 }
-  } //Z#594
+  } //Z#604
   /* SystemV/EST5EDT */ :table {
     transPre32:intvector { -1, 2096198896, -1, 2111920096, -1, 2127648496, -1, 2143369696 }
     trans:intvector { -2135869200, -2120148000, -2104419600, -2088698400, -2072970000, -2056644000, -2040915600, -2025194400, -2009466000, -1993744800, -1978016400, -1962295200, -1946566800, -1930845600, -1915117200, -1898791200, -1883667600, -1867341600, -1851613200, -1835892000, -1820163600, -1804442400, -1788714000, -1772992800, -1757264400, -1741543200, -1725814800, -1709488800, -1693760400, -1678039200, -1662310800, -1646589600, -1630861200, -1615140000, -1599411600, -1583690400, -1567962000, -1551636000, -1536512400, -1520186400, -1504458000, -1488736800, -1473008400, -1457287200, -1441558800, -1425837600, -1410109200, -1394388000, -1378659600, -1362333600, -1347210000, -1330884000, -1315155600, -1299434400, -1283706000, -1267984800, -1252256400, -1236535200, -1220806800, -1205085600, -1189357200, -1173031200, -1157302800, -1141581600, -1125853200, -1110132000, -1094403600, -1078682400, -1062954000, -1047232800, -1031504400, -1015178400, -1000054800, -983728800, -968000400, -952279200, -936550800, -920829600, -905101200, -889380000, -873651600, -857930400, -842202000, -825876000, -810147600, -794426400, -778698000, -762976800, -747248400, -731527200, -715798800, -700077600, -684349200, -668023200, -652899600, -636573600, -620845200, -605124000, -589395600, -573674400, -557946000, -542224800, -526496400, -510775200, -495046800, -478720800, -463597200, -447271200, -431542800, -415821600, -400093200, -384372000, -368643600, -352922400, -337194000, -321472800, -305744400, -289418400, -273690000, -257968800, -242240400, -226519200, -210790800, -195069600, -179341200, -163620000, -147891600, -131565600, -116442000, -100116000, -84387600, -68666400, -52938000, -37216800, -21488400, -5767200, 9961200, 25682400, 41410800, 57736800, 73465200, 89186400, 104914800, 120636000, 126687600, 154504800, 162370800, 183535200, 199263600, 215589600 }
@@ -3043,13 +2816,13 @@
     finalRule { "SystemV" }
     finalRaw:int { -18000 }
     finalYear:int { 1977 }
-  } //Z#595
+  } //Z#605
   /* SystemV/HST10 */ :table {
     typeOffsets:intvector { -36000, 0 }
-  } //Z#596
+  } //Z#606
   /* SystemV/MST7 */ :table {
     typeOffsets:intvector { -25200, 0 }
-  } //Z#597
+  } //Z#607
   /* SystemV/MST7MDT */ :table {
     transPre32:intvector { -1, 2096206096, -1, 2111927296, -1, 2127655696, -1, 2143376896 }
     trans:intvector { -2135862000, -2120140800, -2104412400, -2088691200, -2072962800, -2056636800, -2040908400, -2025187200, -2009458800, -1993737600, -1978009200, -1962288000, -1946559600, -1930838400, -1915110000, -1898784000, -1883660400, -1867334400, -1851606000, -1835884800, -1820156400, -1804435200, -1788706800, -1772985600, -1757257200, -1741536000, -1725807600, -1709481600, -1693753200, -1678032000, -1662303600, -1646582400, -1630854000, -1615132800, -1599404400, -1583683200, -1567954800, -1551628800, -1536505200, -1520179200, -1504450800, -1488729600, -1473001200, -1457280000, -1441551600, -1425830400, -1410102000, -1394380800, -1378652400, -1362326400, -1347202800, -1330876800, -1315148400, -1299427200, -1283698800, -1267977600, -1252249200, -1236528000, -1220799600, -1205078400, -1189350000, -1173024000, -1157295600, -1141574400, -1125846000, -1110124800, -1094396400, -1078675200, -1062946800, -1047225600, -1031497200, -1015171200, -1000047600, -983721600, -967993200, -952272000, -936543600, -920822400, -905094000, -889372800, -873644400, -857923200, -842194800, -825868800, -810140400, -794419200, -778690800, -762969600, -747241200, -731520000, -715791600, -700070400, -684342000, -668016000, -652892400, -636566400, -620838000, -605116800, -589388400, -573667200, -557938800, -542217600, -526489200, -510768000, -495039600, -478713600, -463590000, -447264000, -431535600, -415814400, -400086000, -384364800, -368636400, -352915200, -337186800, -321465600, -305737200, -289411200, -273682800, -257961600, -242233200, -226512000, -210783600, -195062400, -179334000, -163612800, -147884400, -131558400, -116434800, -100108800, -84380400, -68659200, -52930800, -37209600, -21481200, -5760000, 9968400, 25689600, 41418000, 57744000, 73472400, 89193600, 104922000, 120643200, 126694800, 154512000, 162378000, 183542400, 199270800, 215596800 }
@@ -3058,10 +2831,10 @@
     finalRule { "SystemV" }
     finalRaw:int { -25200 }
     finalYear:int { 1977 }
-  } //Z#598
+  } //Z#608
   /* SystemV/PST8 */ :table {
     typeOffsets:intvector { -28800, 0 }
-  } //Z#599
+  } //Z#609
   /* SystemV/PST8PDT */ :table {
     transPre32:intvector { -1, 2096209696, -1, 2111930896, -1, 2127659296, -1, 2143380496 }
     trans:intvector { -2135858400, -2120137200, -2104408800, -2088687600, -2072959200, -2056633200, -2040904800, -2025183600, -2009455200, -1993734000, -1978005600, -1962284400, -1946556000, -1930834800, -1915106400, -1898780400, -1883656800, -1867330800, -1851602400, -1835881200, -1820152800, -1804431600, -1788703200, -1772982000, -1757253600, -1741532400, -1725804000, -1709478000, -1693749600, -1678028400, -1662300000, -1646578800, -1630850400, -1615129200, -1599400800, -1583679600, -1567951200, -1551625200, -1536501600, -1520175600, -1504447200, -1488726000, -1472997600, -1457276400, -1441548000, -1425826800, -1410098400, -1394377200, -1378648800, -1362322800, -1347199200, -1330873200, -1315144800, -1299423600, -1283695200, -1267974000, -1252245600, -1236524400, -1220796000, -1205074800, -1189346400, -1173020400, -1157292000, -1141570800, -1125842400, -1110121200, -1094392800, -1078671600, -1062943200, -1047222000, -1031493600, -1015167600, -1000044000, -983718000, -967989600, -952268400, -936540000, -920818800, -905090400, -889369200, -873640800, -857919600, -842191200, -825865200, -810136800, -794415600, -778687200, -762966000, -747237600, -731516400, -715788000, -700066800, -684338400, -668012400, -652888800, -636562800, -620834400, -605113200, -589384800, -573663600, -557935200, -542214000, -526485600, -510764400, -495036000, -478710000, -463586400, -447260400, -431532000, -415810800, -400082400, -384361200, -368632800, -352911600, -337183200, -321462000, -305733600, -289407600, -273679200, -257958000, -242229600, -226508400, -210780000, -195058800, -179330400, -163609200, -147880800, -131554800, -116431200, -100105200, -84376800, -68655600, -52927200, -37206000, -21477600, -5756400, 9972000, 25693200, 41421600, 57747600, 73476000, 89197200, 104925600, 120646800, 126698400, 154515600, 162381600, 183546000, 199274400, 215600400 }
@@ -3070,10 +2843,10 @@
     finalRule { "SystemV" }
     finalRaw:int { -28800 }
     finalYear:int { 1977 }
-  } //Z#600
+  } //Z#610
   /* SystemV/YST9 */ :table {
     typeOffsets:intvector { -32400, 0 }
-  } //Z#601
+  } //Z#611
   /* SystemV/YST9YDT */ :table {
     transPre32:intvector { -1, 2096213296, -1, 2111934496, -1, 2127662896, -1, 2143384096 }
     trans:intvector { -2135854800, -2120133600, -2104405200, -2088684000, -2072955600, -2056629600, -2040901200, -2025180000, -2009451600, -1993730400, -1978002000, -1962280800, -1946552400, -1930831200, -1915102800, -1898776800, -1883653200, -1867327200, -1851598800, -1835877600, -1820149200, -1804428000, -1788699600, -1772978400, -1757250000, -1741528800, -1725800400, -1709474400, -1693746000, -1678024800, -1662296400, -1646575200, -1630846800, -1615125600, -1599397200, -1583676000, -1567947600, -1551621600, -1536498000, -1520172000, -1504443600, -1488722400, -1472994000, -1457272800, -1441544400, -1425823200, -1410094800, -1394373600, -1378645200, -1362319200, -1347195600, -1330869600, -1315141200, -1299420000, -1283691600, -1267970400, -1252242000, -1236520800, -1220792400, -1205071200, -1189342800, -1173016800, -1157288400, -1141567200, -1125838800, -1110117600, -1094389200, -1078668000, -1062939600, -1047218400, -1031490000, -1015164000, -1000040400, -983714400, -967986000, -952264800, -936536400, -920815200, -905086800, -889365600, -873637200, -857916000, -842187600, -825861600, -810133200, -794412000, -778683600, -762962400, -747234000, -731512800, -715784400, -700063200, -684334800, -668008800, -652885200, -636559200, -620830800, -605109600, -589381200, -573660000, -557931600, -542210400, -526482000, -510760800, -495032400, -478706400, -463582800, -447256800, -431528400, -415807200, -400078800, -384357600, -368629200, -352908000, -337179600, -321458400, -305730000, -289404000, -273675600, -257954400, -242226000, -226504800, -210776400, -195055200, -179326800, -163605600, -147877200, -131551200, -116427600, -100101600, -84373200, -68652000, -52923600, -37202400, -21474000, -5752800, 9975600, 25696800, 41425200, 57751200, 73479600, 89200800, 104929200, 120650400, 126702000, 154519200, 162385200, 183549600, 199278000, 215604000 }
@@ -3082,26 +2855,26 @@
     finalRule { "SystemV" }
     finalRaw:int { -32400 }
     finalYear:int { 1977 }
-  } //Z#602
-  /* Turkey */ :int { 449 } //Z#603
-  /* UCT */ :int { 426 } //Z#604
-  /* US/Alaska */ :int { 60 } //Z#605
-  /* US/Aleutian */ :int { 59 } //Z#606
-  /* US/Arizona */ :int { 183 } //Z#607
-  /* US/Central */ :int { 98 } //Z#608
-  /* US/East-Indiana */ :int { 130 } //Z#609
-  /* US/Eastern */ :int { 172 } //Z#610
-  /* US/Hawaii */ :int { 556 } //Z#611
-  /* US/Indiana-Starke */ :int { 131 } //Z#612
-  /* US/Michigan */ :int { 110 } //Z#613
-  /* US/Mountain */ :int { 109 } //Z#614
-  /* US/Pacific */ :int { 150 } //Z#615
-  /* US/Pacific-New */ :int { 150 } //Z#616
-  /* US/Samoa */ :int { 568 } //Z#617
-  /* UTC */ :int { 427 } //Z#618
-  /* Universal */ :int { 427 } //Z#619
-  /* VST */ :int { 264 } //Z#620
-  /* W-SU */ :int { 462 } //Z#621
+  } //Z#612
+  /* Turkey */ :int { 458 } //Z#613
+  /* UCT */ :int { 435 } //Z#614
+  /* US/Alaska */ :int { 60 } //Z#615
+  /* US/Aleutian */ :int { 59 } //Z#616
+  /* US/Arizona */ :int { 184 } //Z#617
+  /* US/Central */ :int { 98 } //Z#618
+  /* US/East-Indiana */ :int { 131 } //Z#619
+  /* US/Eastern */ :int { 173 } //Z#620
+  /* US/Hawaii */ :int { 566 } //Z#621
+  /* US/Indiana-Starke */ :int { 132 } //Z#622
+  /* US/Michigan */ :int { 110 } //Z#623
+  /* US/Mountain */ :int { 109 } //Z#624
+  /* US/Pacific */ :int { 151 } //Z#625
+  /* US/Pacific-New */ :int { 151 } //Z#626
+  /* US/Samoa */ :int { 578 } //Z#627
+  /* UTC */ :int { 435 } //Z#628
+  /* Universal */ :int { 435 } //Z#629
+  /* VST */ :int { 271 } //Z#630
+  /* W-SU */ :int { 472 } //Z#631
   /* WET */ :table {
     trans:intvector { 228877200, 243997200, 260326800, 276051600, 291776400, 307501200, 323830800, 338950800, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400, 606877200, 622602000, 638326800, 654656400, 670381200, 686106000, 701830800, 717555600, 733280400, 749005200, 764730000, 780454800, 796179600, 811904400, 828234000, 846378000 }
     typeOffsets:intvector { 0, 0, 0, 3600 }
@@ -3109,8 +2882,8 @@
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-  } //Z#622
-  /* Zulu */ :int { 427 } //Z#623
+  } //Z#632
+  /* Zulu */ :int { 435 } //Z#633
  }
  Names {
     "ACT","AET","AGT","ART","AST","Africa/Abidjan","Africa/Accra" // 6
@@ -3151,150 +2924,154 @@
     ,"America/Dawson","America/Dawson_Creek","America/Denver" // 109
     ,"America/Detroit","America/Dominica","America/Edmonton" // 112
     ,"America/Eirunepe","America/El_Salvador","America/Ensenada" // 115
-    ,"America/Fort_Wayne","America/Fortaleza","America/Glace_Bay" // 118
-    ,"America/Godthab","America/Goose_Bay","America/Grand_Turk" // 121
-    ,"America/Grenada","America/Guadeloupe","America/Guatemala" // 124
-    ,"America/Guayaquil","America/Guyana","America/Halifax" // 127
-    ,"America/Havana","America/Hermosillo","America/Indiana/Indianapolis" // 130
-    ,"America/Indiana/Knox","America/Indiana/Marengo","America/Indiana/Petersburg" // 133
-    ,"America/Indiana/Tell_City","America/Indiana/Vevay" // 135
-    ,"America/Indiana/Vincennes","America/Indiana/Winamac" // 137
-    ,"America/Indianapolis","America/Inuvik","America/Iqaluit" // 140
-    ,"America/Jamaica","America/Jujuy","America/Juneau" // 143
-    ,"America/Kentucky/Louisville","America/Kentucky/Monticello" // 145
-    ,"America/Knox_IN","America/Kralendijk","America/La_Paz" // 148
-    ,"America/Lima","America/Los_Angeles","America/Louisville" // 151
-    ,"America/Lower_Princes","America/Maceio","America/Managua" // 154
-    ,"America/Manaus","America/Marigot","America/Martinique" // 157
-    ,"America/Matamoros","America/Mazatlan","America/Mendoza" // 160
-    ,"America/Menominee","America/Merida","America/Metlakatla" // 163
-    ,"America/Mexico_City","America/Miquelon","America/Moncton" // 166
-    ,"America/Monterrey","America/Montevideo","America/Montreal" // 169
-    ,"America/Montserrat","America/Nassau","America/New_York" // 172
-    ,"America/Nipigon","America/Nome","America/Noronha" // 175
-    ,"America/North_Dakota/Beulah","America/North_Dakota/Center" // 177
-    ,"America/North_Dakota/New_Salem","America/Ojinaga" // 179
-    ,"America/Panama","America/Pangnirtung","America/Paramaribo" // 182
-    ,"America/Phoenix","America/Port-au-Prince","America/Port_of_Spain" // 185
-    ,"America/Porto_Acre","America/Porto_Velho","America/Puerto_Rico" // 188
-    ,"America/Rainy_River","America/Rankin_Inlet","America/Recife" // 191
-    ,"America/Regina","America/Resolute","America/Rio_Branco" // 194
-    ,"America/Rosario","America/Santa_Isabel","America/Santarem" // 197
-    ,"America/Santiago","America/Santo_Domingo","America/Sao_Paulo" // 200
-    ,"America/Scoresbysund","America/Shiprock","America/Sitka" // 203
-    ,"America/St_Barthelemy","America/St_Johns","America/St_Kitts" // 206
-    ,"America/St_Lucia","America/St_Thomas","America/St_Vincent" // 209
-    ,"America/Swift_Current","America/Tegucigalpa","America/Thule" // 212
-    ,"America/Thunder_Bay","America/Tijuana","America/Toronto" // 215
-    ,"America/Tortola","America/Vancouver","America/Virgin" // 218
-    ,"America/Whitehorse","America/Winnipeg","America/Yakutat" // 221
-    ,"America/Yellowknife","Antarctica/Casey","Antarctica/Davis" // 224
-    ,"Antarctica/DumontDUrville","Antarctica/Macquarie" // 226
-    ,"Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer" // 229
-    ,"Antarctica/Rothera","Antarctica/South_Pole","Antarctica/Syowa" // 232
-    ,"Antarctica/Vostok","Arctic/Longyearbyen","Asia/Aden" // 235
-    ,"Asia/Almaty","Asia/Amman","Asia/Anadyr","Asia/Aqtau" // 239
-    ,"Asia/Aqtobe","Asia/Ashgabat","Asia/Ashkhabad","Asia/Baghdad" // 243
-    ,"Asia/Bahrain","Asia/Baku","Asia/Bangkok","Asia/Beirut" // 247
-    ,"Asia/Bishkek","Asia/Brunei","Asia/Calcutta","Asia/Choibalsan" // 251
-    ,"Asia/Chongqing","Asia/Chungking","Asia/Colombo","Asia/Dacca" // 255
-    ,"Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai" // 259
-    ,"Asia/Dushanbe","Asia/Gaza","Asia/Harbin","Asia/Hebron" // 263
-    ,"Asia/Ho_Chi_Minh","Asia/Hong_Kong","Asia/Hovd","Asia/Irkutsk" // 267
-    ,"Asia/Istanbul","Asia/Jakarta","Asia/Jayapura","Asia/Jerusalem" // 271
-    ,"Asia/Kabul","Asia/Kamchatka","Asia/Karachi","Asia/Kashgar" // 275
-    ,"Asia/Kathmandu","Asia/Katmandu","Asia/Khandyga","Asia/Kolkata" // 279
-    ,"Asia/Krasnoyarsk","Asia/Kuala_Lumpur","Asia/Kuching" // 282
-    ,"Asia/Kuwait","Asia/Macao","Asia/Macau","Asia/Magadan" // 286
-    ,"Asia/Makassar","Asia/Manila","Asia/Muscat","Asia/Nicosia" // 290
-    ,"Asia/Novokuznetsk","Asia/Novosibirsk","Asia/Omsk" // 293
-    ,"Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak","Asia/Pyongyang" // 297
-    ,"Asia/Qatar","Asia/Qyzylorda","Asia/Rangoon","Asia/Riyadh" // 301
-    ,"Asia/Riyadh87","Asia/Riyadh88","Asia/Riyadh89","Asia/Saigon" // 305
-    ,"Asia/Sakhalin","Asia/Samarkand","Asia/Seoul","Asia/Shanghai" // 309
-    ,"Asia/Singapore","Asia/Taipei","Asia/Tashkent","Asia/Tbilisi" // 313
-    ,"Asia/Tehran","Asia/Tel_Aviv","Asia/Thimbu","Asia/Thimphu" // 317
-    ,"Asia/Tokyo","Asia/Ujung_Pandang","Asia/Ulaanbaatar" // 320
-    ,"Asia/Ulan_Bator","Asia/Urumqi","Asia/Ust-Nera","Asia/Vientiane" // 324
-    ,"Asia/Vladivostok","Asia/Yakutsk","Asia/Yekaterinburg" // 327
-    ,"Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda" // 330
-    ,"Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faeroe" // 333
-    ,"Atlantic/Faroe","Atlantic/Jan_Mayen","Atlantic/Madeira" // 336
-    ,"Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena" // 339
-    ,"Atlantic/Stanley","Australia/ACT","Australia/Adelaide" // 342
-    ,"Australia/Brisbane","Australia/Broken_Hill","Australia/Canberra" // 345
-    ,"Australia/Currie","Australia/Darwin","Australia/Eucla" // 348
-    ,"Australia/Hobart","Australia/LHI","Australia/Lindeman" // 351
-    ,"Australia/Lord_Howe","Australia/Melbourne","Australia/NSW" // 354
-    ,"Australia/North","Australia/Perth","Australia/Queensland" // 357
-    ,"Australia/South","Australia/Sydney","Australia/Tasmania" // 360
-    ,"Australia/Victoria","Australia/West","Australia/Yancowinna" // 363
-    ,"BET","BST","Brazil/Acre","Brazil/DeNoronha","Brazil/East" // 368
-    ,"Brazil/West","CAT","CET","CNT","CST","CST6CDT","CTT" // 375
-    ,"Canada/Atlantic","Canada/Central","Canada/East-Saskatchewan" // 378
-    ,"Canada/Eastern","Canada/Mountain","Canada/Newfoundland" // 381
-    ,"Canada/Pacific","Canada/Saskatchewan","Canada/Yukon" // 384
-    ,"Chile/Continental","Chile/EasterIsland","Cuba","EAT" // 388
-    ,"ECT","EET","EST","EST5EDT","Egypt","Eire","Etc/GMT" // 395
-    ,"Etc/GMT+0","Etc/GMT+1","Etc/GMT+10","Etc/GMT+11" // 399
-    ,"Etc/GMT+12","Etc/GMT+2","Etc/GMT+3","Etc/GMT+4","Etc/GMT+5" // 404
-    ,"Etc/GMT+6","Etc/GMT+7","Etc/GMT+8","Etc/GMT+9","Etc/GMT-0" // 409
-    ,"Etc/GMT-1","Etc/GMT-10","Etc/GMT-11","Etc/GMT-12" // 413
-    ,"Etc/GMT-13","Etc/GMT-14","Etc/GMT-2","Etc/GMT-3" // 417
-    ,"Etc/GMT-4","Etc/GMT-5","Etc/GMT-6","Etc/GMT-7","Etc/GMT-8" // 422
-    ,"Etc/GMT-9","Etc/GMT0","Etc/Greenwich","Etc/UCT","Etc/UTC" // 427
-    ,"Etc/Universal","Etc/Unknown","Etc/Zulu","Europe/Amsterdam" // 431
-    ,"Europe/Andorra","Europe/Athens","Europe/Belfast" // 434
-    ,"Europe/Belgrade","Europe/Berlin","Europe/Bratislava" // 437
-    ,"Europe/Brussels","Europe/Bucharest","Europe/Budapest" // 440
-    ,"Europe/Busingen","Europe/Chisinau","Europe/Copenhagen" // 443
-    ,"Europe/Dublin","Europe/Gibraltar","Europe/Guernsey" // 446
-    ,"Europe/Helsinki","Europe/Isle_of_Man","Europe/Istanbul" // 449
-    ,"Europe/Jersey","Europe/Kaliningrad","Europe/Kiev" // 452
-    ,"Europe/Lisbon","Europe/Ljubljana","Europe/London" // 455
-    ,"Europe/Luxembourg","Europe/Madrid","Europe/Malta" // 458
-    ,"Europe/Mariehamn","Europe/Minsk","Europe/Monaco" // 461
-    ,"Europe/Moscow","Europe/Nicosia","Europe/Oslo","Europe/Paris" // 465
-    ,"Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome" // 469
-    ,"Europe/Samara","Europe/San_Marino","Europe/Sarajevo" // 472
-    ,"Europe/Simferopol","Europe/Skopje","Europe/Sofia" // 475
-    ,"Europe/Stockholm","Europe/Tallinn","Europe/Tirane" // 478
-    ,"Europe/Tiraspol","Europe/Uzhgorod","Europe/Vaduz" // 481
-    ,"Europe/Vatican","Europe/Vienna","Europe/Vilnius" // 484
-    ,"Europe/Volgograd","Europe/Warsaw","Europe/Zagreb" // 487
-    ,"Europe/Zaporozhye","Europe/Zurich","Factory","GB" // 491
-    ,"GB-Eire","GMT","GMT+0","GMT-0","GMT0","Greenwich" // 497
-    ,"HST","Hongkong","IET","IST","Iceland","Indian/Antananarivo" // 503
-    ,"Indian/Chagos","Indian/Christmas","Indian/Cocos" // 506
-    ,"Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives" // 510
-    ,"Indian/Mauritius","Indian/Mayotte","Indian/Reunion" // 513
-    ,"Iran","Israel","JST","Jamaica","Japan","Kwajalein" // 519
-    ,"Libya","MET","MIT","MST","MST7MDT","Mexico/BajaNorte" // 525
-    ,"Mexico/BajaSur","Mexico/General","Mideast/Riyadh87" // 528
-    ,"Mideast/Riyadh88","Mideast/Riyadh89","NET","NST" // 532
-    ,"NZ","NZ-CHAT","Navajo","PLT","PNT","PRC","PRT","PST" // 540
-    ,"PST8PDT","Pacific/Apia","Pacific/Auckland","Pacific/Chatham" // 544
-    ,"Pacific/Chuuk","Pacific/Easter","Pacific/Efate","Pacific/Enderbury" // 548
-    ,"Pacific/Fakaofo","Pacific/Fiji","Pacific/Funafuti" // 551
-    ,"Pacific/Galapagos","Pacific/Gambier","Pacific/Guadalcanal" // 554
-    ,"Pacific/Guam","Pacific/Honolulu","Pacific/Johnston" // 557
-    ,"Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein" // 560
-    ,"Pacific/Majuro","Pacific/Marquesas","Pacific/Midway" // 563
-    ,"Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea" // 567
-    ,"Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn" // 570
-    ,"Pacific/Pohnpei","Pacific/Ponape","Pacific/Port_Moresby" // 573
-    ,"Pacific/Rarotonga","Pacific/Saipan","Pacific/Samoa" // 576
-    ,"Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu" // 579
-    ,"Pacific/Truk","Pacific/Wake","Pacific/Wallis","Pacific/Yap" // 583
-    ,"Poland","Portugal","ROC","ROK","SST","Singapore" // 589
-    ,"SystemV/AST4","SystemV/AST4ADT","SystemV/CST6","SystemV/CST6CDT" // 593
-    ,"SystemV/EST5","SystemV/EST5EDT","SystemV/HST10","SystemV/MST7" // 597
-    ,"SystemV/MST7MDT","SystemV/PST8","SystemV/PST8PDT" // 600
-    ,"SystemV/YST9","SystemV/YST9YDT","Turkey","UCT","US/Alaska" // 605
-    ,"US/Aleutian","US/Arizona","US/Central","US/East-Indiana" // 609
-    ,"US/Eastern","US/Hawaii","US/Indiana-Starke","US/Michigan" // 613
-    ,"US/Mountain","US/Pacific","US/Pacific-New","US/Samoa" // 617
-    ,"UTC","Universal","VST","W-SU","WET","Zulu" // 623
+    ,"America/Fort_Nelson","America/Fort_Wayne","America/Fortaleza" // 118
+    ,"America/Glace_Bay","America/Godthab","America/Goose_Bay" // 121
+    ,"America/Grand_Turk","America/Grenada","America/Guadeloupe" // 124
+    ,"America/Guatemala","America/Guayaquil","America/Guyana" // 127
+    ,"America/Halifax","America/Havana","America/Hermosillo" // 130
+    ,"America/Indiana/Indianapolis","America/Indiana/Knox" // 132
+    ,"America/Indiana/Marengo","America/Indiana/Petersburg" // 134
+    ,"America/Indiana/Tell_City","America/Indiana/Vevay" // 136
+    ,"America/Indiana/Vincennes","America/Indiana/Winamac" // 138
+    ,"America/Indianapolis","America/Inuvik","America/Iqaluit" // 141
+    ,"America/Jamaica","America/Jujuy","America/Juneau" // 144
+    ,"America/Kentucky/Louisville","America/Kentucky/Monticello" // 146
+    ,"America/Knox_IN","America/Kralendijk","America/La_Paz" // 149
+    ,"America/Lima","America/Los_Angeles","America/Louisville" // 152
+    ,"America/Lower_Princes","America/Maceio","America/Managua" // 155
+    ,"America/Manaus","America/Marigot","America/Martinique" // 158
+    ,"America/Matamoros","America/Mazatlan","America/Mendoza" // 161
+    ,"America/Menominee","America/Merida","America/Metlakatla" // 164
+    ,"America/Mexico_City","America/Miquelon","America/Moncton" // 167
+    ,"America/Monterrey","America/Montevideo","America/Montreal" // 170
+    ,"America/Montserrat","America/Nassau","America/New_York" // 173
+    ,"America/Nipigon","America/Nome","America/Noronha" // 176
+    ,"America/North_Dakota/Beulah","America/North_Dakota/Center" // 178
+    ,"America/North_Dakota/New_Salem","America/Ojinaga" // 180
+    ,"America/Panama","America/Pangnirtung","America/Paramaribo" // 183
+    ,"America/Phoenix","America/Port-au-Prince","America/Port_of_Spain" // 186
+    ,"America/Porto_Acre","America/Porto_Velho","America/Puerto_Rico" // 189
+    ,"America/Punta_Arenas","America/Rainy_River","America/Rankin_Inlet" // 192
+    ,"America/Recife","America/Regina","America/Resolute" // 195
+    ,"America/Rio_Branco","America/Rosario","America/Santa_Isabel" // 198
+    ,"America/Santarem","America/Santiago","America/Santo_Domingo" // 201
+    ,"America/Sao_Paulo","America/Scoresbysund","America/Shiprock" // 204
+    ,"America/Sitka","America/St_Barthelemy","America/St_Johns" // 207
+    ,"America/St_Kitts","America/St_Lucia","America/St_Thomas" // 210
+    ,"America/St_Vincent","America/Swift_Current","America/Tegucigalpa" // 213
+    ,"America/Thule","America/Thunder_Bay","America/Tijuana" // 216
+    ,"America/Toronto","America/Tortola","America/Vancouver" // 219
+    ,"America/Virgin","America/Whitehorse","America/Winnipeg" // 222
+    ,"America/Yakutat","America/Yellowknife","Antarctica/Casey" // 225
+    ,"Antarctica/Davis","Antarctica/DumontDUrville","Antarctica/Macquarie" // 228
+    ,"Antarctica/Mawson","Antarctica/McMurdo","Antarctica/Palmer" // 231
+    ,"Antarctica/Rothera","Antarctica/South_Pole","Antarctica/Syowa" // 234
+    ,"Antarctica/Troll","Antarctica/Vostok","Arctic/Longyearbyen" // 237
+    ,"Asia/Aden","Asia/Almaty","Asia/Amman","Asia/Anadyr" // 241
+    ,"Asia/Aqtau","Asia/Aqtobe","Asia/Ashgabat","Asia/Ashkhabad" // 245
+    ,"Asia/Atyrau","Asia/Baghdad","Asia/Bahrain","Asia/Baku" // 249
+    ,"Asia/Bangkok","Asia/Barnaul","Asia/Beirut","Asia/Bishkek" // 253
+    ,"Asia/Brunei","Asia/Calcutta","Asia/Chita","Asia/Choibalsan" // 257
+    ,"Asia/Chongqing","Asia/Chungking","Asia/Colombo","Asia/Dacca" // 261
+    ,"Asia/Damascus","Asia/Dhaka","Asia/Dili","Asia/Dubai" // 265
+    ,"Asia/Dushanbe","Asia/Famagusta","Asia/Gaza","Asia/Harbin" // 269
+    ,"Asia/Hebron","Asia/Ho_Chi_Minh","Asia/Hong_Kong" // 272
+    ,"Asia/Hovd","Asia/Irkutsk","Asia/Istanbul","Asia/Jakarta" // 276
+    ,"Asia/Jayapura","Asia/Jerusalem","Asia/Kabul","Asia/Kamchatka" // 280
+    ,"Asia/Karachi","Asia/Kashgar","Asia/Kathmandu","Asia/Katmandu" // 284
+    ,"Asia/Khandyga","Asia/Kolkata","Asia/Krasnoyarsk" // 287
+    ,"Asia/Kuala_Lumpur","Asia/Kuching","Asia/Kuwait","Asia/Macao" // 291
+    ,"Asia/Macau","Asia/Magadan","Asia/Makassar","Asia/Manila" // 295
+    ,"Asia/Muscat","Asia/Nicosia","Asia/Novokuznetsk","Asia/Novosibirsk" // 299
+    ,"Asia/Omsk","Asia/Oral","Asia/Phnom_Penh","Asia/Pontianak" // 303
+    ,"Asia/Pyongyang","Asia/Qatar","Asia/Qostanay","Asia/Qyzylorda" // 307
+    ,"Asia/Rangoon","Asia/Riyadh","Asia/Saigon","Asia/Sakhalin" // 311
+    ,"Asia/Samarkand","Asia/Seoul","Asia/Shanghai","Asia/Singapore" // 315
+    ,"Asia/Srednekolymsk","Asia/Taipei","Asia/Tashkent" // 318
+    ,"Asia/Tbilisi","Asia/Tehran","Asia/Tel_Aviv","Asia/Thimbu" // 322
+    ,"Asia/Thimphu","Asia/Tokyo","Asia/Tomsk","Asia/Ujung_Pandang" // 326
+    ,"Asia/Ulaanbaatar","Asia/Ulan_Bator","Asia/Urumqi" // 329
+    ,"Asia/Ust-Nera","Asia/Vientiane","Asia/Vladivostok" // 332
+    ,"Asia/Yakutsk","Asia/Yangon","Asia/Yekaterinburg" // 335
+    ,"Asia/Yerevan","Atlantic/Azores","Atlantic/Bermuda" // 338
+    ,"Atlantic/Canary","Atlantic/Cape_Verde","Atlantic/Faeroe" // 341
+    ,"Atlantic/Faroe","Atlantic/Jan_Mayen","Atlantic/Madeira" // 344
+    ,"Atlantic/Reykjavik","Atlantic/South_Georgia","Atlantic/St_Helena" // 347
+    ,"Atlantic/Stanley","Australia/ACT","Australia/Adelaide" // 350
+    ,"Australia/Brisbane","Australia/Broken_Hill","Australia/Canberra" // 353
+    ,"Australia/Currie","Australia/Darwin","Australia/Eucla" // 356
+    ,"Australia/Hobart","Australia/LHI","Australia/Lindeman" // 359
+    ,"Australia/Lord_Howe","Australia/Melbourne","Australia/NSW" // 362
+    ,"Australia/North","Australia/Perth","Australia/Queensland" // 365
+    ,"Australia/South","Australia/Sydney","Australia/Tasmania" // 368
+    ,"Australia/Victoria","Australia/West","Australia/Yancowinna" // 371
+    ,"BET","BST","Brazil/Acre","Brazil/DeNoronha","Brazil/East" // 376
+    ,"Brazil/West","CAT","CET","CNT","CST","CST6CDT","CTT" // 383
+    ,"Canada/Atlantic","Canada/Central","Canada/East-Saskatchewan" // 386
+    ,"Canada/Eastern","Canada/Mountain","Canada/Newfoundland" // 389
+    ,"Canada/Pacific","Canada/Saskatchewan","Canada/Yukon" // 392
+    ,"Chile/Continental","Chile/EasterIsland","Cuba","EAT" // 396
+    ,"ECT","EET","EST","EST5EDT","Egypt","Eire","Etc/GMT" // 403
+    ,"Etc/GMT+0","Etc/GMT+1","Etc/GMT+10","Etc/GMT+11" // 407
+    ,"Etc/GMT+12","Etc/GMT+2","Etc/GMT+3","Etc/GMT+4","Etc/GMT+5" // 412
+    ,"Etc/GMT+6","Etc/GMT+7","Etc/GMT+8","Etc/GMT+9","Etc/GMT-0" // 417
+    ,"Etc/GMT-1","Etc/GMT-10","Etc/GMT-11","Etc/GMT-12" // 421
+    ,"Etc/GMT-13","Etc/GMT-14","Etc/GMT-2","Etc/GMT-3" // 425
+    ,"Etc/GMT-4","Etc/GMT-5","Etc/GMT-6","Etc/GMT-7","Etc/GMT-8" // 430
+    ,"Etc/GMT-9","Etc/GMT0","Etc/Greenwich","Etc/UCT","Etc/UTC" // 435
+    ,"Etc/Universal","Etc/Unknown","Etc/Zulu","Europe/Amsterdam" // 439
+    ,"Europe/Andorra","Europe/Astrakhan","Europe/Athens" // 442
+    ,"Europe/Belfast","Europe/Belgrade","Europe/Berlin" // 445
+    ,"Europe/Bratislava","Europe/Brussels","Europe/Bucharest" // 448
+    ,"Europe/Budapest","Europe/Busingen","Europe/Chisinau" // 451
+    ,"Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar" // 454
+    ,"Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man" // 457
+    ,"Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad" // 460
+    ,"Europe/Kiev","Europe/Kirov","Europe/Lisbon","Europe/Ljubljana" // 464
+    ,"Europe/London","Europe/Luxembourg","Europe/Madrid" // 467
+    ,"Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco" // 471
+    ,"Europe/Moscow","Europe/Nicosia","Europe/Oslo","Europe/Paris" // 475
+    ,"Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome" // 479
+    ,"Europe/Samara","Europe/San_Marino","Europe/Sarajevo" // 482
+    ,"Europe/Saratov","Europe/Simferopol","Europe/Skopje" // 485
+    ,"Europe/Sofia","Europe/Stockholm","Europe/Tallinn" // 488
+    ,"Europe/Tirane","Europe/Tiraspol","Europe/Ulyanovsk" // 491
+    ,"Europe/Uzhgorod","Europe/Vaduz","Europe/Vatican" // 494
+    ,"Europe/Vienna","Europe/Vilnius","Europe/Volgograd" // 497
+    ,"Europe/Warsaw","Europe/Zagreb","Europe/Zaporozhye" // 500
+    ,"Europe/Zurich","Factory","GB","GB-Eire","GMT","GMT+0" // 506
+    ,"GMT-0","GMT0","Greenwich","HST","Hongkong","IET" // 512
+    ,"IST","Iceland","Indian/Antananarivo","Indian/Chagos" // 516
+    ,"Indian/Christmas","Indian/Cocos","Indian/Comoro" // 519
+    ,"Indian/Kerguelen","Indian/Mahe","Indian/Maldives" // 522
+    ,"Indian/Mauritius","Indian/Mayotte","Indian/Reunion" // 525
+    ,"Iran","Israel","JST","Jamaica","Japan","Kwajalein" // 531
+    ,"Libya","MET","MIT","MST","MST7MDT","Mexico/BajaNorte" // 537
+    ,"Mexico/BajaSur","Mexico/General","NET","NST","NZ" // 542
+    ,"NZ-CHAT","Navajo","PLT","PNT","PRC","PRT","PST","PST8PDT" // 550
+    ,"Pacific/Apia","Pacific/Auckland","Pacific/Bougainville" // 553
+    ,"Pacific/Chatham","Pacific/Chuuk","Pacific/Easter" // 556
+    ,"Pacific/Efate","Pacific/Enderbury","Pacific/Fakaofo" // 559
+    ,"Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos" // 562
+    ,"Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam" // 565
+    ,"Pacific/Honolulu","Pacific/Johnston","Pacific/Kiritimati" // 568
+    ,"Pacific/Kosrae","Pacific/Kwajalein","Pacific/Majuro" // 571
+    ,"Pacific/Marquesas","Pacific/Midway","Pacific/Nauru" // 574
+    ,"Pacific/Niue","Pacific/Norfolk","Pacific/Noumea" // 577
+    ,"Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn" // 580
+    ,"Pacific/Pohnpei","Pacific/Ponape","Pacific/Port_Moresby" // 583
+    ,"Pacific/Rarotonga","Pacific/Saipan","Pacific/Samoa" // 586
+    ,"Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu" // 589
+    ,"Pacific/Truk","Pacific/Wake","Pacific/Wallis","Pacific/Yap" // 593
+    ,"Poland","Portugal","ROC","ROK","SST","Singapore" // 599
+    ,"SystemV/AST4","SystemV/AST4ADT","SystemV/CST6","SystemV/CST6CDT" // 603
+    ,"SystemV/EST5","SystemV/EST5EDT","SystemV/HST10","SystemV/MST7" // 607
+    ,"SystemV/MST7MDT","SystemV/PST8","SystemV/PST8PDT" // 610
+    ,"SystemV/YST9","SystemV/YST9YDT","Turkey","UCT","US/Alaska" // 615
+    ,"US/Aleutian","US/Arizona","US/Central","US/East-Indiana" // 619
+    ,"US/Eastern","US/Hawaii","US/Indiana-Starke","US/Michigan" // 623
+    ,"US/Mountain","US/Pacific","US/Pacific-New","US/Samoa" // 627
+    ,"UTC","Universal","VST","W-SU","WET","Zulu" // 633
  }
  Rules { 
   AN:intvector {
@@ -3309,38 +3086,38 @@
   AV:intvector {
     9, 1, -1, 7200, 1, 3, 1, -1, 7200, 1, 3600
   } //_#3
-  Azer:intvector {
-    2, -31, -1, 14400, 0, 9, -31, -1, 18000, 0, 3600
-  } //_#4
   Brazil:intvector {
-    9, 15, -1, 0, 0, 1, 15, -1, 0, 0, 3600
-  } //_#5
+    10, 1, -1, 0, 0, 1, 15, -1, 0, 0, 3600
+  } //_#4
   C-Eur:intvector {
     2, -31, -1, 7200, 1, 9, -31, -1, 7200, 1, 3600
-  } //_#6
+  } //_#5
   Canada:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#7
+  } //_#6
   Chatham:intvector {
     8, -30, -1, 9900, 1, 3, 1, -1, 9900, 1, 3600
-  } //_#8
+  } //_#7
   Chile:intvector {
-    8, 2, -1, 14400, 2, 3, 23, -1, 10800, 2, 3600
-  } //_#9
-  ChileAQ:intvector {
-    8, 2, -1, 14400, 2, 3, 23, -1, 10800, 2, 3600
-  } //_#10
+    8, 2, -1, 14400, 2, 3, 2, -1, 10800, 2, 3600
+  } //_#8
   Cuba:intvector {
     2, 8, -1, 0, 1, 10, 1, -1, 0, 1, 3600
-  } //_#11
+  } //_#9
   EU:intvector {
     2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 3600
-  } //_#12
+  } //_#10
   EUAsia:intvector {
     2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 3600
-  } //_#13
+  } //_#11
   Fiji:intvector {
-    9, 18, -1, 7200, 0, 0, 18, -1, 10800, 0, 3600
+    10, 1, -1, 7200, 0, 0, 13, -1, 10800, 0, 3600
+  } //_#12
+  Haiti:intvector {
+    2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
+  } //_#13
+  Iran:intvector {
+    2, 20, 0, 86400, 0, 8, 20, 0, 86400, 0, 3600
   } //_#14
   Jordan:intvector {
     2, -31, -5, 86400, 0, 9, -31, -6, 0, 1, 3600
@@ -3351,51 +3128,42 @@
   Lebanon:intvector {
     2, -31, -1, 0, 0, 9, -31, -1, 0, 0, 3600
   } //_#17
-  Libya:intvector {
-    2, -31, -6, 3600, 0, 9, -31, -6, 7200, 0, 3600
-  } //_#18
   Mexico:intvector {
     3, 1, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
+  } //_#18
+  Moldova:intvector {
+    2, -31, -1, 7200, 0, 9, -31, -1, 10800, 0, 3600
   } //_#19
-  Morocco:intvector {
-    3, -30, -1, 7200, 0, 8, -30, -1, 10800, 0, 3600
-  } //_#20
   NZ:intvector {
     8, -30, -1, 7200, 1, 3, 1, -1, 7200, 1, 3600
+  } //_#20
+  Palestine:intvector {
+    2, 24, -7, 3600, 0, 9, -31, -7, 3600, 0, 3600
   } //_#21
-  NZAQ:intvector {
-    8, -30, -1, 7200, 1, 3, 1, -1, 7200, 1, 3600
-  } //_#22
-  Namibia:intvector {
-    8, 1, -1, 7200, 0, 3, 1, -1, 7200, 0, 3600
-  } //_#23
   Para:intvector {
-    9, 1, -1, 0, 0, 3, 8, -1, 0, 0, 3600
-  } //_#24
+    9, 1, -1, 0, 0, 2, 22, -1, 0, 0, 3600
+  } //_#22
   Syria:intvector {
     2, -31, -6, 0, 0, 9, -31, -6, 0, 0, 3600
-  } //_#25
+  } //_#23
   SystemV:intvector {
     3, -30, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#26
-  TC:intvector {
-    2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#27
+  } //_#24
   Thule:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#28
+  } //_#25
+  Troll:intvector {
+    2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 7200
+  } //_#26
   US:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#29
-  Uruguay:intvector {
-    9, 1, -1, 7200, 0, 2, 8, -1, 7200, 0, 3600
-  } //_#30
+  } //_#27
   WS:intvector {
     8, -30, -1, 10800, 0, 3, 1, -1, 14400, 0, 3600
-  } //_#31
+  } //_#28
   Zion:intvector {
-    2, 23, -6, 7200, 0, 9, 2, -1, 7200, 0, 3600
-  } //_#32
+    2, 23, -6, 7200, 0, 9, -31, -1, 7200, 0, 3600
+  } //_#29
  }
  Regions:array {
   "AU", //Z#0 ACT
@@ -3453,7 +3221,7 @@
   "BF", //Z#52 Africa/Ouagadougou
   "BJ", //Z#53 Africa/Porto-Novo
   "ST", //Z#54 Africa/Sao_Tome
-  "ML", //Z#55 Africa/Timbuktu
+  "CI", //Z#55 Africa/Timbuktu
   "LY", //Z#56 Africa/Tripoli
   "TN", //Z#57 Africa/Tunis
   "NA", //Z#58 Africa/Windhoek
@@ -3514,513 +3282,523 @@
   "BR", //Z#113 America/Eirunepe
   "SV", //Z#114 America/El_Salvador
   "MX", //Z#115 America/Ensenada
-  "US", //Z#116 America/Fort_Wayne
-  "BR", //Z#117 America/Fortaleza
-  "CA", //Z#118 America/Glace_Bay
-  "GL", //Z#119 America/Godthab
-  "CA", //Z#120 America/Goose_Bay
-  "TC", //Z#121 America/Grand_Turk
-  "GD", //Z#122 America/Grenada
-  "GP", //Z#123 America/Guadeloupe
-  "GT", //Z#124 America/Guatemala
-  "EC", //Z#125 America/Guayaquil
-  "GY", //Z#126 America/Guyana
-  "CA", //Z#127 America/Halifax
-  "CU", //Z#128 America/Havana
-  "MX", //Z#129 America/Hermosillo
-  "US", //Z#130 America/Indiana/Indianapolis
-  "US", //Z#131 America/Indiana/Knox
-  "US", //Z#132 America/Indiana/Marengo
-  "US", //Z#133 America/Indiana/Petersburg
-  "US", //Z#134 America/Indiana/Tell_City
-  "US", //Z#135 America/Indiana/Vevay
-  "US", //Z#136 America/Indiana/Vincennes
-  "US", //Z#137 America/Indiana/Winamac
-  "US", //Z#138 America/Indianapolis
-  "CA", //Z#139 America/Inuvik
-  "CA", //Z#140 America/Iqaluit
-  "JM", //Z#141 America/Jamaica
-  "AR", //Z#142 America/Jujuy
-  "US", //Z#143 America/Juneau
-  "US", //Z#144 America/Kentucky/Louisville
-  "US", //Z#145 America/Kentucky/Monticello
-  "US", //Z#146 America/Knox_IN
-  "BQ", //Z#147 America/Kralendijk
-  "BO", //Z#148 America/La_Paz
-  "PE", //Z#149 America/Lima
-  "US", //Z#150 America/Los_Angeles
-  "US", //Z#151 America/Louisville
-  "SX", //Z#152 America/Lower_Princes
-  "BR", //Z#153 America/Maceio
-  "NI", //Z#154 America/Managua
-  "BR", //Z#155 America/Manaus
-  "MF", //Z#156 America/Marigot
-  "MQ", //Z#157 America/Martinique
-  "MX", //Z#158 America/Matamoros
-  "MX", //Z#159 America/Mazatlan
-  "AR", //Z#160 America/Mendoza
-  "US", //Z#161 America/Menominee
-  "MX", //Z#162 America/Merida
-  "US", //Z#163 America/Metlakatla
-  "MX", //Z#164 America/Mexico_City
-  "PM", //Z#165 America/Miquelon
-  "CA", //Z#166 America/Moncton
-  "MX", //Z#167 America/Monterrey
-  "UY", //Z#168 America/Montevideo
-  "CA", //Z#169 America/Montreal
-  "MS", //Z#170 America/Montserrat
-  "BS", //Z#171 America/Nassau
-  "US", //Z#172 America/New_York
-  "CA", //Z#173 America/Nipigon
-  "US", //Z#174 America/Nome
-  "BR", //Z#175 America/Noronha
-  "US", //Z#176 America/North_Dakota/Beulah
-  "US", //Z#177 America/North_Dakota/Center
-  "US", //Z#178 America/North_Dakota/New_Salem
-  "MX", //Z#179 America/Ojinaga
-  "PA", //Z#180 America/Panama
-  "CA", //Z#181 America/Pangnirtung
-  "SR", //Z#182 America/Paramaribo
-  "US", //Z#183 America/Phoenix
-  "HT", //Z#184 America/Port-au-Prince
-  "TT", //Z#185 America/Port_of_Spain
-  "BR", //Z#186 America/Porto_Acre
-  "BR", //Z#187 America/Porto_Velho
-  "PR", //Z#188 America/Puerto_Rico
-  "CA", //Z#189 America/Rainy_River
-  "CA", //Z#190 America/Rankin_Inlet
-  "BR", //Z#191 America/Recife
-  "CA", //Z#192 America/Regina
-  "CA", //Z#193 America/Resolute
-  "BR", //Z#194 America/Rio_Branco
-  "AR", //Z#195 America/Rosario
-  "MX", //Z#196 America/Santa_Isabel
-  "BR", //Z#197 America/Santarem
-  "CL", //Z#198 America/Santiago
-  "DO", //Z#199 America/Santo_Domingo
-  "BR", //Z#200 America/Sao_Paulo
-  "GL", //Z#201 America/Scoresbysund
-  "US", //Z#202 America/Shiprock
-  "US", //Z#203 America/Sitka
-  "BL", //Z#204 America/St_Barthelemy
-  "CA", //Z#205 America/St_Johns
-  "KN", //Z#206 America/St_Kitts
-  "LC", //Z#207 America/St_Lucia
-  "VI", //Z#208 America/St_Thomas
-  "VC", //Z#209 America/St_Vincent
-  "CA", //Z#210 America/Swift_Current
-  "HN", //Z#211 America/Tegucigalpa
-  "GL", //Z#212 America/Thule
-  "CA", //Z#213 America/Thunder_Bay
-  "MX", //Z#214 America/Tijuana
-  "CA", //Z#215 America/Toronto
-  "VG", //Z#216 America/Tortola
-  "CA", //Z#217 America/Vancouver
-  "VI", //Z#218 America/Virgin
-  "CA", //Z#219 America/Whitehorse
-  "CA", //Z#220 America/Winnipeg
-  "US", //Z#221 America/Yakutat
-  "CA", //Z#222 America/Yellowknife
-  "AQ", //Z#223 Antarctica/Casey
-  "AQ", //Z#224 Antarctica/Davis
-  "AQ", //Z#225 Antarctica/DumontDUrville
-  "AQ", //Z#226 Antarctica/Macquarie
-  "AQ", //Z#227 Antarctica/Mawson
-  "AQ", //Z#228 Antarctica/McMurdo
-  "AQ", //Z#229 Antarctica/Palmer
-  "AQ", //Z#230 Antarctica/Rothera
-  "AQ", //Z#231 Antarctica/South_Pole
-  "AQ", //Z#232 Antarctica/Syowa
-  "AQ", //Z#233 Antarctica/Vostok
-  "SJ", //Z#234 Arctic/Longyearbyen
-  "YE", //Z#235 Asia/Aden
-  "KZ", //Z#236 Asia/Almaty
-  "JO", //Z#237 Asia/Amman
-  "RU", //Z#238 Asia/Anadyr
-  "KZ", //Z#239 Asia/Aqtau
-  "KZ", //Z#240 Asia/Aqtobe
-  "TM", //Z#241 Asia/Ashgabat
-  "TM", //Z#242 Asia/Ashkhabad
-  "IQ", //Z#243 Asia/Baghdad
-  "BH", //Z#244 Asia/Bahrain
-  "AZ", //Z#245 Asia/Baku
-  "TH", //Z#246 Asia/Bangkok
-  "LB", //Z#247 Asia/Beirut
-  "KG", //Z#248 Asia/Bishkek
-  "BN", //Z#249 Asia/Brunei
-  "IN", //Z#250 Asia/Calcutta
-  "MN", //Z#251 Asia/Choibalsan
-  "CN", //Z#252 Asia/Chongqing
-  "CN", //Z#253 Asia/Chungking
-  "LK", //Z#254 Asia/Colombo
-  "BD", //Z#255 Asia/Dacca
-  "SY", //Z#256 Asia/Damascus
-  "BD", //Z#257 Asia/Dhaka
-  "TL", //Z#258 Asia/Dili
-  "AE", //Z#259 Asia/Dubai
-  "TJ", //Z#260 Asia/Dushanbe
-  "PS", //Z#261 Asia/Gaza
-  "CN", //Z#262 Asia/Harbin
-  "PS", //Z#263 Asia/Hebron
-  "VN", //Z#264 Asia/Ho_Chi_Minh
-  "HK", //Z#265 Asia/Hong_Kong
-  "MN", //Z#266 Asia/Hovd
-  "RU", //Z#267 Asia/Irkutsk
-  "TR", //Z#268 Asia/Istanbul
-  "ID", //Z#269 Asia/Jakarta
-  "ID", //Z#270 Asia/Jayapura
-  "IL", //Z#271 Asia/Jerusalem
-  "AF", //Z#272 Asia/Kabul
-  "RU", //Z#273 Asia/Kamchatka
-  "PK", //Z#274 Asia/Karachi
-  "CN", //Z#275 Asia/Kashgar
-  "NP", //Z#276 Asia/Kathmandu
-  "NP", //Z#277 Asia/Katmandu
-  "RU", //Z#278 Asia/Khandyga
-  "IN", //Z#279 Asia/Kolkata
-  "RU", //Z#280 Asia/Krasnoyarsk
-  "MY", //Z#281 Asia/Kuala_Lumpur
-  "MY", //Z#282 Asia/Kuching
-  "KW", //Z#283 Asia/Kuwait
-  "MO", //Z#284 Asia/Macao
-  "MO", //Z#285 Asia/Macau
-  "RU", //Z#286 Asia/Magadan
-  "ID", //Z#287 Asia/Makassar
-  "PH", //Z#288 Asia/Manila
-  "OM", //Z#289 Asia/Muscat
-  "CY", //Z#290 Asia/Nicosia
-  "RU", //Z#291 Asia/Novokuznetsk
-  "RU", //Z#292 Asia/Novosibirsk
-  "RU", //Z#293 Asia/Omsk
-  "KZ", //Z#294 Asia/Oral
-  "KH", //Z#295 Asia/Phnom_Penh
-  "ID", //Z#296 Asia/Pontianak
-  "KP", //Z#297 Asia/Pyongyang
-  "QA", //Z#298 Asia/Qatar
-  "KZ", //Z#299 Asia/Qyzylorda
-  "MM", //Z#300 Asia/Rangoon
-  "SA", //Z#301 Asia/Riyadh
-  "001",//Z#302 Asia/Riyadh87
-  "001",//Z#303 Asia/Riyadh88
-  "001",//Z#304 Asia/Riyadh89
-  "VN", //Z#305 Asia/Saigon
-  "RU", //Z#306 Asia/Sakhalin
-  "UZ", //Z#307 Asia/Samarkand
-  "KR", //Z#308 Asia/Seoul
-  "CN", //Z#309 Asia/Shanghai
-  "SG", //Z#310 Asia/Singapore
-  "TW", //Z#311 Asia/Taipei
-  "UZ", //Z#312 Asia/Tashkent
-  "GE", //Z#313 Asia/Tbilisi
-  "IR", //Z#314 Asia/Tehran
-  "IL", //Z#315 Asia/Tel_Aviv
-  "BT", //Z#316 Asia/Thimbu
-  "BT", //Z#317 Asia/Thimphu
-  "JP", //Z#318 Asia/Tokyo
-  "ID", //Z#319 Asia/Ujung_Pandang
-  "MN", //Z#320 Asia/Ulaanbaatar
-  "MN", //Z#321 Asia/Ulan_Bator
-  "CN", //Z#322 Asia/Urumqi
-  "RU", //Z#323 Asia/Ust-Nera
-  "LA", //Z#324 Asia/Vientiane
-  "RU", //Z#325 Asia/Vladivostok
-  "RU", //Z#326 Asia/Yakutsk
-  "RU", //Z#327 Asia/Yekaterinburg
-  "AM", //Z#328 Asia/Yerevan
-  "PT", //Z#329 Atlantic/Azores
-  "BM", //Z#330 Atlantic/Bermuda
-  "ES", //Z#331 Atlantic/Canary
-  "CV", //Z#332 Atlantic/Cape_Verde
-  "FO", //Z#333 Atlantic/Faeroe
-  "FO", //Z#334 Atlantic/Faroe
-  "NO", //Z#335 Atlantic/Jan_Mayen
-  "PT", //Z#336 Atlantic/Madeira
-  "IS", //Z#337 Atlantic/Reykjavik
-  "GS", //Z#338 Atlantic/South_Georgia
-  "SH", //Z#339 Atlantic/St_Helena
-  "FK", //Z#340 Atlantic/Stanley
-  "AU", //Z#341 Australia/ACT
-  "AU", //Z#342 Australia/Adelaide
-  "AU", //Z#343 Australia/Brisbane
-  "AU", //Z#344 Australia/Broken_Hill
-  "AU", //Z#345 Australia/Canberra
-  "AU", //Z#346 Australia/Currie
-  "AU", //Z#347 Australia/Darwin
-  "AU", //Z#348 Australia/Eucla
-  "AU", //Z#349 Australia/Hobart
-  "AU", //Z#350 Australia/LHI
-  "AU", //Z#351 Australia/Lindeman
-  "AU", //Z#352 Australia/Lord_Howe
-  "AU", //Z#353 Australia/Melbourne
-  "AU", //Z#354 Australia/NSW
-  "AU", //Z#355 Australia/North
-  "AU", //Z#356 Australia/Perth
-  "AU", //Z#357 Australia/Queensland
-  "AU", //Z#358 Australia/South
-  "AU", //Z#359 Australia/Sydney
-  "AU", //Z#360 Australia/Tasmania
-  "AU", //Z#361 Australia/Victoria
-  "AU", //Z#362 Australia/West
-  "AU", //Z#363 Australia/Yancowinna
-  "BR", //Z#364 BET
-  "BD", //Z#365 BST
-  "BR", //Z#366 Brazil/Acre
-  "BR", //Z#367 Brazil/DeNoronha
-  "BR", //Z#368 Brazil/East
-  "BR", //Z#369 Brazil/West
-  "ZW", //Z#370 CAT
-  "001",//Z#371 CET
-  "CA", //Z#372 CNT
-  "US", //Z#373 CST
-  "001",//Z#374 CST6CDT
-  "CN", //Z#375 CTT
-  "CA", //Z#376 Canada/Atlantic
-  "CA", //Z#377 Canada/Central
-  "CA", //Z#378 Canada/East-Saskatchewan
-  "CA", //Z#379 Canada/Eastern
-  "CA", //Z#380 Canada/Mountain
-  "CA", //Z#381 Canada/Newfoundland
-  "CA", //Z#382 Canada/Pacific
-  "CA", //Z#383 Canada/Saskatchewan
-  "CA", //Z#384 Canada/Yukon
-  "CL", //Z#385 Chile/Continental
-  "CL", //Z#386 Chile/EasterIsland
-  "CU", //Z#387 Cuba
-  "ET", //Z#388 EAT
-  "FR", //Z#389 ECT
-  "001",//Z#390 EET
-  "001",//Z#391 EST
-  "001",//Z#392 EST5EDT
-  "EG", //Z#393 Egypt
-  "IE", //Z#394 Eire
-  "001",//Z#395 Etc/GMT
-  "001",//Z#396 Etc/GMT+0
-  "001",//Z#397 Etc/GMT+1
-  "001",//Z#398 Etc/GMT+10
-  "001",//Z#399 Etc/GMT+11
-  "001",//Z#400 Etc/GMT+12
-  "001",//Z#401 Etc/GMT+2
-  "001",//Z#402 Etc/GMT+3
-  "001",//Z#403 Etc/GMT+4
-  "001",//Z#404 Etc/GMT+5
-  "001",//Z#405 Etc/GMT+6
-  "001",//Z#406 Etc/GMT+7
-  "001",//Z#407 Etc/GMT+8
-  "001",//Z#408 Etc/GMT+9
-  "001",//Z#409 Etc/GMT-0
-  "001",//Z#410 Etc/GMT-1
-  "001",//Z#411 Etc/GMT-10
-  "001",//Z#412 Etc/GMT-11
-  "001",//Z#413 Etc/GMT-12
-  "001",//Z#414 Etc/GMT-13
-  "001",//Z#415 Etc/GMT-14
-  "001",//Z#416 Etc/GMT-2
-  "001",//Z#417 Etc/GMT-3
-  "001",//Z#418 Etc/GMT-4
-  "001",//Z#419 Etc/GMT-5
-  "001",//Z#420 Etc/GMT-6
-  "001",//Z#421 Etc/GMT-7
-  "001",//Z#422 Etc/GMT-8
-  "001",//Z#423 Etc/GMT-9
-  "001",//Z#424 Etc/GMT0
-  "001",//Z#425 Etc/Greenwich
-  "001",//Z#426 Etc/UCT
-  "001",//Z#427 Etc/UTC
-  "001",//Z#428 Etc/Universal
-  "001",//Z#429 Etc/Unknown
-  "001",//Z#430 Etc/Zulu
-  "NL", //Z#431 Europe/Amsterdam
-  "AD", //Z#432 Europe/Andorra
-  "GR", //Z#433 Europe/Athens
-  "GB", //Z#434 Europe/Belfast
-  "RS", //Z#435 Europe/Belgrade
-  "DE", //Z#436 Europe/Berlin
-  "SK", //Z#437 Europe/Bratislava
-  "BE", //Z#438 Europe/Brussels
-  "RO", //Z#439 Europe/Bucharest
-  "HU", //Z#440 Europe/Budapest
-  "DE", //Z#441 Europe/Busingen
-  "MD", //Z#442 Europe/Chisinau
-  "DK", //Z#443 Europe/Copenhagen
-  "IE", //Z#444 Europe/Dublin
-  "GI", //Z#445 Europe/Gibraltar
-  "GG", //Z#446 Europe/Guernsey
-  "FI", //Z#447 Europe/Helsinki
-  "IM", //Z#448 Europe/Isle_of_Man
-  "TR", //Z#449 Europe/Istanbul
-  "JE", //Z#450 Europe/Jersey
-  "RU", //Z#451 Europe/Kaliningrad
-  "UA", //Z#452 Europe/Kiev
-  "PT", //Z#453 Europe/Lisbon
-  "SI", //Z#454 Europe/Ljubljana
-  "GB", //Z#455 Europe/London
-  "LU", //Z#456 Europe/Luxembourg
-  "ES", //Z#457 Europe/Madrid
-  "MT", //Z#458 Europe/Malta
-  "AX", //Z#459 Europe/Mariehamn
-  "BY", //Z#460 Europe/Minsk
-  "MC", //Z#461 Europe/Monaco
-  "RU", //Z#462 Europe/Moscow
-  "CY", //Z#463 Europe/Nicosia
-  "NO", //Z#464 Europe/Oslo
-  "FR", //Z#465 Europe/Paris
-  "ME", //Z#466 Europe/Podgorica
-  "CZ", //Z#467 Europe/Prague
-  "LV", //Z#468 Europe/Riga
-  "IT", //Z#469 Europe/Rome
-  "RU", //Z#470 Europe/Samara
-  "SM", //Z#471 Europe/San_Marino
-  "BA", //Z#472 Europe/Sarajevo
-  "UA", //Z#473 Europe/Simferopol
-  "MK", //Z#474 Europe/Skopje
-  "BG", //Z#475 Europe/Sofia
-  "SE", //Z#476 Europe/Stockholm
-  "EE", //Z#477 Europe/Tallinn
-  "AL", //Z#478 Europe/Tirane
-  "MD", //Z#479 Europe/Tiraspol
-  "UA", //Z#480 Europe/Uzhgorod
-  "LI", //Z#481 Europe/Vaduz
-  "VA", //Z#482 Europe/Vatican
-  "AT", //Z#483 Europe/Vienna
-  "LT", //Z#484 Europe/Vilnius
-  "RU", //Z#485 Europe/Volgograd
-  "PL", //Z#486 Europe/Warsaw
-  "HR", //Z#487 Europe/Zagreb
-  "UA", //Z#488 Europe/Zaporozhye
-  "CH", //Z#489 Europe/Zurich
-  "001",//Z#490 Factory
-  "GB", //Z#491 GB
-  "GB", //Z#492 GB-Eire
-  "001",//Z#493 GMT
-  "001",//Z#494 GMT+0
-  "001",//Z#495 GMT-0
-  "001",//Z#496 GMT0
-  "001",//Z#497 Greenwich
-  "001",//Z#498 HST
-  "HK", //Z#499 Hongkong
-  "US", //Z#500 IET
-  "IN", //Z#501 IST
-  "IS", //Z#502 Iceland
-  "MG", //Z#503 Indian/Antananarivo
-  "IO", //Z#504 Indian/Chagos
-  "CX", //Z#505 Indian/Christmas
-  "CC", //Z#506 Indian/Cocos
-  "KM", //Z#507 Indian/Comoro
-  "TF", //Z#508 Indian/Kerguelen
-  "SC", //Z#509 Indian/Mahe
-  "MV", //Z#510 Indian/Maldives
-  "MU", //Z#511 Indian/Mauritius
-  "YT", //Z#512 Indian/Mayotte
-  "RE", //Z#513 Indian/Reunion
-  "IR", //Z#514 Iran
-  "IL", //Z#515 Israel
-  "JP", //Z#516 JST
-  "JM", //Z#517 Jamaica
-  "JP", //Z#518 Japan
-  "MH", //Z#519 Kwajalein
-  "LY", //Z#520 Libya
-  "001",//Z#521 MET
-  "WS", //Z#522 MIT
-  "001",//Z#523 MST
-  "001",//Z#524 MST7MDT
-  "MX", //Z#525 Mexico/BajaNorte
-  "MX", //Z#526 Mexico/BajaSur
-  "MX", //Z#527 Mexico/General
-  "001",//Z#528 Mideast/Riyadh87
-  "001",//Z#529 Mideast/Riyadh88
-  "001",//Z#530 Mideast/Riyadh89
-  "AM", //Z#531 NET
-  "NZ", //Z#532 NST
-  "NZ", //Z#533 NZ
-  "NZ", //Z#534 NZ-CHAT
-  "US", //Z#535 Navajo
-  "PK", //Z#536 PLT
-  "US", //Z#537 PNT
-  "CN", //Z#538 PRC
-  "PR", //Z#539 PRT
-  "US", //Z#540 PST
-  "001",//Z#541 PST8PDT
-  "WS", //Z#542 Pacific/Apia
-  "NZ", //Z#543 Pacific/Auckland
-  "NZ", //Z#544 Pacific/Chatham
-  "FM", //Z#545 Pacific/Chuuk
-  "CL", //Z#546 Pacific/Easter
-  "VU", //Z#547 Pacific/Efate
-  "KI", //Z#548 Pacific/Enderbury
-  "TK", //Z#549 Pacific/Fakaofo
-  "FJ", //Z#550 Pacific/Fiji
-  "TV", //Z#551 Pacific/Funafuti
-  "EC", //Z#552 Pacific/Galapagos
-  "PF", //Z#553 Pacific/Gambier
-  "SB", //Z#554 Pacific/Guadalcanal
-  "GU", //Z#555 Pacific/Guam
-  "US", //Z#556 Pacific/Honolulu
-  "UM", //Z#557 Pacific/Johnston
-  "KI", //Z#558 Pacific/Kiritimati
-  "FM", //Z#559 Pacific/Kosrae
-  "MH", //Z#560 Pacific/Kwajalein
-  "MH", //Z#561 Pacific/Majuro
-  "PF", //Z#562 Pacific/Marquesas
-  "UM", //Z#563 Pacific/Midway
-  "NR", //Z#564 Pacific/Nauru
-  "NU", //Z#565 Pacific/Niue
-  "NF", //Z#566 Pacific/Norfolk
-  "NC", //Z#567 Pacific/Noumea
-  "AS", //Z#568 Pacific/Pago_Pago
-  "PW", //Z#569 Pacific/Palau
-  "PN", //Z#570 Pacific/Pitcairn
-  "FM", //Z#571 Pacific/Pohnpei
-  "FM", //Z#572 Pacific/Ponape
-  "PG", //Z#573 Pacific/Port_Moresby
-  "CK", //Z#574 Pacific/Rarotonga
-  "MP", //Z#575 Pacific/Saipan
-  "AS", //Z#576 Pacific/Samoa
-  "PF", //Z#577 Pacific/Tahiti
-  "KI", //Z#578 Pacific/Tarawa
-  "TO", //Z#579 Pacific/Tongatapu
-  "FM", //Z#580 Pacific/Truk
-  "UM", //Z#581 Pacific/Wake
-  "WF", //Z#582 Pacific/Wallis
-  "FM", //Z#583 Pacific/Yap
-  "PL", //Z#584 Poland
-  "PT", //Z#585 Portugal
-  "TW", //Z#586 ROC
-  "KR", //Z#587 ROK
-  "SB", //Z#588 SST
-  "SG", //Z#589 Singapore
-  "001",//Z#590 SystemV/AST4
-  "001",//Z#591 SystemV/AST4ADT
-  "001",//Z#592 SystemV/CST6
-  "001",//Z#593 SystemV/CST6CDT
-  "001",//Z#594 SystemV/EST5
-  "001",//Z#595 SystemV/EST5EDT
-  "001",//Z#596 SystemV/HST10
-  "001",//Z#597 SystemV/MST7
-  "001",//Z#598 SystemV/MST7MDT
-  "001",//Z#599 SystemV/PST8
-  "001",//Z#600 SystemV/PST8PDT
-  "001",//Z#601 SystemV/YST9
-  "001",//Z#602 SystemV/YST9YDT
-  "TR", //Z#603 Turkey
-  "001",//Z#604 UCT
-  "US", //Z#605 US/Alaska
-  "US", //Z#606 US/Aleutian
-  "US", //Z#607 US/Arizona
-  "US", //Z#608 US/Central
-  "US", //Z#609 US/East-Indiana
-  "US", //Z#610 US/Eastern
-  "US", //Z#611 US/Hawaii
-  "US", //Z#612 US/Indiana-Starke
-  "US", //Z#613 US/Michigan
-  "US", //Z#614 US/Mountain
-  "US", //Z#615 US/Pacific
-  "US", //Z#616 US/Pacific-New
-  "AS", //Z#617 US/Samoa
-  "001",//Z#618 UTC
-  "001",//Z#619 Universal
-  "VN", //Z#620 VST
-  "RU", //Z#621 W-SU
-  "001",//Z#622 WET
-  "001",//Z#623 Zulu
+  "CA", //Z#116 America/Fort_Nelson
+  "US", //Z#117 America/Fort_Wayne
+  "BR", //Z#118 America/Fortaleza
+  "CA", //Z#119 America/Glace_Bay
+  "GL", //Z#120 America/Godthab
+  "CA", //Z#121 America/Goose_Bay
+  "TC", //Z#122 America/Grand_Turk
+  "GD", //Z#123 America/Grenada
+  "GP", //Z#124 America/Guadeloupe
+  "GT", //Z#125 America/Guatemala
+  "EC", //Z#126 America/Guayaquil
+  "GY", //Z#127 America/Guyana
+  "CA", //Z#128 America/Halifax
+  "CU", //Z#129 America/Havana
+  "MX", //Z#130 America/Hermosillo
+  "US", //Z#131 America/Indiana/Indianapolis
+  "US", //Z#132 America/Indiana/Knox
+  "US", //Z#133 America/Indiana/Marengo
+  "US", //Z#134 America/Indiana/Petersburg
+  "US", //Z#135 America/Indiana/Tell_City
+  "US", //Z#136 America/Indiana/Vevay
+  "US", //Z#137 America/Indiana/Vincennes
+  "US", //Z#138 America/Indiana/Winamac
+  "US", //Z#139 America/Indianapolis
+  "CA", //Z#140 America/Inuvik
+  "CA", //Z#141 America/Iqaluit
+  "JM", //Z#142 America/Jamaica
+  "AR", //Z#143 America/Jujuy
+  "US", //Z#144 America/Juneau
+  "US", //Z#145 America/Kentucky/Louisville
+  "US", //Z#146 America/Kentucky/Monticello
+  "US", //Z#147 America/Knox_IN
+  "BQ", //Z#148 America/Kralendijk
+  "BO", //Z#149 America/La_Paz
+  "PE", //Z#150 America/Lima
+  "US", //Z#151 America/Los_Angeles
+  "US", //Z#152 America/Louisville
+  "SX", //Z#153 America/Lower_Princes
+  "BR", //Z#154 America/Maceio
+  "NI", //Z#155 America/Managua
+  "BR", //Z#156 America/Manaus
+  "MF", //Z#157 America/Marigot
+  "MQ", //Z#158 America/Martinique
+  "MX", //Z#159 America/Matamoros
+  "MX", //Z#160 America/Mazatlan
+  "AR", //Z#161 America/Mendoza
+  "US", //Z#162 America/Menominee
+  "MX", //Z#163 America/Merida
+  "US", //Z#164 America/Metlakatla
+  "MX", //Z#165 America/Mexico_City
+  "PM", //Z#166 America/Miquelon
+  "CA", //Z#167 America/Moncton
+  "MX", //Z#168 America/Monterrey
+  "UY", //Z#169 America/Montevideo
+  "CA", //Z#170 America/Montreal
+  "MS", //Z#171 America/Montserrat
+  "BS", //Z#172 America/Nassau
+  "US", //Z#173 America/New_York
+  "CA", //Z#174 America/Nipigon
+  "US", //Z#175 America/Nome
+  "BR", //Z#176 America/Noronha
+  "US", //Z#177 America/North_Dakota/Beulah
+  "US", //Z#178 America/North_Dakota/Center
+  "US", //Z#179 America/North_Dakota/New_Salem
+  "MX", //Z#180 America/Ojinaga
+  "PA", //Z#181 America/Panama
+  "CA", //Z#182 America/Pangnirtung
+  "SR", //Z#183 America/Paramaribo
+  "US", //Z#184 America/Phoenix
+  "HT", //Z#185 America/Port-au-Prince
+  "TT", //Z#186 America/Port_of_Spain
+  "BR", //Z#187 America/Porto_Acre
+  "BR", //Z#188 America/Porto_Velho
+  "PR", //Z#189 America/Puerto_Rico
+  "CL", //Z#190 America/Punta_Arenas
+  "CA", //Z#191 America/Rainy_River
+  "CA", //Z#192 America/Rankin_Inlet
+  "BR", //Z#193 America/Recife
+  "CA", //Z#194 America/Regina
+  "CA", //Z#195 America/Resolute
+  "BR", //Z#196 America/Rio_Branco
+  "AR", //Z#197 America/Rosario
+  "MX", //Z#198 America/Santa_Isabel
+  "BR", //Z#199 America/Santarem
+  "CL", //Z#200 America/Santiago
+  "DO", //Z#201 America/Santo_Domingo
+  "BR", //Z#202 America/Sao_Paulo
+  "GL", //Z#203 America/Scoresbysund
+  "US", //Z#204 America/Shiprock
+  "US", //Z#205 America/Sitka
+  "BL", //Z#206 America/St_Barthelemy
+  "CA", //Z#207 America/St_Johns
+  "KN", //Z#208 America/St_Kitts
+  "LC", //Z#209 America/St_Lucia
+  "VI", //Z#210 America/St_Thomas
+  "VC", //Z#211 America/St_Vincent
+  "CA", //Z#212 America/Swift_Current
+  "HN", //Z#213 America/Tegucigalpa
+  "GL", //Z#214 America/Thule
+  "CA", //Z#215 America/Thunder_Bay
+  "MX", //Z#216 America/Tijuana
+  "CA", //Z#217 America/Toronto
+  "VG", //Z#218 America/Tortola
+  "CA", //Z#219 America/Vancouver
+  "TT", //Z#220 America/Virgin
+  "CA", //Z#221 America/Whitehorse
+  "CA", //Z#222 America/Winnipeg
+  "US", //Z#223 America/Yakutat
+  "CA", //Z#224 America/Yellowknife
+  "AQ", //Z#225 Antarctica/Casey
+  "AQ", //Z#226 Antarctica/Davis
+  "AQ", //Z#227 Antarctica/DumontDUrville
+  "AU", //Z#228 Antarctica/Macquarie
+  "AQ", //Z#229 Antarctica/Mawson
+  "AQ", //Z#230 Antarctica/McMurdo
+  "AQ", //Z#231 Antarctica/Palmer
+  "AQ", //Z#232 Antarctica/Rothera
+  "NZ", //Z#233 Antarctica/South_Pole
+  "AQ", //Z#234 Antarctica/Syowa
+  "AQ", //Z#235 Antarctica/Troll
+  "AQ", //Z#236 Antarctica/Vostok
+  "SJ", //Z#237 Arctic/Longyearbyen
+  "YE", //Z#238 Asia/Aden
+  "KZ", //Z#239 Asia/Almaty
+  "JO", //Z#240 Asia/Amman
+  "RU", //Z#241 Asia/Anadyr
+  "KZ", //Z#242 Asia/Aqtau
+  "KZ", //Z#243 Asia/Aqtobe
+  "TM", //Z#244 Asia/Ashgabat
+  "TM", //Z#245 Asia/Ashkhabad
+  "KZ", //Z#246 Asia/Atyrau
+  "IQ", //Z#247 Asia/Baghdad
+  "BH", //Z#248 Asia/Bahrain
+  "AZ", //Z#249 Asia/Baku
+  "TH", //Z#250 Asia/Bangkok
+  "RU", //Z#251 Asia/Barnaul
+  "LB", //Z#252 Asia/Beirut
+  "KG", //Z#253 Asia/Bishkek
+  "BN", //Z#254 Asia/Brunei
+  "IN", //Z#255 Asia/Calcutta
+  "RU", //Z#256 Asia/Chita
+  "MN", //Z#257 Asia/Choibalsan
+  "CN", //Z#258 Asia/Chongqing
+  "CN", //Z#259 Asia/Chungking
+  "LK", //Z#260 Asia/Colombo
+  "BD", //Z#261 Asia/Dacca
+  "SY", //Z#262 Asia/Damascus
+  "BD", //Z#263 Asia/Dhaka
+  "TL", //Z#264 Asia/Dili
+  "AE", //Z#265 Asia/Dubai
+  "TJ", //Z#266 Asia/Dushanbe
+  "CY", //Z#267 Asia/Famagusta
+  "PS", //Z#268 Asia/Gaza
+  "CN", //Z#269 Asia/Harbin
+  "PS", //Z#270 Asia/Hebron
+  "VN", //Z#271 Asia/Ho_Chi_Minh
+  "HK", //Z#272 Asia/Hong_Kong
+  "MN", //Z#273 Asia/Hovd
+  "RU", //Z#274 Asia/Irkutsk
+  "TR", //Z#275 Asia/Istanbul
+  "ID", //Z#276 Asia/Jakarta
+  "ID", //Z#277 Asia/Jayapura
+  "IL", //Z#278 Asia/Jerusalem
+  "AF", //Z#279 Asia/Kabul
+  "RU", //Z#280 Asia/Kamchatka
+  "PK", //Z#281 Asia/Karachi
+  "CN", //Z#282 Asia/Kashgar
+  "NP", //Z#283 Asia/Kathmandu
+  "NP", //Z#284 Asia/Katmandu
+  "RU", //Z#285 Asia/Khandyga
+  "IN", //Z#286 Asia/Kolkata
+  "RU", //Z#287 Asia/Krasnoyarsk
+  "MY", //Z#288 Asia/Kuala_Lumpur
+  "MY", //Z#289 Asia/Kuching
+  "KW", //Z#290 Asia/Kuwait
+  "MO", //Z#291 Asia/Macao
+  "MO", //Z#292 Asia/Macau
+  "RU", //Z#293 Asia/Magadan
+  "ID", //Z#294 Asia/Makassar
+  "PH", //Z#295 Asia/Manila
+  "OM", //Z#296 Asia/Muscat
+  "CY", //Z#297 Asia/Nicosia
+  "RU", //Z#298 Asia/Novokuznetsk
+  "RU", //Z#299 Asia/Novosibirsk
+  "RU", //Z#300 Asia/Omsk
+  "KZ", //Z#301 Asia/Oral
+  "KH", //Z#302 Asia/Phnom_Penh
+  "ID", //Z#303 Asia/Pontianak
+  "KP", //Z#304 Asia/Pyongyang
+  "QA", //Z#305 Asia/Qatar
+  "KZ", //Z#306 Asia/Qostanay
+  "KZ", //Z#307 Asia/Qyzylorda
+  "MM", //Z#308 Asia/Rangoon
+  "SA", //Z#309 Asia/Riyadh
+  "VN", //Z#310 Asia/Saigon
+  "RU", //Z#311 Asia/Sakhalin
+  "UZ", //Z#312 Asia/Samarkand
+  "KR", //Z#313 Asia/Seoul
+  "CN", //Z#314 Asia/Shanghai
+  "SG", //Z#315 Asia/Singapore
+  "RU", //Z#316 Asia/Srednekolymsk
+  "TW", //Z#317 Asia/Taipei
+  "UZ", //Z#318 Asia/Tashkent
+  "GE", //Z#319 Asia/Tbilisi
+  "IR", //Z#320 Asia/Tehran
+  "IL", //Z#321 Asia/Tel_Aviv
+  "BT", //Z#322 Asia/Thimbu
+  "BT", //Z#323 Asia/Thimphu
+  "JP", //Z#324 Asia/Tokyo
+  "RU", //Z#325 Asia/Tomsk
+  "ID", //Z#326 Asia/Ujung_Pandang
+  "MN", //Z#327 Asia/Ulaanbaatar
+  "MN", //Z#328 Asia/Ulan_Bator
+  "CN", //Z#329 Asia/Urumqi
+  "RU", //Z#330 Asia/Ust-Nera
+  "LA", //Z#331 Asia/Vientiane
+  "RU", //Z#332 Asia/Vladivostok
+  "RU", //Z#333 Asia/Yakutsk
+  "MM", //Z#334 Asia/Yangon
+  "RU", //Z#335 Asia/Yekaterinburg
+  "AM", //Z#336 Asia/Yerevan
+  "PT", //Z#337 Atlantic/Azores
+  "BM", //Z#338 Atlantic/Bermuda
+  "ES", //Z#339 Atlantic/Canary
+  "CV", //Z#340 Atlantic/Cape_Verde
+  "FO", //Z#341 Atlantic/Faeroe
+  "FO", //Z#342 Atlantic/Faroe
+  "NO", //Z#343 Atlantic/Jan_Mayen
+  "PT", //Z#344 Atlantic/Madeira
+  "IS", //Z#345 Atlantic/Reykjavik
+  "GS", //Z#346 Atlantic/South_Georgia
+  "SH", //Z#347 Atlantic/St_Helena
+  "FK", //Z#348 Atlantic/Stanley
+  "AU", //Z#349 Australia/ACT
+  "AU", //Z#350 Australia/Adelaide
+  "AU", //Z#351 Australia/Brisbane
+  "AU", //Z#352 Australia/Broken_Hill
+  "AU", //Z#353 Australia/Canberra
+  "AU", //Z#354 Australia/Currie
+  "AU", //Z#355 Australia/Darwin
+  "AU", //Z#356 Australia/Eucla
+  "AU", //Z#357 Australia/Hobart
+  "AU", //Z#358 Australia/LHI
+  "AU", //Z#359 Australia/Lindeman
+  "AU", //Z#360 Australia/Lord_Howe
+  "AU", //Z#361 Australia/Melbourne
+  "AU", //Z#362 Australia/NSW
+  "AU", //Z#363 Australia/North
+  "AU", //Z#364 Australia/Perth
+  "AU", //Z#365 Australia/Queensland
+  "AU", //Z#366 Australia/South
+  "AU", //Z#367 Australia/Sydney
+  "AU", //Z#368 Australia/Tasmania
+  "AU", //Z#369 Australia/Victoria
+  "AU", //Z#370 Australia/West
+  "AU", //Z#371 Australia/Yancowinna
+  "BR", //Z#372 BET
+  "BD", //Z#373 BST
+  "BR", //Z#374 Brazil/Acre
+  "BR", //Z#375 Brazil/DeNoronha
+  "BR", //Z#376 Brazil/East
+  "BR", //Z#377 Brazil/West
+  "MZ", //Z#378 CAT
+  "001",//Z#379 CET
+  "CA", //Z#380 CNT
+  "US", //Z#381 CST
+  "001",//Z#382 CST6CDT
+  "CN", //Z#383 CTT
+  "CA", //Z#384 Canada/Atlantic
+  "CA", //Z#385 Canada/Central
+  "CA", //Z#386 Canada/East-Saskatchewan
+  "CA", //Z#387 Canada/Eastern
+  "CA", //Z#388 Canada/Mountain
+  "CA", //Z#389 Canada/Newfoundland
+  "CA", //Z#390 Canada/Pacific
+  "CA", //Z#391 Canada/Saskatchewan
+  "CA", //Z#392 Canada/Yukon
+  "CL", //Z#393 Chile/Continental
+  "CL", //Z#394 Chile/EasterIsland
+  "CU", //Z#395 Cuba
+  "KE", //Z#396 EAT
+  "FR", //Z#397 ECT
+  "001",//Z#398 EET
+  "001",//Z#399 EST
+  "001",//Z#400 EST5EDT
+  "EG", //Z#401 Egypt
+  "IE", //Z#402 Eire
+  "001",//Z#403 Etc/GMT
+  "001",//Z#404 Etc/GMT+0
+  "001",//Z#405 Etc/GMT+1
+  "001",//Z#406 Etc/GMT+10
+  "001",//Z#407 Etc/GMT+11
+  "001",//Z#408 Etc/GMT+12
+  "001",//Z#409 Etc/GMT+2
+  "001",//Z#410 Etc/GMT+3
+  "001",//Z#411 Etc/GMT+4
+  "001",//Z#412 Etc/GMT+5
+  "001",//Z#413 Etc/GMT+6
+  "001",//Z#414 Etc/GMT+7
+  "001",//Z#415 Etc/GMT+8
+  "001",//Z#416 Etc/GMT+9
+  "001",//Z#417 Etc/GMT-0
+  "001",//Z#418 Etc/GMT-1
+  "001",//Z#419 Etc/GMT-10
+  "001",//Z#420 Etc/GMT-11
+  "001",//Z#421 Etc/GMT-12
+  "001",//Z#422 Etc/GMT-13
+  "001",//Z#423 Etc/GMT-14
+  "001",//Z#424 Etc/GMT-2
+  "001",//Z#425 Etc/GMT-3
+  "001",//Z#426 Etc/GMT-4
+  "001",//Z#427 Etc/GMT-5
+  "001",//Z#428 Etc/GMT-6
+  "001",//Z#429 Etc/GMT-7
+  "001",//Z#430 Etc/GMT-8
+  "001",//Z#431 Etc/GMT-9
+  "001",//Z#432 Etc/GMT0
+  "001",//Z#433 Etc/Greenwich
+  "001",//Z#434 Etc/UCT
+  "001",//Z#435 Etc/UTC
+  "001",//Z#436 Etc/Universal
+  "001",//Z#437 Etc/Unknown
+  "001",//Z#438 Etc/Zulu
+  "NL", //Z#439 Europe/Amsterdam
+  "AD", //Z#440 Europe/Andorra
+  "RU", //Z#441 Europe/Astrakhan
+  "GR", //Z#442 Europe/Athens
+  "GB", //Z#443 Europe/Belfast
+  "RS", //Z#444 Europe/Belgrade
+  "DE", //Z#445 Europe/Berlin
+  "SK", //Z#446 Europe/Bratislava
+  "BE", //Z#447 Europe/Brussels
+  "RO", //Z#448 Europe/Bucharest
+  "HU", //Z#449 Europe/Budapest
+  "DE", //Z#450 Europe/Busingen
+  "MD", //Z#451 Europe/Chisinau
+  "DK", //Z#452 Europe/Copenhagen
+  "IE", //Z#453 Europe/Dublin
+  "GI", //Z#454 Europe/Gibraltar
+  "GG", //Z#455 Europe/Guernsey
+  "FI", //Z#456 Europe/Helsinki
+  "IM", //Z#457 Europe/Isle_of_Man
+  "TR", //Z#458 Europe/Istanbul
+  "JE", //Z#459 Europe/Jersey
+  "RU", //Z#460 Europe/Kaliningrad
+  "UA", //Z#461 Europe/Kiev
+  "RU", //Z#462 Europe/Kirov
+  "PT", //Z#463 Europe/Lisbon
+  "SI", //Z#464 Europe/Ljubljana
+  "GB", //Z#465 Europe/London
+  "LU", //Z#466 Europe/Luxembourg
+  "ES", //Z#467 Europe/Madrid
+  "MT", //Z#468 Europe/Malta
+  "AX", //Z#469 Europe/Mariehamn
+  "BY", //Z#470 Europe/Minsk
+  "MC", //Z#471 Europe/Monaco
+  "RU", //Z#472 Europe/Moscow
+  "CY", //Z#473 Europe/Nicosia
+  "NO", //Z#474 Europe/Oslo
+  "FR", //Z#475 Europe/Paris
+  "ME", //Z#476 Europe/Podgorica
+  "CZ", //Z#477 Europe/Prague
+  "LV", //Z#478 Europe/Riga
+  "IT", //Z#479 Europe/Rome
+  "RU", //Z#480 Europe/Samara
+  "SM", //Z#481 Europe/San_Marino
+  "BA", //Z#482 Europe/Sarajevo
+  "RU", //Z#483 Europe/Saratov
+  "UA", //Z#484 Europe/Simferopol
+  "MK", //Z#485 Europe/Skopje
+  "BG", //Z#486 Europe/Sofia
+  "SE", //Z#487 Europe/Stockholm
+  "EE", //Z#488 Europe/Tallinn
+  "AL", //Z#489 Europe/Tirane
+  "MD", //Z#490 Europe/Tiraspol
+  "RU", //Z#491 Europe/Ulyanovsk
+  "UA", //Z#492 Europe/Uzhgorod
+  "LI", //Z#493 Europe/Vaduz
+  "VA", //Z#494 Europe/Vatican
+  "AT", //Z#495 Europe/Vienna
+  "LT", //Z#496 Europe/Vilnius
+  "RU", //Z#497 Europe/Volgograd
+  "PL", //Z#498 Europe/Warsaw
+  "HR", //Z#499 Europe/Zagreb
+  "UA", //Z#500 Europe/Zaporozhye
+  "CH", //Z#501 Europe/Zurich
+  "001",//Z#502 Factory
+  "GB", //Z#503 GB
+  "GB", //Z#504 GB-Eire
+  "001",//Z#505 GMT
+  "001",//Z#506 GMT+0
+  "001",//Z#507 GMT-0
+  "001",//Z#508 GMT0
+  "001",//Z#509 Greenwich
+  "001",//Z#510 HST
+  "HK", //Z#511 Hongkong
+  "US", //Z#512 IET
+  "IN", //Z#513 IST
+  "IS", //Z#514 Iceland
+  "MG", //Z#515 Indian/Antananarivo
+  "IO", //Z#516 Indian/Chagos
+  "CX", //Z#517 Indian/Christmas
+  "CC", //Z#518 Indian/Cocos
+  "KM", //Z#519 Indian/Comoro
+  "TF", //Z#520 Indian/Kerguelen
+  "SC", //Z#521 Indian/Mahe
+  "MV", //Z#522 Indian/Maldives
+  "MU", //Z#523 Indian/Mauritius
+  "YT", //Z#524 Indian/Mayotte
+  "RE", //Z#525 Indian/Reunion
+  "IR", //Z#526 Iran
+  "IL", //Z#527 Israel
+  "JP", //Z#528 JST
+  "JM", //Z#529 Jamaica
+  "JP", //Z#530 Japan
+  "MH", //Z#531 Kwajalein
+  "LY", //Z#532 Libya
+  "001",//Z#533 MET
+  "WS", //Z#534 MIT
+  "001",//Z#535 MST
+  "001",//Z#536 MST7MDT
+  "MX", //Z#537 Mexico/BajaNorte
+  "MX", //Z#538 Mexico/BajaSur
+  "MX", //Z#539 Mexico/General
+  "AM", //Z#540 NET
+  "NZ", //Z#541 NST
+  "NZ", //Z#542 NZ
+  "NZ", //Z#543 NZ-CHAT
+  "US", //Z#544 Navajo
+  "PK", //Z#545 PLT
+  "US", //Z#546 PNT
+  "CN", //Z#547 PRC
+  "PR", //Z#548 PRT
+  "US", //Z#549 PST
+  "001",//Z#550 PST8PDT
+  "WS", //Z#551 Pacific/Apia
+  "NZ", //Z#552 Pacific/Auckland
+  "PG", //Z#553 Pacific/Bougainville
+  "NZ", //Z#554 Pacific/Chatham
+  "FM", //Z#555 Pacific/Chuuk
+  "CL", //Z#556 Pacific/Easter
+  "VU", //Z#557 Pacific/Efate
+  "KI", //Z#558 Pacific/Enderbury
+  "TK", //Z#559 Pacific/Fakaofo
+  "FJ", //Z#560 Pacific/Fiji
+  "TV", //Z#561 Pacific/Funafuti
+  "EC", //Z#562 Pacific/Galapagos
+  "PF", //Z#563 Pacific/Gambier
+  "SB", //Z#564 Pacific/Guadalcanal
+  "GU", //Z#565 Pacific/Guam
+  "US", //Z#566 Pacific/Honolulu
+  "UM", //Z#567 Pacific/Johnston
+  "KI", //Z#568 Pacific/Kiritimati
+  "FM", //Z#569 Pacific/Kosrae
+  "MH", //Z#570 Pacific/Kwajalein
+  "MH", //Z#571 Pacific/Majuro
+  "PF", //Z#572 Pacific/Marquesas
+  "UM", //Z#573 Pacific/Midway
+  "NR", //Z#574 Pacific/Nauru
+  "NU", //Z#575 Pacific/Niue
+  "NF", //Z#576 Pacific/Norfolk
+  "NC", //Z#577 Pacific/Noumea
+  "AS", //Z#578 Pacific/Pago_Pago
+  "PW", //Z#579 Pacific/Palau
+  "PN", //Z#580 Pacific/Pitcairn
+  "FM", //Z#581 Pacific/Pohnpei
+  "FM", //Z#582 Pacific/Ponape
+  "PG", //Z#583 Pacific/Port_Moresby
+  "CK", //Z#584 Pacific/Rarotonga
+  "MP", //Z#585 Pacific/Saipan
+  "AS", //Z#586 Pacific/Samoa
+  "PF", //Z#587 Pacific/Tahiti
+  "KI", //Z#588 Pacific/Tarawa
+  "TO", //Z#589 Pacific/Tongatapu
+  "FM", //Z#590 Pacific/Truk
+  "UM", //Z#591 Pacific/Wake
+  "WF", //Z#592 Pacific/Wallis
+  "FM", //Z#593 Pacific/Yap
+  "PL", //Z#594 Poland
+  "PT", //Z#595 Portugal
+  "TW", //Z#596 ROC
+  "KR", //Z#597 ROK
+  "SB", //Z#598 SST
+  "SG", //Z#599 Singapore
+  "001",//Z#600 SystemV/AST4
+  "001",//Z#601 SystemV/AST4ADT
+  "001",//Z#602 SystemV/CST6
+  "001",//Z#603 SystemV/CST6CDT
+  "001",//Z#604 SystemV/EST5
+  "001",//Z#605 SystemV/EST5EDT
+  "001",//Z#606 SystemV/HST10
+  "001",//Z#607 SystemV/MST7
+  "001",//Z#608 SystemV/MST7MDT
+  "001",//Z#609 SystemV/PST8
+  "001",//Z#610 SystemV/PST8PDT
+  "001",//Z#611 SystemV/YST9
+  "001",//Z#612 SystemV/YST9YDT
+  "TR", //Z#613 Turkey
+  "001",//Z#614 UCT
+  "US", //Z#615 US/Alaska
+  "US", //Z#616 US/Aleutian
+  "US", //Z#617 US/Arizona
+  "US", //Z#618 US/Central
+  "US", //Z#619 US/East-Indiana
+  "US", //Z#620 US/Eastern
+  "US", //Z#621 US/Hawaii
+  "US", //Z#622 US/Indiana-Starke
+  "US", //Z#623 US/Michigan
+  "US", //Z#624 US/Mountain
+  "US", //Z#625 US/Pacific
+  "US", //Z#626 US/Pacific-New
+  "AS", //Z#627 US/Samoa
+  "001",//Z#628 UTC
+  "001",//Z#629 Universal
+  "VN", //Z#630 VST
+  "RU", //Z#631 W-SU
+  "001",//Z#632 WET
+  "001",//Z#633 Zulu
  }
 }
diff --git a/icu4c/source/test/cintltst/ccaltst.c b/icu4c/source/test/cintltst/ccaltst.c
index 7c51424..8a9dcf8 100644
--- a/icu4c/source/test/cintltst/ccaltst.c
+++ b/icu4c/source/test/cintltst/ccaltst.c
@@ -2261,7 +2261,7 @@
 static const TZTransitionItem tzTransitionItems[] = {
     { "USPacific mid 2012", zoneUSPacific, 2012, UCAL_JULY, 1, TRUE , TRUE  },
     { "USPacific mid  100", zoneUSPacific,  100, UCAL_JULY, 1, FALSE, TRUE  }, /* no transitions before 100 CE... */
-    { "Cairo     mid 2012", zoneCairo,     2012, UCAL_JULY, 1, TRUE , FALSE }, /* DST cancelled since 2011 */
+    { "Cairo     mid 2012", zoneCairo,     2012, UCAL_JULY, 1, TRUE , TRUE  }, /* DST cancelled since 2011 (Changed since 2014c) */
     { "Iceland   mid 2012", zoneIceland,   2012, UCAL_JULY, 1, TRUE , FALSE }, /* always on DST */
     { NULL,                 NULL,             0,         0, 0, FALSE, FALSE } /* terminator */
 };
diff --git a/icu4c/source/test/intltest/dtfmttst.cpp b/icu4c/source/test/intltest/dtfmttst.cpp
index 399a58d..1c202ee 100644
--- a/icu4c/source/test/intltest/dtfmttst.cpp
+++ b/icu4c/source/test/intltest/dtfmttst.cpp
@@ -3561,7 +3561,7 @@
     if (failure(status, "construct GregorianCalendar", TRUE)) return;
     
     gcal.clear();
-    gcal.set(1910, UCAL_JULY, 1, 12, 00);   // offset 8:05:57
+    gcal.set(1900, UCAL_JULY, 1, 12, 00);   // offset 8:05:43
     d1 = gcal.getTime(status);
 
     gcal.clear();
@@ -3571,7 +3571,7 @@
     gcal.clear();
     gcal.set(1970, UCAL_JANUARY, 1, 12, 00);
     dexp2 = gcal.getTime(status);
-    dexp1 = dexp2 - (5*60 + 57)*1000;   // subtract 5m57s
+    dexp1 = dexp2 - (5*60 + 43)*1000;   // subtract 5m43s
 
     if (U_FAILURE(status)) {
         errln("FAIL: Gregorian calendar error");
diff --git a/icu4c/source/test/intltest/tzfmttst.cpp b/icu4c/source/test/intltest/tzfmttst.cpp
index 4ff82ef..1d7393b 100644
--- a/icu4c/source/test/intltest/tzfmttst.cpp
+++ b/icu4c/source/test/intltest/tzfmttst.cpp
@@ -248,6 +248,40 @@
     delete tzids;
 }
 
+// Special exclusions in TestTimeZoneRoundTrip.
+// These special cases do not round trip time as designed.
+static UBool isSpecialTimeRoundTripCase(const char* loc,
+                                        const UnicodeString& id,
+                                        const char* pattern,
+                                        UDate time) {
+    struct {
+        const char* loc;
+        const char* id;
+        const char* pattern;
+        UDate time;
+    } EXCLUSIONS[] = {
+        {NULL, "Asia/Chita", "zzzz", 1414252800000.0},
+        {NULL, "Asia/Chita", "vvvv", 1414252800000.0},
+        {NULL, "Asia/Srednekolymsk", "zzzz", 1414241999999.0},
+        {NULL, "Asia/Srednekolymsk", "vvvv", 1414241999999.0},
+        {NULL, NULL, NULL, U_DATE_MIN}
+    };
+
+    UBool isExcluded = FALSE;
+    for (int32_t i = 0; EXCLUSIONS[i].id != NULL; i++) {
+        if (EXCLUSIONS[i].loc == NULL || uprv_strcmp(loc, EXCLUSIONS[i].loc) == 0) {
+            if (id.compare(EXCLUSIONS[i].id) == 0) {
+                if (EXCLUSIONS[i].pattern == NULL || uprv_strcmp(pattern, EXCLUSIONS[i].pattern) == 0) {
+                    if (EXCLUSIONS[i].time == U_DATE_MIN || EXCLUSIONS[i].time == time) {
+                        isExcluded = TRUE;
+                    }
+                }
+            }
+        }
+    }
+    return isExcluded;
+}
+
 struct LocaleData {
     int32_t index;
     int32_t testCounts;
@@ -408,7 +442,9 @@
                                 UnicodeString msg = (UnicodeString) "Time round trip failed for " + "tzid=" + *tzid + ", locale=" + data.locales[locidx].getName() + ", pattern=" + PATTERNS[patidx]
                                         + ", text=" + text + ", time=" + testTimes[testidx] + ", restime=" + parsedDate + ", diff=" + (parsedDate - testTimes[testidx]);
                                 // Timebomb for TZData update
-                                if (expectedRoundTrip[testidx]) {
+                                if (expectedRoundTrip[testidx]
+                                        && !isSpecialTimeRoundTripCase(data.locales[locidx].getName(), *tzid,
+                                                PATTERNS[patidx], testTimes[testidx])) {
                                     log.errln((UnicodeString) "FAIL: " + msg);
                                 } else if (REALLY_VERBOSE) {
                                     log.logln(msg);
diff --git a/icu4c/source/test/intltest/tztest.cpp b/icu4c/source/test/intltest/tztest.cpp
index 57b0d23..d1e20cf 100644
--- a/icu4c/source/test/intltest/tztest.cpp
+++ b/icu4c/source/test/intltest/tztest.cpp
@@ -1205,31 +1205,43 @@
         /* Generated by org.unicode.cldr.tool.CountItems */
 
         /* zoneID, canonical zoneID */
-        {"Africa/Timbuktu", "Africa/Bamako"},
+        {"Africa/Asmara", "Africa/Addis_Ababa"},
+        {"Africa/Timbuktu", "Africa/Abidjan"},
         {"America/Argentina/Buenos_Aires", "America/Buenos_Aires"},
         {"America/Argentina/Catamarca", "America/Catamarca"},
         {"America/Argentina/ComodRivadavia", "America/Catamarca"},
         {"America/Argentina/Cordoba", "America/Cordoba"},
         {"America/Argentina/Jujuy", "America/Jujuy"},
         {"America/Argentina/Mendoza", "America/Mendoza"},
+        {"America/Atikokan", "America/Coral_Harbour"},
         {"America/Atka", "America/Adak"},
         {"America/Ensenada", "America/Tijuana"},
-        {"America/Fort_Wayne", "America/Indiana/Indianapolis"},
-        {"America/Indianapolis", "America/Indiana/Indianapolis"},
+        {"America/Fort_Wayne", "America/Indianapolis"},
+        {"America/Indiana/Indianapolis", "America/Indianapolis"},
+        {"America/Kentucky/Louisville", "America/Louisville"},
         {"America/Knox_IN", "America/Indiana/Knox"},
-        {"America/Louisville", "America/Kentucky/Louisville"},
         {"America/Porto_Acre", "America/Rio_Branco"},
         {"America/Rosario", "America/Cordoba"},
-        {"America/Virgin", "America/St_Thomas"},
+        {"America/Shiprock", "America/Denver"},
+        {"America/Virgin", "America/Anguilla"},
+        {"Antarctica/South_Pole", "Antarctica/McMurdo"},
         {"Asia/Ashkhabad", "Asia/Ashgabat"},
-        {"Asia/Chungking", "Asia/Chongqing"},
+        {"Asia/Chongqing", "Asia/Shanghai"},
+        {"Asia/Chungking", "Asia/Shanghai"},
         {"Asia/Dacca", "Asia/Dhaka"},
+        {"Asia/Harbin", "Asia/Shanghai"},
+        {"Asia/Ho_Chi_Minh", "Asia/Saigon"},
         {"Asia/Istanbul", "Europe/Istanbul"},
+        {"Asia/Kashgar", "Asia/Urumqi"},
+        {"Asia/Kathmandu", "Asia/Katmandu"},
+        {"Asia/Kolkata", "Asia/Calcutta"},
         {"Asia/Macao", "Asia/Macau"},
         {"Asia/Tel_Aviv", "Asia/Jerusalem"},
         {"Asia/Thimbu", "Asia/Thimphu"},
         {"Asia/Ujung_Pandang", "Asia/Makassar"},
         {"Asia/Ulan_Bator", "Asia/Ulaanbaatar"},
+        {"Atlantic/Faroe", "Atlantic/Faeroe"},
+        {"Atlantic/Jan_Mayen", "Arctic/Longyearbyen"},
         {"Australia/ACT", "Australia/Sydney"},
         {"Australia/Canberra", "Australia/Sydney"},
         {"Australia/LHI", "Australia/Lord_Howe"},
@@ -1257,16 +1269,16 @@
         {"Chile/Continental", "America/Santiago"},
         {"Chile/EasterIsland", "Pacific/Easter"},
         {"Cuba", "America/Havana"},
+        {"EST", "Etc/GMT+5"},
         {"Egypt", "Africa/Cairo"},
         {"Eire", "Europe/Dublin"},
         {"Etc/GMT+0", "Etc/GMT"},
         {"Etc/GMT-0", "Etc/GMT"},
         {"Etc/GMT0", "Etc/GMT"},
         {"Etc/Greenwich", "Etc/GMT"},
-        {"Etc/UCT", "Etc/GMT"},
-        {"Etc/UTC", "Etc/GMT"},
-        {"Etc/Universal", "Etc/GMT"},
-        {"Etc/Zulu", "Etc/GMT"},
+        {"Etc/UCT", "Etc/UTC"},
+        {"Etc/Universal", "Etc/UTC"},
+        {"Etc/Zulu", "Etc/UTC"},
         {"Europe/Belfast", "Europe/London"},
         {"Europe/Nicosia", "Asia/Nicosia"},
         {"Europe/Tiraspol", "Europe/Chisinau"},
@@ -1277,6 +1289,7 @@
         {"GMT-0", "Etc/GMT"},
         {"GMT0", "Etc/GMT"},
         {"Greenwich", "Etc/GMT"},
+        {"HST", "Etc/GMT+10"},
         {"Hongkong", "Asia/Hong_Kong"},
         {"Iceland", "Atlantic/Reykjavik"},
         {"Iran", "Asia/Tehran"},
@@ -1285,27 +1298,37 @@
         {"Japan", "Asia/Tokyo"},
         {"Kwajalein", "Pacific/Kwajalein"},
         {"Libya", "Africa/Tripoli"},
+        {"MST", "Etc/GMT+7"},
         {"Mexico/BajaNorte", "America/Tijuana"},
         {"Mexico/BajaSur", "America/Mazatlan"},
         {"Mexico/General", "America/Mexico_City"},
-        {"NZ", "Pacific/Auckland"},
+        {"NZ", "Antarctica/McMurdo"},
         {"NZ-CHAT", "Pacific/Chatham"},
-        {"Navajo", "America/Shiprock"},
+        {"Navajo", "America/Denver"},
         {"PRC", "Asia/Shanghai"},
-        {"Pacific/Samoa", "Pacific/Pago_Pago"},
+        {"Pacific/Chuuk", "Pacific/Truk"},
+        {"Pacific/Pohnpei", "Pacific/Ponape"},
+        {"Pacific/Samoa", "Pacific/Midway"},
         {"Pacific/Yap", "Pacific/Truk"},
         {"Poland", "Europe/Warsaw"},
         {"Portugal", "Europe/Lisbon"},
         {"ROC", "Asia/Taipei"},
         {"ROK", "Asia/Seoul"},
         {"Singapore", "Asia/Singapore"},
+        {"SystemV/AST4", "Etc/GMT+4"},
+        {"SystemV/CST6", "Etc/GMT+6"},
+        {"SystemV/EST5", "Etc/GMT+5"},
+        {"SystemV/HST10", "Etc/GMT+10"},
+        {"SystemV/MST7", "Etc/GMT+7"},
+        {"SystemV/PST8", "Etc/GMT+8"},
+        {"SystemV/YST9", "Etc/GMT+9"},
         {"Turkey", "Europe/Istanbul"},
-        {"UCT", "Etc/GMT"},
+        {"UCT", "Etc/UTC"},
         {"US/Alaska", "America/Anchorage"},
         {"US/Aleutian", "America/Adak"},
         {"US/Arizona", "America/Phoenix"},
         {"US/Central", "America/Chicago"},
-        {"US/East-Indiana", "America/Indiana/Indianapolis"},
+        {"US/East-Indiana", "America/Indianapolis"},
         {"US/Eastern", "America/New_York"},
         {"US/Hawaii", "Pacific/Honolulu"},
         {"US/Indiana-Starke", "America/Indiana/Knox"},
@@ -1313,12 +1336,12 @@
         {"US/Mountain", "America/Denver"},
         {"US/Pacific", "America/Los_Angeles"},
         {"US/Pacific-New", "America/Los_Angeles"},
-        {"US/Samoa", "Pacific/Pago_Pago"},
-        {"UTC", "Etc/GMT"},
-        {"Universal", "Etc/GMT"},
+        {"US/Samoa", "Pacific/Midway"},
+        {"UTC", "Etc/UTC"},
+        {"Universal", "Etc/UTC"},
         {"W-SU", "Europe/Moscow"},
-        {"Zulu", "Etc/GMT"},
-        /* Total: 113 */
+        {"Zulu", "Etc/UTC"},
+        /* Total: 136 */
 
     };
 
@@ -1954,27 +1977,92 @@
         const char *alias;
         const char *zone;
     } excluded1[] = {
-        {"America/Shiprock", "America/Denver"}, // America/Shiprock is defined as a Link to America/Denver in tzdata
-        {"America/Marigot", "America/Guadeloupe"}, 
-        {"America/St_Barthelemy", "America/Guadeloupe"},
-        {"America/Lower_Princes", "America/Curacao"},
-        {"America/Kralendijk", "America/Curacao"},
+        {"Africa/Addis_Ababa", "Africa/Nairobi"},
+        {"Africa/Asmera", "Africa/Nairobi"},
+        {"Africa/Bamako", "Africa/Abidjan"},
+        {"Africa/Bangui", "Africa/Lagos"},
+        {"Africa/Banjul", "Africa/Abidjan"},
+        {"Africa/Blantyre", "Africa/Maputo"},
+        {"Africa/Brazzaville", "Africa/Lagos"},
+        {"Africa/Bujumbura", "Africa/Maputo"},
+        {"Africa/Conakry", "Africa/Abidjan"},
+        {"Africa/Dakar", "Africa/Abidjan"},
+        {"Africa/Dar_es_Salaam", "Africa/Nairobi"},
+        {"Africa/Djibouti", "Africa/Nairobi"},
+        {"Africa/Douala", "Africa/Lagos"},
+        {"Africa/Freetown", "Africa/Abidjan"},
+        {"Africa/Gaborone", "Africa/Maputo"},
+        {"Africa/Harare", "Africa/Maputo"},
+        {"Africa/Kampala", "Africa/Nairobi"},
+        {"Africa/Khartoum", "Africa/Juba"},
+        {"Africa/Kigali", "Africa/Maputo"},
+        {"Africa/Kinshasa", "Africa/Lagos"},
+        {"Africa/Libreville", "Africa/Lagos"},
+        {"Africa/Lome", "Africa/Abidjan"},
+        {"Africa/Luanda", "Africa/Lagos"},
+        {"Africa/Lubumbashi", "Africa/Maputo"},
+        {"Africa/Lusaka", "Africa/Maputo"},
+        {"Africa/Maseru", "Africa/Johannesburg"},
+        {"Africa/Malabo", "Africa/Lagos"},
+        {"Africa/Mbabane", "Africa/Johannesburg"},
+        {"Africa/Mogadishu", "Africa/Nairobi"},
+        {"Africa/Niamey", "Africa/Lagos"},
+        {"Africa/Nouakchott", "Africa/Abidjan"},
+        {"Africa/Ouagadougou", "Africa/Abidjan"},
+        {"Africa/Porto-Novo", "Africa/Lagos"},
+        {"Africa/Sao_Tome", "Africa/Abidjan"},
+        {"America/Antigua", "America/Port_of_Spain"},
+        {"America/Anguilla", "America/Port_of_Spain"},
+        {"America/Curacao", "America/Aruba"},
+        {"America/Dominica", "America/Port_of_Spain"},
+        {"America/Grenada", "America/Port_of_Spain"},
+        {"America/Guadeloupe", "America/Port_of_Spain"},
+        {"America/Kralendijk", "America/Aruba"},
+        {"America/Lower_Princes", "America/Aruba"},
+        {"America/Marigot", "America/Port_of_Spain"},
+        {"America/Montserrat", "America/Port_of_Spain"},
+        {"America/Panama", "America/Cayman"},
+        {"America/Santa_Isabel", "America/Tijuana"},
+        {"America/Shiprock", "America/Denver"},
+        {"America/St_Barthelemy", "America/Port_of_Spain"},
+        {"America/St_Kitts", "America/Port_of_Spain"},
+        {"America/St_Lucia", "America/Port_of_Spain"},
+        {"America/St_Thomas", "America/Port_of_Spain"},
+        {"America/St_Vincent", "America/Port_of_Spain"},
+        {"America/Toronto", "America/Montreal"},
+        {"America/Tortola", "America/Port_of_Spain"},
+        {"America/Virgin", "America/Port_of_Spain"},
         {"Antarctica/South_Pole", "Antarctica/McMurdo"},
-        {"Atlantic/Jan_Mayen", "Europe/Oslo"},
         {"Arctic/Longyearbyen", "Europe/Oslo"},
+        {"Asia/Kuwait", "Asia/Aden"},
+        {"Asia/Muscat", "Asia/Dubai"},
+        {"Asia/Phnom_Penh", "Asia/Bangkok"},
+        {"Asia/Qatar", "Asia/Bahrain"},
+        {"Asia/Riyadh", "Asia/Aden"},
+        {"Asia/Vientiane", "Asia/Bangkok"},
+        {"Atlantic/Jan_Mayen", "Europe/Oslo"},
+        {"Atlantic/St_Helena", "Africa/Abidjan"},
+        {"Europe/Bratislava", "Europe/Prague"},
         {"Europe/Busingen", "Europe/Zurich"},
         {"Europe/Guernsey", "Europe/London"},
         {"Europe/Isle_of_Man", "Europe/London"},
         {"Europe/Jersey", "Europe/London"},
         {"Europe/Ljubljana", "Europe/Belgrade"},
+        {"Europe/Mariehamn", "Europe/Helsinki"},
         {"Europe/Podgorica", "Europe/Belgrade"},
+        {"Europe/San_Marino", "Europe/Rome"},
         {"Europe/Sarajevo", "Europe/Belgrade"},
         {"Europe/Skopje", "Europe/Belgrade"},
-        {"Europe/Zagreb", "Europe/Belgrade"},
-        {"Europe/Bratislava", "Europe/Prague"},
-        {"Europe/Mariehamn", "Europe/Helsinki"},
-        {"Europe/San_Marino", "Europe/Rome"},
+        {"Europe/Vaduz", "Europe/Zurich"},
         {"Europe/Vatican", "Europe/Rome"},
+        {"Europe/Zagreb", "Europe/Belgrade"},
+        {"Indian/Antananarivo", "Africa/Nairobi"},
+        {"Indian/Comoro", "Africa/Nairobi"},
+        {"Indian/Mayotte", "Africa/Nairobi"},
+        {"Pacific/Auckland", "Antarctica/McMurdo"},
+        {"Pacific/Johnston", "Pacific/Honolulu"},
+        {"Pacific/Midway", "Pacific/Pago_Pago"},
+        {"Pacific/Saipan", "Pacific/Guam"},
         {0, 0}
     };
 
@@ -2223,7 +2311,8 @@
         {"Europe/Helsinki",                 "FI"},
         {"Europe/Mariehamn",                "AX"},  // Link Europe/Helsinki, but in zone.tab
         {"Asia/Riyadh",                     "SA"},
-        {"Asia/Riyadh87",                   "001"}, // this should be "SA" actually, but not in zone.tab
+        // tz file solar87 was removed from tzdata2013i
+        // {"Asia/Riyadh87",                   "001"}, // this should be "SA" actually, but not in zone.tab
         {"Etc/Unknown",                     0},  // CLDR canonical, but not a sysmte zone ID
         {"bogus",                           0},  // bogus
         {"GMT+08:00",                       0},  // a custom ID, not a system zone ID
diff --git a/icu4j/build.properties b/icu4j/build.properties
index dd8a3b0..17f0ab1 100644
--- a/icu4j/build.properties
+++ b/icu4j/build.properties
@@ -4,6 +4,6 @@
 #*******************************************************************************

 api.report.version = 50

 api.report.prev.version = 49

-release.file.ver = 50_1_1

-api.doc.version = 50

+release.file.ver = 50_2

+api.doc.version = 50.2

 

diff --git a/icu4j/build.xml b/icu4j/build.xml
index 77ac602..93f21c6 100644
--- a/icu4j/build.xml
+++ b/icu4j/build.xml
@@ -51,7 +51,7 @@
     <property name="icu4j.api.doc.title" value="ICU4J ${api.doc.version} API Specification"/>
     <property name="icu4j.api.doc.window.title" value="ICU4J ${api.doc.version}"/>
     <property name="icu4j.api.doc.header" value="ICU4J ${api.doc.version}"/>
-    <property name="icu4j.api.doc.jdk.link" value="http://docs.oracle.com/javase/7/docs/api/"/>
+    <property name="icu4j.api.doc.jdk.link" value="https://docs.oracle.com/javase/7/docs/api/"/>
 
     <!-- directories -->
     <property name="release.dir" value="release"/>
diff --git a/icu4j/eclipse-build/build.properties b/icu4j/eclipse-build/build.properties
index 04be9ee..6e4ef95 100644
--- a/icu4j/eclipse-build/build.properties
+++ b/icu4j/eclipse-build/build.properties
@@ -2,6 +2,6 @@
 #* Copyright (C) 2010-2012, International Business Machines Corporation and    *
 #* others. All Rights Reserved.                                                *
 #*******************************************************************************
-icu4j.plugin.impl.version.string=50.1.1
+icu4j.plugin.impl.version.string=50.2
 copyright.eclipse=Licensed Materials - Property of IBM \n (C) Copyright IBM Corp. 2000, 2012. All Rights Reserved. \n IBM is a registered trademark of IBM Corp.
 icu4j.data.version.number=50
diff --git a/icu4j/main/classes/core/src/com/ibm/icu/util/VersionInfo.java b/icu4j/main/classes/core/src/com/ibm/icu/util/VersionInfo.java
index 7b4aed8..7b6586a 100644
--- a/icu4j/main/classes/core/src/com/ibm/icu/util/VersionInfo.java
+++ b/icu4j/main/classes/core/src/com/ibm/icu/util/VersionInfo.java
@@ -502,8 +502,8 @@
         UNICODE_6_1   = getInstance(6, 1, 0, 0);
         UNICODE_6_2   = getInstance(6, 2, 0, 0);
 
-        ICU_VERSION   = getInstance(50, 1, 1, 0);
-        ICU_DATA_VERSION = getInstance(50, 1, 1, 0);
+        ICU_VERSION   = getInstance(50, 2, 0, 0);
+        ICU_DATA_VERSION = getInstance(50, 2, 0, 0);
         UNICODE_VERSION = UNICODE_6_2;
 
         UCOL_RUNTIME_VERSION = getInstance(7);
diff --git a/icu4j/main/shared/data/icudata.jar b/icu4j/main/shared/data/icudata.jar
index 3d31429..a30c201 100755
--- a/icu4j/main/shared/data/icudata.jar
+++ b/icu4j/main/shared/data/icudata.jar
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:a648bcbbe9f0fe0f4200fdbaaa1b8e1774f4b93d44a9b8fff0fa17ac47aa46e2
-size 9758216
+oid sha256:8a900bf8ca5916727f02224d956b54ac0214fc00244fe1c4771dad00f468bc9d
+size 9757900
diff --git a/icu4j/main/shared/data/icutzdata.jar b/icu4j/main/shared/data/icutzdata.jar
index f07f293..daf6192 100755
--- a/icu4j/main/shared/data/icutzdata.jar
+++ b/icu4j/main/shared/data/icutzdata.jar
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:59f8f557f74e584b74c52662a545c20ad772e53d7599a0020e3f2c9206b9887e
-size 98152
+oid sha256:f6d1d09e3b21d1064646aebfc6c9a14942827d089458721640b97ff8bd9c5f10
+size 94310
diff --git a/icu4j/main/shared/data/testdata.jar b/icu4j/main/shared/data/testdata.jar
index 6116589..c82929f 100755
--- a/icu4j/main/shared/data/testdata.jar
+++ b/icu4j/main/shared/data/testdata.jar
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:dfe9de2f2677b6b6df96de5fd715dbc0a7d304ddf26b3b6d41078e183528cc4e
-size 723653
+oid sha256:207acdbac1575c2683e53f4888261dba0455471b4d9e1345c8f511a8755278ea
+size 723644
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/DateFormatTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/DateFormatTest.java
index d6ebaac..2efcc74 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/DateFormatTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/DateFormatTest.java
@@ -3671,7 +3671,7 @@
         GregorianCalendar gcal = new GregorianCalendar(tz);
 
         gcal.clear();
-        gcal.set(1910, Calendar.JANUARY, 1, 12, 00);    // offset 8:05:57
+        gcal.set(1900, Calendar.JANUARY, 1, 12, 00);    // offset 8:05:43
         d1 = gcal.getTime();
 
         gcal.clear();
@@ -3681,7 +3681,7 @@
         gcal.clear();
         gcal.set(1970, Calendar.JANUARY, 1, 12, 00);
         dexp2 = gcal.getTime();
-        dexp1 = new Date(dexp2.getTime() - (5*60 + 57)*1000);   // subtract 5m57s
+        dexp1 = new Date(dexp2.getTime() - (5*60 + 43)*1000);   // subtract 5m43s
 
         DateFormat fmt = DateFormat.getTimeInstance(DateFormat.FULL, new ULocale("zh"));
         fmt.setTimeZone(tz);
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/TimeZoneFormatTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/TimeZoneFormatTest.java
index 684523b..d2ef8b5 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/TimeZoneFormatTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/format/TimeZoneFormatTest.java
@@ -335,7 +335,8 @@
                                         .append(", time=").append(testTimes[testidx])
                                         .append(", restime=").append(restime)
                                         .append(", diff=").append(restime - testTimes[testidx]);
-                                    if (expectedRoundTrip[testidx]) {
+                                    if (expectedRoundTrip[testidx]
+                                        && !isSpecialTimeRoundTripCase(LOCALES[locidx], id, PATTERNS[patidx], testTimes[testidx])) {
                                         errln("FAIL: " + msg.toString());
                                     } else if (REALLY_VERBOSE_LOG) {
                                         logln(msg.toString());
@@ -373,6 +374,31 @@
         logln("Iteration: " + testCounts);
     }
 
+    // Special exclusions in TestTimeZoneRoundTrip.
+    // These special cases do not round trip time as designed.
+    private boolean isSpecialTimeRoundTripCase(ULocale loc, String id, String pattern, long time) {
+        final Object[][] EXCLUSIONS = {
+            {null, "Asia/Chita", "zzzz", Long.valueOf(1414252800000L)},
+            {null, "Asia/Chita", "vvvv", Long.valueOf(1414252800000L)},
+            {null, "Asia/Srednekolymsk", "zzzz", Long.valueOf(1414241999999L)},
+            {null, "Asia/Srednekolymsk", "vvvv", Long.valueOf(1414241999999L)},
+        };
+        boolean isExcluded = false;
+        for (Object[] excl : EXCLUSIONS) {
+            if (excl[0] == null || loc.equals((ULocale)excl[0])) {
+                if (id.equals(excl[1])) {
+                    if (excl[2] == null || pattern.equals((String)excl[2])) {
+                        if (excl[3] == null || ((Long)excl[3]).compareTo(time) == 0) {
+                            isExcluded = true;
+                            break;
+                        }
+                    }
+                }
+            }
+        }
+        return isExcluded;
+    }
+
     public void TestParse() {
         final Object[][] DATA = {
         //   text                   inpos       locale      style                   parseAll?   expected            outpos      time type
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
index 177349c..844c017 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
@@ -1475,27 +1475,92 @@
         // Some canonical IDs in CLDR are defined as "Link"
         // in Olson tzdata.
         final String[][] excluded1 = {
-                {"America/Shiprock", "America/Denver"}, // America/Shiprock is defined as a Link to America/Denver in tzdata
-                {"America/Kralendijk", "America/Curacao"},
-                {"America/Lower_Princes", "America/Curacao"},
-                {"America/Marigot", "America/Guadeloupe"},
-                {"America/St_Barthelemy", "America/Guadeloupe"},
-                {"Antarctica/South_Pole", "Antarctica/McMurdo"},
-                {"Atlantic/Jan_Mayen", "Europe/Oslo"},
-                {"Arctic/Longyearbyen", "Europe/Oslo"},
-                {"Europe/Busingen", "Europe/Zurich"},
-                {"Europe/Guernsey", "Europe/London"},
-                {"Europe/Isle_of_Man", "Europe/London"},
-                {"Europe/Jersey", "Europe/London"},
-                {"Europe/Ljubljana", "Europe/Belgrade"},
-                {"Europe/Podgorica", "Europe/Belgrade"},
-                {"Europe/Sarajevo", "Europe/Belgrade"},
-                {"Europe/Skopje", "Europe/Belgrade"},
-                {"Europe/Zagreb", "Europe/Belgrade"},
-                {"Europe/Bratislava", "Europe/Prague"},
-                {"Europe/Mariehamn", "Europe/Helsinki"},
-                {"Europe/San_Marino", "Europe/Rome"},
-                {"Europe/Vatican", "Europe/Rome"},
+            {"Africa/Addis_Ababa", "Africa/Nairobi"},
+            {"Africa/Asmera", "Africa/Nairobi"},
+            {"Africa/Bamako", "Africa/Abidjan"},
+            {"Africa/Bangui", "Africa/Lagos"},
+            {"Africa/Banjul", "Africa/Abidjan"},
+            {"Africa/Blantyre", "Africa/Maputo"},
+            {"Africa/Brazzaville", "Africa/Lagos"},
+            {"Africa/Bujumbura", "Africa/Maputo"},
+            {"Africa/Conakry", "Africa/Abidjan"},
+            {"Africa/Dakar", "Africa/Abidjan"},
+            {"Africa/Dar_es_Salaam", "Africa/Nairobi"},
+            {"Africa/Djibouti", "Africa/Nairobi"},
+            {"Africa/Douala", "Africa/Lagos"},
+            {"Africa/Freetown", "Africa/Abidjan"},
+            {"Africa/Gaborone", "Africa/Maputo"},
+            {"Africa/Harare", "Africa/Maputo"},
+            {"Africa/Kampala", "Africa/Nairobi"},
+            {"Africa/Khartoum", "Africa/Juba"},
+            {"Africa/Kigali", "Africa/Maputo"},
+            {"Africa/Kinshasa", "Africa/Lagos"},
+            {"Africa/Libreville", "Africa/Lagos"},
+            {"Africa/Lome", "Africa/Abidjan"},
+            {"Africa/Luanda", "Africa/Lagos"},
+            {"Africa/Lubumbashi", "Africa/Maputo"},
+            {"Africa/Lusaka", "Africa/Maputo"},
+            {"Africa/Maseru", "Africa/Johannesburg"},
+            {"Africa/Malabo", "Africa/Lagos"},
+            {"Africa/Mbabane", "Africa/Johannesburg"},
+            {"Africa/Mogadishu", "Africa/Nairobi"},
+            {"Africa/Niamey", "Africa/Lagos"},
+            {"Africa/Nouakchott", "Africa/Abidjan"},
+            {"Africa/Ouagadougou", "Africa/Abidjan"},
+            {"Africa/Porto-Novo", "Africa/Lagos"},
+            {"Africa/Sao_Tome", "Africa/Abidjan"},
+            {"America/Antigua", "America/Port_of_Spain"},
+            {"America/Anguilla", "America/Port_of_Spain"},
+            {"America/Curacao", "America/Aruba"},
+            {"America/Dominica", "America/Port_of_Spain"},
+            {"America/Grenada", "America/Port_of_Spain"},
+            {"America/Guadeloupe", "America/Port_of_Spain"},
+            {"America/Kralendijk", "America/Aruba"},
+            {"America/Lower_Princes", "America/Aruba"},
+            {"America/Marigot", "America/Port_of_Spain"},
+            {"America/Montserrat", "America/Port_of_Spain"},
+            {"America/Panama", "America/Cayman"},
+            {"America/Santa_Isabel", "America/Tijuana"},
+            {"America/Shiprock", "America/Denver"},
+            {"America/St_Barthelemy", "America/Port_of_Spain"},
+            {"America/St_Kitts", "America/Port_of_Spain"},
+            {"America/St_Lucia", "America/Port_of_Spain"},
+            {"America/St_Thomas", "America/Port_of_Spain"},
+            {"America/St_Vincent", "America/Port_of_Spain"},
+            {"America/Toronto", "America/Montreal"},
+            {"America/Tortola", "America/Port_of_Spain"},
+            {"America/Virgin", "America/Port_of_Spain"},
+            {"Antarctica/South_Pole", "Antarctica/McMurdo"},
+            {"Arctic/Longyearbyen", "Europe/Oslo"},
+            {"Asia/Kuwait", "Asia/Aden"},
+            {"Asia/Muscat", "Asia/Dubai"},
+            {"Asia/Phnom_Penh", "Asia/Bangkok"},
+            {"Asia/Qatar", "Asia/Bahrain"},
+            {"Asia/Riyadh", "Asia/Aden"},
+            {"Asia/Vientiane", "Asia/Bangkok"},
+            {"Atlantic/Jan_Mayen", "Europe/Oslo"},
+            {"Atlantic/St_Helena", "Africa/Abidjan"},
+            {"Europe/Bratislava", "Europe/Prague"},
+            {"Europe/Busingen", "Europe/Zurich"},
+            {"Europe/Guernsey", "Europe/London"},
+            {"Europe/Isle_of_Man", "Europe/London"},
+            {"Europe/Jersey", "Europe/London"},
+            {"Europe/Ljubljana", "Europe/Belgrade"},
+            {"Europe/Mariehamn", "Europe/Helsinki"},
+            {"Europe/Podgorica", "Europe/Belgrade"},
+            {"Europe/San_Marino", "Europe/Rome"},
+            {"Europe/Sarajevo", "Europe/Belgrade"},
+            {"Europe/Skopje", "Europe/Belgrade"},
+            {"Europe/Vaduz", "Europe/Zurich"},
+            {"Europe/Vatican", "Europe/Rome"},
+            {"Europe/Zagreb", "Europe/Belgrade"},
+            {"Indian/Antananarivo", "Africa/Nairobi"},
+            {"Indian/Comoro", "Africa/Nairobi"},
+            {"Indian/Mayotte", "Africa/Nairobi"},
+            {"Pacific/Auckland", "Antarctica/McMurdo"},
+            {"Pacific/Johnston", "Pacific/Honolulu"},
+            {"Pacific/Midway", "Pacific/Pago_Pago"},
+            {"Pacific/Saipan", "Pacific/Guam"},
         };
 
         // Following IDs are aliases of Etc/GMT in CLDR,
@@ -1778,7 +1843,8 @@
             {"Europe/Helsinki",                 "FI"},
             {"Europe/Mariehamn",                "AX"},  // Link Europe/Helsinki, but in zone.tab
             {"Asia/Riyadh",                     "SA"},
-            {"Asia/Riyadh87",                   "001"}, // this should be "SA" actually, but not in zone.tab
+            // tz file solar87 was removed from tzdata2013i
+            // {"Asia/Riyadh87",                   "001"}, // this should be "SA" actually, but not in zone.tab
             {"Etc/Unknown",                     null},  // CLDR canonical, but not a sysmte zone ID
             {"bogus",                           null},  // bogus
             {"GMT+08:00",                       null},  // a custom ID, not a system zone ID
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/util/DebugUtilitiesData.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/util/DebugUtilitiesData.java
index 9831ff6..a7c4b5e 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/util/DebugUtilitiesData.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/util/DebugUtilitiesData.java
@@ -7,7 +7,7 @@
 package com.ibm.icu.dev.test.util;
 
 public class DebugUtilitiesData extends Object {
-    public static final String ICU4C_VERSION="50.1.2";
+    public static final String ICU4C_VERSION="50.2";
     public static final int UDebugEnumType = 0;
     public static final int UCalendarDateFields = 1;
     public static final int UCalendarMonths = 2;
diff --git a/icu4j/pom.xml b/icu4j/pom.xml
index 5e27ef4..f05acc5 100644
--- a/icu4j/pom.xml
+++ b/icu4j/pom.xml
@@ -1,7 +1,9 @@
 <?xml version="1.0"?>
 <!--
+* © 2016 and later: Unicode, Inc. and others.
+* License & terms of use: http://www.unicode.org/copyright.html#License
 *******************************************************************************
-* Copyright (C) 2010-2012, International Business Machines Corporation and    *
+* Copyright (C) 2010-2016, International Business Machines Corporation and    *
 * others. All Rights Reserved.                                                *
 *******************************************************************************
 -->
@@ -11,7 +13,7 @@
 
   <groupId>com.ibm.icu</groupId>
   <artifactId>icu4j</artifactId>
-  <version>50.1.1</version>
+  <version>50.2</version>
 
   <name>ICU4J</name>
   <description>
@@ -20,17 +22,18 @@
   </description>
   <url>http://icu-project.org/</url>
   <inceptionYear>2001</inceptionYear>
+
   <licenses>
     <license>
-      <name>ICU License</name>
-      <url>http://source.icu-project.org/repos/icu/icu/trunk/license.html</url>
+      <name>Unicode/ICU License</name>
+      <url>https://raw.githubusercontent.com/unicode-org/icu/master/icu4c/LICENSE</url>
       <distribution>repo</distribution>
     </license>
   </licenses>
 
   <developers>
     <developer>
-      <id>mark</id>
+      <id>macchiati</id>
       <name>Mark Davis</name>
       <organization>Google</organization>
       <roles>
@@ -38,7 +41,7 @@
       </roles>
     </developer>
     <developer>
-      <id>emmons</id>
+      <id>JCEmmons</id>
       <name>John Emmons</name>
       <organization>IBM Corporation</organization>
       <roles>
@@ -46,7 +49,7 @@
       </roles>
     </developer>
     <developer>
-      <id>doug</id>
+      <id>dougfelt</id>
       <name>Doug Felt</name>
       <organization>Google</organization>
       <roles>
@@ -62,7 +65,7 @@
       </roles>
     </developer>
     <developer>
-      <id>srl</id>
+      <id>srl295</id>
       <name>Steven Loomis</name>
       <organization>IBM Corporation</organization>
       <roles>
@@ -70,7 +73,7 @@
       </roles>
     </developer>
     <developer>
-      <id>markus</id>
+      <id>markusicu</id>
       <name>Markus Scherer</name>
       <organization>Google</organization>
       <roles>
@@ -86,7 +89,7 @@
       </roles>
     </developer>
     <developer>
-      <id>yoshito</id>
+      <id>yumaoka</id>
       <name>Yoshito Umaoka</name>
       <organization>IBM Corporation</organization>
       <roles>
@@ -120,25 +123,26 @@
   </mailingLists>
 
   <scm>
-    <connection>scm:svn:http://source.icu-project.org/repos/icu/icu4j/trunk/</connection>
-    <developerConnection>scm:svn:http://source.icu-project.org/repos/icu/icu4j/trunk/</developerConnection>
-    <url>http://source.icu-project.org/repos/icu/icu4j/trunk/</url>
+    <connection>scm:git:git://github.com/unicode-org/icu.git</connection>
+    <developerConnection>scm:git:git@github.com:unicode-org/icu.git</developerConnection>
+    <url>https://github.com/unicode-org/icu</url>
   </scm>
+
   <issueManagement>
-    <system>Trac</system>
-    <url>http://bugs.icu-project.org/trac/</url>
+    <system>JIRA</system>
+    <url>https://unicode-org.atlassian.net/projects/ICU</url>
   </issueManagement>
 
   <distributionManagement>
     <repository>
       <id>icu4j-releases</id>
       <name>ICU4J Central Repository</name>
-      <url>http://oss.sonatype.org/service/local/staging/deploy/maven2</url>
+      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2</url>
     </repository>
     <snapshotRepository>
       <id>icu4j-snapshots</id>
       <name>ICU4J Central Development Repository</name>
-      <url>http://oss.sonatype.org/content/repositories/snapshots</url>
+      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
     </snapshotRepository>
   </distributionManagement>
 </project>
diff --git a/icu4j/readme.html b/icu4j/readme.html
index 74d6b1df..71d6fc6 100644
--- a/icu4j/readme.html
+++ b/icu4j/readme.html
@@ -14,12 +14,15 @@
 <body style="background-color: rgb(255, 255, 255);" lang="EN-US"
  link="#0000ff" vlink="#800080">
 <h2>International Components for Unicode for Java (ICU4J)</h2>
-<h3>Read Me for ICU4J 50 (50.1.1)</h3>
-(Last Update: 2012-Dec-14)
+<h3>Read Me for ICU4J 50.2</h3>
+(Last Update: 2019-Apr-10)
 <hr size="2" width="100%">
 
-<p><b>Note:</b> This is major release of ICU4J. It contains bug fixes and adds implementations
-of inherited API and introduces new API or functionality.
+<p>
+<b>Note:</b> This is an update release of ICU4J 50. This release contains bug
+fixes and updated data, but does not introduce any new APIs for functionatlites.
+<!-- <b>Note:</b> This is major release of ICU4J. It contains bug fixes and adds implementations
+of inherited API and introduces new API or functionality.-->
 </p>
 <p>For the most recent release, see the <a
  href="http://www.icu-project.org/download/"> ICU4J
@@ -1004,6 +1007,7 @@
 <h4><a name="resourcesICU4C">Building ICU4J Resources from ICU4C</a></h4>
 ICU4J data is built by ICU4C tools. Please see "icu4j-readme.txt" in <I>$icu4c_root</I>/source/data for the procedures.
 <h5> Generating Data from CLDR </h5>
+<i> Note: The description below does not apply to ICU4J 50.2</i><br>
 <I> Note: This procedure assumes that all 3 sources are present</I>
 <ol>
     <li>Checkout or download CLDR version 'release-22-1-1'</li>
@@ -1020,12 +1024,12 @@
 </ol>
 
 <h3 class="doc"><a name="timezone"></a>About ICU4J Time Zone</h3>
-<p>ICU4J 50.1.1 includes time zone data version 2012j, which is the latest one as of
-the release date.  However, time zone data is frequently updated in response
+<p>ICU4J library includes the latest time zone data, as of the release date.
+However, time zone data is frequently updated in response
 to changes made by local governments around the world.  If you need to update
 the time zone data, please refer the ICU user guide topic
 <a href="http://userguide.icu-project.org/datetime/timezone#TOC-Updating-the-Time-Zone-Data">Updating the Time Zone Data</a>.</p>
-<p>Starting with ICU4J 4.0, you can optionally configure ICU4J date and time
+<p>You can optionally configure ICU4J date and time
 service classes to use underlying JDK TimeZone implementation (see the ICU4J API reference
 <a href="http://www.icu-project.org/apiref/icu4j/com/ibm/icu/util/TimeZone.html">TimeZone</a>
 for the details).  When this configuration is enabled, ICU's own time zone data