[tbb-commits] [tor-browser] 12/73: Bug 1786025: Update time zone data to tzdata2022b. r=platform-i18n-reviewers, dminor a=RyanVM

gitolite role git at cupani.torproject.org
Wed Sep 21 20:17:05 UTC 2022


This is an automated email from the git hooks/post-receive script.

richard pushed a commit to branch geckoview-102.3.0esr-12.0-1
in repository tor-browser.

commit bae3c2e783f8f04c8b2639e5bc11543b0d08ee9c
Author: André Bargull <andre.bargull at gmail.com>
AuthorDate: Fri Aug 19 17:14:03 2022 +0000

    Bug 1786025: Update time zone data to tzdata2022b. r=platform-i18n-reviewers,dminor a=RyanVM
    
    Differential Revision: https://phabricator.services.mozilla.com/D155068
---
 config/external/icu/data/icudt71l.dat              |  Bin 15059920 -> 15054496 bytes
 intl/components/gtest/TestTimeZone.cpp             |    6 +
 intl/tzdata/GIT-INFO                               |    6 +-
 intl/tzdata/VERSION                                |    2 +-
 intl/tzdata/source/be/metaZones.res                |  Bin 43168 -> 43168 bytes
 intl/tzdata/source/be/timezoneTypes.res            |  Bin 20176 -> 20224 bytes
 intl/tzdata/source/be/zoneinfo64.res               |  Bin 154592 -> 149120 bytes
 intl/tzdata/source/ee/metaZones.res                |  Bin 43168 -> 43168 bytes
 intl/tzdata/source/ee/timezoneTypes.res            |  Bin 20176 -> 20224 bytes
 intl/tzdata/source/ee/zoneinfo64.res               |  Bin 154592 -> 149120 bytes
 intl/tzdata/source/le/metaZones.res                |  Bin 43168 -> 43168 bytes
 intl/tzdata/source/le/timezoneTypes.res            |  Bin 20176 -> 20224 bytes
 intl/tzdata/source/le/zoneinfo64.res               |  Bin 154592 -> 149120 bytes
 intl/tzdata/source/metaZones.txt                   |    1 +
 intl/tzdata/source/timezoneTypes.txt               |    1 +
 intl/tzdata/source/zoneinfo64.txt                  | 1140 +++++++++-----------
 js/src/builtin/intl/TimeZoneDataGenerated.h        |    8 +-
 js/src/tests/non262/Date/time-zones-imported.js    |   44 +-
 .../Intl/DateTimeFormat/timeZone_backward_links.js |    3 +-
 .../Intl/DateTimeFormat/timeZone_backzone.js       |   23 +-
 .../Intl/DateTimeFormat/timeZone_backzone_links.js |    7 +-
 .../DateTimeFormat/timeZone_notbackward_links.js   |    2 +-
 .../non262/Intl/DateTimeFormat/timeZone_version.js |    4 +-
 .../Intl/supportedValuesOf-timeZones-canonical.js  |    4 +-
 24 files changed, 601 insertions(+), 650 deletions(-)

diff --git a/config/external/icu/data/icudt71l.dat b/config/external/icu/data/icudt71l.dat
index 081dad1ae8455..57a86f511efd2 100644
Binary files a/config/external/icu/data/icudt71l.dat and b/config/external/icu/data/icudt71l.dat differ
diff --git a/intl/components/gtest/TestTimeZone.cpp b/intl/components/gtest/TestTimeZone.cpp
index dc274150c7657..05e2ec6cf0bde 100644
--- a/intl/components/gtest/TestTimeZone.cpp
+++ b/intl/components/gtest/TestTimeZone.cpp
@@ -155,11 +155,13 @@ TEST(IntlTimeZone, GetAvailableTimeZones)
 {
   constexpr auto EuropeBerlin = MakeStringSpan("Europe/Berlin");
   constexpr auto EuropeBusingen = MakeStringSpan("Europe/Busingen");
+  constexpr auto AtlanticJan_Mayen = MakeStringSpan("Atlantic/Jan_Mayen");
 
   auto timeZones = TimeZone::GetAvailableTimeZones("DE").unwrap();
 
   bool hasEuropeBerlin = false;
   bool hasEuropeBusingen = false;
+  bool hasAtlanticJan_Mayen = false;
 
   for (auto timeZone : timeZones) {
     auto span = timeZone.unwrap();
@@ -169,6 +171,9 @@ TEST(IntlTimeZone, GetAvailableTimeZones)
     } else if (span == EuropeBusingen) {
       ASSERT_FALSE(hasEuropeBusingen);
       hasEuropeBusingen = true;
+    } else if (span == AtlanticJan_Mayen) {
+      ASSERT_FALSE(hasAtlanticJan_Mayen);
+      hasAtlanticJan_Mayen = true;
     } else {
       std::string str(span.data(), span.size());
       ADD_FAILURE() << "Unexpected time zone: " << str;
@@ -177,6 +182,7 @@ TEST(IntlTimeZone, GetAvailableTimeZones)
 
   ASSERT_TRUE(hasEuropeBerlin);
   ASSERT_TRUE(hasEuropeBusingen);
+  ASSERT_TRUE(hasAtlanticJan_Mayen);
 }
 
 TEST(IntlTimeZone, GetAvailableTimeZonesNoRegion)
diff --git a/intl/tzdata/GIT-INFO b/intl/tzdata/GIT-INFO
index 5c0412ee70257..4cf58f456cc36 100644
--- a/intl/tzdata/GIT-INFO
+++ b/intl/tzdata/GIT-INFO
@@ -1,5 +1,5 @@
-commit e75fe57b8c94a71cd165209c893bb6f1a3dcc935
+commit 06611e9b8c6e14299e07d9ff06db61137fea94da
 Author: yumaoka <y.umaoka at gmail.com>
-Date:   Thu Mar 17 11:12:29 2022 -0400
+Date:   Thu Aug 18 13:02:20 2022 -0400
 
-    ICU-21949 tzdata2022a update data
+    ICU-22118 tzdata 2022b
diff --git a/intl/tzdata/VERSION b/intl/tzdata/VERSION
index ca002de23bcd3..7c9f279dc3c44 100644
--- a/intl/tzdata/VERSION
+++ b/intl/tzdata/VERSION
@@ -1 +1 @@
-2022a
+2022b
diff --git a/intl/tzdata/source/be/metaZones.res b/intl/tzdata/source/be/metaZones.res
index e3e1985657f34..e935e755fded0 100644
Binary files a/intl/tzdata/source/be/metaZones.res and b/intl/tzdata/source/be/metaZones.res differ
diff --git a/intl/tzdata/source/be/timezoneTypes.res b/intl/tzdata/source/be/timezoneTypes.res
index 3ab85e7880376..0f8d7f6698695 100644
Binary files a/intl/tzdata/source/be/timezoneTypes.res and b/intl/tzdata/source/be/timezoneTypes.res differ
diff --git a/intl/tzdata/source/be/zoneinfo64.res b/intl/tzdata/source/be/zoneinfo64.res
index 852570fa41918..d3ac22f7bf25b 100644
Binary files a/intl/tzdata/source/be/zoneinfo64.res and b/intl/tzdata/source/be/zoneinfo64.res differ
diff --git a/intl/tzdata/source/ee/metaZones.res b/intl/tzdata/source/ee/metaZones.res
index 7d4672b25b767..2bf0ff66df418 100644
Binary files a/intl/tzdata/source/ee/metaZones.res and b/intl/tzdata/source/ee/metaZones.res differ
diff --git a/intl/tzdata/source/ee/timezoneTypes.res b/intl/tzdata/source/ee/timezoneTypes.res
index 1890f474dcd93..a9871d8520b68 100644
Binary files a/intl/tzdata/source/ee/timezoneTypes.res and b/intl/tzdata/source/ee/timezoneTypes.res differ
diff --git a/intl/tzdata/source/ee/zoneinfo64.res b/intl/tzdata/source/ee/zoneinfo64.res
index 4a3b8551a781e..b87105ffca022 100644
Binary files a/intl/tzdata/source/ee/zoneinfo64.res and b/intl/tzdata/source/ee/zoneinfo64.res differ
diff --git a/intl/tzdata/source/le/metaZones.res b/intl/tzdata/source/le/metaZones.res
index 8b318bcf1622e..98ee289812506 100644
Binary files a/intl/tzdata/source/le/metaZones.res and b/intl/tzdata/source/le/metaZones.res differ
diff --git a/intl/tzdata/source/le/timezoneTypes.res b/intl/tzdata/source/le/timezoneTypes.res
index 724817286043f..af295d68cbb16 100644
Binary files a/intl/tzdata/source/le/timezoneTypes.res and b/intl/tzdata/source/le/timezoneTypes.res differ
diff --git a/intl/tzdata/source/le/zoneinfo64.res b/intl/tzdata/source/le/zoneinfo64.res
index 78b6749842844..7e72672e34793 100644
Binary files a/intl/tzdata/source/le/zoneinfo64.res and b/intl/tzdata/source/le/zoneinfo64.res differ
diff --git a/intl/tzdata/source/metaZones.txt b/intl/tzdata/source/metaZones.txt
index d17ce06b1d519..afb588845cb41 100644
--- a/intl/tzdata/source/metaZones.txt
+++ b/intl/tzdata/source/metaZones.txt
@@ -870,6 +870,7 @@ metaZones:table(nofallback){
         wall{"Wallis"}
         yaku{"Yakutsk"}
         yeka{"Yekaterinburg"}
+        yuko{"Yukon"}
     }
     metazoneInfo{
         "Africa:Abidjan"{
diff --git a/intl/tzdata/source/timezoneTypes.txt b/intl/tzdata/source/timezoneTypes.txt
index 39873bd933bfb..d4957cb67b6d0 100644
--- a/intl/tzdata/source/timezoneTypes.txt
+++ b/intl/tzdata/source/timezoneTypes.txt
@@ -87,6 +87,7 @@ timezoneTypes:table(nofallback){
             "Etc:Universal"{"Etc/UTC"}
             "Etc:Zulu"{"Etc/UTC"}
             "Europe:Belfast"{"Europe/London"}
+            "Europe:Kyiv"{"Europe/Kiev"}
             "Europe:Nicosia"{"Asia/Nicosia"}
             "Europe:Tiraspol"{"Europe/Chisinau"}
             "Mexico:BajaNorte"{"America/Tijuana"}
diff --git a/intl/tzdata/source/zoneinfo64.txt b/intl/tzdata/source/zoneinfo64.txt
index c42e580ebac20..bb7acc0012cc9 100644
--- a/intl/tzdata/source/zoneinfo64.txt
+++ b/intl/tzdata/source/zoneinfo64.txt
@@ -3,17 +3,17 @@
 // License & terms of use: http://www.unicode.org/copyright.html
 //---------------------------------------------------------
 // Build tool:  tz2icu
-// Build date:  Wed Mar 16 23:36:37 2022
+// Build date:  Thu Aug 18 04:47:36 2022
 // tz database: ftp://ftp.iana.org/tz/
-// tz version:  2022a
-// ICU version: 71.1
+// tz version:  2022b
+// ICU version: 72.0.1
 //---------------------------------------------------------
 // >> !!! >>   THIS IS A MACHINE-GENERATED FILE   << !!! <<
 // >> !!! >>>            DO NOT EDIT             <<< !!! <<
 //---------------------------------------------------------
 
 zoneinfo64:table(nofallback) {
- TZVersion { "2022a" }
+ TZVersion { "2022b" }
  Zones:array { 
   /* ACT */ :int { 356 } //Z#0
   /* AET */ :int { 368 } //Z#1
@@ -24,7 +24,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1830383032 }
     typeOffsets:intvector { -968, 0, 0, 0 }
     typeMap:bin { "01" }
-    links:intvector { 5, 6, 11, 13, 21, 22, 27, 38, 51, 52, 55, 348 }
+    links:intvector { 5, 6, 11, 13, 21, 22, 27, 38, 51, 52, 55, 346, 348, 516 }
   } //Z#5
   /* Africa/Accra */ :int { 5 } //Z#6
   /* Africa/Addis_Ababa */ :int { 48 } //Z#7
@@ -58,7 +58,7 @@ zoneinfo64:table(nofallback) {
     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, 1 [...]
     transPost32:intvector { 0, -2125888096, 0, -2122259296, 0, -2095043296, 0, -2092019296, 0, -2064803296, 0, -2061174496, 0, -2033958496, 0, -2030934496, 0, -2003718496, 0, -2000089696, 0, -1972873696, 0, -1969244896, 0, -1942028896, 0, -1939004896, 0, -1911788896, 0, -1908160096, 0, -1880944096, 0, -1877315296, 0, -1850099296, 0, -1847075296, 0, -1819859296, 0, -1816230496, 0, -1789014496, 0, -1785990496, 0, -1758774496, 0, -1755145696, 0, -1727929696, 0, -1724300896, 0, -1697084896,  [...]
     typeOffsets:intvector { -1820, 0, 0, 0, 0, 3600, 3600, 0 }
-    typeMap:bin { "01020102010201020102010201020102010301020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
+    typeMap:bin { "01020102010201020102010201020102010301020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102" }
   } //Z#19
   /* Africa/Ceuta */ :table {
     transPre32:intvector { -1, 2117514496 }
@@ -77,8 +77,8 @@ zoneinfo64:table(nofallback) {
   /* Africa/El_Aaiun */ :table {
     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, 15092424 [...]
     transPost32:intvector { 0, -2125888096, 0, -2122259296, 0, -2095043296, 0, -2092019296, 0, -2064803296, 0, -2061174496, 0, -2033958496, 0, -2030934496, 0, -2003718496, 0, -2000089696, 0, -1972873696, 0, -1969244896, 0, -1942028896, 0, -1939004896, 0, -1911788896, 0, -1908160096, 0, -1880944096, 0, -1877315296, 0, -1850099296, 0, -1847075296, 0, -1819859296, 0, -1816230496, 0, -1789014496, 0, -1785990496, 0, -1758774496, 0, -1755145696, 0, -1727929696, 0, -1724300896, 0, -1697084896,  [...]
-    typeOffsets:intvector { -3168, 0, -3600, 0, 0, 0, 0, 3600, 3600, 0 }
-    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030204" }
+    typeOffsets:intvector { -3168, 0, -3600, 0, 0, 0, 0, 3600 }
+    typeMap:bin { "0102030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203" }
   } //Z#26
   /* Africa/Freetown */ :int { 5 } //Z#27
   /* Africa/Gaborone */ :int { 43 } //Z#28
@@ -133,7 +133,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1946168836, -1309746600, -1261969200, -1041388200, -865305900 }
     typeOffsets:intvector { 8836, 0, 9000, 0, 9900, 0, 10800, 0 }
     typeMap:bin { "0103010203" }
-    links:intvector { 7, 9, 10, 23, 24, 32, 46, 48, 397, 516, 520, 525 }
+    links:intvector { 7, 9, 10, 23, 24, 32, 46, 48, 397, 517, 521, 526 }
   } //Z#48
   /* Africa/Ndjamena */ :table {
     trans:intvector { -1830387612, 308703600, 321314400 }
@@ -155,7 +155,7 @@ zoneinfo64:table(nofallback) {
     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 { "0102010201020103010201020102010201020102010201020103010203010203" }
-    links:intvector { 56, 533 }
+    links:intvector { 56, 534 }
   } //Z#56
   /* Africa/Tunis */ :table {
     transPre32:intvector { -1, 1497764852 }
@@ -177,7 +177,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -36000 }
     finalYear:int { 2008 }
-    links:intvector { 59, 80, 618 }
+    links:intvector { 59, 80, 619 }
   } //Z#59
   /* America/Anchorage */ :table {
     transPre32:intvector { -1, 1069743569, -1, 2106016072 }
@@ -187,7 +187,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -32400 }
     finalYear:int { 2008 }
-    links:intvector { 4, 60, 617 }
+    links:intvector { 4, 60, 618 }
   } //Z#60
   /* America/Anguilla */ :int { 190 } //Z#61
   /* America/Antigua */ :int { 190 } //Z#62
@@ -372,7 +372,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-    links:intvector { 98, 382, 620 }
+    links:intvector { 98, 382, 621 }
   } //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 }
@@ -421,7 +421,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-    links:intvector { 109, 205, 545, 626 }
+    links:intvector { 109, 205, 546, 627 }
   } //Z#109
   /* America/Detroit */ :table {
     trans:intvector { -2051202469, -1724083200, -880218000, -765396000, -684349200, -671047200, -80506740, -68666400, -52938000, -37216800, 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,  [...]
@@ -430,7 +430,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 110, 625 }
+    links:intvector { 110, 626 }
   } //Z#110
   /* America/Dominica */ :int { 190 } //Z#111
   /* America/Edmonton */ :table {
@@ -542,7 +542,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 117, 131, 139, 513, 621 }
+    links:intvector { 117, 131, 139, 514, 622 }
   } //Z#131
   /* America/Indiana/Knox */ :table {
     transPre32:intvector { -1, 1577320096 }
@@ -552,7 +552,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -21600 }
     finalYear:int { 2008 }
-    links:intvector { 132, 147, 624 }
+    links:intvector { 132, 147, 625 }
   } //Z#132
   /* America/Indiana/Marengo */ :table {
     transPre32:intvector { -1, 1577320096 }
@@ -629,7 +629,7 @@ zoneinfo64:table(nofallback) {
     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, 530 }
+    links:intvector { 142, 531 }
   } //Z#142
   /* America/Jujuy */ :int { 68 } //Z#143
   /* America/Juneau */ :table {
@@ -681,7 +681,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-    links:intvector { 151, 550, 627, 628 }
+    links:intvector { 151, 551, 628, 629 }
   } //Z#151
   /* America/Louisville */ :int { 145 } //Z#152
   /* America/Lower_Princes */ :int { 190 } //Z#153
@@ -723,7 +723,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "Mexico" }
     finalRaw:int { -25200 }
     finalYear:int { 2003 }
-    links:intvector { 160, 539 }
+    links:intvector { 160, 540 }
   } //Z#160
   /* America/Mendoza */ :int { 70 } //Z#161
   /* America/Menominee */ :table {
@@ -759,7 +759,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "Mexico" }
     finalRaw:int { -21600 }
     finalYear:int { 2003 }
-    links:intvector { 165, 540 }
+    links:intvector { 165, 541 }
   } //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, 1162094 [...]
@@ -802,7 +802,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -18000 }
     finalYear:int { 2008 }
-    links:intvector { 173, 622 }
+    links:intvector { 173, 623 }
   } //Z#173
   /* America/Nipigon */ :table {
     transPre32:intvector { -1, 1928233280 }
@@ -897,7 +897,7 @@ zoneinfo64:table(nofallback) {
     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 { 103, 185, 547, 619 }
+    links:intvector { 103, 185, 548, 620 }
   } //Z#185
   /* America/Port-au-Prince */ :table {
     transPre32:intvector { -1, 1770463056 }
@@ -920,13 +920,13 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -873057600, -765399600 }
     typeOffsets:intvector { -15865, 0, -14400, 0, -14400, 3600 }
     typeMap:bin { "010201" }
-    links:intvector { 61, 62, 77, 86, 105, 111, 123, 124, 148, 153, 157, 171, 187, 190, 207, 209, 210, 211, 212, 219, 221, 549 }
+    links:intvector { 61, 62, 77, 86, 105, 111, 123, 124, 148, 153, 157, 171, 187, 190, 207, 209, 210, 211, 212, 219, 221, 550 }
   } //Z#190
   /* America/Punta_Arenas */ :table {
     transPre32:intvector { -1, 1770462716 }
-    trans:intvector { -1892661435, -1688410800, -1619205435, -1593806400, -1335986235, -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, 2899 [...]
+    trans:intvector { -1892661435, -1688410800, -1619205435, -1593806400, -1335986235, -1317585600, -1304362800, -1286049600, -1272826800, -1254513600, -1241290800, -1222977600, -1209754800, -1191355200, -1178132400, -870552000, -865278000, -736632000, -718056000, -713649600, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 258519600, 277 [...]
     typeOffsets:intvector { -17020, 0, -18000, 0, -18000, 3600, -16965, 0, -14400, 0, -14400, 3600, -10800, 0 }
-    typeMap:bin { "0301030403020102010201020102010401040104050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040506" }
+    typeMap:bin { "030103040302010201020102010201040104020104050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040506" }
   } //Z#191
   /* America/Rainy_River */ :table {
     transPre32:intvector { -1, 1928234792 }
@@ -978,12 +978,12 @@ zoneinfo64:table(nofallback) {
     typeMap:bin { "010201020102010201020102010201020102010201020102010201020103" }
   } //Z#200
   /* America/Santiago */ :table {
-    trans:intvector { -1892661435, -1688410800, -1619205435, -1593806400, -1335986235, -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, 25 [...]
+    trans:intvector { -1892661435, -1688410800, -1619205435, -1593806400, -1335986235, -1317585600, -1304362800, -1286049600, -1272826800, -1254513600, -1241290800, -1222977600, -1209754800, -1191355200, -1178132400, -870552000, -865278000, -740520000, -736635600, -718056000, -713649600, -36619200, -23922000, -3355200, 7527600, 24465600, 37767600, 55915200, 69217200, 87969600, 100666800, 118209600, 132116400, 150868800, 163566000, 182318400, 195620400, 213768000, 227070000, 245217600, 25 [...]
     typeOffsets:intvector { -16965, 0, -18000, 0, -18000, 3600, -14400, 0, -14400, 3600 }
-    typeMap:bin { "0100030002010201020102010201030103040301030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
+    typeMap:bin { "01000300020102010201020102010301030402010304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
     finalRule { "Chile" }
     finalRaw:int { -14400 }
-    finalYear:int { 2020 }
+    finalYear:int { 2024 }
     links:intvector { 201, 394 }
   } //Z#201
   /* America/Santo_Domingo */ :table {
@@ -1064,7 +1064,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2011 }
-    links:intvector { 115, 199, 217, 538 }
+    links:intvector { 115, 199, 217, 539 }
   } //Z#217
   /* America/Toronto */ :table {
     transPre32:intvector { -1, 1928231148 }
@@ -1132,7 +1132,7 @@ zoneinfo64:table(nofallback) {
     typeOffsets:intvector { 0, 0, 18000, 0, 25200, 0 }
     typeMap:bin { "02000201020102" }
   } //Z#227
-  /* Antarctica/DumontDUrville */ :int { 585 } //Z#228
+  /* Antarctica/DumontDUrville */ :int { 586 } //Z#228
   /* Antarctica/Macquarie */ :table {
     transPre32:intvector { -1, 2080708096 }
     trans:intvector { -1680508800, -1665388800, -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 [...]
@@ -1147,7 +1147,7 @@ zoneinfo64:table(nofallback) {
     typeOffsets:intvector { 0, 0, 18000, 0, 21600, 0 }
     typeMap:bin { "0201" }
   } //Z#230
-  /* Antarctica/McMurdo */ :int { 553 } //Z#231
+  /* Antarctica/McMurdo */ :int { 554 } //Z#231
   /* 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, 8451 [...]
     typeOffsets:intvector { 0, 0, -14400, 0, -14400, 3600, -10800, 0, -10800, 3600 }
@@ -1158,7 +1158,7 @@ zoneinfo64:table(nofallback) {
     typeOffsets:intvector { 0, 0, -10800, 0 }
     typeMap:bin { "01" }
   } //Z#233
-  /* Antarctica/South_Pole */ :int { 553 } //Z#234
+  /* Antarctica/South_Pole */ :int { 554 } //Z#234
   /* Antarctica/Syowa */ :int { 310 } //Z#235
   /* Antarctica/Troll */ :table {
     trans:intvector { 1111885200, 1130634000 }
@@ -1168,12 +1168,8 @@ zoneinfo64:table(nofallback) {
     finalRaw:int { 0 }
     finalYear:int { 2006 }
   } //Z#236
-  /* Antarctica/Vostok */ :table {
-    trans:intvector { -380073600 }
-    typeOffsets:intvector { 0, 0, 21600, 0 }
-    typeMap:bin { "01" }
-  } //Z#237
-  /* Arctic/Longyearbyen */ :int { 475 } //Z#238
+  /* Antarctica/Vostok */ :int { 330 } //Z#237
+  /* Arctic/Longyearbyen */ :int { 446 } //Z#238
   /* Asia/Aden */ :int { 310 } //Z#239
   /* 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, 9727 [...]
@@ -1231,7 +1227,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1570084924 }
     typeOffsets:intvector { 24124, 0, 25200, 0 }
     typeMap:bin { "01" }
-    links:intvector { 251, 303, 332 }
+    links:intvector { 251, 303, 332, 519 }
   } //Z#251
   /* 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, 9540 [...]
@@ -1252,11 +1248,7 @@ zoneinfo64:table(nofallback) {
     typeOffsets:intvector { 17904, 0, 18000, 0, 18000, 3600, 21600, 0, 21600, 3600 }
     typeMap:bin { "01030403040304030403040304030403040304030403020102010201020102010201020102010201020102010201020102010203" }
   } //Z#254
-  /* Asia/Brunei */ :table {
-    trans:intvector { -1383464380, -1167636600 }
-    typeOffsets:intvector { 27580, 0, 27000, 0, 28800, 0 }
-    typeMap:bin { "0102" }
-  } //Z#255
+  /* Asia/Brunei */ :int { 290 } //Z#255
   /* Asia/Calcutta */ :int { 287 } //Z#256
   /* 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, 9727 [...]
@@ -1301,7 +1293,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1577936472 }
     typeOffsets:intvector { 13272, 0, 14400, 0 }
     typeMap:bin { "01" }
-    links:intvector { 266, 297 }
+    links:intvector { 266, 297, 523, 527 }
   } //Z#266
   /* 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 }
@@ -1336,16 +1328,16 @@ zoneinfo64:table(nofallback) {
     finalYear:int { 2023 }
   } //Z#271
   /* Asia/Ho_Chi_Minh */ :table {
-    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 { 272, 311, 632 }
+    trans:intvector { -1851577590, -852105600, -782643600, -767869200, -718095600, -457776000, -315648000, 171820800 }
+    typeOffsets:intvector { 25590, 0, 25200, 0, 28800, 0, 32400, 0 }
+    typeMap:bin { "0102030102010201" }
+    links:intvector { 272, 311, 633 }
   } //Z#272
   /* Asia/Hong_Kong */ :table {
     trans:intvector { -2056690800, -900910800, -891579600, -884248200, -761209200, -747907200, -728541000, -717049800, -697091400, -683785800, -668061000, -654755400, -636611400, -623305800, -605161800, -591856200, -573712200, -559801800, -541657800, -528352200, -510211800, -498112200, -478762200, -466662600, -446707800, -435213000, -415258200, -403158600, -383808600, -371709000, -352359000, -340259400, -320909400, -308809800, -288855000, -277360200, -257405400, -245910600, -225955800, - [...]
     typeOffsets:intvector { 27402, 0, 28800, 0, 28800, 1800, 28800, 3600, 32400, 0 }
     typeMap:bin { "010302040103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301030103010301" }
-    links:intvector { 273, 512 }
+    links:intvector { 273, 513 }
   } //Z#273
   /* 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, [...]
@@ -1376,7 +1368,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "Zion" }
     finalRaw:int { 7200 }
     finalYear:int { 2014 }
-    links:intvector { 279, 322, 528 }
+    links:intvector { 279, 322, 529 }
   } //Z#279
   /* Asia/Kabul */ :table {
     transPre32:intvector { -1, 1770429088 }
@@ -1393,7 +1385,7 @@ zoneinfo64:table(nofallback) {
     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 { 282, 546 }
+    links:intvector { 282, 547 }
   } //Z#282
   /* Asia/Kashgar */ :int { 330 } //Z#283
   /* Asia/Kathmandu */ :table {
@@ -1413,23 +1405,19 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -2019705670, -891581400, -872058600, -862637400, -764145000 }
     typeOffsets:intvector { 21208, 0, 19270, 0, 19800, 0, 19800, 3600, 21200, 0 }
     typeMap:bin { "04010203020302" }
-    links:intvector { 256, 287, 514 }
+    links:intvector { 256, 287, 515 }
   } //Z#287
   /* Asia/Krasnoyarsk */ :table {
     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, 9727 [...]
     typeOffsets:intvector { 22286, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600, 28800, 0 }
     typeMap:bin { "0103040304030403040304030403040304030403040302010304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
   } //Z#288
-  /* 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#289
+  /* Asia/Kuala_Lumpur */ :int { 316 } //Z#289
   /* 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" }
+    links:intvector { 255, 290 }
   } //Z#290
   /* Asia/Kuwait */ :int { 310 } //Z#291
   /* Asia/Macao */ :int { 293 } //Z#292
@@ -1464,7 +1452,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EUAsia" }
     finalRaw:int { 7200 }
     finalYear:int { 2000 }
-    links:intvector { 298, 474 }
+    links:intvector { 298, 475 }
   } //Z#298
   /* Asia/Novokuznetsk */ :table {
     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, 9727 [...]
@@ -1535,20 +1523,20 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1948782472, -1830414600, -681210000, -672228000, -654771600, -640864800, -623408400, -609415200, -588848400, -577965600, -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 { "01030403040304030403010201020102010201020102010304030403" }
-    links:intvector { 314, 599 }
+    links:intvector { 314, 600 }
   } //Z#314
   /* Asia/Shanghai */ :table {
     transPre32:intvector { -1, 2117485353 }
     trans:intvector { -1600675200, -1585904400, -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 { "0102010201020102010201020102010201020102010201020102010201" }
-    links:intvector { 259, 260, 270, 315, 384, 548 }
+    links:intvector { 259, 260, 270, 315, 384, 549 }
   } //Z#315
   /* 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 { 316, 601 }
+    links:intvector { 289, 316, 602 }
   } //Z#316
   /* 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, 9727 [...]
@@ -1560,7 +1548,7 @@ zoneinfo64:table(nofallback) {
     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 { 318, 598 }
+    links:intvector { 318, 599 }
   } //Z#318
   /* Asia/Tashkent */ :table {
     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 }
@@ -1573,14 +1561,10 @@ zoneinfo64:table(nofallback) {
     typeMap:bin { "0103040304030403040304030403040304030403040302010201020102030403040304030403040304030403040304020103" }
   } //Z#320
   /* 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, 1237667 [...]
-    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,  [...]
+    trans:intvector { -1090466744, 227820600, 246223800, 259617600, 271108800, 283982400, 296598600, 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, 1221939 [...]
     typeOffsets:intvector { 12344, 0, 12600, 0, 12600, 3600, 14400, 0, 14400, 3600 }
-    typeMap:bin { "010304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "Iran" }
-    finalRaw:int { 12600 }
-    finalYear:int { 2089 }
-    links:intvector { 321, 527 }
+    typeMap:bin { "01020304030102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
+    links:intvector { 321, 528 }
   } //Z#321
   /* Asia/Tel_Aviv */ :int { 279 } //Z#322
   /* Asia/Thimbu */ :int { 324 } //Z#323
@@ -1595,7 +1579,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -683802000, -672310800, -654771600, -640861200, -620298000, -609411600, -588848400, -577962000 }
     typeOffsets:intvector { 33539, 0, 32400, 0, 32400, 3600 }
     typeMap:bin { "010201020102010201" }
-    links:intvector { 325, 529, 531 }
+    links:intvector { 325, 530, 532 }
   } //Z#325
   /* 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, 9727 [...]
@@ -1614,7 +1598,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1325483420 }
     typeOffsets:intvector { 21020, 0, 21600, 0 }
     typeMap:bin { "01" }
-    links:intvector { 283, 330 }
+    links:intvector { 237, 283, 330 }
   } //Z#330
   /* 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, 9727 [...]
@@ -1636,7 +1620,7 @@ zoneinfo64:table(nofallback) {
     trans:intvector { -1577946287, -873268200, -778410000 }
     typeOffsets:intvector { 23087, 0, 23400, 0, 32400, 0 }
     typeMap:bin { "010201" }
-    links:intvector { 309, 335 }
+    links:intvector { 309, 335, 520 }
   } //Z#335
   /* 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, 95 [...]
@@ -1647,7 +1631,7 @@ zoneinfo64:table(nofallback) {
     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, 1017 [...]
     typeOffsets:intvector { 10680, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "0103040304030403040304030403040304030403040302010201020102010203040304030403040304030403040304030403040304030403040304030403" }
-    links:intvector { 337, 541 }
+    links:intvector { 337, 542 }
   } //Z#337
   /* Atlantic/Azores */ :table {
     transPre32:intvector { -1, 1581063056 }
@@ -1689,7 +1673,7 @@ zoneinfo64:table(nofallback) {
     finalYear:int { 1997 }
     links:intvector { 342, 343 }
   } //Z#343
-  /* Atlantic/Jan_Mayen */ :int { 475 } //Z#344
+  /* Atlantic/Jan_Mayen */ :int { 446 } //Z#344
   /* Atlantic/Madeira */ :table {
     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, -9 [...]
     typeOffsets:intvector { -4056, 0, -3600, 0, -3600, 3600, -3600, 7200, 0, 0, 0, 3600 }
@@ -1698,12 +1682,7 @@ zoneinfo64:table(nofallback) {
     finalRaw:int { 0 }
     finalYear:int { 1997 }
   } //Z#345
-  /* Atlantic/Reykjavik */ :table {
-    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, -5107 [...]
-    typeOffsets:intvector { -5280, 0, -3600, 0, -3600, 3600, 0, 0 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020103" }
-    links:intvector { 346, 515 }
-  } //Z#346
+  /* Atlantic/Reykjavik */ :int { 5 } //Z#346
   /* Atlantic/South_Georgia */ :table {
     transPre32:intvector { -1, 1770454464 }
     typeOffsets:intvector { -8768, 0, -7200, 0 }
@@ -1856,10 +1835,10 @@ zoneinfo64:table(nofallback) {
   /* Canada/Saskatchewan */ :int { 195 } //Z#392
   /* Canada/Yukon */ :int { 222 } //Z#393
   /* Chile/Continental */ :int { 201 } //Z#394
-  /* Chile/EasterIsland */ :int { 557 } //Z#395
+  /* Chile/EasterIsland */ :int { 558 } //Z#395
   /* Cuba */ :int { 129 } //Z#396
   /* EAT */ :int { 48 } //Z#397
-  /* ECT */ :int { 476 } //Z#398
+  /* ECT */ :int { 477 } //Z#398
   /* 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 }
@@ -1883,7 +1862,7 @@ zoneinfo64:table(nofallback) {
   /* Eire */ :int { 454 } //Z#403
   /* Etc/GMT */ :table {
     typeOffsets:intvector { 0, 0 }
-    links:intvector { 404, 405, 418, 433, 434, 506, 507, 508, 509, 510 }
+    links:intvector { 404, 405, 418, 433, 434, 507, 508, 509, 510, 511 }
   } //Z#404
   /* Etc/GMT+0 */ :int { 404 } //Z#405
   /* Etc/GMT+1 */ :table {
@@ -1970,21 +1949,14 @@ zoneinfo64:table(nofallback) {
   /* Etc/UCT */ :int { 436 } //Z#435
   /* Etc/UTC */ :table {
     typeOffsets:intvector { 0, 0 }
-    links:intvector { 435, 436, 437, 439, 616, 630, 631, 635 }
+    links:intvector { 435, 436, 437, 439, 617, 631, 632, 636 }
   } //Z#436
   /* Etc/Universal */ :int { 436 } //Z#437
   /* Etc/Unknown */ :table {
     typeOffsets:intvector { 0, 0 }
   } //Z#438
   /* Etc/Zulu */ :int { 436 } //Z#439
-  /* 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, -1 [...]
-    typeOffsets:intvector { 1172, 0, 1172, 3600, 1200, 0, 1200, 3600, 3600, 0, 3600, 3600 }
-    typeMap:bin { "01000100010001000100010001000100010001000100010001000100010001000100010001000100010001030203020302050405040504050405040504050405040504050405040504050405040504050405040504050405040504050405040504" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
-  } //Z#440
+  /* Europe/Amsterdam */ :int { 448 } //Z#440
   /* 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 }
@@ -2007,7 +1979,7 @@ zoneinfo64:table(nofallback) {
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
   } //Z#443
-  /* Europe/Belfast */ :int { 466 } //Z#444
+  /* Europe/Belfast */ :int { 467 } //Z#444
   /* 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 }
@@ -2016,7 +1988,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 445, 465, 477, 483, 486, 500 }
+    links:intvector { 445, 466, 478, 484, 487, 501 }
   } //Z#445
   /* Europe/Berlin */ :table {
     transPre32:intvector { -1, 1872912888 }
@@ -2026,8 +1998,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
+    links:intvector { 238, 344, 446, 453, 476, 489 }
   } //Z#446
-  /* Europe/Bratislava */ :int { 478 } //Z#447
+  /* Europe/Bratislava */ :int { 479 } //Z#447
   /* Europe/Brussels */ :table {
     transPre32:intvector { -1, 1843972096 }
     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, -1 [...]
@@ -2036,6 +2009,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
+    links:intvector { 440, 448, 468 }
   } //Z#448
   /* 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, [...]
@@ -2054,7 +2028,7 @@ zoneinfo64:table(nofallback) {
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
   } //Z#450
-  /* Europe/Busingen */ :int { 502 } //Z#451
+  /* Europe/Busingen */ :int { 503 } //Z#451
   /* 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, 5 [...]
@@ -2063,22 +2037,13 @@ zoneinfo64:table(nofallback) {
     finalRule { "Moldova" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-    links:intvector { 452, 491 }
+    links:intvector { 452, 492 }
   } //Z#452
-  /* 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, 7 [...]
-    typeOffsets:intvector { 3020, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
-  } //Z#453
+  /* Europe/Copenhagen */ :int { 446 } //Z#453
   /* 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, -1 [...]
-    typeOffsets:intvector { -1500, 0, -1521, 0, -1521, 3600, 0, 0, 0, 3600, 3600, 0 }
-    typeMap:bin { "0102030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030405030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403" }
+    typeOffsets:intvector { -1521, 0, -1521, 3600, 0, 0, 0, 3600, 3600, 0 }
+    typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020304020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302" }
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
@@ -2093,7 +2058,7 @@ zoneinfo64:table(nofallback) {
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
   } //Z#455
-  /* Europe/Guernsey */ :int { 466 } //Z#456
+  /* Europe/Guernsey */ :int { 467 } //Z#456
   /* Europe/Helsinki */ :table {
     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 }
@@ -2101,36 +2066,38 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1997 }
-    links:intvector { 457, 470 }
+    links:intvector { 457, 471 }
   } //Z#457
-  /* Europe/Isle_of_Man */ :int { 466 } //Z#458
+  /* Europe/Isle_of_Man */ :int { 467 } //Z#458
   /* Europe/Istanbul */ :table {
     transPre32:intvector { -1, 1454819544 }
     trans:intvector { -1869875816, -1693706400, -1680490800, -1570413600, -1552186800, -1538359200, -1522551600, -1507514400, -1490583600, -1440208800, -1428030000, -1409709600, -1396494000, -931053600, -922676400, -917834400, -892436400, -875844000, -764737200, -744343200, -733806000, -716436000, -701924400, -684986400, -670474800, -654141600, -639025200, -622087200, -606970800, -590032800, -575521200, -235620000, -194842800, -177732000, -165726000, 107910000, 121215600, 133920000, 1526 [...]
     typeOffsets:intvector { 6952, 0, 7016, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "01020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030405040203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020302030203020304" }
-    links:intvector { 276, 459, 615 }
+    links:intvector { 276, 459, 616 }
   } //Z#459
-  /* Europe/Jersey */ :int { 466 } //Z#460
+  /* Europe/Jersey */ :int { 467 } //Z#460
   /* Europe/Kaliningrad */ :table {
     transPre32:intvector { -1, 1872911176 }
     trans:intvector { -1693706400, -1680483600, -1663455600, -1650150000, -1632006000, -1618700400, -938905200, -857257200, -844556400, -828226800, -812502000, -796777200, -781052400, -780372000, -778730400, -762663600, -749095200, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 7175520 [...]
     typeOffsets:intvector { 4920, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "0102010201020102010201020102030403050605060506050605060506050605060504030403040304030403040304030403040304030403040304030403040304030403040304030403040304030503" }
   } //Z#461
-  /* Europe/Kiev */ :table {
+  /* Europe/Kiev */ :int { 464 } //Z#462
+  /* 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, 1004 [...]
+    typeOffsets:intvector { 11928, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
+    typeMap:bin { "010304030403040304030403040304030403020102010302010201020102010201020102010201020102010201020102010201020102010201020102010301" }
+  } //Z#463
+  /* Europe/Kyiv */ :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, 638319600, 646783200, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846378000, 859683600, 877827600 }
     typeOffsets:intvector { 7324, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "03050201020105060506050605060506050605060506050605060403040304030403040304030403" }
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#462
-  /* 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, 1004 [...]
-    typeOffsets:intvector { 11928, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
-    typeMap:bin { "010304030403040304030403040304030403020102010302010201020102010201020102010201020102010201020102010201020102010201020102010301" }
-  } //Z#463
+    links:intvector { 462, 464 }
+  } //Z#464
   /* Europe/Lisbon */ :table {
     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, -9 [...]
     typeOffsets:intvector { -2205, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
@@ -2138,9 +2105,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 464, 597 }
-  } //Z#464
-  /* Europe/Ljubljana */ :int { 445 } //Z#465
+    links:intvector { 465, 598 }
+  } //Z#465
+  /* Europe/Ljubljana */ :int { 445 } //Z#466
   /* 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, -1 [...]
@@ -2149,16 +2116,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-    links:intvector { 444, 456, 458, 460, 466, 504, 505 }
-  } //Z#466
-  /* 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, -1 [...]
-    typeOffsets:intvector { 1476, 0, 0, 0, 0, 3600, 3600, 0, 3600, 3600 }
-    typeMap:bin { "0304030403040301020102010201020102010201020102010201020102010201020102010201020102010201020102010201020403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
+    links:intvector { 444, 456, 458, 460, 467, 505, 506 }
   } //Z#467
+  /* Europe/Luxembourg */ :int { 448 } //Z#468
   /* Europe/Madrid */ :table {
     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, 21 [...]
@@ -2167,7 +2127,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#468
+  } //Z#469
   /* Europe/Malta */ :table {
     transPre32:intvector { -1, 1891488612 }
     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, 1 [...]
@@ -2176,40 +2136,23 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#469
-  /* Europe/Mariehamn */ :int { 457 } //Z#470
+  } //Z#470
+  /* Europe/Mariehamn */ :int { 457 } //Z#471
   /* 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, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600 [...]
     typeOffsets:intvector { 6616, 0, 3600, 0, 3600, 3600, 6600, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "0304060201020102060706070607060706070607060706070607060504050405040504050405040504050405040504050405040504050405040504050405040504050406" }
-  } //Z#471
-  /* Europe/Monaco */ :table {
-    transPre32:intvector { -1, 1846648724 }
-    trans:intvector { -1854403761, -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, -1 [...]
-    typeOffsets:intvector { 1772, 0, 0, 0, 0, 3600, 0, 7200, 561, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "04010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010203020302030203020305060506050605060506050605060506050605060506050605060506050605060506050605060506050605" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
   } //Z#472
+  /* Europe/Monaco */ :int { 477 } //Z#473
   /* Europe/Moscow */ :table {
     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, 74 [...]
     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 { 473, 633 }
-  } //Z#473
-  /* Europe/Nicosia */ :int { 298 } //Z#474
-  /* 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, 5754 [...]
-    typeOffsets:intvector { 2580, 0, 3600, 0, 3600, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
-    links:intvector { 238, 344, 475 }
-  } //Z#475
+    links:intvector { 474, 634 }
+  } //Z#474
+  /* Europe/Nicosia */ :int { 298 } //Z#475
+  /* Europe/Oslo */ :int { 446 } //Z#476
   /* Europe/Paris */ :table {
     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, -1 [...]
     typeOffsets:intvector { 561, 0, 0, 0, 0, 3600, 0, 7200, 3600, 0, 3600, 3600 }
@@ -2217,9 +2160,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 398, 476 }
-  } //Z#476
-  /* Europe/Podgorica */ :int { 445 } //Z#477
+    links:intvector { 398, 473, 477 }
+  } //Z#477
+  /* Europe/Podgorica */ :int { 445 } //Z#478
   /* Europe/Prague */ :table {
     transPre32:intvector { -1, 1825565432 }
     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,  [...]
@@ -2228,8 +2171,8 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 447, 478 }
-  } //Z#478
+    links:intvector { 447, 479 }
+  } //Z#479
   /* Europe/Riga */ :table {
     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, 7 [...]
     typeOffsets:intvector { 5794, 0, 3600, 0, 3600, 3600, 5794, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
@@ -2237,7 +2180,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2002 }
-  } //Z#479
+  } //Z#480
   /* Europe/Rome */ :table {
     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, 1 [...]
@@ -2246,27 +2189,27 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 480, 482, 495 }
-  } //Z#480
+    links:intvector { 481, 483, 496 }
+  } //Z#481
   /* Europe/Samara */ :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, 687916800, 701820000, 717544800, 733269600, 748994400, 764719200, 780444000, 796168800, 811893600, 828223200, 846367200, 859672800, 877816800, 891122400, 909266400, 922572000, 941320800, 954021600, 9727 [...]
     typeOffsets:intvector { 12020, 0, 7200, 3600, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "02040504050405040504050405040504050403020302010204050405040504050405040504050405040504050405040504050405040504050405040504030204" }
-  } //Z#481
-  /* Europe/San_Marino */ :int { 480 } //Z#482
-  /* Europe/Sarajevo */ :int { 445 } //Z#483
+  } //Z#482
+  /* Europe/San_Marino */ :int { 481 } //Z#483
+  /* Europe/Sarajevo */ :int { 445 } //Z#484
   /* 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, 1004 [...]
     typeOffsets:intvector { 11058, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "01030403040304030403040304030403020102010201030201020102010201020102010201020102010201020102010201020102010201020102010201030103" }
-  } //Z#484
+  } //Z#485
   /* 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, 701827200, 717552000, 733276800, 749001600, 764726400, 767739600, 780436800, 796165200, 811886400, 828219600, 846374400, 859683600, 877827600, 891133200, 909277200 [...]
+    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, 701827200, 717552000, 733276800, 749001600, 764726400, 767739600, 780447600, 796172400, 811897200, 828219600, 846374400, 859683600, 877827600, 891133200, 909277200 [...]
     typeOffsets:intvector { 8184, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 8160, 0, 10800, 0, 10800, 3600, 14400, 0 }
     typeMap:bin { "050306020102010206070607060706070607060706070607060706030403040304070607060706040304030403040304030403040304030403040304030403040304030403040304030806" }
-  } //Z#485
-  /* Europe/Skopje */ :int { 445 } //Z#486
+  } //Z#486
+  /* Europe/Skopje */ :int { 445 } //Z#487
   /* 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, 85 [...]
@@ -2275,16 +2218,8 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#487
-  /* 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 }
-    typeOffsets:intvector { 4332, 0, 3600, 0, 3600, 3600, 3614, 0 }
-    typeMap:bin { "0301020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "EU" }
-    finalRaw:int { 3600 }
-    finalYear:int { 1997 }
   } //Z#488
+  /* Europe/Stockholm */ :int { 446 } //Z#489
   /* 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, 81 [...]
     typeOffsets:intvector { 5940, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
@@ -2292,7 +2227,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2003 }
-  } //Z#489
+  } //Z#490
   /* 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, 71 [...]
     typeOffsets:intvector { 4760, 0, 3600, 0, 3600, 3600 }
@@ -2300,13 +2235,13 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#490
-  /* Europe/Tiraspol */ :int { 452 } //Z#491
+  } //Z#491
+  /* Europe/Tiraspol */ :int { 452 } //Z#492
   /* 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, 9727 [...]
     typeOffsets:intvector { 11616, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "030506050605060506050605060506050605040304030201030403040304030403040304030403040304030403040304030403040304030403040304030403050305" }
-  } //Z#492
+  } //Z#493
   /* 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, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846378000, 859683600, 877827600 }
@@ -2315,9 +2250,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#493
-  /* Europe/Vaduz */ :int { 502 } //Z#494
-  /* Europe/Vatican */ :int { 480 } //Z#495
+  } //Z#494
+  /* Europe/Vaduz */ :int { 503 } //Z#495
+  /* Europe/Vatican */ :int { 481 } //Z#496
   /* 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, -733273200, -717634800, -701910000, -684975600, -670460400, 323823600, 338940000, 354675600, 370400400, 386125200, 401850000, 417574800, 433299600, 449024400, 465354000, 481078800, 496803600, 512528400, 528253200, 543978000, 559702800, 575427600, 591152400,  [...]
@@ -2326,7 +2261,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#496
+  } //Z#497
   /* 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, 622598400, 638323200, 654652800, 670377600, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 8282 [...]
@@ -2335,12 +2270,12 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 2004 }
-  } //Z#497
+  } //Z#498
   /* Europe/Volgograd */ :table {
     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, 1004 [...]
     typeOffsets:intvector { 10660, 0, 10800, 0, 10800, 3600, 14400, 0, 14400, 3600 }
     typeMap:bin { "0103040304030403040304030403040302010201020103020102010201020102010201020102010201020102010201020102010201020102010201020103010301" }
-  } //Z#498
+  } //Z#499
   /* 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, -208 [...]
     typeOffsets:intvector { 5040, 0, 3600, 0, 3600, 3600, 7200, 0, 7200, 3600 }
@@ -2348,9 +2283,9 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 499, 596 }
-  } //Z#499
-  /* Europe/Zagreb */ :int { 445 } //Z#500
+    links:intvector { 500, 597 }
+  } //Z#500
+  /* Europe/Zagreb */ :int { 445 } //Z#501
   /* 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, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846378000, 859683600, 877827600 }
@@ -2359,7 +2294,7 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 7200 }
     finalYear:int { 1998 }
-  } //Z#501
+  } //Z#502
   /* Europe/Zurich */ :table {
     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 }
@@ -2368,75 +2303,56 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-    links:intvector { 451, 494, 502 }
-  } //Z#502
+    links:intvector { 451, 495, 503 }
+  } //Z#503
   /* Factory */ :table {
     typeOffsets:intvector { 0, 0 }
-  } //Z#503
-  /* GB */ :int { 466 } //Z#504
-  /* GB-Eire */ :int { 466 } //Z#505
-  /* GMT */ :int { 404 } //Z#506
-  /* GMT+0 */ :int { 404 } //Z#507
-  /* GMT-0 */ :int { 404 } //Z#508
-  /* GMT0 */ :int { 404 } //Z#509
-  /* Greenwich */ :int { 404 } //Z#510
+  } //Z#504
+  /* GB */ :int { 467 } //Z#505
+  /* GB-Eire */ :int { 467 } //Z#506
+  /* GMT */ :int { 404 } //Z#507
+  /* GMT+0 */ :int { 404 } //Z#508
+  /* GMT-0 */ :int { 404 } //Z#509
+  /* GMT0 */ :int { 404 } //Z#510
+  /* Greenwich */ :int { 404 } //Z#511
   /* HST */ :table {
     typeOffsets:intvector { -36000, 0 }
-  } //Z#511
-  /* Hongkong */ :int { 273 } //Z#512
-  /* IET */ :int { 131 } //Z#513
-  /* IST */ :int { 287 } //Z#514
-  /* Iceland */ :int { 346 } //Z#515
-  /* Indian/Antananarivo */ :int { 48 } //Z#516
+  } //Z#512
+  /* Hongkong */ :int { 273 } //Z#513
+  /* IET */ :int { 131 } //Z#514
+  /* IST */ :int { 287 } //Z#515
+  /* Iceland */ :int { 5 } //Z#516
+  /* Indian/Antananarivo */ :int { 48 } //Z#517
   /* Indian/Chagos */ :table {
     trans:intvector { -1988167780, 820436400 }
     typeOffsets:intvector { 17380, 0, 18000, 0, 21600, 0 }
     typeMap:bin { "0102" }
-  } //Z#517
-  /* Indian/Christmas */ :table {
-    transPre32:intvector { -1, 1930865124 }
-    typeOffsets:intvector { 25372, 0, 25200, 0 }
-    typeMap:bin { "01" }
   } //Z#518
-  /* Indian/Cocos */ :table {
-    transPre32:intvector { -1, 2085955236 }
-    typeOffsets:intvector { 23260, 0, 23400, 0 }
-    typeMap:bin { "01" }
-  } //Z#519
-  /* Indian/Comoro */ :int { 48 } //Z#520
-  /* Indian/Kerguelen */ :table {
-    trans:intvector { -631152000 }
-    typeOffsets:intvector { 0, 0, 18000, 0 }
-    typeMap:bin { "01" }
-  } //Z#521
-  /* Indian/Mahe */ :table {
-    trans:intvector { -1988163708 }
-    typeOffsets:intvector { 13308, 0, 14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#522
+  /* Indian/Christmas */ :int { 251 } //Z#519
+  /* Indian/Cocos */ :int { 335 } //Z#520
+  /* Indian/Comoro */ :int { 48 } //Z#521
+  /* Indian/Kerguelen */ :int { 524 } //Z#522
+  /* Indian/Mahe */ :int { 266 } //Z#523
   /* Indian/Maldives */ :table {
     trans:intvector { -315636840 }
     typeOffsets:intvector { 17640, 0, 18000, 0 }
     typeMap:bin { "01" }
-  } //Z#523
+    links:intvector { 522, 524 }
+  } //Z#524
   /* Indian/Mauritius */ :table {
     trans:intvector { -1988164200, 403041600, 417034800, 1224972000, 1238274000 }
     typeOffsets:intvector { 13800, 0, 14400, 0, 14400, 3600 }
     typeMap:bin { "0102010201" }
-  } //Z#524
-  /* Indian/Mayotte */ :int { 48 } //Z#525
-  /* Indian/Reunion */ :table {
-    trans:intvector { -1848886912 }
-    typeOffsets:intvector { 13312, 0, 14400, 0 }
-    typeMap:bin { "01" }
-  } //Z#526
-  /* Iran */ :int { 321 } //Z#527
-  /* Israel */ :int { 279 } //Z#528
-  /* JST */ :int { 325 } //Z#529
-  /* Jamaica */ :int { 142 } //Z#530
-  /* Japan */ :int { 325 } //Z#531
-  /* Kwajalein */ :int { 572 } //Z#532
-  /* Libya */ :int { 56 } //Z#533
+  } //Z#525
+  /* Indian/Mayotte */ :int { 48 } //Z#526
+  /* Indian/Reunion */ :int { 266 } //Z#527
+  /* Iran */ :int { 321 } //Z#528
+  /* Israel */ :int { 279 } //Z#529
+  /* JST */ :int { 325 } //Z#530
+  /* Jamaica */ :int { 142 } //Z#531
+  /* Japan */ :int { 325 } //Z#532
+  /* Kwajalein */ :int { 573 } //Z#533
+  /* Libya */ :int { 56 } //Z#534
   /* 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, [...]
     typeOffsets:intvector { 3600, 0, 3600, 3600 }
@@ -2444,11 +2360,11 @@ zoneinfo64:table(nofallback) {
     finalRule { "C-Eur" }
     finalRaw:int { 3600 }
     finalYear:int { 1997 }
-  } //Z#534
-  /* MIT */ :int { 552 } //Z#535
+  } //Z#535
+  /* MIT */ :int { 553 } //Z#536
   /* MST */ :table {
     typeOffsets:intvector { -25200, 0 }
-  } //Z#536
+  } //Z#537
   /* 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, 483526 [...]
     typeOffsets:intvector { -25200, 0, -25200, 3600 }
@@ -2456,20 +2372,20 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -25200 }
     finalYear:int { 2008 }
-  } //Z#537
-  /* Mexico/BajaNorte */ :int { 217 } //Z#538
-  /* Mexico/BajaSur */ :int { 160 } //Z#539
-  /* Mexico/General */ :int { 165 } //Z#540
-  /* NET */ :int { 337 } //Z#541
-  /* NST */ :int { 553 } //Z#542
-  /* NZ */ :int { 553 } //Z#543
-  /* NZ-CHAT */ :int { 555 } //Z#544
-  /* Navajo */ :int { 109 } //Z#545
-  /* PLT */ :int { 282 } //Z#546
-  /* PNT */ :int { 185 } //Z#547
-  /* PRC */ :int { 315 } //Z#548
-  /* PRT */ :int { 190 } //Z#549
-  /* PST */ :int { 151 } //Z#550
+  } //Z#538
+  /* Mexico/BajaNorte */ :int { 217 } //Z#539
+  /* Mexico/BajaSur */ :int { 160 } //Z#540
+  /* Mexico/General */ :int { 165 } //Z#541
+  /* NET */ :int { 337 } //Z#542
+  /* NST */ :int { 554 } //Z#543
+  /* NZ */ :int { 554 } //Z#544
+  /* NZ-CHAT */ :int { 556 } //Z#545
+  /* Navajo */ :int { 109 } //Z#546
+  /* PLT */ :int { 282 } //Z#547
+  /* PNT */ :int { 185 } //Z#548
+  /* PRC */ :int { 315 } //Z#549
+  /* PRT */ :int { 190 } //Z#550
+  /* PST */ :int { 151 } //Z#551
   /* 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, 483530 [...]
     typeOffsets:intvector { -28800, 0, -28800, 3600 }
@@ -2477,14 +2393,14 @@ zoneinfo64:table(nofallback) {
     finalRule { "US" }
     finalRaw:int { -28800 }
     finalYear:int { 2008 }
-  } //Z#551
+  } //Z#552
   /* Pacific/Apia */ :table {
     transPre32:intvector { -1, 1849542912 }
     trans:intvector { -1861878784, -631110600, 1285498800, 1301752800, 1316872800, 1325239200, 1333202400, 1348927200, 1365256800, 1380376800, 1396706400, 1411826400, 1428156000, 1443276000, 1459605600, 1474725600, 1491055200, 1506175200, 1522504800, 1538229600, 1554559200, 1569679200, 1586008800, 1601128800, 1617458400 }
     typeOffsets:intvector { 45184, 0, -41400, 0, -41216, 0, -39600, 0, -39600, 3600, 46800, 0, 46800, 3600 }
     typeMap:bin { "0201030403040605060506050605060506050605060506050605" }
-    links:intvector { 535, 552 }
-  } //Z#552
+    links:intvector { 536, 553 }
+  } //Z#553
   /* 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, 30 [...]
@@ -2493,14 +2409,14 @@ zoneinfo64:table(nofallback) {
     finalRule { "NZ" }
     finalRaw:int { 43200 }
     finalYear:int { 2009 }
-    links:intvector { 231, 234, 542, 543, 553 }
-  } //Z#553
+    links:intvector { 231, 234, 543, 544, 554 }
+  } //Z#554
   /* 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#554
+  } //Z#555
   /* Pacific/Chatham */ :table {
     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, 7955352 [...]
@@ -2509,36 +2425,30 @@ zoneinfo64:table(nofallback) {
     finalRule { "Chatham" }
     finalRaw:int { 45900 }
     finalYear:int { 2009 }
-    links:intvector { 544, 555 }
-  } //Z#555
-  /* Pacific/Chuuk */ :table {
-    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 { 556, 592, 595 }
+    links:intvector { 545, 556 }
   } //Z#556
+  /* Pacific/Chuuk */ :int { 586 } //Z#557
   /* Pacific/Easter */ :table {
-    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, 624 [...]
+    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, 624 [...]
     typeOffsets:intvector { -26248, 0, -25200, 0, -25200, 3600, -21600, 0, -21600, 3600 }
-    typeMap:bin { "010201020102010201020102010201020102010201020102010201020304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
+    typeMap:bin { "0102010201020102010201020102010201020102010201020102010203040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304030403040304" }
     finalRule { "Chile" }
     finalRaw:int { -21600 }
-    finalYear:int { 2020 }
-    links:intvector { 395, 557 }
-  } //Z#557
+    finalYear:int { 2024 }
+    links:intvector { 395, 558 }
+  } //Z#558
   /* Pacific/Efate */ :table {
     trans:intvector { -1829387596, 125409600, 133876800, 433256400, 448977600, 464706000, 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 { "0102010201020102010201020102010201020102010201" }
-  } //Z#558
-  /* Pacific/Enderbury */ :int { 569 } //Z#559
+  } //Z#559
+  /* Pacific/Enderbury */ :int { 570 } //Z#560
   /* Pacific/Fakaofo */ :table {
     transPre32:intvector { -1, 2117555592 }
     trans:intvector { 1325242800 }
     typeOffsets:intvector { -41096, 0, -39600, 0, 46800, 0 }
     typeMap:bin { "0102" }
-  } //Z#560
+  } //Z#561
   /* Pacific/Fiji */ :table {
     trans:intvector { -1709985344, 909842400, 920124000, 941896800, 951573600, 1259416800, 1269698400, 1287842400, 1299333600, 1319292000, 1327154400, 1350741600, 1358604000, 1382796000, 1390050000, 1414850400, 1421503200, 1446300000, 1452952800, 1478354400, 1484402400, 1509804000, 1515852000, 1541253600, 1547301600, 1573308000, 1578751200, 1608386400, 1610805600, 1668261600, 1673704800, 1699711200 }
     typeOffsets:intvector { 42944, 0, 43200, 0, 43200, 3600 }
@@ -2546,90 +2456,81 @@ zoneinfo64:table(nofallback) {
     finalRule { "Fiji" }
     finalRaw:int { 43200 }
     finalYear:int { 2024 }
-  } //Z#561
-  /* Pacific/Funafuti */ :table {
-    transPre32:intvector { -1, 2117471484 }
-    typeOffsets:intvector { 43012, 0, 43200, 0 }
-    typeMap:bin { "01" }
   } //Z#562
+  /* Pacific/Funafuti */ :int { 591 } //Z#563
   /* Pacific/Galapagos */ :table {
     trans:intvector { -1230746496, 504939600, 722930400, 728888400 }
     typeOffsets:intvector { -21504, 0, -21600, 0, -21600, 3600, -18000, 0 }
     typeMap:bin { "03010201" }
-  } //Z#563
+  } //Z#564
   /* Pacific/Gambier */ :table {
     trans:intvector { -1806678012 }
     typeOffsets:intvector { -32388, 0, -32400, 0 }
     typeMap:bin { "01" }
-  } //Z#564
+  } //Z#565
   /* Pacific/Guadalcanal */ :table {
     trans:intvector { -1806748788 }
     typeOffsets:intvector { 38388, 0, 39600, 0 }
     typeMap:bin { "01" }
-    links:intvector { 565, 600 }
-  } //Z#565
+    links:intvector { 566, 584, 585, 601 }
+  } //Z#566
   /* Pacific/Guam */ :table {
     transPre32:intvector { -1, 350340556, -1, 2117479756 }
     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 { 566, 587 }
-  } //Z#566
+    links:intvector { 567, 588 }
+  } //Z#567
   /* 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 { 567, 568, 623 }
-  } //Z#567
-  /* Pacific/Johnston */ :int { 567 } //Z#568
+    links:intvector { 568, 569, 624 }
+  } //Z#568
+  /* Pacific/Johnston */ :int { 568 } //Z#569
   /* Pacific/Kanton */ :table {
     trans:intvector { -1020470400, 307627200, 788871600 }
     typeOffsets:intvector { 0, 0, -43200, 0, -39600, 0, 46800, 0 }
     typeMap:bin { "010203" }
-    links:intvector { 559, 569 }
-  } //Z#569
+    links:intvector { 560, 570 }
+  } //Z#570
   /* Pacific/Kiritimati */ :table {
     transPre32:intvector { -1, 2117552256 }
     trans:intvector { 307622400, 788868000 }
     typeOffsets:intvector { -37760, 0, -38400, 0, -36000, 0, 50400, 0 }
     typeMap:bin { "010203" }
-  } //Z#570
+  } //Z#571
   /* Pacific/Kosrae */ :table {
     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#571
+  } //Z#572
   /* Pacific/Kwajalein */ :table {
     transPre32:intvector { -1, 2117474336 }
     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 { 532, 572 }
-  } //Z#572
-  /* Pacific/Majuro */ :table {
-    transPre32:intvector { -1, 2117473408 }
-    trans:intvector { -1743678000, -1606813200, -1041418800, -907408800, -818067600, -7988400 }
-    typeOffsets:intvector { 41088, 0, 32400, 0, 36000, 0, 39600, 0, 43200, 0 }
-    typeMap:bin { "03010302010304" }
+    links:intvector { 533, 573 }
   } //Z#573
+  /* Pacific/Majuro */ :int { 591 } //Z#574
   /* Pacific/Marquesas */ :table {
     trans:intvector { -1806676920 }
     typeOffsets:intvector { -33480, 0, -34200, 0 }
     typeMap:bin { "01" }
-  } //Z#574
-  /* Pacific/Midway */ :int { 580 } //Z#575
+  } //Z#575
+  /* Pacific/Midway */ :int { 581 } //Z#576
   /* Pacific/Nauru */ :table {
     trans:intvector { -1545131260, -862918200, -767350800, 287418600 }
     typeOffsets:intvector { 40060, 0, 32400, 0, 41400, 0, 43200, 0 }
     typeMap:bin { "02010203" }
-  } //Z#576
+  } //Z#577
   /* Pacific/Niue */ :table {
     trans:intvector { -543069620, -173623200 }
     typeOffsets:intvector { -40780, 0, -40800, 0, -39600, 0 }
     typeMap:bin { "0102" }
-  } //Z#577
+  } //Z#578
   /* Pacific/Norfolk */ :table {
     transPre32:intvector { -1, 2117474184 }
     trans:intvector { -599656320, 152029800, 162916200, 1443882600, 1570287600, 1586012400, 1601737200 }
@@ -2638,88 +2539,75 @@ zoneinfo64:table(nofallback) {
     finalRule { "AN" }
     finalRaw:int { 39600 }
     finalYear:int { 2021 }
-  } //Z#578
+  } //Z#579
   /* Pacific/Noumea */ :table {
     trans:intvector { -1829387148, 250002000, 257342400, 281451600, 288878400, 849366000, 857228400 }
     typeOffsets:intvector { 39948, 0, 39600, 0, 39600, 3600 }
     typeMap:bin { "01020102010201" }
-  } //Z#579
+  } //Z#580
   /* Pacific/Pago_Pago */ :table {
     transPre32:intvector { -1, 1849542664 }
     trans:intvector { -1861879032 }
     typeOffsets:intvector { 45432, 0, -40968, 0, -39600, 0 }
     typeMap:bin { "0102" }
-    links:intvector { 575, 580, 588, 629 }
-  } //Z#580
+    links:intvector { 576, 581, 589, 630 }
+  } //Z#581
   /* Pacific/Palau */ :table {
     transPre32:intvector { -1, 350343020, -1, 2117482220 }
     typeOffsets:intvector { -54124, 0, 32276, 0, 32400, 0 }
     typeMap:bin { "0102" }
-  } //Z#581
+  } //Z#582
   /* Pacific/Pitcairn */ :table {
     transPre32:intvector { -1, 2117545716 }
     trans:intvector { 893665800 }
     typeOffsets:intvector { -31220, 0, -30600, 0, -28800, 0 }
     typeMap:bin { "0102" }
-  } //Z#582
-  /* Pacific/Pohnpei */ :table {
-    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 { 583, 584 }
   } //Z#583
-  /* Pacific/Ponape */ :int { 583 } //Z#584
+  /* Pacific/Pohnpei */ :int { 566 } //Z#584
+  /* Pacific/Ponape */ :int { 566 } //Z#585
   /* Pacific/Port_Moresby */ :table {
     transPre32:intvector { -1, 1454791176, -1, 1928176784 }
     typeOffsets:intvector { 35320, 0, 35312, 0, 36000, 0 }
     typeMap:bin { "0102" }
-    links:intvector { 228, 585 }
-  } //Z#585
+    links:intvector { 228, 557, 586, 593, 596 }
+  } //Z#586
   /* Pacific/Rarotonga */ :table {
     transPre32:intvector { -1, 2085412040 }
     trans:intvector { -543072056, 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 { 48056, 0, -38344, 0, -37800, 0, -36000, 0, -36000, 1800 }
     typeMap:bin { "01020403040304030403040304030403040304030403040304030403" }
-  } //Z#586
-  /* Pacific/Saipan */ :int { 566 } //Z#587
-  /* Pacific/Samoa */ :int { 580 } //Z#588
+  } //Z#587
+  /* Pacific/Saipan */ :int { 567 } //Z#588
+  /* Pacific/Samoa */ :int { 581 } //Z#589
   /* Pacific/Tahiti */ :table {
     trans:intvector { -1806674504 }
     typeOffsets:intvector { -35896, 0, -36000, 0 }
     typeMap:bin { "01" }
-  } //Z#589
+  } //Z#590
   /* Pacific/Tarawa */ :table {
     transPre32:intvector { -1, 2117472972 }
     typeOffsets:intvector { 41524, 0, 43200, 0 }
     typeMap:bin { "01" }
-  } //Z#590
+    links:intvector { 563, 574, 591, 594, 595 }
+  } //Z#591
   /* Pacific/Tongatapu */ :table {
     trans:intvector { -767189952, -284041200, 939214800, 953384400, 973342800, 980596800, 1004792400, 1012046400, 1478350800, 1484398800 }
     typeOffsets:intvector { 44352, 0, 44400, 0, 46800, 0, 46800, 3600 }
     typeMap:bin { "01020302030203020302" }
-  } //Z#591
-  /* Pacific/Truk */ :int { 556 } //Z#592
-  /* Pacific/Wake */ :table {
-    transPre32:intvector { -1, 2117474508 }
-    typeOffsets:intvector { 39988, 0, 43200, 0 }
-    typeMap:bin { "01" }
-  } //Z#593
-  /* Pacific/Wallis */ :table {
-    transPre32:intvector { -1, 2117470376 }
-    typeOffsets:intvector { 44120, 0, 43200, 0 }
-    typeMap:bin { "01" }
-  } //Z#594
-  /* Pacific/Yap */ :int { 556 } //Z#595
-  /* Poland */ :int { 499 } //Z#596
-  /* Portugal */ :int { 464 } //Z#597
-  /* ROC */ :int { 318 } //Z#598
-  /* ROK */ :int { 314 } //Z#599
-  /* SST */ :int { 565 } //Z#600
-  /* Singapore */ :int { 316 } //Z#601
+  } //Z#592
+  /* Pacific/Truk */ :int { 586 } //Z#593
+  /* Pacific/Wake */ :int { 591 } //Z#594
+  /* Pacific/Wallis */ :int { 591 } //Z#595
+  /* Pacific/Yap */ :int { 586 } //Z#596
+  /* Poland */ :int { 500 } //Z#597
+  /* Portugal */ :int { 465 } //Z#598
+  /* ROC */ :int { 318 } //Z#599
+  /* ROK */ :int { 314 } //Z#600
+  /* SST */ :int { 566 } //Z#601
+  /* Singapore */ :int { 316 } //Z#602
   /* SystemV/AST4 */ :table {
     typeOffsets:intvector { -14400, 0 }
-  } //Z#602
+  } //Z#603
   /* 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, -1 [...]
@@ -2728,10 +2616,10 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -14400 }
     finalYear:int { 1977 }
-  } //Z#603
+  } //Z#604
   /* SystemV/CST6 */ :table {
     typeOffsets:intvector { -21600, 0 }
-  } //Z#604
+  } //Z#605
   /* 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, -1 [...]
@@ -2740,10 +2628,10 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -21600 }
     finalYear:int { 1977 }
-  } //Z#605
+  } //Z#606
   /* SystemV/EST5 */ :table {
     typeOffsets:intvector { -18000, 0 }
-  } //Z#606
+  } //Z#607
   /* 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, -1 [...]
@@ -2752,13 +2640,13 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -18000 }
     finalYear:int { 1977 }
-  } //Z#607
+  } //Z#608
   /* SystemV/HST10 */ :table {
     typeOffsets:intvector { -36000, 0 }
-  } //Z#608
+  } //Z#609
   /* SystemV/MST7 */ :table {
     typeOffsets:intvector { -25200, 0 }
-  } //Z#609
+  } //Z#610
   /* 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, -1 [...]
@@ -2767,10 +2655,10 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -25200 }
     finalYear:int { 1977 }
-  } //Z#610
+  } //Z#611
   /* SystemV/PST8 */ :table {
     typeOffsets:intvector { -28800, 0 }
-  } //Z#611
+  } //Z#612
   /* 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, -1 [...]
@@ -2779,10 +2667,10 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -28800 }
     finalYear:int { 1977 }
-  } //Z#612
+  } //Z#613
   /* SystemV/YST9 */ :table {
     typeOffsets:intvector { -32400, 0 }
-  } //Z#613
+  } //Z#614
   /* 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, -1 [...]
@@ -2791,26 +2679,26 @@ zoneinfo64:table(nofallback) {
     finalRule { "SystemV" }
     finalRaw:int { -32400 }
     finalYear:int { 1977 }
-  } //Z#614
-  /* Turkey */ :int { 459 } //Z#615
-  /* UCT */ :int { 436 } //Z#616
-  /* US/Alaska */ :int { 60 } //Z#617
-  /* US/Aleutian */ :int { 59 } //Z#618
-  /* US/Arizona */ :int { 185 } //Z#619
-  /* US/Central */ :int { 98 } //Z#620
-  /* US/East-Indiana */ :int { 131 } //Z#621
-  /* US/Eastern */ :int { 173 } //Z#622
-  /* US/Hawaii */ :int { 567 } //Z#623
-  /* US/Indiana-Starke */ :int { 132 } //Z#624
-  /* US/Michigan */ :int { 110 } //Z#625
-  /* US/Mountain */ :int { 109 } //Z#626
-  /* US/Pacific */ :int { 151 } //Z#627
-  /* US/Pacific-New */ :int { 151 } //Z#628
-  /* US/Samoa */ :int { 580 } //Z#629
-  /* UTC */ :int { 436 } //Z#630
-  /* Universal */ :int { 436 } //Z#631
-  /* VST */ :int { 272 } //Z#632
-  /* W-SU */ :int { 473 } //Z#633
+  } //Z#615
+  /* Turkey */ :int { 459 } //Z#616
+  /* UCT */ :int { 436 } //Z#617
+  /* US/Alaska */ :int { 60 } //Z#618
+  /* US/Aleutian */ :int { 59 } //Z#619
+  /* US/Arizona */ :int { 185 } //Z#620
+  /* US/Central */ :int { 98 } //Z#621
+  /* US/East-Indiana */ :int { 131 } //Z#622
+  /* US/Eastern */ :int { 173 } //Z#623
+  /* US/Hawaii */ :int { 568 } //Z#624
+  /* US/Indiana-Starke */ :int { 132 } //Z#625
+  /* US/Michigan */ :int { 110 } //Z#626
+  /* US/Mountain */ :int { 109 } //Z#627
+  /* US/Pacific */ :int { 151 } //Z#628
+  /* US/Pacific-New */ :int { 151 } //Z#629
+  /* US/Samoa */ :int { 581 } //Z#630
+  /* UTC */ :int { 436 } //Z#631
+  /* Universal */ :int { 436 } //Z#632
+  /* VST */ :int { 272 } //Z#633
+  /* W-SU */ :int { 474 } //Z#634
   /* 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 }
@@ -2818,8 +2706,8 @@ zoneinfo64:table(nofallback) {
     finalRule { "EU" }
     finalRaw:int { 0 }
     finalYear:int { 1997 }
-  } //Z#634
-  /* Zulu */ :int { 436 } //Z#635
+  } //Z#635
+  /* Zulu */ :int { 436 } //Z#636
  }
  Names {
     "ACT","AET","AGT","ART","AST","Africa/Abidjan","Africa/Accra" // 6
@@ -2963,51 +2851,51 @@ zoneinfo64:table(nofallback) {
     ,"Europe/Copenhagen","Europe/Dublin","Europe/Gibraltar" // 455
     ,"Europe/Guernsey","Europe/Helsinki","Europe/Isle_of_Man" // 458
     ,"Europe/Istanbul","Europe/Jersey","Europe/Kaliningrad" // 461
-    ,"Europe/Kiev","Europe/Kirov","Europe/Lisbon","Europe/Ljubljana" // 465
-    ,"Europe/London","Europe/Luxembourg","Europe/Madrid" // 468
-    ,"Europe/Malta","Europe/Mariehamn","Europe/Minsk","Europe/Monaco" // 472
-    ,"Europe/Moscow","Europe/Nicosia","Europe/Oslo","Europe/Paris" // 476
-    ,"Europe/Podgorica","Europe/Prague","Europe/Riga","Europe/Rome" // 480
-    ,"Europe/Samara","Europe/San_Marino","Europe/Sarajevo" // 483
-    ,"Europe/Saratov","Europe/Simferopol","Europe/Skopje" // 486
-    ,"Europe/Sofia","Europe/Stockholm","Europe/Tallinn" // 489
-    ,"Europe/Tirane","Europe/Tiraspol","Europe/Ulyanovsk" // 492
-    ,"Europe/Uzhgorod","Europe/Vaduz","Europe/Vatican" // 495
-    ,"Europe/Vienna","Europe/Vilnius","Europe/Volgograd" // 498
-    ,"Europe/Warsaw","Europe/Zagreb","Europe/Zaporozhye" // 501
-    ,"Europe/Zurich","Factory","GB","GB-Eire","GMT","GMT+0" // 507
-    ,"GMT-0","GMT0","Greenwich","HST","Hongkong","IET" // 513
-    ,"IST","Iceland","Indian/Antananarivo","Indian/Chagos" // 517
-    ,"Indian/Christmas","Indian/Cocos","Indian/Comoro" // 520
-    ,"Indian/Kerguelen","Indian/Mahe","Indian/Maldives" // 523
-    ,"Indian/Mauritius","Indian/Mayotte","Indian/Reunion" // 526
-    ,"Iran","Israel","JST","Jamaica","Japan","Kwajalein" // 532
-    ,"Libya","MET","MIT","MST","MST7MDT","Mexico/BajaNorte" // 538
-    ,"Mexico/BajaSur","Mexico/General","NET","NST","NZ" // 543
-    ,"NZ-CHAT","Navajo","PLT","PNT","PRC","PRT","PST","PST8PDT" // 551
-    ,"Pacific/Apia","Pacific/Auckland","Pacific/Bougainville" // 554
-    ,"Pacific/Chatham","Pacific/Chuuk","Pacific/Easter" // 557
-    ,"Pacific/Efate","Pacific/Enderbury","Pacific/Fakaofo" // 560
-    ,"Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos" // 563
-    ,"Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam" // 566
-    ,"Pacific/Honolulu","Pacific/Johnston","Pacific/Kanton" // 569
-    ,"Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein" // 572
-    ,"Pacific/Majuro","Pacific/Marquesas","Pacific/Midway" // 575
-    ,"Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea" // 579
-    ,"Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn" // 582
-    ,"Pacific/Pohnpei","Pacific/Ponape","Pacific/Port_Moresby" // 585
-    ,"Pacific/Rarotonga","Pacific/Saipan","Pacific/Samoa" // 588
-    ,"Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu" // 591
-    ,"Pacific/Truk","Pacific/Wake","Pacific/Wallis","Pacific/Yap" // 595
-    ,"Poland","Portugal","ROC","ROK","SST","Singapore" // 601
-    ,"SystemV/AST4","SystemV/AST4ADT","SystemV/CST6","SystemV/CST6CDT" // 605
-    ,"SystemV/EST5","SystemV/EST5EDT","SystemV/HST10","SystemV/MST7" // 609
-    ,"SystemV/MST7MDT","SystemV/PST8","SystemV/PST8PDT" // 612
-    ,"SystemV/YST9","SystemV/YST9YDT","Turkey","UCT","US/Alaska" // 617
-    ,"US/Aleutian","US/Arizona","US/Central","US/East-Indiana" // 621
-    ,"US/Eastern","US/Hawaii","US/Indiana-Starke","US/Michigan" // 625
-    ,"US/Mountain","US/Pacific","US/Pacific-New","US/Samoa" // 629
-    ,"UTC","Universal","VST","W-SU","WET","Zulu" // 635
+    ,"Europe/Kiev","Europe/Kirov","Europe/Kyiv","Europe/Lisbon" // 465
+    ,"Europe/Ljubljana","Europe/London","Europe/Luxembourg" // 468
+    ,"Europe/Madrid","Europe/Malta","Europe/Mariehamn" // 471
+    ,"Europe/Minsk","Europe/Monaco","Europe/Moscow","Europe/Nicosia" // 475
+    ,"Europe/Oslo","Europe/Paris","Europe/Podgorica","Europe/Prague" // 479
+    ,"Europe/Riga","Europe/Rome","Europe/Samara","Europe/San_Marino" // 483
+    ,"Europe/Sarajevo","Europe/Saratov","Europe/Simferopol" // 486
+    ,"Europe/Skopje","Europe/Sofia","Europe/Stockholm" // 489
+    ,"Europe/Tallinn","Europe/Tirane","Europe/Tiraspol" // 492
+    ,"Europe/Ulyanovsk","Europe/Uzhgorod","Europe/Vaduz" // 495
+    ,"Europe/Vatican","Europe/Vienna","Europe/Vilnius" // 498
+    ,"Europe/Volgograd","Europe/Warsaw","Europe/Zagreb" // 501
+    ,"Europe/Zaporozhye","Europe/Zurich","Factory","GB" // 505
+    ,"GB-Eire","GMT","GMT+0","GMT-0","GMT0","Greenwich" // 511
+    ,"HST","Hongkong","IET","IST","Iceland","Indian/Antananarivo" // 517
+    ,"Indian/Chagos","Indian/Christmas","Indian/Cocos" // 520
+    ,"Indian/Comoro","Indian/Kerguelen","Indian/Mahe","Indian/Maldives" // 524
+    ,"Indian/Mauritius","Indian/Mayotte","Indian/Reunion" // 527
+    ,"Iran","Israel","JST","Jamaica","Japan","Kwajalein" // 533
+    ,"Libya","MET","MIT","MST","MST7MDT","Mexico/BajaNorte" // 539
+    ,"Mexico/BajaSur","Mexico/General","NET","NST","NZ" // 544
+    ,"NZ-CHAT","Navajo","PLT","PNT","PRC","PRT","PST","PST8PDT" // 552
+    ,"Pacific/Apia","Pacific/Auckland","Pacific/Bougainville" // 555
+    ,"Pacific/Chatham","Pacific/Chuuk","Pacific/Easter" // 558
+    ,"Pacific/Efate","Pacific/Enderbury","Pacific/Fakaofo" // 561
+    ,"Pacific/Fiji","Pacific/Funafuti","Pacific/Galapagos" // 564
+    ,"Pacific/Gambier","Pacific/Guadalcanal","Pacific/Guam" // 567
+    ,"Pacific/Honolulu","Pacific/Johnston","Pacific/Kanton" // 570
+    ,"Pacific/Kiritimati","Pacific/Kosrae","Pacific/Kwajalein" // 573
+    ,"Pacific/Majuro","Pacific/Marquesas","Pacific/Midway" // 576
+    ,"Pacific/Nauru","Pacific/Niue","Pacific/Norfolk","Pacific/Noumea" // 580
+    ,"Pacific/Pago_Pago","Pacific/Palau","Pacific/Pitcairn" // 583
+    ,"Pacific/Pohnpei","Pacific/Ponape","Pacific/Port_Moresby" // 586
+    ,"Pacific/Rarotonga","Pacific/Saipan","Pacific/Samoa" // 589
+    ,"Pacific/Tahiti","Pacific/Tarawa","Pacific/Tongatapu" // 592
+    ,"Pacific/Truk","Pacific/Wake","Pacific/Wallis","Pacific/Yap" // 596
+    ,"Poland","Portugal","ROC","ROK","SST","Singapore" // 602
+    ,"SystemV/AST4","SystemV/AST4ADT","SystemV/CST6","SystemV/CST6CDT" // 606
+    ,"SystemV/EST5","SystemV/EST5EDT","SystemV/HST10","SystemV/MST7" // 610
+    ,"SystemV/MST7MDT","SystemV/PST8","SystemV/PST8PDT" // 613
+    ,"SystemV/YST9","SystemV/YST9YDT","Turkey","UCT","US/Alaska" // 618
+    ,"US/Aleutian","US/Arizona","US/Central","US/East-Indiana" // 622
+    ,"US/Eastern","US/Hawaii","US/Indiana-Starke","US/Michigan" // 626
+    ,"US/Mountain","US/Pacific","US/Pacific-New","US/Samoa" // 630
+    ,"UTC","Universal","VST","W-SU","WET","Zulu" // 636
  }
  Rules { 
   AN:intvector {
@@ -3049,51 +2937,48 @@ zoneinfo64:table(nofallback) {
   Haiti:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
   } //_#12
-  Iran:intvector {
-    2, 20, 0, 86400, 0, 8, 20, 0, 86400, 0, 3600
-  } //_#13
   Jordan:intvector {
     1, -29, -5, 86400, 0, 9, -31, -6, 0, 1, 3600
-  } //_#14
+  } //_#13
   LH:intvector {
     9, 1, -1, 7200, 0, 3, 1, -1, 7200, 0, 1800
-  } //_#15
+  } //_#14
   Lebanon:intvector {
     2, -31, -1, 0, 0, 9, -31, -1, 0, 0, 3600
-  } //_#16
+  } //_#15
   Mexico:intvector {
     3, 1, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#17
+  } //_#16
   Moldova:intvector {
     2, -31, -1, 7200, 0, 9, -31, -1, 10800, 0, 3600
-  } //_#18
+  } //_#17
   NZ:intvector {
     8, -30, -1, 7200, 1, 3, 1, -1, 7200, 1, 3600
-  } //_#19
+  } //_#18
   Palestine:intvector {
     2, 25, -1, 0, 0, 9, 23, -6, 3600, 0, 3600
-  } //_#20
+  } //_#19
   Para:intvector {
     9, 1, -1, 0, 0, 2, 22, -1, 0, 0, 3600
-  } //_#21
+  } //_#20
   Syria:intvector {
     2, -31, -6, 0, 0, 9, -31, -6, 0, 0, 3600
-  } //_#22
+  } //_#21
   SystemV:intvector {
     3, -30, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#23
+  } //_#22
   Thule:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#24
+  } //_#23
   Troll:intvector {
     2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 7200
-  } //_#25
+  } //_#24
   US:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#26
+  } //_#25
   Zion:intvector {
     2, 23, -6, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#27
+  } //_#26
  }
  Regions:array {
   "AU", //Z#0 ACT
@@ -3440,7 +3325,7 @@ zoneinfo64:table(nofallback) {
   "CV", //Z#341 Atlantic/Cape_Verde
   "FO", //Z#342 Atlantic/Faeroe
   "FO", //Z#343 Atlantic/Faroe
-  "NO", //Z#344 Atlantic/Jan_Mayen
+  "DE", //Z#344 Atlantic/Jan_Mayen
   "PT", //Z#345 Atlantic/Madeira
   "IS", //Z#346 Atlantic/Reykjavik
   "GS", //Z#347 Atlantic/South_Georgia
@@ -3560,177 +3445,178 @@ zoneinfo64:table(nofallback) {
   "RU", //Z#461 Europe/Kaliningrad
   "UA", //Z#462 Europe/Kiev
   "RU", //Z#463 Europe/Kirov
-  "PT", //Z#464 Europe/Lisbon
-  "SI", //Z#465 Europe/Ljubljana
-  "GB", //Z#466 Europe/London
-  "LU", //Z#467 Europe/Luxembourg
-  "ES", //Z#468 Europe/Madrid
-  "MT", //Z#469 Europe/Malta
-  "AX", //Z#470 Europe/Mariehamn
-  "BY", //Z#471 Europe/Minsk
-  "MC", //Z#472 Europe/Monaco
-  "RU", //Z#473 Europe/Moscow
-  "CY", //Z#474 Europe/Nicosia
-  "NO", //Z#475 Europe/Oslo
-  "FR", //Z#476 Europe/Paris
-  "ME", //Z#477 Europe/Podgorica
-  "CZ", //Z#478 Europe/Prague
-  "LV", //Z#479 Europe/Riga
-  "IT", //Z#480 Europe/Rome
-  "RU", //Z#481 Europe/Samara
-  "SM", //Z#482 Europe/San_Marino
-  "BA", //Z#483 Europe/Sarajevo
-  "RU", //Z#484 Europe/Saratov
-  "UA", //Z#485 Europe/Simferopol
-  "MK", //Z#486 Europe/Skopje
-  "BG", //Z#487 Europe/Sofia
-  "SE", //Z#488 Europe/Stockholm
-  "EE", //Z#489 Europe/Tallinn
-  "AL", //Z#490 Europe/Tirane
-  "MD", //Z#491 Europe/Tiraspol
-  "RU", //Z#492 Europe/Ulyanovsk
-  "UA", //Z#493 Europe/Uzhgorod
-  "LI", //Z#494 Europe/Vaduz
-  "VA", //Z#495 Europe/Vatican
-  "AT", //Z#496 Europe/Vienna
-  "LT", //Z#497 Europe/Vilnius
-  "RU", //Z#498 Europe/Volgograd
-  "PL", //Z#499 Europe/Warsaw
-  "HR", //Z#500 Europe/Zagreb
-  "UA", //Z#501 Europe/Zaporozhye
-  "CH", //Z#502 Europe/Zurich
-  "001",//Z#503 Factory
-  "GB", //Z#504 GB
-  "GB", //Z#505 GB-Eire
-  "001",//Z#506 GMT
-  "001",//Z#507 GMT+0
-  "001",//Z#508 GMT-0
-  "001",//Z#509 GMT0
-  "001",//Z#510 Greenwich
-  "001",//Z#511 HST
-  "HK", //Z#512 Hongkong
-  "US", //Z#513 IET
-  "IN", //Z#514 IST
-  "IS", //Z#515 Iceland
-  "MG", //Z#516 Indian/Antananarivo
-  "IO", //Z#517 Indian/Chagos
-  "CX", //Z#518 Indian/Christmas
-  "CC", //Z#519 Indian/Cocos
-  "KM", //Z#520 Indian/Comoro
-  "TF", //Z#521 Indian/Kerguelen
-  "SC", //Z#522 Indian/Mahe
-  "MV", //Z#523 Indian/Maldives
-  "MU", //Z#524 Indian/Mauritius
-  "YT", //Z#525 Indian/Mayotte
-  "RE", //Z#526 Indian/Reunion
-  "IR", //Z#527 Iran
-  "IL", //Z#528 Israel
-  "JP", //Z#529 JST
-  "JM", //Z#530 Jamaica
-  "JP", //Z#531 Japan
-  "MH", //Z#532 Kwajalein
-  "LY", //Z#533 Libya
-  "001",//Z#534 MET
-  "WS", //Z#535 MIT
-  "001",//Z#536 MST
-  "001",//Z#537 MST7MDT
-  "MX", //Z#538 Mexico/BajaNorte
-  "MX", //Z#539 Mexico/BajaSur
-  "MX", //Z#540 Mexico/General
-  "AM", //Z#541 NET
-  "NZ", //Z#542 NST
-  "NZ", //Z#543 NZ
-  "NZ", //Z#544 NZ-CHAT
-  "US", //Z#545 Navajo
-  "PK", //Z#546 PLT
-  "US", //Z#547 PNT
-  "CN", //Z#548 PRC
-  "PR", //Z#549 PRT
-  "US", //Z#550 PST
-  "001",//Z#551 PST8PDT
-  "WS", //Z#552 Pacific/Apia
-  "NZ", //Z#553 Pacific/Auckland
-  "PG", //Z#554 Pacific/Bougainville
-  "NZ", //Z#555 Pacific/Chatham
-  "FM", //Z#556 Pacific/Chuuk
-  "CL", //Z#557 Pacific/Easter
-  "VU", //Z#558 Pacific/Efate
-  "KI", //Z#559 Pacific/Enderbury
-  "TK", //Z#560 Pacific/Fakaofo
-  "FJ", //Z#561 Pacific/Fiji
-  "TV", //Z#562 Pacific/Funafuti
-  "EC", //Z#563 Pacific/Galapagos
-  "PF", //Z#564 Pacific/Gambier
-  "SB", //Z#565 Pacific/Guadalcanal
-  "GU", //Z#566 Pacific/Guam
-  "US", //Z#567 Pacific/Honolulu
-  "UM", //Z#568 Pacific/Johnston
-  "KI", //Z#569 Pacific/Kanton
-  "KI", //Z#570 Pacific/Kiritimati
-  "FM", //Z#571 Pacific/Kosrae
-  "MH", //Z#572 Pacific/Kwajalein
-  "MH", //Z#573 Pacific/Majuro
-  "PF", //Z#574 Pacific/Marquesas
-  "UM", //Z#575 Pacific/Midway
-  "NR", //Z#576 Pacific/Nauru
-  "NU", //Z#577 Pacific/Niue
-  "NF", //Z#578 Pacific/Norfolk
-  "NC", //Z#579 Pacific/Noumea
-  "AS", //Z#580 Pacific/Pago_Pago
-  "PW", //Z#581 Pacific/Palau
-  "PN", //Z#582 Pacific/Pitcairn
-  "FM", //Z#583 Pacific/Pohnpei
-  "FM", //Z#584 Pacific/Ponape
-  "PG", //Z#585 Pacific/Port_Moresby
-  "CK", //Z#586 Pacific/Rarotonga
-  "MP", //Z#587 Pacific/Saipan
-  "AS", //Z#588 Pacific/Samoa
-  "PF", //Z#589 Pacific/Tahiti
-  "KI", //Z#590 Pacific/Tarawa
-  "TO", //Z#591 Pacific/Tongatapu
-  "FM", //Z#592 Pacific/Truk
-  "UM", //Z#593 Pacific/Wake
-  "WF", //Z#594 Pacific/Wallis
-  "FM", //Z#595 Pacific/Yap
-  "PL", //Z#596 Poland
-  "PT", //Z#597 Portugal
-  "TW", //Z#598 ROC
-  "KR", //Z#599 ROK
-  "SB", //Z#600 SST
-  "SG", //Z#601 Singapore
-  "001",//Z#602 SystemV/AST4
-  "001",//Z#603 SystemV/AST4ADT
-  "001",//Z#604 SystemV/CST6
-  "001",//Z#605 SystemV/CST6CDT
-  "001",//Z#606 SystemV/EST5
-  "001",//Z#607 SystemV/EST5EDT
-  "001",//Z#608 SystemV/HST10
-  "001",//Z#609 SystemV/MST7
-  "001",//Z#610 SystemV/MST7MDT
-  "001",//Z#611 SystemV/PST8
-  "001",//Z#612 SystemV/PST8PDT
-  "001",//Z#613 SystemV/YST9
-  "001",//Z#614 SystemV/YST9YDT
-  "TR", //Z#615 Turkey
-  "001",//Z#616 UCT
-  "US", //Z#617 US/Alaska
-  "US", //Z#618 US/Aleutian
-  "US", //Z#619 US/Arizona
-  "US", //Z#620 US/Central
-  "US", //Z#621 US/East-Indiana
-  "US", //Z#622 US/Eastern
-  "US", //Z#623 US/Hawaii
-  "US", //Z#624 US/Indiana-Starke
-  "US", //Z#625 US/Michigan
-  "US", //Z#626 US/Mountain
-  "US", //Z#627 US/Pacific
-  "US", //Z#628 US/Pacific-New
-  "AS", //Z#629 US/Samoa
-  "001",//Z#630 UTC
-  "001",//Z#631 Universal
-  "VN", //Z#632 VST
-  "RU", //Z#633 W-SU
-  "001",//Z#634 WET
-  "001",//Z#635 Zulu
+  "UA", //Z#464 Europe/Kyiv
+  "PT", //Z#465 Europe/Lisbon
+  "SI", //Z#466 Europe/Ljubljana
+  "GB", //Z#467 Europe/London
+  "LU", //Z#468 Europe/Luxembourg
+  "ES", //Z#469 Europe/Madrid
+  "MT", //Z#470 Europe/Malta
+  "AX", //Z#471 Europe/Mariehamn
+  "BY", //Z#472 Europe/Minsk
+  "MC", //Z#473 Europe/Monaco
+  "RU", //Z#474 Europe/Moscow
+  "CY", //Z#475 Europe/Nicosia
+  "NO", //Z#476 Europe/Oslo
+  "FR", //Z#477 Europe/Paris
+  "ME", //Z#478 Europe/Podgorica
+  "CZ", //Z#479 Europe/Prague
+  "LV", //Z#480 Europe/Riga
+  "IT", //Z#481 Europe/Rome
+  "RU", //Z#482 Europe/Samara
+  "SM", //Z#483 Europe/San_Marino
+  "BA", //Z#484 Europe/Sarajevo
+  "RU", //Z#485 Europe/Saratov
+  "UA", //Z#486 Europe/Simferopol
+  "MK", //Z#487 Europe/Skopje
+  "BG", //Z#488 Europe/Sofia
+  "SE", //Z#489 Europe/Stockholm
+  "EE", //Z#490 Europe/Tallinn
+  "AL", //Z#491 Europe/Tirane
+  "MD", //Z#492 Europe/Tiraspol
+  "RU", //Z#493 Europe/Ulyanovsk
+  "UA", //Z#494 Europe/Uzhgorod
+  "LI", //Z#495 Europe/Vaduz
+  "VA", //Z#496 Europe/Vatican
+  "AT", //Z#497 Europe/Vienna
+  "LT", //Z#498 Europe/Vilnius
+  "RU", //Z#499 Europe/Volgograd
+  "PL", //Z#500 Europe/Warsaw
+  "HR", //Z#501 Europe/Zagreb
+  "UA", //Z#502 Europe/Zaporozhye
+  "CH", //Z#503 Europe/Zurich
+  "001",//Z#504 Factory
+  "GB", //Z#505 GB
+  "GB", //Z#506 GB-Eire
+  "001",//Z#507 GMT
+  "001",//Z#508 GMT+0
+  "001",//Z#509 GMT-0
+  "001",//Z#510 GMT0
+  "001",//Z#511 Greenwich
+  "001",//Z#512 HST
+  "HK", //Z#513 Hongkong
+  "US", //Z#514 IET
+  "IN", //Z#515 IST
+  "CI", //Z#516 Iceland
+  "MG", //Z#517 Indian/Antananarivo
+  "IO", //Z#518 Indian/Chagos
+  "CX", //Z#519 Indian/Christmas
+  "CC", //Z#520 Indian/Cocos
+  "KM", //Z#521 Indian/Comoro
+  "TF", //Z#522 Indian/Kerguelen
+  "SC", //Z#523 Indian/Mahe
+  "MV", //Z#524 Indian/Maldives
+  "MU", //Z#525 Indian/Mauritius
+  "YT", //Z#526 Indian/Mayotte
+  "RE", //Z#527 Indian/Reunion
+  "IR", //Z#528 Iran
+  "IL", //Z#529 Israel
+  "JP", //Z#530 JST
+  "JM", //Z#531 Jamaica
+  "JP", //Z#532 Japan
+  "MH", //Z#533 Kwajalein
+  "LY", //Z#534 Libya
+  "001",//Z#535 MET
+  "WS", //Z#536 MIT
+  "001",//Z#537 MST
+  "001",//Z#538 MST7MDT
+  "MX", //Z#539 Mexico/BajaNorte
+  "MX", //Z#540 Mexico/BajaSur
+  "MX", //Z#541 Mexico/General
+  "AM", //Z#542 NET
+  "NZ", //Z#543 NST
+  "NZ", //Z#544 NZ
+  "NZ", //Z#545 NZ-CHAT
+  "US", //Z#546 Navajo
+  "PK", //Z#547 PLT
+  "US", //Z#548 PNT
+  "CN", //Z#549 PRC
+  "PR", //Z#550 PRT
+  "US", //Z#551 PST
+  "001",//Z#552 PST8PDT
+  "WS", //Z#553 Pacific/Apia
+  "NZ", //Z#554 Pacific/Auckland
+  "PG", //Z#555 Pacific/Bougainville
+  "NZ", //Z#556 Pacific/Chatham
+  "FM", //Z#557 Pacific/Chuuk
+  "CL", //Z#558 Pacific/Easter
+  "VU", //Z#559 Pacific/Efate
+  "KI", //Z#560 Pacific/Enderbury
+  "TK", //Z#561 Pacific/Fakaofo
+  "FJ", //Z#562 Pacific/Fiji
+  "TV", //Z#563 Pacific/Funafuti
+  "EC", //Z#564 Pacific/Galapagos
+  "PF", //Z#565 Pacific/Gambier
+  "SB", //Z#566 Pacific/Guadalcanal
+  "GU", //Z#567 Pacific/Guam
+  "US", //Z#568 Pacific/Honolulu
+  "UM", //Z#569 Pacific/Johnston
+  "KI", //Z#570 Pacific/Kanton
+  "KI", //Z#571 Pacific/Kiritimati
+  "FM", //Z#572 Pacific/Kosrae
+  "MH", //Z#573 Pacific/Kwajalein
+  "MH", //Z#574 Pacific/Majuro
+  "PF", //Z#575 Pacific/Marquesas
+  "UM", //Z#576 Pacific/Midway
+  "NR", //Z#577 Pacific/Nauru
+  "NU", //Z#578 Pacific/Niue
+  "NF", //Z#579 Pacific/Norfolk
+  "NC", //Z#580 Pacific/Noumea
+  "AS", //Z#581 Pacific/Pago_Pago
+  "PW", //Z#582 Pacific/Palau
+  "PN", //Z#583 Pacific/Pitcairn
+  "FM", //Z#584 Pacific/Pohnpei
+  "SB", //Z#585 Pacific/Ponape
+  "PG", //Z#586 Pacific/Port_Moresby
+  "CK", //Z#587 Pacific/Rarotonga
+  "MP", //Z#588 Pacific/Saipan
+  "AS", //Z#589 Pacific/Samoa
+  "PF", //Z#590 Pacific/Tahiti
+  "KI", //Z#591 Pacific/Tarawa
+  "TO", //Z#592 Pacific/Tongatapu
+  "PG", //Z#593 Pacific/Truk
+  "UM", //Z#594 Pacific/Wake
+  "WF", //Z#595 Pacific/Wallis
+  "PG", //Z#596 Pacific/Yap
+  "PL", //Z#597 Poland
+  "PT", //Z#598 Portugal
+  "TW", //Z#599 ROC
+  "KR", //Z#600 ROK
+  "SB", //Z#601 SST
+  "SG", //Z#602 Singapore
+  "001",//Z#603 SystemV/AST4
+  "001",//Z#604 SystemV/AST4ADT
+  "001",//Z#605 SystemV/CST6
+  "001",//Z#606 SystemV/CST6CDT
+  "001",//Z#607 SystemV/EST5
+  "001",//Z#608 SystemV/EST5EDT
+  "001",//Z#609 SystemV/HST10
+  "001",//Z#610 SystemV/MST7
+  "001",//Z#611 SystemV/MST7MDT
+  "001",//Z#612 SystemV/PST8
+  "001",//Z#613 SystemV/PST8PDT
+  "001",//Z#614 SystemV/YST9
+  "001",//Z#615 SystemV/YST9YDT
+  "TR", //Z#616 Turkey
+  "001",//Z#617 UCT
+  "US", //Z#618 US/Alaska
+  "US", //Z#619 US/Aleutian
+  "US", //Z#620 US/Arizona
+  "US", //Z#621 US/Central
+  "US", //Z#622 US/East-Indiana
+  "US", //Z#623 US/Eastern
+  "US", //Z#624 US/Hawaii
+  "US", //Z#625 US/Indiana-Starke
+  "US", //Z#626 US/Michigan
+  "US", //Z#627 US/Mountain
+  "US", //Z#628 US/Pacific
+  "US", //Z#629 US/Pacific-New
+  "AS", //Z#630 US/Samoa
+  "001",//Z#631 UTC
+  "001",//Z#632 Universal
+  "VN", //Z#633 VST
+  "RU", //Z#634 W-SU
+  "001",//Z#635 WET
+  "001",//Z#636 Zulu
  }
 }
diff --git a/js/src/builtin/intl/TimeZoneDataGenerated.h b/js/src/builtin/intl/TimeZoneDataGenerated.h
index 786c4e5b00ee1..a5f5713675caf 100644
--- a/js/src/builtin/intl/TimeZoneDataGenerated.h
+++ b/js/src/builtin/intl/TimeZoneDataGenerated.h
@@ -1,5 +1,5 @@
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 #ifndef builtin_intl_TimeZoneDataGenerated_h
 #define builtin_intl_TimeZoneDataGenerated_h
@@ -36,12 +36,13 @@ const char* const ianaZonesTreatedAsLinksByICU[] = {
     "Atlantic/Jan_Mayen", // Arctic/Longyearbyen [backzone]
     "EST", // Etc/GMT+5 [northamerica]
     "Europe/Belfast", // Europe/London [backzone]
+    "Europe/Kyiv", // Europe/Kiev [europe]
     "Europe/Tiraspol", // Europe/Chisinau [backzone]
     "HST", // Etc/GMT+10 [northamerica]
     "MST", // Etc/GMT+7 [northamerica]
-    "Pacific/Chuuk", // Pacific/Truk [australasia]
+    "Pacific/Chuuk", // Pacific/Truk [backzone]
     "Pacific/Kanton", // Pacific/Enderbury [australasia]
-    "Pacific/Pohnpei", // Pacific/Ponape [australasia]
+    "Pacific/Pohnpei", // Pacific/Ponape [backzone]
 };
 
 // Format:
@@ -78,6 +79,7 @@ const LinkAndTarget ianaLinksCanonicalizedDifferentlyByICU[] = {
     { "Atlantic/Faeroe", "Atlantic/Faroe" }, // Atlantic/Faeroe [backward]
     { "Europe/Bratislava", "Europe/Prague" }, // Europe/Bratislava [europe]
     { "Europe/Busingen", "Europe/Zurich" }, // Europe/Busingen [europe]
+    { "Europe/Kiev", "Europe/Kyiv" }, // Europe/Kiev [backward]
     { "Europe/Mariehamn", "Europe/Helsinki" }, // Europe/Mariehamn [europe]
     { "Europe/Podgorica", "Europe/Belgrade" }, // Europe/Podgorica [europe]
     { "Europe/San_Marino", "Europe/Rome" }, // Europe/San_Marino [europe]
diff --git a/js/src/tests/non262/Date/time-zones-imported.js b/js/src/tests/non262/Date/time-zones-imported.js
index 98ab7a71f10b1..8a13e34981f3a 100644
--- a/js/src/tests/non262/Date/time-zones-imported.js
+++ b/js/src/tests/non262/Date/time-zones-imported.js
@@ -564,25 +564,53 @@ inTimeZone("Australia/Lord_Howe", () => {
 
 // File: Date/Europe_Amsterdam.js
 // Europe/Amsterdam as an example for mean time like timezones after LMT (AMT, NST).
+//
+// tzdata2022b changed Europe/Amsterdam into a link to Europe/Brussels.
 
 inTimeZone("Europe/Amsterdam", () => {
 {
   let local = new DateTime.Local(1935, Month.January, 1, DayOfWeek.Tuesday, 0, 0, 0);
-  let utc = new DateTime.UTC(1934, Month.December, 31, DayOfWeek.Monday, 23, 40, 28);
+  let utc = new DateTime.UTC(1935, Month.January, 1, DayOfWeek.Tuesday, 0, 0, 0);
 
-  assertDate(local, utc, TimeZone(+0,19,32), {
-    String: "Tue Jan 01 1935 00:00:00 GMT+0019 (Central European Standard Time)",
-    UTCString: "Mon, 31 Dec 1934 23:40:28 GMT",
+  assertDate(local, utc, TimeZone(+0,0,0), {
+    String: "Tue Jan 01 1935 00:00:00 GMT+0000 (Central European Standard Time)",
+    UTCString: "Tue, 01 Jan 1935 00:00:00 GMT",
   });
 }
 
 {
   let local = new DateTime.Local(1935, Month.July, 1, DayOfWeek.Monday, 0, 0, 0);
-  let utc = new DateTime.UTC(1935, Month.June, 30, DayOfWeek.Sunday, 22, 40, 28);
+  let utc = new DateTime.UTC(1935, Month.June, 30, DayOfWeek.Sunday, 23, 0, 0);
 
-  assertDate(local, utc, TimeZone(+1,19,32), {
-    String: "Mon Jul 01 1935 00:00:00 GMT+0119 (Central European Summer Time)",
-    UTCString: "Sun, 30 Jun 1935 22:40:28 GMT",
+  assertDate(local, utc, TimeZone(+1,0,0), {
+    String: "Mon Jul 01 1935 00:00:00 GMT+0100 (Central European Summer Time)",
+    UTCString: "Sun, 30 Jun 1935 23:00:00 GMT",
+  });
+}
+});
+
+// Use America/St_Johns as a replacement for the Europe/Amsterdam test case.
+//
+// Zone America/St_Johns as an example for mean time like timezones after LMT (NST, NDT).
+
+inTimeZone("America/St_Johns", () => {
+{
+  let local = new DateTime.Local(1917, Month.January, 1, DayOfWeek.Monday, 0, 0, 0);
+  let utc = new DateTime.UTC(1917, Month.January, 1, DayOfWeek.Monday, 3, 30, 52);
+
+  assertDate(local, utc, TimeZone(-3,30,52), {
+    String: "Mon Jan 01 1917 00:00:00 GMT-0330 (Newfoundland Standard Time)",
+    UTCString: "Mon, 01 Jan 1917 03:30:52 GMT",
+  });
+}
+
+{
+  let local = new DateTime.Local(1917, Month.July, 1, DayOfWeek.Sunday, 0, 0, 0);
+  let utc = new DateTime.UTC(1917, Month.July, 1, DayOfWeek.Sunday, 2, 30, 52);
+
+  assertDate(local, utc, TimeZone(-2,30,52), {
+    String: "Sun Jul 01 1917 00:00:00 GMT-0230 (Newfoundland Daylight Time)",
+    UTCString: "Sun, 01 Jul 1917 02:30:52 GMT",
   });
 }
 });
diff --git a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backward_links.js b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backward_links.js
index 55b242cead9bd..4162b3ef16fb2 100644
--- a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backward_links.js
+++ b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backward_links.js
@@ -1,7 +1,7 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 const tzMapper = [
     x => x,
@@ -69,6 +69,7 @@ const links = {
     "Egypt": "Africa/Cairo",
     "Eire": "Europe/Dublin",
     "Etc/UCT": "Etc/UTC",
+    "Europe/Kiev": "Europe/Kyiv",
     "GB": "Europe/London",
     "GB-Eire": "Europe/London",
     "GMT+0": "Etc/GMT",
diff --git a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone.js b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone.js
index 7a0a69f079379..1c3acb73941b4 100644
--- a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone.js
+++ b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone.js
@@ -1,7 +1,7 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 const tzMapper = [
     x => x,
@@ -76,36 +76,57 @@ const links = {
     "Antarctica/DumontDUrville": "Antarctica/DumontDUrville",
     "Antarctica/McMurdo": "Antarctica/McMurdo",
     "Antarctica/Syowa": "Antarctica/Syowa",
+    "Antarctica/Vostok": "Antarctica/Vostok",
     "Asia/Aden": "Asia/Aden",
     "Asia/Bahrain": "Asia/Bahrain",
+    "Asia/Brunei": "Asia/Brunei",
     "Asia/Chongqing": "Asia/Chongqing",
     "Asia/Harbin": "Asia/Harbin",
     "Asia/Kashgar": "Asia/Kashgar",
+    "Asia/Kuala_Lumpur": "Asia/Kuala_Lumpur",
     "Asia/Kuwait": "Asia/Kuwait",
     "Asia/Muscat": "Asia/Muscat",
     "Asia/Phnom_Penh": "Asia/Phnom_Penh",
     "Asia/Tel_Aviv": "Asia/Tel_Aviv",
     "Asia/Vientiane": "Asia/Vientiane",
     "Atlantic/Jan_Mayen": "Atlantic/Jan_Mayen",
+    "Atlantic/Reykjavik": "Atlantic/Reykjavik",
     "Atlantic/St_Helena": "Atlantic/St_Helena",
     "Australia/Currie": "Australia/Currie",
+    "Europe/Amsterdam": "Europe/Amsterdam",
     "Europe/Belfast": "Europe/Belfast",
+    "Europe/Copenhagen": "Europe/Copenhagen",
     "Europe/Guernsey": "Europe/Guernsey",
     "Europe/Isle_of_Man": "Europe/Isle_of_Man",
     "Europe/Jersey": "Europe/Jersey",
     "Europe/Ljubljana": "Europe/Ljubljana",
+    "Europe/Luxembourg": "Europe/Luxembourg",
+    "Europe/Monaco": "Europe/Monaco",
+    "Europe/Oslo": "Europe/Oslo",
     "Europe/Sarajevo": "Europe/Sarajevo",
     "Europe/Skopje": "Europe/Skopje",
+    "Europe/Stockholm": "Europe/Stockholm",
     "Europe/Tiraspol": "Europe/Tiraspol",
     "Europe/Vaduz": "Europe/Vaduz",
     "Europe/Zagreb": "Europe/Zagreb",
     "Indian/Antananarivo": "Indian/Antananarivo",
+    "Indian/Christmas": "Indian/Christmas",
+    "Indian/Cocos": "Indian/Cocos",
     "Indian/Comoro": "Indian/Comoro",
+    "Indian/Kerguelen": "Indian/Kerguelen",
+    "Indian/Mahe": "Indian/Mahe",
     "Indian/Mayotte": "Indian/Mayotte",
+    "Indian/Reunion": "Indian/Reunion",
+    "Pacific/Chuuk": "Pacific/Chuuk",
     "Pacific/Enderbury": "Pacific/Enderbury",
+    "Pacific/Funafuti": "Pacific/Funafuti",
     "Pacific/Johnston": "Pacific/Johnston",
+    "Pacific/Majuro": "Pacific/Majuro",
     "Pacific/Midway": "Pacific/Midway",
+    "Pacific/Pohnpei": "Pacific/Pohnpei",
     "Pacific/Saipan": "Pacific/Saipan",
+    "Pacific/Wake": "Pacific/Wake",
+    "Pacific/Wallis": "Pacific/Wallis",
 };
 
 for (let [linkName, target] of Object.entries(links)) {
diff --git a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone_links.js b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone_links.js
index cd35913e546d0..048fb63604397 100644
--- a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone_links.js
+++ b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_backzone_links.js
@@ -1,7 +1,7 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 const tzMapper = [
     x => x,
@@ -23,7 +23,12 @@ const links = {
     "America/St_Barthelemy": "America/Port_of_Spain",
     "America/Virgin": "America/St_Thomas",
     "Antarctica/South_Pole": "Antarctica/McMurdo",
+    "Arctic/Longyearbyen": "Europe/Oslo",
     "Asia/Chungking": "Asia/Chongqing",
+    "Iceland": "Atlantic/Reykjavik",
+    "Pacific/Ponape": "Pacific/Pohnpei",
+    "Pacific/Truk": "Pacific/Chuuk",
+    "Pacific/Yap": "Pacific/Chuuk",
 };
 
 for (let [linkName, target] of Object.entries(links)) {
diff --git a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_notbackward_links.js b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_notbackward_links.js
index 5a7742e3d7f11..248166abe1670 100644
--- a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_notbackward_links.js
+++ b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_notbackward_links.js
@@ -1,7 +1,7 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 const tzMapper = [
     x => x,
diff --git a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_version.js b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_version.js
index 22589361a2443..602cb2fa81dfb 100644
--- a/js/src/tests/non262/Intl/DateTimeFormat/timeZone_version.js
+++ b/js/src/tests/non262/Intl/DateTimeFormat/timeZone_version.js
@@ -1,8 +1,8 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
-const tzdata = "2022a";
+// tzdata version = 2022b
+const tzdata = "2022b";
 
 if (typeof getICUOptions === "undefined") {
     var getICUOptions = SpecialPowers.Cu.getJSTestingFunctions().getICUOptions;
diff --git a/js/src/tests/non262/Intl/supportedValuesOf-timeZones-canonical.js b/js/src/tests/non262/Intl/supportedValuesOf-timeZones-canonical.js
index a38aab9364ce4..b82af1ef4fa10 100644
--- a/js/src/tests/non262/Intl/supportedValuesOf-timeZones-canonical.js
+++ b/js/src/tests/non262/Intl/supportedValuesOf-timeZones-canonical.js
@@ -1,7 +1,7 @@
 // |reftest| skip-if(!this.hasOwnProperty("Intl"))
 
 // Generated by make_intl_data.py. DO NOT EDIT.
-// tzdata version = 2022a
+// tzdata version = 2022b
 
 // This file was generated with historical, pre-1970 backzone information
 // respected.
@@ -380,8 +380,8 @@ const zones = [
   "Europe/Istanbul",
   "Europe/Jersey",
   "Europe/Kaliningrad",
-  "Europe/Kiev",
   "Europe/Kirov",
+  "Europe/Kyiv",
   "Europe/Lisbon",
   "Europe/Ljubljana",
   "Europe/London",

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the tbb-commits mailing list