diff --git a/lib/DateTime/TimeZone/Africa/Abidjan.pm b/lib/DateTime/TimeZone/Africa/Abidjan.pm
index f185a9e1..1fcc636a 100644
--- a/lib/DateTime/TimeZone/Africa/Abidjan.pm
+++ b/lib/DateTime/TimeZone/Africa/Abidjan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Accra.pm b/lib/DateTime/TimeZone/Africa/Accra.pm
index e13dd759..4e1162c1 100644
--- a/lib/DateTime/TimeZone/Africa/Accra.pm
+++ b/lib/DateTime/TimeZone/Africa/Accra.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -453,11 +453,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 23 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Algiers.pm b/lib/DateTime/TimeZone/Africa/Algiers.pm
index a4efbd38..dbcfa19b 100644
--- a/lib/DateTime/TimeZone/Africa/Algiers.pm
+++ b/lib/DateTime/TimeZone/Africa/Algiers.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -336,11 +336,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 13 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Bissau.pm b/lib/DateTime/TimeZone/Africa/Bissau.pm
index bf610030..2e2074cb 100644
--- a/lib/DateTime/TimeZone/Africa/Bissau.pm
+++ b/lib/DateTime/TimeZone/Africa/Bissau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Cairo.pm b/lib/DateTime/TimeZone/Africa/Cairo.pm
index facecc2c..2bd0f1cc 100644
--- a/lib/DateTime/TimeZone/Africa/Cairo.pm
+++ b/lib/DateTime/TimeZone/Africa/Cairo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1173,11 +1173,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 63 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Casablanca.pm b/lib/DateTime/TimeZone/Africa/Casablanca.pm
index 9b5a64d4..27de4ee2 100644
--- a/lib/DateTime/TimeZone/Africa/Casablanca.pm
+++ b/lib/DateTime/TimeZone/Africa/Casablanca.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -543,17 +543,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63722944800, #    utc_start 2020-04-19 02:00:00 (Sun)
-63725968800, #      utc_end 2020-05-24 02:00:00 (Sun)
+63726573600, #      utc_end 2020-05-31 02:00:00 (Sun)
 63722944800, #  local_start 2020-04-19 02:00:00 (Sun)
-63725968800, #    local_end 2020-05-24 02:00:00 (Sun)
+63726573600, #    local_end 2020-05-31 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-63725968800, #    utc_start 2020-05-24 02:00:00 (Sun)
+63726573600, #    utc_start 2020-05-31 02:00:00 (Sun)
 63753789600, #      utc_end 2021-04-11 02:00:00 (Sun)
-63725972400, #  local_start 2020-05-24 03:00:00 (Sun)
+63726577200, #  local_start 2020-05-31 03:00:00 (Sun)
 63753793200, #    local_end 2021-04-11 03:00:00 (Sun)
 3600,
 0,
@@ -687,17 +687,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63967888800, #    utc_start 2028-01-23 02:00:00 (Sun)
-63970912800, #      utc_end 2028-02-27 02:00:00 (Sun)
+63971517600, #      utc_end 2028-03-05 02:00:00 (Sun)
 63967888800, #  local_start 2028-01-23 02:00:00 (Sun)
-63970912800, #    local_end 2028-02-27 02:00:00 (Sun)
+63971517600, #    local_end 2028-03-05 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-63970912800, #    utc_start 2028-02-27 02:00:00 (Sun)
+63971517600, #    utc_start 2028-03-05 02:00:00 (Sun)
 63998733600, #      utc_end 2029-01-14 02:00:00 (Sun)
-63970916400, #  local_start 2028-02-27 03:00:00 (Sun)
+63971521200, #  local_start 2028-03-05 03:00:00 (Sun)
 63998737200, #    local_end 2029-01-14 03:00:00 (Sun)
 3600,
 0,
@@ -831,17 +831,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64212832800, #    utc_start 2035-10-28 02:00:00 (Sun)
-64215856800, #      utc_end 2035-12-02 02:00:00 (Sun)
+64216461600, #      utc_end 2035-12-09 02:00:00 (Sun)
 64212832800, #  local_start 2035-10-28 02:00:00 (Sun)
-64215856800, #    local_end 2035-12-02 02:00:00 (Sun)
+64216461600, #    local_end 2035-12-09 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64215856800, #    utc_start 2035-12-02 02:00:00 (Sun)
+64216461600, #    utc_start 2035-12-09 02:00:00 (Sun)
 64243677600, #      utc_end 2036-10-19 02:00:00 (Sun)
-64215860400, #  local_start 2035-12-02 03:00:00 (Sun)
+64216465200, #  local_start 2035-12-09 03:00:00 (Sun)
 64243681200, #    local_end 2036-10-19 03:00:00 (Sun)
 3600,
 0,
@@ -975,17 +975,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64457776800, #    utc_start 2043-08-02 02:00:00 (Sun)
-64460800800, #      utc_end 2043-09-06 02:00:00 (Sun)
+64461405600, #      utc_end 2043-09-13 02:00:00 (Sun)
 64457776800, #  local_start 2043-08-02 02:00:00 (Sun)
-64460800800, #    local_end 2043-09-06 02:00:00 (Sun)
+64461405600, #    local_end 2043-09-13 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64460800800, #    utc_start 2043-09-06 02:00:00 (Sun)
+64461405600, #    utc_start 2043-09-13 02:00:00 (Sun)
 64488621600, #      utc_end 2044-07-24 02:00:00 (Sun)
-64460804400, #  local_start 2043-09-06 03:00:00 (Sun)
+64461409200, #  local_start 2043-09-13 03:00:00 (Sun)
 64488625200, #    local_end 2044-07-24 03:00:00 (Sun)
 3600,
 0,
@@ -1119,17 +1119,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64702720800, #    utc_start 2051-05-07 02:00:00 (Sun)
-64705744800, #      utc_end 2051-06-11 02:00:00 (Sun)
+64706349600, #      utc_end 2051-06-18 02:00:00 (Sun)
 64702720800, #  local_start 2051-05-07 02:00:00 (Sun)
-64705744800, #    local_end 2051-06-11 02:00:00 (Sun)
+64706349600, #    local_end 2051-06-18 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64705744800, #    utc_start 2051-06-11 02:00:00 (Sun)
+64706349600, #    utc_start 2051-06-18 02:00:00 (Sun)
 64733565600, #      utc_end 2052-04-28 02:00:00 (Sun)
-64705748400, #  local_start 2051-06-11 03:00:00 (Sun)
+64706353200, #  local_start 2051-06-18 03:00:00 (Sun)
 64733569200, #    local_end 2052-04-28 03:00:00 (Sun)
 3600,
 0,
@@ -1263,17 +1263,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64947664800, #    utc_start 2059-02-09 02:00:00 (Sun)
-64950688800, #      utc_end 2059-03-16 02:00:00 (Sun)
+64951293600, #      utc_end 2059-03-23 02:00:00 (Sun)
 64947664800, #  local_start 2059-02-09 02:00:00 (Sun)
-64950688800, #    local_end 2059-03-16 02:00:00 (Sun)
+64951293600, #    local_end 2059-03-23 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64950688800, #    utc_start 2059-03-16 02:00:00 (Sun)
+64951293600, #    utc_start 2059-03-23 02:00:00 (Sun)
 64978509600, #      utc_end 2060-02-01 02:00:00 (Sun)
-64950692400, #  local_start 2059-03-16 03:00:00 (Sun)
+64951297200, #  local_start 2059-03-23 03:00:00 (Sun)
 64978513200, #    local_end 2060-02-01 03:00:00 (Sun)
 3600,
 0,
@@ -1353,17 +1353,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65100679200, #    utc_start 2063-12-16 02:00:00 (Sun)
-65103703200, #      utc_end 2064-01-20 02:00:00 (Sun)
+65104308000, #      utc_end 2064-01-27 02:00:00 (Sun)
 65100679200, #  local_start 2063-12-16 02:00:00 (Sun)
-65103703200, #    local_end 2064-01-20 02:00:00 (Sun)
+65104308000, #    local_end 2064-01-27 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65103703200, #    utc_start 2064-01-20 02:00:00 (Sun)
+65104308000, #    utc_start 2064-01-27 02:00:00 (Sun)
 65131524000, #      utc_end 2064-12-07 02:00:00 (Sun)
-65103706800, #  local_start 2064-01-20 03:00:00 (Sun)
+65104311600, #  local_start 2064-01-27 03:00:00 (Sun)
 65131527600, #    local_end 2064-12-07 03:00:00 (Sun)
 3600,
 0,
@@ -1407,17 +1407,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65192608800, #    utc_start 2066-11-14 02:00:00 (Sun)
-65195632800, #      utc_end 2066-12-19 02:00:00 (Sun)
+65196237600, #      utc_end 2066-12-26 02:00:00 (Sun)
 65192608800, #  local_start 2066-11-14 02:00:00 (Sun)
-65195632800, #    local_end 2066-12-19 02:00:00 (Sun)
+65196237600, #    local_end 2066-12-26 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65195632800, #    utc_start 2066-12-19 02:00:00 (Sun)
+65196237600, #    utc_start 2066-12-26 02:00:00 (Sun)
 65223453600, #      utc_end 2067-11-06 02:00:00 (Sun)
-65195636400, #  local_start 2066-12-19 03:00:00 (Sun)
+65196241200, #  local_start 2066-12-26 03:00:00 (Sun)
 65223457200, #    local_end 2067-11-06 03:00:00 (Sun)
 3600,
 0,
@@ -1497,17 +1497,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65345623200, #    utc_start 2071-09-20 02:00:00 (Sun)
-65348647200, #      utc_end 2071-10-25 02:00:00 (Sun)
+65349252000, #      utc_end 2071-11-01 02:00:00 (Sun)
 65345623200, #  local_start 2071-09-20 02:00:00 (Sun)
-65348647200, #    local_end 2071-10-25 02:00:00 (Sun)
+65349252000, #    local_end 2071-11-01 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65348647200, #    utc_start 2071-10-25 02:00:00 (Sun)
+65349252000, #    utc_start 2071-11-01 02:00:00 (Sun)
 65376468000, #      utc_end 2072-09-11 02:00:00 (Sun)
-65348650800, #  local_start 2071-10-25 03:00:00 (Sun)
+65349255600, #  local_start 2071-11-01 03:00:00 (Sun)
 65376471600, #    local_end 2072-09-11 03:00:00 (Sun)
 3600,
 0,
@@ -1551,17 +1551,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65437552800, #    utc_start 2074-08-19 02:00:00 (Sun)
-65440576800, #      utc_end 2074-09-23 02:00:00 (Sun)
+65441181600, #      utc_end 2074-09-30 02:00:00 (Sun)
 65437552800, #  local_start 2074-08-19 02:00:00 (Sun)
-65440576800, #    local_end 2074-09-23 02:00:00 (Sun)
+65441181600, #    local_end 2074-09-30 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65440576800, #    utc_start 2074-09-23 02:00:00 (Sun)
+65441181600, #    utc_start 2074-09-30 02:00:00 (Sun)
 65468397600, #      utc_end 2075-08-11 02:00:00 (Sun)
-65440580400, #  local_start 2074-09-23 03:00:00 (Sun)
+65441185200, #  local_start 2074-09-30 03:00:00 (Sun)
 65468401200, #    local_end 2075-08-11 03:00:00 (Sun)
 3600,
 0,
@@ -1641,17 +1641,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65590567200, #    utc_start 2079-06-25 02:00:00 (Sun)
-65593591200, #      utc_end 2079-07-30 02:00:00 (Sun)
+65594196000, #      utc_end 2079-08-06 02:00:00 (Sun)
 65590567200, #  local_start 2079-06-25 02:00:00 (Sun)
-65593591200, #    local_end 2079-07-30 02:00:00 (Sun)
+65594196000, #    local_end 2079-08-06 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65593591200, #    utc_start 2079-07-30 02:00:00 (Sun)
+65594196000, #    utc_start 2079-08-06 02:00:00 (Sun)
 65621412000, #      utc_end 2080-06-16 02:00:00 (Sun)
-65593594800, #  local_start 2079-07-30 03:00:00 (Sun)
+65594199600, #  local_start 2079-08-06 03:00:00 (Sun)
 65621415600, #    local_end 2080-06-16 03:00:00 (Sun)
 3600,
 0,
@@ -1785,17 +1785,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65835511200, #    utc_start 2087-03-30 02:00:00 (Sun)
-65838535200, #      utc_end 2087-05-04 02:00:00 (Sun)
+65839140000, #      utc_end 2087-05-11 02:00:00 (Sun)
 65835511200, #  local_start 2087-03-30 02:00:00 (Sun)
-65838535200, #    local_end 2087-05-04 02:00:00 (Sun)
+65839140000, #    local_end 2087-05-11 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65838535200, #    utc_start 2087-05-04 02:00:00 (Sun)
+65839140000, #    utc_start 2087-05-11 02:00:00 (Sun)
 DateTime::TimeZone::INFINITY, #      utc_end
-65838538800, #  local_start 2087-05-04 03:00:00 (Sun)
+65839143600, #  local_start 2087-05-11 03:00:00 (Sun)
 DateTime::TimeZone::INFINITY, #    local_end
 3600,
 0,
@@ -1803,7 +1803,7 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 97 }
 
diff --git a/lib/DateTime/TimeZone/Africa/Ceuta.pm b/lib/DateTime/TimeZone/Africa/Ceuta.pm
index 5d157ec4..5d372db1 100644
--- a/lib/DateTime/TimeZone/Africa/Ceuta.pm
+++ b/lib/DateTime/TimeZone/Africa/Ceuta.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1061,15 +1061,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 55 }
+sub has_dst_changes { 56 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1119,24 +1137,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Africa/El_Aaiun.pm b/lib/DateTime/TimeZone/Africa/El_Aaiun.pm
index d41fbd55..895c1833 100644
--- a/lib/DateTime/TimeZone/Africa/El_Aaiun.pm
+++ b/lib/DateTime/TimeZone/Africa/El_Aaiun.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -444,17 +444,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63722944800, #    utc_start 2020-04-19 02:00:00 (Sun)
-63725968800, #      utc_end 2020-05-24 02:00:00 (Sun)
+63726573600, #      utc_end 2020-05-31 02:00:00 (Sun)
 63722944800, #  local_start 2020-04-19 02:00:00 (Sun)
-63725968800, #    local_end 2020-05-24 02:00:00 (Sun)
+63726573600, #    local_end 2020-05-31 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-63725968800, #    utc_start 2020-05-24 02:00:00 (Sun)
+63726573600, #    utc_start 2020-05-31 02:00:00 (Sun)
 63753789600, #      utc_end 2021-04-11 02:00:00 (Sun)
-63725972400, #  local_start 2020-05-24 03:00:00 (Sun)
+63726577200, #  local_start 2020-05-31 03:00:00 (Sun)
 63753793200, #    local_end 2021-04-11 03:00:00 (Sun)
 3600,
 0,
@@ -588,17 +588,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63967888800, #    utc_start 2028-01-23 02:00:00 (Sun)
-63970912800, #      utc_end 2028-02-27 02:00:00 (Sun)
+63971517600, #      utc_end 2028-03-05 02:00:00 (Sun)
 63967888800, #  local_start 2028-01-23 02:00:00 (Sun)
-63970912800, #    local_end 2028-02-27 02:00:00 (Sun)
+63971517600, #    local_end 2028-03-05 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-63970912800, #    utc_start 2028-02-27 02:00:00 (Sun)
+63971517600, #    utc_start 2028-03-05 02:00:00 (Sun)
 63998733600, #      utc_end 2029-01-14 02:00:00 (Sun)
-63970916400, #  local_start 2028-02-27 03:00:00 (Sun)
+63971521200, #  local_start 2028-03-05 03:00:00 (Sun)
 63998737200, #    local_end 2029-01-14 03:00:00 (Sun)
 3600,
 0,
@@ -732,17 +732,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64212832800, #    utc_start 2035-10-28 02:00:00 (Sun)
-64215856800, #      utc_end 2035-12-02 02:00:00 (Sun)
+64216461600, #      utc_end 2035-12-09 02:00:00 (Sun)
 64212832800, #  local_start 2035-10-28 02:00:00 (Sun)
-64215856800, #    local_end 2035-12-02 02:00:00 (Sun)
+64216461600, #    local_end 2035-12-09 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64215856800, #    utc_start 2035-12-02 02:00:00 (Sun)
+64216461600, #    utc_start 2035-12-09 02:00:00 (Sun)
 64243677600, #      utc_end 2036-10-19 02:00:00 (Sun)
-64215860400, #  local_start 2035-12-02 03:00:00 (Sun)
+64216465200, #  local_start 2035-12-09 03:00:00 (Sun)
 64243681200, #    local_end 2036-10-19 03:00:00 (Sun)
 3600,
 0,
@@ -876,17 +876,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64457776800, #    utc_start 2043-08-02 02:00:00 (Sun)
-64460800800, #      utc_end 2043-09-06 02:00:00 (Sun)
+64461405600, #      utc_end 2043-09-13 02:00:00 (Sun)
 64457776800, #  local_start 2043-08-02 02:00:00 (Sun)
-64460800800, #    local_end 2043-09-06 02:00:00 (Sun)
+64461405600, #    local_end 2043-09-13 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64460800800, #    utc_start 2043-09-06 02:00:00 (Sun)
+64461405600, #    utc_start 2043-09-13 02:00:00 (Sun)
 64488621600, #      utc_end 2044-07-24 02:00:00 (Sun)
-64460804400, #  local_start 2043-09-06 03:00:00 (Sun)
+64461409200, #  local_start 2043-09-13 03:00:00 (Sun)
 64488625200, #    local_end 2044-07-24 03:00:00 (Sun)
 3600,
 0,
@@ -1020,17 +1020,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64702720800, #    utc_start 2051-05-07 02:00:00 (Sun)
-64705744800, #      utc_end 2051-06-11 02:00:00 (Sun)
+64706349600, #      utc_end 2051-06-18 02:00:00 (Sun)
 64702720800, #  local_start 2051-05-07 02:00:00 (Sun)
-64705744800, #    local_end 2051-06-11 02:00:00 (Sun)
+64706349600, #    local_end 2051-06-18 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64705744800, #    utc_start 2051-06-11 02:00:00 (Sun)
+64706349600, #    utc_start 2051-06-18 02:00:00 (Sun)
 64733565600, #      utc_end 2052-04-28 02:00:00 (Sun)
-64705748400, #  local_start 2051-06-11 03:00:00 (Sun)
+64706353200, #  local_start 2051-06-18 03:00:00 (Sun)
 64733569200, #    local_end 2052-04-28 03:00:00 (Sun)
 3600,
 0,
@@ -1164,17 +1164,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 64947664800, #    utc_start 2059-02-09 02:00:00 (Sun)
-64950688800, #      utc_end 2059-03-16 02:00:00 (Sun)
+64951293600, #      utc_end 2059-03-23 02:00:00 (Sun)
 64947664800, #  local_start 2059-02-09 02:00:00 (Sun)
-64950688800, #    local_end 2059-03-16 02:00:00 (Sun)
+64951293600, #    local_end 2059-03-23 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-64950688800, #    utc_start 2059-03-16 02:00:00 (Sun)
+64951293600, #    utc_start 2059-03-23 02:00:00 (Sun)
 64978509600, #      utc_end 2060-02-01 02:00:00 (Sun)
-64950692400, #  local_start 2059-03-16 03:00:00 (Sun)
+64951297200, #  local_start 2059-03-23 03:00:00 (Sun)
 64978513200, #    local_end 2060-02-01 03:00:00 (Sun)
 3600,
 0,
@@ -1254,17 +1254,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65100679200, #    utc_start 2063-12-16 02:00:00 (Sun)
-65103703200, #      utc_end 2064-01-20 02:00:00 (Sun)
+65104308000, #      utc_end 2064-01-27 02:00:00 (Sun)
 65100679200, #  local_start 2063-12-16 02:00:00 (Sun)
-65103703200, #    local_end 2064-01-20 02:00:00 (Sun)
+65104308000, #    local_end 2064-01-27 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65103703200, #    utc_start 2064-01-20 02:00:00 (Sun)
+65104308000, #    utc_start 2064-01-27 02:00:00 (Sun)
 65131524000, #      utc_end 2064-12-07 02:00:00 (Sun)
-65103706800, #  local_start 2064-01-20 03:00:00 (Sun)
+65104311600, #  local_start 2064-01-27 03:00:00 (Sun)
 65131527600, #    local_end 2064-12-07 03:00:00 (Sun)
 3600,
 0,
@@ -1308,17 +1308,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65192608800, #    utc_start 2066-11-14 02:00:00 (Sun)
-65195632800, #      utc_end 2066-12-19 02:00:00 (Sun)
+65196237600, #      utc_end 2066-12-26 02:00:00 (Sun)
 65192608800, #  local_start 2066-11-14 02:00:00 (Sun)
-65195632800, #    local_end 2066-12-19 02:00:00 (Sun)
+65196237600, #    local_end 2066-12-26 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65195632800, #    utc_start 2066-12-19 02:00:00 (Sun)
+65196237600, #    utc_start 2066-12-26 02:00:00 (Sun)
 65223453600, #      utc_end 2067-11-06 02:00:00 (Sun)
-65195636400, #  local_start 2066-12-19 03:00:00 (Sun)
+65196241200, #  local_start 2066-12-26 03:00:00 (Sun)
 65223457200, #    local_end 2067-11-06 03:00:00 (Sun)
 3600,
 0,
@@ -1398,17 +1398,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65345623200, #    utc_start 2071-09-20 02:00:00 (Sun)
-65348647200, #      utc_end 2071-10-25 02:00:00 (Sun)
+65349252000, #      utc_end 2071-11-01 02:00:00 (Sun)
 65345623200, #  local_start 2071-09-20 02:00:00 (Sun)
-65348647200, #    local_end 2071-10-25 02:00:00 (Sun)
+65349252000, #    local_end 2071-11-01 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65348647200, #    utc_start 2071-10-25 02:00:00 (Sun)
+65349252000, #    utc_start 2071-11-01 02:00:00 (Sun)
 65376468000, #      utc_end 2072-09-11 02:00:00 (Sun)
-65348650800, #  local_start 2071-10-25 03:00:00 (Sun)
+65349255600, #  local_start 2071-11-01 03:00:00 (Sun)
 65376471600, #    local_end 2072-09-11 03:00:00 (Sun)
 3600,
 0,
@@ -1452,17 +1452,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65437552800, #    utc_start 2074-08-19 02:00:00 (Sun)
-65440576800, #      utc_end 2074-09-23 02:00:00 (Sun)
+65441181600, #      utc_end 2074-09-30 02:00:00 (Sun)
 65437552800, #  local_start 2074-08-19 02:00:00 (Sun)
-65440576800, #    local_end 2074-09-23 02:00:00 (Sun)
+65441181600, #    local_end 2074-09-30 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65440576800, #    utc_start 2074-09-23 02:00:00 (Sun)
+65441181600, #    utc_start 2074-09-30 02:00:00 (Sun)
 65468397600, #      utc_end 2075-08-11 02:00:00 (Sun)
-65440580400, #  local_start 2074-09-23 03:00:00 (Sun)
+65441185200, #  local_start 2074-09-30 03:00:00 (Sun)
 65468401200, #    local_end 2075-08-11 03:00:00 (Sun)
 3600,
 0,
@@ -1542,17 +1542,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65590567200, #    utc_start 2079-06-25 02:00:00 (Sun)
-65593591200, #      utc_end 2079-07-30 02:00:00 (Sun)
+65594196000, #      utc_end 2079-08-06 02:00:00 (Sun)
 65590567200, #  local_start 2079-06-25 02:00:00 (Sun)
-65593591200, #    local_end 2079-07-30 02:00:00 (Sun)
+65594196000, #    local_end 2079-08-06 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65593591200, #    utc_start 2079-07-30 02:00:00 (Sun)
+65594196000, #    utc_start 2079-08-06 02:00:00 (Sun)
 65621412000, #      utc_end 2080-06-16 02:00:00 (Sun)
-65593594800, #  local_start 2079-07-30 03:00:00 (Sun)
+65594199600, #  local_start 2079-08-06 03:00:00 (Sun)
 65621415600, #    local_end 2080-06-16 03:00:00 (Sun)
 3600,
 0,
@@ -1686,17 +1686,17 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 65835511200, #    utc_start 2087-03-30 02:00:00 (Sun)
-65838535200, #      utc_end 2087-05-04 02:00:00 (Sun)
+65839140000, #      utc_end 2087-05-11 02:00:00 (Sun)
 65835511200, #  local_start 2087-03-30 02:00:00 (Sun)
-65838535200, #    local_end 2087-05-04 02:00:00 (Sun)
+65839140000, #    local_end 2087-05-11 02:00:00 (Sun)
 0,
 1,
 '+00',
     ],
     [
-65838535200, #    utc_start 2087-05-04 02:00:00 (Sun)
+65839140000, #    utc_start 2087-05-11 02:00:00 (Sun)
 DateTime::TimeZone::INFINITY, #      utc_end
-65838538800, #  local_start 2087-05-04 03:00:00 (Sun)
+65839143600, #  local_start 2087-05-11 03:00:00 (Sun)
 DateTime::TimeZone::INFINITY, #    local_end
 3600,
 0,
@@ -1704,7 +1704,7 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 92 }
 
diff --git a/lib/DateTime/TimeZone/Africa/Johannesburg.pm b/lib/DateTime/TimeZone/Africa/Johannesburg.pm
index ed641b89..d7ccf322 100644
--- a/lib/DateTime/TimeZone/Africa/Johannesburg.pm
+++ b/lib/DateTime/TimeZone/Africa/Johannesburg.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -84,11 +84,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Juba.pm b/lib/DateTime/TimeZone/Africa/Juba.pm
index 9bc1a7cc..6c367e03 100644
--- a/lib/DateTime/TimeZone/Africa/Juba.pm
+++ b/lib/DateTime/TimeZone/Africa/Juba.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -336,11 +336,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 16 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Khartoum.pm b/lib/DateTime/TimeZone/Africa/Khartoum.pm
index d69076e9..a1ab2086 100644
--- a/lib/DateTime/TimeZone/Africa/Khartoum.pm
+++ b/lib/DateTime/TimeZone/Africa/Khartoum.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -345,11 +345,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 16 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Lagos.pm b/lib/DateTime/TimeZone/Africa/Lagos.pm
index 9c827eec..023acf29 100644
--- a/lib/DateTime/TimeZone/Africa/Lagos.pm
+++ b/lib/DateTime/TimeZone/Africa/Lagos.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Maputo.pm b/lib/DateTime/TimeZone/Africa/Maputo.pm
index 5cb3c9c1..2bfcf454 100644
--- a/lib/DateTime/TimeZone/Africa/Maputo.pm
+++ b/lib/DateTime/TimeZone/Africa/Maputo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Monrovia.pm b/lib/DateTime/TimeZone/Africa/Monrovia.pm
index d0001e1d..585df23e 100644
--- a/lib/DateTime/TimeZone/Africa/Monrovia.pm
+++ b/lib/DateTime/TimeZone/Africa/Monrovia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Nairobi.pm b/lib/DateTime/TimeZone/Africa/Nairobi.pm
index feb8fe28..d1d21fdf 100644
--- a/lib/DateTime/TimeZone/Africa/Nairobi.pm
+++ b/lib/DateTime/TimeZone/Africa/Nairobi.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Ndjamena.pm b/lib/DateTime/TimeZone/Africa/Ndjamena.pm
index a965e610..4d59dc07 100644
--- a/lib/DateTime/TimeZone/Africa/Ndjamena.pm
+++ b/lib/DateTime/TimeZone/Africa/Ndjamena.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Sao_Tome.pm b/lib/DateTime/TimeZone/Africa/Sao_Tome.pm
index c5824650..8169d5c1 100644
--- a/lib/DateTime/TimeZone/Africa/Sao_Tome.pm
+++ b/lib/DateTime/TimeZone/Africa/Sao_Tome.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Tripoli.pm b/lib/DateTime/TimeZone/Africa/Tripoli.pm
index c8e2d25b..e0c90233 100644
--- a/lib/DateTime/TimeZone/Africa/Tripoli.pm
+++ b/lib/DateTime/TimeZone/Africa/Tripoli.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -318,11 +318,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 13 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Tunis.pm b/lib/DateTime/TimeZone/Africa/Tunis.pm
index 84db2fdf..cc640599 100644
--- a/lib/DateTime/TimeZone/Africa/Tunis.pm
+++ b/lib/DateTime/TimeZone/Africa/Tunis.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -336,11 +336,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 16 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Africa/Windhoek.pm b/lib/DateTime/TimeZone/Africa/Windhoek.pm
index 6757a72d..010f9822 100644
--- a/lib/DateTime/TimeZone/Africa/Windhoek.pm
+++ b/lib/DateTime/TimeZone/Africa/Windhoek.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -507,11 +507,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 25 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Adak.pm b/lib/DateTime/TimeZone/America/Adak.pm
index 2133b978..e99a9859 100644
--- a/lib/DateTime/TimeZone/America/Adak.pm
+++ b/lib/DateTime/TimeZone/America/Adak.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1223,15 +1223,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -32400,
 1,
+'HDT',
+    ],
+    [
+64055617200, #    utc_start 2030-11-03 11:00:00 (Sun)
+64066507200, #      utc_end 2031-03-09 12:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-36000,
+0,
+'HST',
+    ],
+    [
+64066507200, #    utc_start 2031-03-09 12:00:00 (Sun)
+64087066800, #      utc_end 2031-11-02 11:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-32400,
+1,
 'HDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1282,23 +1300,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Anchorage.pm b/lib/DateTime/TimeZone/America/Anchorage.pm
index d3765f8f..6238e6c4 100644
--- a/lib/DateTime/TimeZone/America/Anchorage.pm
+++ b/lib/DateTime/TimeZone/America/Anchorage.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1214,15 +1214,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1273,23 +1291,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Araguaina.pm b/lib/DateTime/TimeZone/America/Araguaina.pm
index 2bb282c6..75f4b7bf 100644
--- a/lib/DateTime/TimeZone/America/Araguaina.pm
+++ b/lib/DateTime/TimeZone/America/Araguaina.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -525,11 +525,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 25 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Buenos_Aires.pm b/lib/DateTime/TimeZone/America/Argentina/Buenos_Aires.pm
index 3c35ed79..23ce540d 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Buenos_Aires.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Buenos_Aires.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -579,11 +579,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Catamarca.pm b/lib/DateTime/TimeZone/America/Argentina/Catamarca.pm
index b0dfb4e8..9a652ecc 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Catamarca.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Catamarca.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -588,11 +588,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Cordoba.pm b/lib/DateTime/TimeZone/America/Argentina/Cordoba.pm
index 6386fc2c..3c94e6ef 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Cordoba.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Cordoba.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -579,11 +579,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Jujuy.pm b/lib/DateTime/TimeZone/America/Argentina/Jujuy.pm
index 8e83a345..c43ae094 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Jujuy.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Jujuy.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -579,11 +579,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/La_Rioja.pm b/lib/DateTime/TimeZone/America/Argentina/La_Rioja.pm
index 71a41752..47009f0b 100644
--- a/lib/DateTime/TimeZone/America/Argentina/La_Rioja.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/La_Rioja.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Mendoza.pm b/lib/DateTime/TimeZone/America/Argentina/Mendoza.pm
index cdad7c3d..5332dacd 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Mendoza.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Mendoza.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -588,11 +588,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Rio_Gallegos.pm b/lib/DateTime/TimeZone/America/Argentina/Rio_Gallegos.pm
index 5dd58f99..5811f5f7 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Rio_Gallegos.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Rio_Gallegos.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -588,11 +588,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Salta.pm b/lib/DateTime/TimeZone/America/Argentina/Salta.pm
index 11e21226..31c15f84 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Salta.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Salta.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -570,11 +570,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/San_Juan.pm b/lib/DateTime/TimeZone/America/Argentina/San_Juan.pm
index 73f54ad1..be541c8b 100644
--- a/lib/DateTime/TimeZone/America/Argentina/San_Juan.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/San_Juan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/San_Luis.pm b/lib/DateTime/TimeZone/America/Argentina/San_Luis.pm
index 1cedd9b6..3f758a21 100644
--- a/lib/DateTime/TimeZone/America/Argentina/San_Luis.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/San_Luis.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Tucuman.pm b/lib/DateTime/TimeZone/America/Argentina/Tucuman.pm
index 9e435d5e..2e980464 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Tucuman.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Tucuman.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Argentina/Ushuaia.pm b/lib/DateTime/TimeZone/America/Argentina/Ushuaia.pm
index 7bf5d347..96237077 100644
--- a/lib/DateTime/TimeZone/America/Argentina/Ushuaia.pm
+++ b/lib/DateTime/TimeZone/America/Argentina/Ushuaia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -588,11 +588,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 28 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Asuncion.pm b/lib/DateTime/TimeZone/America/Asuncion.pm
index 44c8969f..4df8a4c4 100644
--- a/lib/DateTime/TimeZone/America/Asuncion.pm
+++ b/lib/DateTime/TimeZone/America/Asuncion.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1052,15 +1052,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053158400, #    local_end 2030-10-06 00:00:00 (Sun)
 -14400,
 0,
+'-04',
+    ],
+    [
+64053172800, #    utc_start 2030-10-06 04:00:00 (Sun)
+64067684400, #      utc_end 2031-03-23 03:00:00 (Sun)
+64053162000, #  local_start 2030-10-06 01:00:00 (Sun)
+64067673600, #    local_end 2031-03-23 00:00:00 (Sun)
+-10800,
+1,
+'-03',
+    ],
+    [
+64067684400, #    utc_start 2031-03-23 03:00:00 (Sun)
+64084622400, #      utc_end 2031-10-05 04:00:00 (Sun)
+64067670000, #  local_start 2031-03-22 23:00:00 (Sat)
+64084608000, #    local_end 2031-10-05 00:00:00 (Sun)
+-14400,
+0,
 '-04',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 56 }
+sub has_dst_changes { 57 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Atikokan.pm b/lib/DateTime/TimeZone/America/Atikokan.pm
index c09f3e24..3c048589 100644
--- a/lib/DateTime/TimeZone/America/Atikokan.pm
+++ b/lib/DateTime/TimeZone/America/Atikokan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Bahia.pm b/lib/DateTime/TimeZone/America/Bahia.pm
index bc3911fd..a1a35493 100644
--- a/lib/DateTime/TimeZone/America/Bahia.pm
+++ b/lib/DateTime/TimeZone/America/Bahia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Bahia_Banderas.pm b/lib/DateTime/TimeZone/America/Bahia_Banderas.pm
index 6ef81bf5..9ff111ec 100644
--- a/lib/DateTime/TimeZone/America/Bahia_Banderas.pm
+++ b/lib/DateTime/TimeZone/America/Bahia_Banderas.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -728,15 +728,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64054998000, #    utc_start 2030-10-27 07:00:00 (Sun)
+64068912000, #      utc_end 2031-04-06 08:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64068912000, #    utc_start 2031-04-06 08:00:00 (Sun)
+64086447600, #      utc_end 2031-10-26 07:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Barbados.pm b/lib/DateTime/TimeZone/America/Barbados.pm
index d5ec3e5e..7434a078 100644
--- a/lib/DateTime/TimeZone/America/Barbados.pm
+++ b/lib/DateTime/TimeZone/America/Barbados.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -120,11 +120,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Belem.pm b/lib/DateTime/TimeZone/America/Belem.pm
index acb37e6d..8de607ff 100644
--- a/lib/DateTime/TimeZone/America/Belem.pm
+++ b/lib/DateTime/TimeZone/America/Belem.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -300,11 +300,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Belize.pm b/lib/DateTime/TimeZone/America/Belize.pm
index cf3b3519..d1c36a03 100644
--- a/lib/DateTime/TimeZone/America/Belize.pm
+++ b/lib/DateTime/TimeZone/America/Belize.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -525,11 +525,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 27 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Blanc_Sablon.pm b/lib/DateTime/TimeZone/America/Blanc_Sablon.pm
index 3b7cccbf..6bc59abe 100644
--- a/lib/DateTime/TimeZone/America/Blanc_Sablon.pm
+++ b/lib/DateTime/TimeZone/America/Blanc_Sablon.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Boa_Vista.pm b/lib/DateTime/TimeZone/America/Boa_Vista.pm
index 731312fc..bbf9be9c 100644
--- a/lib/DateTime/TimeZone/America/Boa_Vista.pm
+++ b/lib/DateTime/TimeZone/America/Boa_Vista.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -345,11 +345,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 16 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Bogota.pm b/lib/DateTime/TimeZone/America/Bogota.pm
index 588e27a1..4f22d4da 100644
--- a/lib/DateTime/TimeZone/America/Bogota.pm
+++ b/lib/DateTime/TimeZone/America/Bogota.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Boise.pm b/lib/DateTime/TimeZone/America/Boise.pm
index bcdd27b0..782d8e07 100644
--- a/lib/DateTime/TimeZone/America/Boise.pm
+++ b/lib/DateTime/TimeZone/America/Boise.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1259,15 +1259,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Cambridge_Bay.pm b/lib/DateTime/TimeZone/America/Cambridge_Bay.pm
index 8f7909d3..cb8c745e 100644
--- a/lib/DateTime/TimeZone/America/Cambridge_Bay.pm
+++ b/lib/DateTime/TimeZone/America/Cambridge_Bay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -998,15 +998,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Campo_Grande.pm b/lib/DateTime/TimeZone/America/Campo_Grande.pm
index 2d90edcd..099125b7 100644
--- a/lib/DateTime/TimeZone/America/Campo_Grande.pm
+++ b/lib/DateTime/TimeZone/America/Campo_Grande.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -849,11 +849,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Cancun.pm b/lib/DateTime/TimeZone/America/Cancun.pm
index 2b9f1a13..ea5d8c7e 100644
--- a/lib/DateTime/TimeZone/America/Cancun.pm
+++ b/lib/DateTime/TimeZone/America/Cancun.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -408,11 +408,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 20 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Caracas.pm b/lib/DateTime/TimeZone/America/Caracas.pm
index adb4c0e0..8a8d0f1d 100644
--- a/lib/DateTime/TimeZone/America/Caracas.pm
+++ b/lib/DateTime/TimeZone/America/Caracas.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Cayenne.pm b/lib/DateTime/TimeZone/America/Cayenne.pm
index 82eb6293..e4b9e553 100644
--- a/lib/DateTime/TimeZone/America/Cayenne.pm
+++ b/lib/DateTime/TimeZone/America/Cayenne.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Chicago.pm b/lib/DateTime/TimeZone/America/Chicago.pm
index 8dc956d1..a39d2bb6 100644
--- a/lib/DateTime/TimeZone/America/Chicago.pm
+++ b/lib/DateTime/TimeZone/America/Chicago.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -2051,15 +2051,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 110 }
+sub has_dst_changes { 111 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -2110,23 +2128,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Chihuahua.pm b/lib/DateTime/TimeZone/America/Chihuahua.pm
index 3843db92..c31ff670 100644
--- a/lib/DateTime/TimeZone/America/Chihuahua.pm
+++ b/lib/DateTime/TimeZone/America/Chihuahua.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -719,15 +719,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055001600, #    utc_start 2030-10-27 08:00:00 (Sun)
+64068915600, #      utc_end 2031-04-06 09:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64068915600, #    utc_start 2031-04-06 09:00:00 (Sun)
+64086451200, #      utc_end 2031-10-26 08:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Costa_Rica.pm b/lib/DateTime/TimeZone/America/Costa_Rica.pm
index a926f01c..aefdae99 100644
--- a/lib/DateTime/TimeZone/America/Costa_Rica.pm
+++ b/lib/DateTime/TimeZone/America/Costa_Rica.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -120,11 +120,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Creston.pm b/lib/DateTime/TimeZone/America/Creston.pm
index 0d7619c6..0f9c6402 100644
--- a/lib/DateTime/TimeZone/America/Creston.pm
+++ b/lib/DateTime/TimeZone/America/Creston.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Cuiaba.pm b/lib/DateTime/TimeZone/America/Cuiaba.pm
index 9b01d26b..93c7ccbb 100644
--- a/lib/DateTime/TimeZone/America/Cuiaba.pm
+++ b/lib/DateTime/TimeZone/America/Cuiaba.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -849,11 +849,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 44 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Curacao.pm b/lib/DateTime/TimeZone/America/Curacao.pm
index 86961f83..c27ea576 100644
--- a/lib/DateTime/TimeZone/America/Curacao.pm
+++ b/lib/DateTime/TimeZone/America/Curacao.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Danmarkshavn.pm b/lib/DateTime/TimeZone/America/Danmarkshavn.pm
index b1f78195..2f43156c 100644
--- a/lib/DateTime/TimeZone/America/Danmarkshavn.pm
+++ b/lib/DateTime/TimeZone/America/Danmarkshavn.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -336,11 +336,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 16 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Dawson.pm b/lib/DateTime/TimeZone/America/Dawson.pm
index ecd7b536..b7f098ea 100644
--- a/lib/DateTime/TimeZone/America/Dawson.pm
+++ b/lib/DateTime/TimeZone/America/Dawson.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -858,272 +858,26 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63719344800, #    utc_start 2020-03-08 10:00:00 (Sun)
-63739904400, #      utc_end 2020-11-01 09:00:00 (Sun)
+DateTime::TimeZone::INFINITY, #      utc_end
 63719319600, #  local_start 2020-03-08 03:00:00 (Sun)
-63739879200, #    local_end 2020-11-01 02:00:00 (Sun)
+DateTime::TimeZone::INFINITY, #    local_end
 -25200,
-1,
-'PDT',
-    ],
-    [
-63739904400, #    utc_start 2020-11-01 09:00:00 (Sun)
-63751399200, #      utc_end 2021-03-14 10:00:00 (Sun)
-63739875600, #  local_start 2020-11-01 01:00:00 (Sun)
-63751370400, #    local_end 2021-03-14 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63751399200, #    utc_start 2021-03-14 10:00:00 (Sun)
-63771958800, #      utc_end 2021-11-07 09:00:00 (Sun)
-63751374000, #  local_start 2021-03-14 03:00:00 (Sun)
-63771933600, #    local_end 2021-11-07 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63771958800, #    utc_start 2021-11-07 09:00:00 (Sun)
-63782848800, #      utc_end 2022-03-13 10:00:00 (Sun)
-63771930000, #  local_start 2021-11-07 01:00:00 (Sun)
-63782820000, #    local_end 2022-03-13 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63782848800, #    utc_start 2022-03-13 10:00:00 (Sun)
-63803408400, #      utc_end 2022-11-06 09:00:00 (Sun)
-63782823600, #  local_start 2022-03-13 03:00:00 (Sun)
-63803383200, #    local_end 2022-11-06 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63803408400, #    utc_start 2022-11-06 09:00:00 (Sun)
-63814298400, #      utc_end 2023-03-12 10:00:00 (Sun)
-63803379600, #  local_start 2022-11-06 01:00:00 (Sun)
-63814269600, #    local_end 2023-03-12 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63814298400, #    utc_start 2023-03-12 10:00:00 (Sun)
-63834858000, #      utc_end 2023-11-05 09:00:00 (Sun)
-63814273200, #  local_start 2023-03-12 03:00:00 (Sun)
-63834832800, #    local_end 2023-11-05 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63834858000, #    utc_start 2023-11-05 09:00:00 (Sun)
-63845748000, #      utc_end 2024-03-10 10:00:00 (Sun)
-63834829200, #  local_start 2023-11-05 01:00:00 (Sun)
-63845719200, #    local_end 2024-03-10 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63845748000, #    utc_start 2024-03-10 10:00:00 (Sun)
-63866307600, #      utc_end 2024-11-03 09:00:00 (Sun)
-63845722800, #  local_start 2024-03-10 03:00:00 (Sun)
-63866282400, #    local_end 2024-11-03 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63866307600, #    utc_start 2024-11-03 09:00:00 (Sun)
-63877197600, #      utc_end 2025-03-09 10:00:00 (Sun)
-63866278800, #  local_start 2024-11-03 01:00:00 (Sun)
-63877168800, #    local_end 2025-03-09 02:00:00 (Sun)
--28800,
 0,
-'PST',
-    ],
-    [
-63877197600, #    utc_start 2025-03-09 10:00:00 (Sun)
-63897757200, #      utc_end 2025-11-02 09:00:00 (Sun)
-63877172400, #  local_start 2025-03-09 03:00:00 (Sun)
-63897732000, #    local_end 2025-11-02 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63897757200, #    utc_start 2025-11-02 09:00:00 (Sun)
-63908647200, #      utc_end 2026-03-08 10:00:00 (Sun)
-63897728400, #  local_start 2025-11-02 01:00:00 (Sun)
-63908618400, #    local_end 2026-03-08 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63908647200, #    utc_start 2026-03-08 10:00:00 (Sun)
-63929206800, #      utc_end 2026-11-01 09:00:00 (Sun)
-63908622000, #  local_start 2026-03-08 03:00:00 (Sun)
-63929181600, #    local_end 2026-11-01 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63929206800, #    utc_start 2026-11-01 09:00:00 (Sun)
-63940701600, #      utc_end 2027-03-14 10:00:00 (Sun)
-63929178000, #  local_start 2026-11-01 01:00:00 (Sun)
-63940672800, #    local_end 2027-03-14 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63940701600, #    utc_start 2027-03-14 10:00:00 (Sun)
-63961261200, #      utc_end 2027-11-07 09:00:00 (Sun)
-63940676400, #  local_start 2027-03-14 03:00:00 (Sun)
-63961236000, #    local_end 2027-11-07 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63961261200, #    utc_start 2027-11-07 09:00:00 (Sun)
-63972151200, #      utc_end 2028-03-12 10:00:00 (Sun)
-63961232400, #  local_start 2027-11-07 01:00:00 (Sun)
-63972122400, #    local_end 2028-03-12 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63972151200, #    utc_start 2028-03-12 10:00:00 (Sun)
-63992710800, #      utc_end 2028-11-05 09:00:00 (Sun)
-63972126000, #  local_start 2028-03-12 03:00:00 (Sun)
-63992685600, #    local_end 2028-11-05 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63992710800, #    utc_start 2028-11-05 09:00:00 (Sun)
-64003600800, #      utc_end 2029-03-11 10:00:00 (Sun)
-63992682000, #  local_start 2028-11-05 01:00:00 (Sun)
-64003572000, #    local_end 2029-03-11 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-64003600800, #    utc_start 2029-03-11 10:00:00 (Sun)
-64024160400, #      utc_end 2029-11-04 09:00:00 (Sun)
-64003575600, #  local_start 2029-03-11 03:00:00 (Sun)
-64024135200, #    local_end 2029-11-04 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-64024160400, #    utc_start 2029-11-04 09:00:00 (Sun)
-64035050400, #      utc_end 2030-03-10 10:00:00 (Sun)
-64024131600, #  local_start 2029-11-04 01:00:00 (Sun)
-64035021600, #    local_end 2030-03-10 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-64035050400, #    utc_start 2030-03-10 10:00:00 (Sun)
-64055610000, #      utc_end 2030-11-03 09:00:00 (Sun)
-64035025200, #  local_start 2030-03-10 03:00:00 (Sun)
-64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
--25200,
-1,
-'PDT',
+'MST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 56 }
+sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
     return shift->_init( @_, spans => $spans );
 }
 
-sub _last_offset { -28800 }
-
-my $last_observance = bless( {
-  'format' => 'P%sT',
-  'gmtoff' => '-8:00',
-  'local_start_datetime' => bless( {
-    'formatter' => undef,
-    'local_rd_days' => 722815,
-    'local_rd_secs' => 0,
-    'offset_modifier' => 0,
-    'rd_nanosecs' => 0,
-    'tz' => bless( {
-      'name' => 'floating',
-      'offset' => 0
-    }, 'DateTime::TimeZone::Floating' ),
-    'utc_rd_days' => 722815,
-    'utc_rd_secs' => 0,
-    'utc_year' => 1981
-  }, 'DateTime' ),
-  'offset_from_std' => 0,
-  'offset_from_utc' => -28800,
-  'until' => [],
-  'utc_start_datetime' => bless( {
-    'formatter' => undef,
-    'local_rd_days' => 722815,
-    'local_rd_secs' => 28800,
-    'offset_modifier' => 0,
-    'rd_nanosecs' => 0,
-    'tz' => bless( {
-      'name' => 'floating',
-      'offset' => 0
-    }, 'DateTime::TimeZone::Floating' ),
-    'utc_rd_days' => 722815,
-    'utc_rd_secs' => 28800,
-    'utc_year' => 1981
-  }, 'DateTime' )
-}, 'DateTime::TimeZone::OlsonDB::Observance' )
-;
-sub _last_observance { $last_observance }
-
-my $rules = [
-  bless( {
-    'at' => '2:00',
-    'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
-    'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
-  bless( {
-    'at' => '2:00',
-    'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
-    'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' )
-]
-;
-sub _rules { $rules }
 
 
 1;
diff --git a/lib/DateTime/TimeZone/America/Dawson_Creek.pm b/lib/DateTime/TimeZone/America/Dawson_Creek.pm
index fc28e861..34f66688 100644
--- a/lib/DateTime/TimeZone/America/Dawson_Creek.pm
+++ b/lib/DateTime/TimeZone/America/Dawson_Creek.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -561,11 +561,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Denver.pm b/lib/DateTime/TimeZone/America/Denver.pm
index 87814868..4c7b9290 100644
--- a/lib/DateTime/TimeZone/America/Denver.pm
+++ b/lib/DateTime/TimeZone/America/Denver.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1349,15 +1349,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 72 }
+sub has_dst_changes { 73 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1408,23 +1426,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Detroit.pm b/lib/DateTime/TimeZone/America/Detroit.pm
index 5e52f826..1450659c 100644
--- a/lib/DateTime/TimeZone/America/Detroit.pm
+++ b/lib/DateTime/TimeZone/America/Detroit.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1205,15 +1205,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 63 }
+sub has_dst_changes { 64 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Edmonton.pm b/lib/DateTime/TimeZone/America/Edmonton.pm
index 4f3e4b40..8dd32c2b 100644
--- a/lib/DateTime/TimeZone/America/Edmonton.pm
+++ b/lib/DateTime/TimeZone/America/Edmonton.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1250,15 +1250,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1309,23 +1327,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Eirunepe.pm b/lib/DateTime/TimeZone/America/Eirunepe.pm
index 3a918487..b152e807 100644
--- a/lib/DateTime/TimeZone/America/Eirunepe.pm
+++ b/lib/DateTime/TimeZone/America/Eirunepe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -354,11 +354,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 15 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/El_Salvador.pm b/lib/DateTime/TimeZone/America/El_Salvador.pm
index 0c72afe0..9ddb5e5d 100644
--- a/lib/DateTime/TimeZone/America/El_Salvador.pm
+++ b/lib/DateTime/TimeZone/America/El_Salvador.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Fort_Nelson.pm b/lib/DateTime/TimeZone/America/Fort_Nelson.pm
index 98528107..2cc4b528 100644
--- a/lib/DateTime/TimeZone/America/Fort_Nelson.pm
+++ b/lib/DateTime/TimeZone/America/Fort_Nelson.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1344,11 +1344,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 71 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Fortaleza.pm b/lib/DateTime/TimeZone/America/Fortaleza.pm
index 51141324..f5481c41 100644
--- a/lib/DateTime/TimeZone/America/Fortaleza.pm
+++ b/lib/DateTime/TimeZone/America/Fortaleza.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -417,11 +417,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 19 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Glace_Bay.pm b/lib/DateTime/TimeZone/America/Glace_Bay.pm
index a2741bc9..b0af2998 100644
--- a/lib/DateTime/TimeZone/America/Glace_Bay.pm
+++ b/lib/DateTime/TimeZone/America/Glace_Bay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1187,15 +1187,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 63 }
+sub has_dst_changes { 64 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Goose_Bay.pm b/lib/DateTime/TimeZone/America/Goose_Bay.pm
index 255f6ab4..3a171844 100644
--- a/lib/DateTime/TimeZone/America/Goose_Bay.pm
+++ b/lib/DateTime/TimeZone/America/Goose_Bay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1772,15 +1772,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 95 }
+sub has_dst_changes { 96 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Grand_Turk.pm b/lib/DateTime/TimeZone/America/Grand_Turk.pm
index ac047735..a0b978eb 100644
--- a/lib/DateTime/TimeZone/America/Grand_Turk.pm
+++ b/lib/DateTime/TimeZone/America/Grand_Turk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -944,15 +944,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 50 }
+sub has_dst_changes { 51 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1003,23 +1021,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Guatemala.pm b/lib/DateTime/TimeZone/America/Guatemala.pm
index fc21df51..7d04f82e 100644
--- a/lib/DateTime/TimeZone/America/Guatemala.pm
+++ b/lib/DateTime/TimeZone/America/Guatemala.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -111,11 +111,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Guayaquil.pm b/lib/DateTime/TimeZone/America/Guayaquil.pm
index 80acb6c9..88fabea5 100644
--- a/lib/DateTime/TimeZone/America/Guayaquil.pm
+++ b/lib/DateTime/TimeZone/America/Guayaquil.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Guyana.pm b/lib/DateTime/TimeZone/America/Guyana.pm
index a29ce7fa..5e8c3eb4 100644
--- a/lib/DateTime/TimeZone/America/Guyana.pm
+++ b/lib/DateTime/TimeZone/America/Guyana.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Halifax.pm b/lib/DateTime/TimeZone/America/Halifax.pm
index c7bafd1a..a9980e1d 100644
--- a/lib/DateTime/TimeZone/America/Halifax.pm
+++ b/lib/DateTime/TimeZone/America/Halifax.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1979,15 +1979,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 107 }
+sub has_dst_changes { 108 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -2038,23 +2056,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Havana.pm b/lib/DateTime/TimeZone/America/Havana.pm
index ce1d6baa..cedc198b 100644
--- a/lib/DateTime/TimeZone/America/Havana.pm
+++ b/lib/DateTime/TimeZone/America/Havana.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1295,15 +1295,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055581200, #    local_end 2030-11-03 01:00:00 (Sun)
 -14400,
 1,
+'CDT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066482000, #      utc_end 2031-03-09 05:00:00 (Sun)
+64055577600, #  local_start 2030-11-03 00:00:00 (Sun)
+64066464000, #    local_end 2031-03-09 00:00:00 (Sun)
+-18000,
+0,
+'CST',
+    ],
+    [
+64066482000, #    utc_start 2031-03-09 05:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066467600, #  local_start 2031-03-09 01:00:00 (Sun)
+64087030800, #    local_end 2031-11-02 01:00:00 (Sun)
+-14400,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 70 }
+sub has_dst_changes { 71 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1351,17 +1369,6 @@ my $last_observance = bless( {
 sub _last_observance { $last_observance }
 
 my $rules = [
-  bless( {
-    'at' => '0:00s',
-    'from' => '2012',
-    'in' => 'Nov',
-    'letter' => 'S',
-    'name' => 'Cuba',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '0:00s',
     'from' => '2013',
@@ -1372,6 +1379,17 @@ my $rules = [
     'on' => 'Sun>=8',
     'save' => '1:00',
     'to' => 'max'
+  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
+  bless( {
+    'at' => '0:00s',
+    'from' => '2012',
+    'in' => 'Nov',
+    'letter' => 'S',
+    'name' => 'Cuba',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
+    'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
 ;
diff --git a/lib/DateTime/TimeZone/America/Hermosillo.pm b/lib/DateTime/TimeZone/America/Hermosillo.pm
index 48a04847..410e074b 100644
--- a/lib/DateTime/TimeZone/America/Hermosillo.pm
+++ b/lib/DateTime/TimeZone/America/Hermosillo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -174,11 +174,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Indiana/Indianapolis.pm b/lib/DateTime/TimeZone/America/Indiana/Indianapolis.pm
index 1acbf624..f47c0bc7 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Indianapolis.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Indianapolis.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -836,15 +836,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 41 }
+sub has_dst_changes { 42 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Indiana/Knox.pm b/lib/DateTime/TimeZone/America/Indiana/Knox.pm
index 59081003..66ff7cba 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Knox.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Knox.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1286,15 +1286,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 69 }
+sub has_dst_changes { 70 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1345,23 +1363,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Marengo.pm b/lib/DateTime/TimeZone/America/Indiana/Marengo.pm
index 15d697c6..df13529b 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Marengo.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Marengo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -854,15 +854,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 44 }
+sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -913,23 +931,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Petersburg.pm b/lib/DateTime/TimeZone/America/Indiana/Petersburg.pm
index 06542e92..be097419 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Petersburg.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Petersburg.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -944,15 +944,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 50 }
+sub has_dst_changes { 51 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1003,23 +1021,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Tell_City.pm b/lib/DateTime/TimeZone/America/Indiana/Tell_City.pm
index e1624c85..94e9cf54 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Tell_City.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Tell_City.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -791,15 +791,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 41 }
+sub has_dst_changes { 42 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -850,23 +868,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Vevay.pm b/lib/DateTime/TimeZone/America/Indiana/Vevay.pm
index c12c9082..bf084bfe 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Vevay.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Vevay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -647,15 +647,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 33 }
+sub has_dst_changes { 34 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -706,23 +724,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Vincennes.pm b/lib/DateTime/TimeZone/America/Indiana/Vincennes.pm
index de1e4793..6662e574 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Vincennes.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Vincennes.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -827,15 +827,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 43 }
+sub has_dst_changes { 44 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -886,23 +904,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Indiana/Winamac.pm b/lib/DateTime/TimeZone/America/Indiana/Winamac.pm
index c587f828..5ffc2e5d 100644
--- a/lib/DateTime/TimeZone/America/Indiana/Winamac.pm
+++ b/lib/DateTime/TimeZone/America/Indiana/Winamac.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -881,15 +881,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 46 }
+sub has_dst_changes { 47 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -940,23 +958,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Inuvik.pm b/lib/DateTime/TimeZone/America/Inuvik.pm
index a2232889..bf9675af 100644
--- a/lib/DateTime/TimeZone/America/Inuvik.pm
+++ b/lib/DateTime/TimeZone/America/Inuvik.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -980,15 +980,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Iqaluit.pm b/lib/DateTime/TimeZone/America/Iqaluit.pm
index 220ef3af..103fa330 100644
--- a/lib/DateTime/TimeZone/America/Iqaluit.pm
+++ b/lib/DateTime/TimeZone/America/Iqaluit.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -980,15 +980,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1039,23 +1057,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Jamaica.pm b/lib/DateTime/TimeZone/America/Jamaica.pm
index c3736347..97ca1182 100644
--- a/lib/DateTime/TimeZone/America/Jamaica.pm
+++ b/lib/DateTime/TimeZone/America/Jamaica.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -246,11 +246,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 10 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Juneau.pm b/lib/DateTime/TimeZone/America/Juneau.pm
index e1abb119..ba2a7dcf 100644
--- a/lib/DateTime/TimeZone/America/Juneau.pm
+++ b/lib/DateTime/TimeZone/America/Juneau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1214,15 +1214,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1273,23 +1291,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Kentucky/Louisville.pm b/lib/DateTime/TimeZone/America/Kentucky/Louisville.pm
index 0a9e74e7..e18f762a 100644
--- a/lib/DateTime/TimeZone/America/Kentucky/Louisville.pm
+++ b/lib/DateTime/TimeZone/America/Kentucky/Louisville.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1529,15 +1529,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 82 }
+sub has_dst_changes { 83 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1588,23 +1606,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Kentucky/Monticello.pm b/lib/DateTime/TimeZone/America/Kentucky/Monticello.pm
index ef5b6b22..7d06be73 100644
--- a/lib/DateTime/TimeZone/America/Kentucky/Monticello.pm
+++ b/lib/DateTime/TimeZone/America/Kentucky/Monticello.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1241,15 +1241,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 67 }
+sub has_dst_changes { 68 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1300,23 +1318,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/La_Paz.pm b/lib/DateTime/TimeZone/America/La_Paz.pm
index d7d15d7b..cec0646a 100644
--- a/lib/DateTime/TimeZone/America/La_Paz.pm
+++ b/lib/DateTime/TimeZone/America/La_Paz.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Lima.pm b/lib/DateTime/TimeZone/America/Lima.pm
index ad4b3df1..b22f7752 100644
--- a/lib/DateTime/TimeZone/America/Lima.pm
+++ b/lib/DateTime/TimeZone/America/Lima.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -174,11 +174,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 7 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Los_Angeles.pm b/lib/DateTime/TimeZone/America/Los_Angeles.pm
index 24f1a15b..fb6d6b71 100644
--- a/lib/DateTime/TimeZone/America/Los_Angeles.pm
+++ b/lib/DateTime/TimeZone/America/Los_Angeles.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1583,15 +1583,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -25200,
 1,
+'PDT',
+    ],
+    [
+64055610000, #    utc_start 2030-11-03 09:00:00 (Sun)
+64066500000, #      utc_end 2031-03-09 10:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-28800,
+0,
+'PST',
+    ],
+    [
+64066500000, #    utc_start 2031-03-09 10:00:00 (Sun)
+64087059600, #      utc_end 2031-11-02 09:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-25200,
+1,
 'PDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 86 }
+sub has_dst_changes { 87 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Maceio.pm b/lib/DateTime/TimeZone/America/Maceio.pm
index cd02cd1c..307c8942 100644
--- a/lib/DateTime/TimeZone/America/Maceio.pm
+++ b/lib/DateTime/TimeZone/America/Maceio.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -453,11 +453,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 20 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Managua.pm b/lib/DateTime/TimeZone/America/Managua.pm
index 8d8cca31..9a4d0574 100644
--- a/lib/DateTime/TimeZone/America/Managua.pm
+++ b/lib/DateTime/TimeZone/America/Managua.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -174,11 +174,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Manaus.pm b/lib/DateTime/TimeZone/America/Manaus.pm
index 306c38a4..8c89c48f 100644
--- a/lib/DateTime/TimeZone/America/Manaus.pm
+++ b/lib/DateTime/TimeZone/America/Manaus.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -336,11 +336,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 15 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Martinique.pm b/lib/DateTime/TimeZone/America/Martinique.pm
index 47528130..0ee322fa 100644
--- a/lib/DateTime/TimeZone/America/Martinique.pm
+++ b/lib/DateTime/TimeZone/America/Martinique.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Matamoros.pm b/lib/DateTime/TimeZone/America/Matamoros.pm
index 978938ef..fbd542ac 100644
--- a/lib/DateTime/TimeZone/America/Matamoros.pm
+++ b/lib/DateTime/TimeZone/America/Matamoros.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -701,15 +701,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 36 }
+sub has_dst_changes { 37 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Mazatlan.pm b/lib/DateTime/TimeZone/America/Mazatlan.pm
index 91c1513c..740e2e06 100644
--- a/lib/DateTime/TimeZone/America/Mazatlan.pm
+++ b/lib/DateTime/TimeZone/America/Mazatlan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -728,15 +728,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055001600, #    utc_start 2030-10-27 08:00:00 (Sun)
+64068915600, #      utc_end 2031-04-06 09:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64068915600, #    utc_start 2031-04-06 09:00:00 (Sun)
+64086451200, #      utc_end 2031-10-26 08:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -787,23 +805,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2002',
-    'in' => 'Apr',
-    'letter' => 'D',
+    'in' => 'Oct',
+    'letter' => 'S',
     'name' => 'Mexico',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=1',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'lastSun',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2002',
-    'in' => 'Oct',
-    'letter' => 'S',
+    'in' => 'Apr',
+    'letter' => 'D',
     'name' => 'Mexico',
-    'offset_from_std' => 0,
-    'on' => 'lastSun',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=1',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Menominee.pm b/lib/DateTime/TimeZone/America/Menominee.pm
index 8fa34f86..62eb7fe6 100644
--- a/lib/DateTime/TimeZone/America/Menominee.pm
+++ b/lib/DateTime/TimeZone/America/Menominee.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1187,15 +1187,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1246,23 +1264,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Merida.pm b/lib/DateTime/TimeZone/America/Merida.pm
index 730713b7..5d4c420a 100644
--- a/lib/DateTime/TimeZone/America/Merida.pm
+++ b/lib/DateTime/TimeZone/America/Merida.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -674,15 +674,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64054998000, #    utc_start 2030-10-27 07:00:00 (Sun)
+64068912000, #      utc_end 2031-04-06 08:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64068912000, #    utc_start 2031-04-06 08:00:00 (Sun)
+64086447600, #      utc_end 2031-10-26 07:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -733,23 +751,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2002',
-    'in' => 'Apr',
-    'letter' => 'D',
+    'in' => 'Oct',
+    'letter' => 'S',
     'name' => 'Mexico',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=1',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'lastSun',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2002',
-    'in' => 'Oct',
-    'letter' => 'S',
+    'in' => 'Apr',
+    'letter' => 'D',
     'name' => 'Mexico',
-    'offset_from_std' => 0,
-    'on' => 'lastSun',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=1',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Metlakatla.pm b/lib/DateTime/TimeZone/America/Metlakatla.pm
index 0d418a74..2f6e711e 100644
--- a/lib/DateTime/TimeZone/America/Metlakatla.pm
+++ b/lib/DateTime/TimeZone/America/Metlakatla.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -647,15 +647,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 32 }
+sub has_dst_changes { 33 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Mexico_City.pm b/lib/DateTime/TimeZone/America/Mexico_City.pm
index 2eafca98..d358703a 100644
--- a/lib/DateTime/TimeZone/America/Mexico_City.pm
+++ b/lib/DateTime/TimeZone/America/Mexico_City.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -782,15 +782,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64054998000, #    utc_start 2030-10-27 07:00:00 (Sun)
+64068912000, #      utc_end 2031-04-06 08:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64068912000, #    utc_start 2031-04-06 08:00:00 (Sun)
+64086447600, #      utc_end 2031-10-26 07:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 39 }
+sub has_dst_changes { 40 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Miquelon.pm b/lib/DateTime/TimeZone/America/Miquelon.pm
index a326eda5..4f113f42 100644
--- a/lib/DateTime/TimeZone/America/Miquelon.pm
+++ b/lib/DateTime/TimeZone/America/Miquelon.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -836,15 +836,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -7200,
 1,
+'-02',
+    ],
+    [
+64055592000, #    utc_start 2030-11-03 04:00:00 (Sun)
+64066482000, #      utc_end 2031-03-09 05:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-10800,
+0,
+'-03',
+    ],
+    [
+64066482000, #    utc_start 2031-03-09 05:00:00 (Sun)
+64087041600, #      utc_end 2031-11-02 04:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-7200,
+1,
 '-02',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 44 }
+sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Moncton.pm b/lib/DateTime/TimeZone/America/Moncton.pm
index be31907e..29509ad5 100644
--- a/lib/DateTime/TimeZone/America/Moncton.pm
+++ b/lib/DateTime/TimeZone/America/Moncton.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1808,15 +1808,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 96 }
+sub has_dst_changes { 97 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1867,23 +1885,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Monterrey.pm b/lib/DateTime/TimeZone/America/Monterrey.pm
index 92b506b1..c663ab37 100644
--- a/lib/DateTime/TimeZone/America/Monterrey.pm
+++ b/lib/DateTime/TimeZone/America/Monterrey.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -692,15 +692,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64054998000, #    utc_start 2030-10-27 07:00:00 (Sun)
+64068912000, #      utc_end 2031-04-06 08:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64068912000, #    utc_start 2031-04-06 08:00:00 (Sun)
+64086447600, #      utc_end 2031-10-26 07:00:00 (Sun)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 36 }
+sub has_dst_changes { 37 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Montevideo.pm b/lib/DateTime/TimeZone/America/Montevideo.pm
index fa6efdf1..667e88c5 100644
--- a/lib/DateTime/TimeZone/America/Montevideo.pm
+++ b/lib/DateTime/TimeZone/America/Montevideo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -840,11 +840,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 43 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Nassau.pm b/lib/DateTime/TimeZone/America/Nassau.pm
index d1553c09..5d5e4c93 100644
--- a/lib/DateTime/TimeZone/America/Nassau.pm
+++ b/lib/DateTime/TimeZone/America/Nassau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1241,15 +1241,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 67 }
+sub has_dst_changes { 68 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1300,23 +1318,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/New_York.pm b/lib/DateTime/TimeZone/America/New_York.pm
index 0f0f01bc..ba9cbeab 100644
--- a/lib/DateTime/TimeZone/America/New_York.pm
+++ b/lib/DateTime/TimeZone/America/New_York.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -2051,15 +2051,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 111 }
+sub has_dst_changes { 112 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Nipigon.pm b/lib/DateTime/TimeZone/America/Nipigon.pm
index c2ce6de8..ca11bd2d 100644
--- a/lib/DateTime/TimeZone/America/Nipigon.pm
+++ b/lib/DateTime/TimeZone/America/Nipigon.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1106,15 +1106,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 61 }
+sub has_dst_changes { 62 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1165,23 +1183,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Nome.pm b/lib/DateTime/TimeZone/America/Nome.pm
index 709c0f89..a1f3220b 100644
--- a/lib/DateTime/TimeZone/America/Nome.pm
+++ b/lib/DateTime/TimeZone/America/Nome.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1223,15 +1223,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1282,23 +1300,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Noronha.pm b/lib/DateTime/TimeZone/America/Noronha.pm
index b238e89e..94a35170 100644
--- a/lib/DateTime/TimeZone/America/Noronha.pm
+++ b/lib/DateTime/TimeZone/America/Noronha.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -417,11 +417,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 19 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/North_Dakota/Beulah.pm b/lib/DateTime/TimeZone/America/North_Dakota/Beulah.pm
index 4d9db3ae..6c5f2d38 100644
--- a/lib/DateTime/TimeZone/America/North_Dakota/Beulah.pm
+++ b/lib/DateTime/TimeZone/America/North_Dakota/Beulah.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1241,15 +1241,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/North_Dakota/Center.pm b/lib/DateTime/TimeZone/America/North_Dakota/Center.pm
index d513cdb8..7c0d701c 100644
--- a/lib/DateTime/TimeZone/America/North_Dakota/Center.pm
+++ b/lib/DateTime/TimeZone/America/North_Dakota/Center.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1241,15 +1241,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1300,23 +1318,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/North_Dakota/New_Salem.pm b/lib/DateTime/TimeZone/America/North_Dakota/New_Salem.pm
index 3dd4ac92..4d52381b 100644
--- a/lib/DateTime/TimeZone/America/North_Dakota/New_Salem.pm
+++ b/lib/DateTime/TimeZone/America/North_Dakota/New_Salem.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1241,15 +1241,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1300,23 +1318,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Godthab.pm b/lib/DateTime/TimeZone/America/Nuuk.pm
similarity index 97%
rename from lib/DateTime/TimeZone/America/Godthab.pm
rename to lib/DateTime/TimeZone/America/Nuuk.pm
index d2d7d39e..7a4e34a9 100644
--- a/lib/DateTime/TimeZone/America/Godthab.pm
+++ b/lib/DateTime/TimeZone/America/Nuuk.pm
@@ -3,19 +3,19 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
-package DateTime::TimeZone::America::Godthab;
-$DateTime::TimeZone::America::Godthab::VERSION = '1.75';
+package DateTime::TimeZone::America::Nuuk;
+$DateTime::TimeZone::America::Nuuk::VERSION = '1.75';
 use strict;
 
 use Class::Singleton 1.03;
 use DateTime::TimeZone;
 use DateTime::TimeZone::OlsonDB;
 
-@DateTime::TimeZone::America::Godthab::ISA = ( 'Class::Singleton', 'DateTime::TimeZone' );
+@DateTime::TimeZone::America::Nuuk::ISA = ( 'Class::Singleton', 'DateTime::TimeZone' );
 
 my $spans =
 [
@@ -944,15 +944,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054969200, #    local_end 2030-10-26 23:00:00 (Sat)
 -7200,
 1,
+'-02',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054965600, #  local_start 2030-10-26 22:00:00 (Sat)
+64068271200, #    local_end 2031-03-29 22:00:00 (Sat)
+-10800,
+0,
+'-03',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068274800, #  local_start 2031-03-29 23:00:00 (Sat)
+64086418800, #    local_end 2031-10-25 23:00:00 (Sat)
+-7200,
+1,
 '-02',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 51 }
+sub has_dst_changes { 52 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1002,24 +1020,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Ojinaga.pm b/lib/DateTime/TimeZone/America/Ojinaga.pm
index 1eae7445..940f2d1a 100644
--- a/lib/DateTime/TimeZone/America/Ojinaga.pm
+++ b/lib/DateTime/TimeZone/America/Ojinaga.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -728,15 +728,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Panama.pm b/lib/DateTime/TimeZone/America/Panama.pm
index 6728dace..a365a7fb 100644
--- a/lib/DateTime/TimeZone/America/Panama.pm
+++ b/lib/DateTime/TimeZone/America/Panama.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Pangnirtung.pm b/lib/DateTime/TimeZone/America/Pangnirtung.pm
index 18211986..60bb74c6 100644
--- a/lib/DateTime/TimeZone/America/Pangnirtung.pm
+++ b/lib/DateTime/TimeZone/America/Pangnirtung.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -989,15 +989,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1048,23 +1066,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Paramaribo.pm b/lib/DateTime/TimeZone/America/Paramaribo.pm
index 64b354ae..46234ce3 100644
--- a/lib/DateTime/TimeZone/America/Paramaribo.pm
+++ b/lib/DateTime/TimeZone/America/Paramaribo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Phoenix.pm b/lib/DateTime/TimeZone/America/Phoenix.pm
index eda260d8..9b6f1016 100644
--- a/lib/DateTime/TimeZone/America/Phoenix.pm
+++ b/lib/DateTime/TimeZone/America/Phoenix.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -147,11 +147,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 5 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Port_au_Prince.pm b/lib/DateTime/TimeZone/America/Port_au_Prince.pm
index 189636b2..461c6a19 100644
--- a/lib/DateTime/TimeZone/America/Port_au_Prince.pm
+++ b/lib/DateTime/TimeZone/America/Port_au_Prince.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -665,15 +665,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 35 }
+sub has_dst_changes { 36 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -724,23 +742,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2017',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Haiti',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2017',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Haiti',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Port_of_Spain.pm b/lib/DateTime/TimeZone/America/Port_of_Spain.pm
index 0edf7f0a..4dbb8538 100644
--- a/lib/DateTime/TimeZone/America/Port_of_Spain.pm
+++ b/lib/DateTime/TimeZone/America/Port_of_Spain.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Porto_Velho.pm b/lib/DateTime/TimeZone/America/Porto_Velho.pm
index 00cc652a..36bfd71b 100644
--- a/lib/DateTime/TimeZone/America/Porto_Velho.pm
+++ b/lib/DateTime/TimeZone/America/Porto_Velho.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -300,11 +300,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Puerto_Rico.pm b/lib/DateTime/TimeZone/America/Puerto_Rico.pm
index 281a7f12..5f4963af 100644
--- a/lib/DateTime/TimeZone/America/Puerto_Rico.pm
+++ b/lib/DateTime/TimeZone/America/Puerto_Rico.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Punta_Arenas.pm b/lib/DateTime/TimeZone/America/Punta_Arenas.pm
index 3e0c3d79..42b853a3 100644
--- a/lib/DateTime/TimeZone/America/Punta_Arenas.pm
+++ b/lib/DateTime/TimeZone/America/Punta_Arenas.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1074,11 +1074,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Rainy_River.pm b/lib/DateTime/TimeZone/America/Rainy_River.pm
index a6e9b915..b9d2a4cd 100644
--- a/lib/DateTime/TimeZone/America/Rainy_River.pm
+++ b/lib/DateTime/TimeZone/America/Rainy_River.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1106,15 +1106,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 61 }
+sub has_dst_changes { 62 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1165,23 +1183,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Rankin_Inlet.pm b/lib/DateTime/TimeZone/America/Rankin_Inlet.pm
index 88a57ccd..f28879e5 100644
--- a/lib/DateTime/TimeZone/America/Rankin_Inlet.pm
+++ b/lib/DateTime/TimeZone/America/Rankin_Inlet.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -962,15 +962,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1021,23 +1039,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Recife.pm b/lib/DateTime/TimeZone/America/Recife.pm
index f3a42d31..53fec5bb 100644
--- a/lib/DateTime/TimeZone/America/Recife.pm
+++ b/lib/DateTime/TimeZone/America/Recife.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -417,11 +417,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 19 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Regina.pm b/lib/DateTime/TimeZone/America/Regina.pm
index 10c19f93..3e6c0234 100644
--- a/lib/DateTime/TimeZone/America/Regina.pm
+++ b/lib/DateTime/TimeZone/America/Regina.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -507,11 +507,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 26 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Resolute.pm b/lib/DateTime/TimeZone/America/Resolute.pm
index dda2cfd6..ad99a079 100644
--- a/lib/DateTime/TimeZone/America/Resolute.pm
+++ b/lib/DateTime/TimeZone/America/Resolute.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -962,15 +962,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1021,23 +1039,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Rio_Branco.pm b/lib/DateTime/TimeZone/America/Rio_Branco.pm
index 6021ff56..bcb9b087 100644
--- a/lib/DateTime/TimeZone/America/Rio_Branco.pm
+++ b/lib/DateTime/TimeZone/America/Rio_Branco.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -318,11 +318,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Santarem.pm b/lib/DateTime/TimeZone/America/Santarem.pm
index cf95e39f..0b04187b 100644
--- a/lib/DateTime/TimeZone/America/Santarem.pm
+++ b/lib/DateTime/TimeZone/America/Santarem.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -309,11 +309,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Santiago.pm b/lib/DateTime/TimeZone/America/Santiago.pm
index 2aced831..9f09ab9f 100644
--- a/lib/DateTime/TimeZone/America/Santiago.pm
+++ b/lib/DateTime/TimeZone/America/Santiago.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1322,15 +1322,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64050739200, #    local_end 2030-09-08 00:00:00 (Sun)
 -14400,
 0,
+'-04',
+    ],
+    [
+64050753600, #    utc_start 2030-09-08 04:00:00 (Sun)
+64068894000, #      utc_end 2031-04-06 03:00:00 (Sun)
+64050742800, #  local_start 2030-09-08 01:00:00 (Sun)
+64068883200, #    local_end 2031-04-06 00:00:00 (Sun)
+-10800,
+1,
+'-03',
+    ],
+    [
+64068894000, #    utc_start 2031-04-06 03:00:00 (Sun)
+64082203200, #      utc_end 2031-09-07 04:00:00 (Sun)
+64068879600, #  local_start 2031-04-05 23:00:00 (Sat)
+64082188800, #    local_end 2031-09-07 00:00:00 (Sun)
+-14400,
+0,
 '-04',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1379,25 +1397,25 @@ sub _last_observance { $last_observance }
 
 my $rules = [
   bless( {
-    'at' => '3:00u',
+    'at' => '4:00u',
     'from' => '2019',
-    'in' => 'Apr',
+    'in' => 'Sep',
     'letter' => '',
     'name' => 'Chile',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'Sun>=2',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
-    'at' => '4:00u',
+    'at' => '3:00u',
     'from' => '2019',
-    'in' => 'Sep',
+    'in' => 'Apr',
     'letter' => '',
     'name' => 'Chile',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'Sun>=2',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Santo_Domingo.pm b/lib/DateTime/TimeZone/America/Santo_Domingo.pm
index 263bd401..8b005408 100644
--- a/lib/DateTime/TimeZone/America/Santo_Domingo.pm
+++ b/lib/DateTime/TimeZone/America/Santo_Domingo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -183,11 +183,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 6 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Sao_Paulo.pm b/lib/DateTime/TimeZone/America/Sao_Paulo.pm
index de5c97db..35fe68d7 100644
--- a/lib/DateTime/TimeZone/America/Sao_Paulo.pm
+++ b/lib/DateTime/TimeZone/America/Sao_Paulo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -858,11 +858,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 46 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Scoresbysund.pm b/lib/DateTime/TimeZone/America/Scoresbysund.pm
index 8f806b4a..acbe41dc 100644
--- a/lib/DateTime/TimeZone/America/Scoresbysund.pm
+++ b/lib/DateTime/TimeZone/America/Scoresbysund.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -944,15 +944,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054976400, #    local_end 2030-10-27 01:00:00 (Sun)
 0,
 1,
+'+00',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054972800, #  local_start 2030-10-27 00:00:00 (Sun)
+64068278400, #    local_end 2031-03-30 00:00:00 (Sun)
+-3600,
+0,
+'-01',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068282000, #  local_start 2031-03-30 01:00:00 (Sun)
+64086426000, #    local_end 2031-10-26 01:00:00 (Sun)
+0,
+1,
 '+00',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 51 }
+sub has_dst_changes { 52 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Sitka.pm b/lib/DateTime/TimeZone/America/Sitka.pm
index dd0388a6..6b57a75e 100644
--- a/lib/DateTime/TimeZone/America/Sitka.pm
+++ b/lib/DateTime/TimeZone/America/Sitka.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1214,15 +1214,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/St_Johns.pm b/lib/DateTime/TimeZone/America/St_Johns.pm
index 781df983..0e5fd34c 100644
--- a/lib/DateTime/TimeZone/America/St_Johns.pm
+++ b/lib/DateTime/TimeZone/America/St_Johns.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -2078,15 +2078,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -9000,
 1,
+'NDT',
+    ],
+    [
+64055593800, #    utc_start 2030-11-03 04:30:00 (Sun)
+64066483800, #      utc_end 2031-03-09 05:30:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-12600,
+0,
+'NST',
+    ],
+    [
+64066483800, #    utc_start 2031-03-09 05:30:00 (Sun)
+64087043400, #      utc_end 2031-11-02 04:30:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-9000,
+1,
 'NDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 113 }
+sub has_dst_changes { 114 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Swift_Current.pm b/lib/DateTime/TimeZone/America/Swift_Current.pm
index 73783b33..2d79e9bd 100644
--- a/lib/DateTime/TimeZone/America/Swift_Current.pm
+++ b/lib/DateTime/TimeZone/America/Swift_Current.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -246,11 +246,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 11 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Tegucigalpa.pm b/lib/DateTime/TimeZone/America/Tegucigalpa.pm
index 96f86c69..36de7384 100644
--- a/lib/DateTime/TimeZone/America/Tegucigalpa.pm
+++ b/lib/DateTime/TimeZone/America/Tegucigalpa.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Thule.pm b/lib/DateTime/TimeZone/America/Thule.pm
index 4f8eb264..601ced45 100644
--- a/lib/DateTime/TimeZone/America/Thule.pm
+++ b/lib/DateTime/TimeZone/America/Thule.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -746,15 +746,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 40 }
+sub has_dst_changes { 41 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -805,23 +823,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Thule',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Thule',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Thunder_Bay.pm b/lib/DateTime/TimeZone/America/Thunder_Bay.pm
index 373dfb1f..a5dfddef 100644
--- a/lib/DateTime/TimeZone/America/Thunder_Bay.pm
+++ b/lib/DateTime/TimeZone/America/Thunder_Bay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1178,15 +1178,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 62 }
+sub has_dst_changes { 63 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Tijuana.pm b/lib/DateTime/TimeZone/America/Tijuana.pm
index f685c920..880cb342 100644
--- a/lib/DateTime/TimeZone/America/Tijuana.pm
+++ b/lib/DateTime/TimeZone/America/Tijuana.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1295,15 +1295,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -25200,
 1,
+'PDT',
+    ],
+    [
+64055610000, #    utc_start 2030-11-03 09:00:00 (Sun)
+64066500000, #      utc_end 2031-03-09 10:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-28800,
+0,
+'PST',
+    ],
+    [
+64066500000, #    utc_start 2031-03-09 10:00:00 (Sun)
+64087059600, #      utc_end 2031-11-02 09:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-25200,
+1,
 'PDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 66 }
+sub has_dst_changes { 67 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Toronto.pm b/lib/DateTime/TimeZone/America/Toronto.pm
index fe1f02a8..aa0481aa 100644
--- a/lib/DateTime/TimeZone/America/Toronto.pm
+++ b/lib/DateTime/TimeZone/America/Toronto.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -2015,15 +2015,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 110 }
+sub has_dst_changes { 111 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -2074,23 +2092,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Vancouver.pm b/lib/DateTime/TimeZone/America/Vancouver.pm
index 5be13544..df3e5495 100644
--- a/lib/DateTime/TimeZone/America/Vancouver.pm
+++ b/lib/DateTime/TimeZone/America/Vancouver.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1610,15 +1610,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -25200,
 1,
+'PDT',
+    ],
+    [
+64055610000, #    utc_start 2030-11-03 09:00:00 (Sun)
+64066500000, #      utc_end 2031-03-09 10:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-28800,
+0,
+'PST',
+    ],
+    [
+64066500000, #    utc_start 2031-03-09 10:00:00 (Sun)
+64087059600, #      utc_end 2031-11-02 09:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-25200,
+1,
 'PDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 88 }
+sub has_dst_changes { 89 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1669,23 +1687,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/America/Whitehorse.pm b/lib/DateTime/TimeZone/America/Whitehorse.pm
index cf82c48e..b796e138 100644
--- a/lib/DateTime/TimeZone/America/Whitehorse.pm
+++ b/lib/DateTime/TimeZone/America/Whitehorse.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -858,272 +858,26 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 63719344800, #    utc_start 2020-03-08 10:00:00 (Sun)
-63739904400, #      utc_end 2020-11-01 09:00:00 (Sun)
+DateTime::TimeZone::INFINITY, #      utc_end
 63719319600, #  local_start 2020-03-08 03:00:00 (Sun)
-63739879200, #    local_end 2020-11-01 02:00:00 (Sun)
+DateTime::TimeZone::INFINITY, #    local_end
 -25200,
-1,
-'PDT',
-    ],
-    [
-63739904400, #    utc_start 2020-11-01 09:00:00 (Sun)
-63751399200, #      utc_end 2021-03-14 10:00:00 (Sun)
-63739875600, #  local_start 2020-11-01 01:00:00 (Sun)
-63751370400, #    local_end 2021-03-14 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63751399200, #    utc_start 2021-03-14 10:00:00 (Sun)
-63771958800, #      utc_end 2021-11-07 09:00:00 (Sun)
-63751374000, #  local_start 2021-03-14 03:00:00 (Sun)
-63771933600, #    local_end 2021-11-07 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63771958800, #    utc_start 2021-11-07 09:00:00 (Sun)
-63782848800, #      utc_end 2022-03-13 10:00:00 (Sun)
-63771930000, #  local_start 2021-11-07 01:00:00 (Sun)
-63782820000, #    local_end 2022-03-13 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63782848800, #    utc_start 2022-03-13 10:00:00 (Sun)
-63803408400, #      utc_end 2022-11-06 09:00:00 (Sun)
-63782823600, #  local_start 2022-03-13 03:00:00 (Sun)
-63803383200, #    local_end 2022-11-06 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63803408400, #    utc_start 2022-11-06 09:00:00 (Sun)
-63814298400, #      utc_end 2023-03-12 10:00:00 (Sun)
-63803379600, #  local_start 2022-11-06 01:00:00 (Sun)
-63814269600, #    local_end 2023-03-12 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63814298400, #    utc_start 2023-03-12 10:00:00 (Sun)
-63834858000, #      utc_end 2023-11-05 09:00:00 (Sun)
-63814273200, #  local_start 2023-03-12 03:00:00 (Sun)
-63834832800, #    local_end 2023-11-05 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63834858000, #    utc_start 2023-11-05 09:00:00 (Sun)
-63845748000, #      utc_end 2024-03-10 10:00:00 (Sun)
-63834829200, #  local_start 2023-11-05 01:00:00 (Sun)
-63845719200, #    local_end 2024-03-10 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63845748000, #    utc_start 2024-03-10 10:00:00 (Sun)
-63866307600, #      utc_end 2024-11-03 09:00:00 (Sun)
-63845722800, #  local_start 2024-03-10 03:00:00 (Sun)
-63866282400, #    local_end 2024-11-03 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63866307600, #    utc_start 2024-11-03 09:00:00 (Sun)
-63877197600, #      utc_end 2025-03-09 10:00:00 (Sun)
-63866278800, #  local_start 2024-11-03 01:00:00 (Sun)
-63877168800, #    local_end 2025-03-09 02:00:00 (Sun)
--28800,
 0,
-'PST',
-    ],
-    [
-63877197600, #    utc_start 2025-03-09 10:00:00 (Sun)
-63897757200, #      utc_end 2025-11-02 09:00:00 (Sun)
-63877172400, #  local_start 2025-03-09 03:00:00 (Sun)
-63897732000, #    local_end 2025-11-02 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63897757200, #    utc_start 2025-11-02 09:00:00 (Sun)
-63908647200, #      utc_end 2026-03-08 10:00:00 (Sun)
-63897728400, #  local_start 2025-11-02 01:00:00 (Sun)
-63908618400, #    local_end 2026-03-08 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63908647200, #    utc_start 2026-03-08 10:00:00 (Sun)
-63929206800, #      utc_end 2026-11-01 09:00:00 (Sun)
-63908622000, #  local_start 2026-03-08 03:00:00 (Sun)
-63929181600, #    local_end 2026-11-01 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63929206800, #    utc_start 2026-11-01 09:00:00 (Sun)
-63940701600, #      utc_end 2027-03-14 10:00:00 (Sun)
-63929178000, #  local_start 2026-11-01 01:00:00 (Sun)
-63940672800, #    local_end 2027-03-14 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63940701600, #    utc_start 2027-03-14 10:00:00 (Sun)
-63961261200, #      utc_end 2027-11-07 09:00:00 (Sun)
-63940676400, #  local_start 2027-03-14 03:00:00 (Sun)
-63961236000, #    local_end 2027-11-07 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63961261200, #    utc_start 2027-11-07 09:00:00 (Sun)
-63972151200, #      utc_end 2028-03-12 10:00:00 (Sun)
-63961232400, #  local_start 2027-11-07 01:00:00 (Sun)
-63972122400, #    local_end 2028-03-12 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-63972151200, #    utc_start 2028-03-12 10:00:00 (Sun)
-63992710800, #      utc_end 2028-11-05 09:00:00 (Sun)
-63972126000, #  local_start 2028-03-12 03:00:00 (Sun)
-63992685600, #    local_end 2028-11-05 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-63992710800, #    utc_start 2028-11-05 09:00:00 (Sun)
-64003600800, #      utc_end 2029-03-11 10:00:00 (Sun)
-63992682000, #  local_start 2028-11-05 01:00:00 (Sun)
-64003572000, #    local_end 2029-03-11 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-64003600800, #    utc_start 2029-03-11 10:00:00 (Sun)
-64024160400, #      utc_end 2029-11-04 09:00:00 (Sun)
-64003575600, #  local_start 2029-03-11 03:00:00 (Sun)
-64024135200, #    local_end 2029-11-04 02:00:00 (Sun)
--25200,
-1,
-'PDT',
-    ],
-    [
-64024160400, #    utc_start 2029-11-04 09:00:00 (Sun)
-64035050400, #      utc_end 2030-03-10 10:00:00 (Sun)
-64024131600, #  local_start 2029-11-04 01:00:00 (Sun)
-64035021600, #    local_end 2030-03-10 02:00:00 (Sun)
--28800,
-0,
-'PST',
-    ],
-    [
-64035050400, #    utc_start 2030-03-10 10:00:00 (Sun)
-64055610000, #      utc_end 2030-11-03 09:00:00 (Sun)
-64035025200, #  local_start 2030-03-10 03:00:00 (Sun)
-64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
--25200,
-1,
-'PDT',
+'MST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 56 }
+sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
     return shift->_init( @_, spans => $spans );
 }
 
-sub _last_offset { -28800 }
-
-my $last_observance = bless( {
-  'format' => 'P%sT',
-  'gmtoff' => '-8:00',
-  'local_start_datetime' => bless( {
-    'formatter' => undef,
-    'local_rd_days' => 722815,
-    'local_rd_secs' => 0,
-    'offset_modifier' => 0,
-    'rd_nanosecs' => 0,
-    'tz' => bless( {
-      'name' => 'floating',
-      'offset' => 0
-    }, 'DateTime::TimeZone::Floating' ),
-    'utc_rd_days' => 722815,
-    'utc_rd_secs' => 0,
-    'utc_year' => 1981
-  }, 'DateTime' ),
-  'offset_from_std' => 0,
-  'offset_from_utc' => -28800,
-  'until' => [],
-  'utc_start_datetime' => bless( {
-    'formatter' => undef,
-    'local_rd_days' => 722815,
-    'local_rd_secs' => 28800,
-    'offset_modifier' => 0,
-    'rd_nanosecs' => 0,
-    'tz' => bless( {
-      'name' => 'floating',
-      'offset' => 0
-    }, 'DateTime::TimeZone::Floating' ),
-    'utc_rd_days' => 722815,
-    'utc_rd_secs' => 28800,
-    'utc_year' => 1981
-  }, 'DateTime' )
-}, 'DateTime::TimeZone::OlsonDB::Observance' )
-;
-sub _last_observance { $last_observance }
-
-my $rules = [
-  bless( {
-    'at' => '2:00',
-    'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
-    'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
-  bless( {
-    'at' => '2:00',
-    'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
-    'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' )
-]
-;
-sub _rules { $rules }
 
 
 1;
diff --git a/lib/DateTime/TimeZone/America/Winnipeg.pm b/lib/DateTime/TimeZone/America/Winnipeg.pm
index 38c9daec..cef1e19c 100644
--- a/lib/DateTime/TimeZone/America/Winnipeg.pm
+++ b/lib/DateTime/TimeZone/America/Winnipeg.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1574,15 +1574,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 86 }
+sub has_dst_changes { 87 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Yakutat.pm b/lib/DateTime/TimeZone/America/Yakutat.pm
index e8cbde49..46693b04 100644
--- a/lib/DateTime/TimeZone/America/Yakutat.pm
+++ b/lib/DateTime/TimeZone/America/Yakutat.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1214,15 +1214,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -28800,
 1,
+'AKDT',
+    ],
+    [
+64055613600, #    utc_start 2030-11-03 10:00:00 (Sun)
+64066503600, #      utc_end 2031-03-09 11:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-32400,
+0,
+'AKST',
+    ],
+    [
+64066503600, #    utc_start 2031-03-09 11:00:00 (Sun)
+64087063200, #      utc_end 2031-11-02 10:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-28800,
+1,
 'AKDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/America/Yellowknife.pm b/lib/DateTime/TimeZone/America/Yellowknife.pm
index 54d5cc8d..ad2a9fa4 100644
--- a/lib/DateTime/TimeZone/America/Yellowknife.pm
+++ b/lib/DateTime/TimeZone/America/Yellowknife.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -998,15 +998,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1057,23 +1075,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Canada',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'Canada',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Antarctica/Casey.pm b/lib/DateTime/TimeZone/Antarctica/Casey.pm
index c1703f77..a85c700c 100644
--- a/lib/DateTime/TimeZone/Antarctica/Casey.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Casey.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Davis.pm b/lib/DateTime/TimeZone/Antarctica/Davis.pm
index cdcc7dfc..1b0bcf53 100644
--- a/lib/DateTime/TimeZone/Antarctica/Davis.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Davis.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/DumontDUrville.pm b/lib/DateTime/TimeZone/Antarctica/DumontDUrville.pm
index 1d274921..bad7cb52 100644
--- a/lib/DateTime/TimeZone/Antarctica/DumontDUrville.pm
+++ b/lib/DateTime/TimeZone/Antarctica/DumontDUrville.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Macquarie.pm b/lib/DateTime/TimeZone/Antarctica/Macquarie.pm
index a192db1d..69bd1601 100644
--- a/lib/DateTime/TimeZone/Antarctica/Macquarie.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Macquarie.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -867,11 +867,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 45 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Mawson.pm b/lib/DateTime/TimeZone/Antarctica/Mawson.pm
index 9dbf61c7..c777d177 100644
--- a/lib/DateTime/TimeZone/Antarctica/Mawson.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Mawson.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Palmer.pm b/lib/DateTime/TimeZone/Antarctica/Palmer.pm
index 98fd772d..c411fa3c 100644
--- a/lib/DateTime/TimeZone/Antarctica/Palmer.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Palmer.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -768,11 +768,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 40 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Rothera.pm b/lib/DateTime/TimeZone/Antarctica/Rothera.pm
index b3a9d8fb..a2a8a6de 100644
--- a/lib/DateTime/TimeZone/Antarctica/Rothera.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Rothera.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Syowa.pm b/lib/DateTime/TimeZone/Antarctica/Syowa.pm
index 8da7aefb..c082c3b1 100644
--- a/lib/DateTime/TimeZone/Antarctica/Syowa.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Syowa.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Troll.pm b/lib/DateTime/TimeZone/Antarctica/Troll.pm
index e48a37cb..7b69a382 100644
--- a/lib/DateTime/TimeZone/Antarctica/Troll.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Troll.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -494,15 +494,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'+02',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'+00',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 '+02',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 26 }
+sub has_dst_changes { 27 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Antarctica/Vostok.pm b/lib/DateTime/TimeZone/Antarctica/Vostok.pm
index 5c481589..f5acdee3 100644
--- a/lib/DateTime/TimeZone/Antarctica/Vostok.pm
+++ b/lib/DateTime/TimeZone/Antarctica/Vostok.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Almaty.pm b/lib/DateTime/TimeZone/Asia/Almaty.pm
index a341c097..91957560 100644
--- a/lib/DateTime/TimeZone/Asia/Almaty.pm
+++ b/lib/DateTime/TimeZone/Asia/Almaty.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -489,11 +489,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Amman.pm b/lib/DateTime/TimeZone/Asia/Amman.pm
index 033e8089..4ecd05d1 100644
--- a/lib/DateTime/TimeZone/Asia/Amman.pm
+++ b/lib/DateTime/TimeZone/Asia/Amman.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -944,15 +944,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054803600, #    local_end 2030-10-25 01:00:00 (Fri)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054792800, #    utc_start 2030-10-24 22:00:00 (Thu)
+64068098400, #      utc_end 2031-03-27 22:00:00 (Thu)
+64054800000, #  local_start 2030-10-25 00:00:00 (Fri)
+64068105600, #    local_end 2031-03-28 00:00:00 (Fri)
+7200,
+0,
+'EET',
+    ],
+    [
+64068098400, #    utc_start 2031-03-27 22:00:00 (Thu)
+64086847200, #      utc_end 2031-10-30 22:00:00 (Thu)
+64068109200, #  local_start 2031-03-28 01:00:00 (Fri)
+64086858000, #    local_end 2031-10-31 01:00:00 (Fri)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 51 }
+sub has_dst_changes { 52 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Anadyr.pm b/lib/DateTime/TimeZone/Asia/Anadyr.pm
index 98347e98..a9b0044d 100644
--- a/lib/DateTime/TimeZone/Asia/Anadyr.pm
+++ b/lib/DateTime/TimeZone/Asia/Anadyr.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Aqtau.pm b/lib/DateTime/TimeZone/Asia/Aqtau.pm
index 5b43b614..bc9fd165 100644
--- a/lib/DateTime/TimeZone/Asia/Aqtau.pm
+++ b/lib/DateTime/TimeZone/Asia/Aqtau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -480,11 +480,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 23 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Aqtobe.pm b/lib/DateTime/TimeZone/Asia/Aqtobe.pm
index 485da77e..d1bed33c 100644
--- a/lib/DateTime/TimeZone/Asia/Aqtobe.pm
+++ b/lib/DateTime/TimeZone/Asia/Aqtobe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -489,11 +489,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Ashgabat.pm b/lib/DateTime/TimeZone/Asia/Ashgabat.pm
index c5558adf..b4799d06 100644
--- a/lib/DateTime/TimeZone/Asia/Ashgabat.pm
+++ b/lib/DateTime/TimeZone/Asia/Ashgabat.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -255,11 +255,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 11 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Atyrau.pm b/lib/DateTime/TimeZone/Asia/Atyrau.pm
index 7ac24587..0e623b25 100644
--- a/lib/DateTime/TimeZone/Asia/Atyrau.pm
+++ b/lib/DateTime/TimeZone/Asia/Atyrau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -480,11 +480,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 23 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Baghdad.pm b/lib/DateTime/TimeZone/Asia/Baghdad.pm
index 1cbaa6f7..c81ed7b8 100644
--- a/lib/DateTime/TimeZone/Asia/Baghdad.pm
+++ b/lib/DateTime/TimeZone/Asia/Baghdad.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -516,11 +516,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 26 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Baku.pm b/lib/DateTime/TimeZone/Asia/Baku.pm
index c8806e1e..9b102d91 100644
--- a/lib/DateTime/TimeZone/Asia/Baku.pm
+++ b/lib/DateTime/TimeZone/Asia/Baku.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -642,11 +642,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 32 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Bangkok.pm b/lib/DateTime/TimeZone/Asia/Bangkok.pm
index 11ccad02..d27402a7 100644
--- a/lib/DateTime/TimeZone/Asia/Bangkok.pm
+++ b/lib/DateTime/TimeZone/Asia/Bangkok.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Barnaul.pm b/lib/DateTime/TimeZone/Asia/Barnaul.pm
index 12f74203..983a9c49 100644
--- a/lib/DateTime/TimeZone/Asia/Barnaul.pm
+++ b/lib/DateTime/TimeZone/Asia/Barnaul.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -633,11 +633,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 31 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Beirut.pm b/lib/DateTime/TimeZone/Asia/Beirut.pm
index 5a694717..5ff70c5f 100644
--- a/lib/DateTime/TimeZone/Asia/Beirut.pm
+++ b/lib/DateTime/TimeZone/Asia/Beirut.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1160,15 +1160,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054972800, #    local_end 2030-10-27 00:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054962000, #    utc_start 2030-10-26 21:00:00 (Sat)
+64068271200, #      utc_end 2031-03-29 22:00:00 (Sat)
+64054969200, #  local_start 2030-10-26 23:00:00 (Sat)
+64068278400, #    local_end 2031-03-30 00:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068271200, #    utc_start 2031-03-29 22:00:00 (Sat)
+64086411600, #      utc_end 2031-10-25 21:00:00 (Sat)
+64068282000, #  local_start 2031-03-30 01:00:00 (Sun)
+64086422400, #    local_end 2031-10-26 00:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 63 }
+sub has_dst_changes { 64 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1218,24 +1236,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '0:00',
-    'from' => '1999',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1993',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'Lebanon',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '0:00',
-    'from' => '1993',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1999',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'Lebanon',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Asia/Bishkek.pm b/lib/DateTime/TimeZone/Asia/Bishkek.pm
index 5b7cf246..f52e6b85 100644
--- a/lib/DateTime/TimeZone/Asia/Bishkek.pm
+++ b/lib/DateTime/TimeZone/Asia/Bishkek.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -498,11 +498,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 25 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Brunei.pm b/lib/DateTime/TimeZone/Asia/Brunei.pm
index 410a7965..7e472986 100644
--- a/lib/DateTime/TimeZone/Asia/Brunei.pm
+++ b/lib/DateTime/TimeZone/Asia/Brunei.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Chita.pm b/lib/DateTime/TimeZone/Asia/Chita.pm
index 46f89b9c..5639a26d 100644
--- a/lib/DateTime/TimeZone/Asia/Chita.pm
+++ b/lib/DateTime/TimeZone/Asia/Chita.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Choibalsan.pm b/lib/DateTime/TimeZone/Asia/Choibalsan.pm
index 7003804b..1877518d 100644
--- a/lib/DateTime/TimeZone/Asia/Choibalsan.pm
+++ b/lib/DateTime/TimeZone/Asia/Choibalsan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -489,11 +489,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Colombo.pm b/lib/DateTime/TimeZone/Asia/Colombo.pm
index b8597c6a..8b6dec7e 100644
--- a/lib/DateTime/TimeZone/Asia/Colombo.pm
+++ b/lib/DateTime/TimeZone/Asia/Colombo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Damascus.pm b/lib/DateTime/TimeZone/Asia/Damascus.pm
index f90e356e..c7d2fa39 100644
--- a/lib/DateTime/TimeZone/Asia/Damascus.pm
+++ b/lib/DateTime/TimeZone/Asia/Damascus.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1250,15 +1250,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054800000, #    local_end 2030-10-25 00:00:00 (Fri)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054789200, #    utc_start 2030-10-24 21:00:00 (Thu)
+64068098400, #      utc_end 2031-03-27 22:00:00 (Thu)
+64054796400, #  local_start 2030-10-24 23:00:00 (Thu)
+64068105600, #    local_end 2031-03-28 00:00:00 (Fri)
+7200,
+0,
+'EET',
+    ],
+    [
+64068098400, #    utc_start 2031-03-27 22:00:00 (Thu)
+64086843600, #      utc_end 2031-10-30 21:00:00 (Thu)
+64068109200, #  local_start 2031-03-28 01:00:00 (Fri)
+64086854400, #    local_end 2031-10-31 00:00:00 (Fri)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1308,24 +1326,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '0:00',
-    'from' => '2009',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '2012',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'Syria',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastFri',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '0:00',
-    'from' => '2012',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '2009',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'Syria',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastFri',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Asia/Dhaka.pm b/lib/DateTime/TimeZone/Asia/Dhaka.pm
index 47fa7d29..9dd1e18e 100644
--- a/lib/DateTime/TimeZone/Asia/Dhaka.pm
+++ b/lib/DateTime/TimeZone/Asia/Dhaka.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Dili.pm b/lib/DateTime/TimeZone/Asia/Dili.pm
index 55e277e9..9678b8fe 100644
--- a/lib/DateTime/TimeZone/Asia/Dili.pm
+++ b/lib/DateTime/TimeZone/Asia/Dili.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Dubai.pm b/lib/DateTime/TimeZone/Asia/Dubai.pm
index 092a1a1a..cf609224 100644
--- a/lib/DateTime/TimeZone/Asia/Dubai.pm
+++ b/lib/DateTime/TimeZone/Asia/Dubai.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Dushanbe.pm b/lib/DateTime/TimeZone/Asia/Dushanbe.pm
index 96c776fa..73d6bf42 100644
--- a/lib/DateTime/TimeZone/Asia/Dushanbe.pm
+++ b/lib/DateTime/TimeZone/Asia/Dushanbe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -246,11 +246,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 11 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Famagusta.pm b/lib/DateTime/TimeZone/Asia/Famagusta.pm
index 35a1b790..34f0a0aa 100644
--- a/lib/DateTime/TimeZone/Asia/Famagusta.pm
+++ b/lib/DateTime/TimeZone/Asia/Famagusta.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1034,15 +1034,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 56 }
+sub has_dst_changes { 57 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1092,24 +1110,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EUAsia',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EUAsia',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Asia/Gaza.pm b/lib/DateTime/TimeZone/Asia/Gaza.pm
index cab77f28..f49d367f 100644
--- a/lib/DateTime/TimeZone/Asia/Gaza.pm
+++ b/lib/DateTime/TimeZone/Asia/Gaza.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1268,15 +1268,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054890000, #    local_end 2030-10-26 01:00:00 (Sat)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054879200, #    utc_start 2030-10-25 22:00:00 (Fri)
+64068098400, #      utc_end 2031-03-27 22:00:00 (Thu)
+64054886400, #  local_start 2030-10-26 00:00:00 (Sat)
+64068105600, #    local_end 2031-03-28 00:00:00 (Fri)
+7200,
+0,
+'EET',
+    ],
+    [
+64068098400, #    utc_start 2031-03-27 22:00:00 (Thu)
+64086328800, #      utc_end 2031-10-24 22:00:00 (Fri)
+64068109200, #  local_start 2031-03-28 01:00:00 (Fri)
+64086339600, #    local_end 2031-10-25 01:00:00 (Sat)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 66 }
+sub has_dst_changes { 67 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Hebron.pm b/lib/DateTime/TimeZone/Asia/Hebron.pm
index e39fc192..4a9fedcc 100644
--- a/lib/DateTime/TimeZone/Asia/Hebron.pm
+++ b/lib/DateTime/TimeZone/Asia/Hebron.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1259,15 +1259,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054890000, #    local_end 2030-10-26 01:00:00 (Sat)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054879200, #    utc_start 2030-10-25 22:00:00 (Fri)
+64068098400, #      utc_end 2031-03-27 22:00:00 (Thu)
+64054886400, #  local_start 2030-10-26 00:00:00 (Sat)
+64068105600, #    local_end 2031-03-28 00:00:00 (Fri)
+7200,
+0,
+'EET',
+    ],
+    [
+64068098400, #    utc_start 2031-03-27 22:00:00 (Thu)
+64086328800, #      utc_end 2031-10-24 22:00:00 (Fri)
+64068109200, #  local_start 2031-03-28 01:00:00 (Fri)
+64086339600, #    local_end 2031-10-25 01:00:00 (Sat)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 67 }
+sub has_dst_changes { 68 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1315,17 +1333,6 @@ my $last_observance = bless( {
 sub _last_observance { $last_observance }
 
 my $rules = [
-  bless( {
-    'at' => '0:00',
-    'from' => '2019',
-    'in' => 'Mar',
-    'letter' => 'S',
-    'name' => 'Palestine',
-    'offset_from_std' => 3600,
-    'on' => 'lastFri',
-    'save' => '1:00',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00',
     'from' => '2016',
@@ -1336,6 +1343,17 @@ my $rules = [
     'on' => 'lastSat',
     'save' => '0',
     'to' => 'max'
+  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
+  bless( {
+    'at' => '0:00',
+    'from' => '2019',
+    'in' => 'Mar',
+    'letter' => 'S',
+    'name' => 'Palestine',
+    'offset_from_std' => 3600,
+    'on' => 'lastFri',
+    'save' => '1:00',
+    'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
 ;
diff --git a/lib/DateTime/TimeZone/Asia/Ho_Chi_Minh.pm b/lib/DateTime/TimeZone/Asia/Ho_Chi_Minh.pm
index 43a874fe..3cec4e81 100644
--- a/lib/DateTime/TimeZone/Asia/Ho_Chi_Minh.pm
+++ b/lib/DateTime/TimeZone/Asia/Ho_Chi_Minh.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -111,11 +111,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Hong_Kong.pm b/lib/DateTime/TimeZone/Asia/Hong_Kong.pm
index e42632e0..266e4476 100644
--- a/lib/DateTime/TimeZone/Asia/Hong_Kong.pm
+++ b/lib/DateTime/TimeZone/Asia/Hong_Kong.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -660,11 +660,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 35 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Hovd.pm b/lib/DateTime/TimeZone/Asia/Hovd.pm
index c2def78c..fec3331c 100644
--- a/lib/DateTime/TimeZone/Asia/Hovd.pm
+++ b/lib/DateTime/TimeZone/Asia/Hovd.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -480,11 +480,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Irkutsk.pm b/lib/DateTime/TimeZone/Asia/Irkutsk.pm
index b5de4889..109ae5e1 100644
--- a/lib/DateTime/TimeZone/Asia/Irkutsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Irkutsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Jakarta.pm b/lib/DateTime/TimeZone/Asia/Jakarta.pm
index 97a16596..d361cf7f 100644
--- a/lib/DateTime/TimeZone/Asia/Jakarta.pm
+++ b/lib/DateTime/TimeZone/Asia/Jakarta.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Jayapura.pm b/lib/DateTime/TimeZone/Asia/Jayapura.pm
index c295c15e..f766381d 100644
--- a/lib/DateTime/TimeZone/Asia/Jayapura.pm
+++ b/lib/DateTime/TimeZone/Asia/Jayapura.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Jerusalem.pm b/lib/DateTime/TimeZone/Asia/Jerusalem.pm
index d22baae4..1f61272b 100644
--- a/lib/DateTime/TimeZone/Asia/Jerusalem.pm
+++ b/lib/DateTime/TimeZone/Asia/Jerusalem.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1214,15 +1214,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 10800,
 1,
+'IDT',
+    ],
+    [
+64054969200, #    utc_start 2030-10-26 23:00:00 (Sat)
+64068105600, #      utc_end 2031-03-28 00:00:00 (Fri)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068112800, #    local_end 2031-03-28 02:00:00 (Fri)
+7200,
+0,
+'IST',
+    ],
+    [
+64068105600, #    utc_start 2031-03-28 00:00:00 (Fri)
+64086418800, #      utc_end 2031-10-25 23:00:00 (Sat)
+64068116400, #  local_start 2031-03-28 03:00:00 (Fri)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+10800,
+1,
 'IDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 66 }
+sub has_dst_changes { 67 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1273,23 +1291,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2013',
-    'in' => 'Oct',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'Zion',
-    'offset_from_std' => 0,
-    'on' => 'lastSun',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Fri>=23',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2013',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Oct',
+    'letter' => 'S',
     'name' => 'Zion',
-    'offset_from_std' => 3600,
-    'on' => 'Fri>=23',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'lastSun',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Asia/Kabul.pm b/lib/DateTime/TimeZone/Asia/Kabul.pm
index 9ab1a297..a0e399aa 100644
--- a/lib/DateTime/TimeZone/Asia/Kabul.pm
+++ b/lib/DateTime/TimeZone/Asia/Kabul.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Kamchatka.pm b/lib/DateTime/TimeZone/Asia/Kamchatka.pm
index fd63d773..6bed306f 100644
--- a/lib/DateTime/TimeZone/Asia/Kamchatka.pm
+++ b/lib/DateTime/TimeZone/Asia/Kamchatka.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Karachi.pm b/lib/DateTime/TimeZone/Asia/Karachi.pm
index 8299f941..2e78ee0e 100644
--- a/lib/DateTime/TimeZone/Asia/Karachi.pm
+++ b/lib/DateTime/TimeZone/Asia/Karachi.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -129,11 +129,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Kathmandu.pm b/lib/DateTime/TimeZone/Asia/Kathmandu.pm
index c295d909..0dc83548 100644
--- a/lib/DateTime/TimeZone/Asia/Kathmandu.pm
+++ b/lib/DateTime/TimeZone/Asia/Kathmandu.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Khandyga.pm b/lib/DateTime/TimeZone/Asia/Khandyga.pm
index 547f42c7..7e75ca04 100644
--- a/lib/DateTime/TimeZone/Asia/Khandyga.pm
+++ b/lib/DateTime/TimeZone/Asia/Khandyga.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -633,11 +633,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Kolkata.pm b/lib/DateTime/TimeZone/Asia/Kolkata.pm
index 6949a780..6873c783 100644
--- a/lib/DateTime/TimeZone/Asia/Kolkata.pm
+++ b/lib/DateTime/TimeZone/Asia/Kolkata.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Krasnoyarsk.pm b/lib/DateTime/TimeZone/Asia/Krasnoyarsk.pm
index 65d0d234..bf1a6bda 100644
--- a/lib/DateTime/TimeZone/Asia/Krasnoyarsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Krasnoyarsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Kuala_Lumpur.pm b/lib/DateTime/TimeZone/Asia/Kuala_Lumpur.pm
index beb29e10..2b052c6e 100644
--- a/lib/DateTime/TimeZone/Asia/Kuala_Lumpur.pm
+++ b/lib/DateTime/TimeZone/Asia/Kuala_Lumpur.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Kuching.pm b/lib/DateTime/TimeZone/Asia/Kuching.pm
index 9fb0681e..3e2ac45b 100644
--- a/lib/DateTime/TimeZone/Asia/Kuching.pm
+++ b/lib/DateTime/TimeZone/Asia/Kuching.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -192,11 +192,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 7 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Macau.pm b/lib/DateTime/TimeZone/Asia/Macau.pm
index 356fc048..b1f57439 100644
--- a/lib/DateTime/TimeZone/Asia/Macau.pm
+++ b/lib/DateTime/TimeZone/Asia/Macau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -669,11 +669,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 34 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Magadan.pm b/lib/DateTime/TimeZone/Asia/Magadan.pm
index d24604da..f2a4746a 100644
--- a/lib/DateTime/TimeZone/Asia/Magadan.pm
+++ b/lib/DateTime/TimeZone/Asia/Magadan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Makassar.pm b/lib/DateTime/TimeZone/Asia/Makassar.pm
index d2e1d8d4..fb7f8b3e 100644
--- a/lib/DateTime/TimeZone/Asia/Makassar.pm
+++ b/lib/DateTime/TimeZone/Asia/Makassar.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Manila.pm b/lib/DateTime/TimeZone/Asia/Manila.pm
index 4e1835ae..0fff3e1a 100644
--- a/lib/DateTime/TimeZone/Asia/Manila.pm
+++ b/lib/DateTime/TimeZone/Asia/Manila.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -120,11 +120,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Nicosia.pm b/lib/DateTime/TimeZone/Asia/Nicosia.pm
index 25ce7351..a3d5a1b5 100644
--- a/lib/DateTime/TimeZone/Asia/Nicosia.pm
+++ b/lib/DateTime/TimeZone/Asia/Nicosia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1043,15 +1043,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 57 }
+sub has_dst_changes { 58 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Novokuznetsk.pm b/lib/DateTime/TimeZone/Asia/Novokuznetsk.pm
index dca91831..6b76d050 100644
--- a/lib/DateTime/TimeZone/Asia/Novokuznetsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Novokuznetsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Novosibirsk.pm b/lib/DateTime/TimeZone/Asia/Novosibirsk.pm
index fa5a8c55..f3356ddf 100644
--- a/lib/DateTime/TimeZone/Asia/Novosibirsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Novosibirsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -633,11 +633,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 31 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Omsk.pm b/lib/DateTime/TimeZone/Asia/Omsk.pm
index 2c63ed28..65d341c4 100644
--- a/lib/DateTime/TimeZone/Asia/Omsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Omsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Oral.pm b/lib/DateTime/TimeZone/Asia/Oral.pm
index a1643bfa..b4832af9 100644
--- a/lib/DateTime/TimeZone/Asia/Oral.pm
+++ b/lib/DateTime/TimeZone/Asia/Oral.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -489,11 +489,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Pontianak.pm b/lib/DateTime/TimeZone/Asia/Pontianak.pm
index a820caa7..a2655895 100644
--- a/lib/DateTime/TimeZone/Asia/Pontianak.pm
+++ b/lib/DateTime/TimeZone/Asia/Pontianak.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Pyongyang.pm b/lib/DateTime/TimeZone/Asia/Pyongyang.pm
index 184f537a..c4727fef 100644
--- a/lib/DateTime/TimeZone/Asia/Pyongyang.pm
+++ b/lib/DateTime/TimeZone/Asia/Pyongyang.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Qatar.pm b/lib/DateTime/TimeZone/Asia/Qatar.pm
index 328ea464..cac75c83 100644
--- a/lib/DateTime/TimeZone/Asia/Qatar.pm
+++ b/lib/DateTime/TimeZone/Asia/Qatar.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Qostanay.pm b/lib/DateTime/TimeZone/Asia/Qostanay.pm
index 044225dc..61b83562 100644
--- a/lib/DateTime/TimeZone/Asia/Qostanay.pm
+++ b/lib/DateTime/TimeZone/Asia/Qostanay.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -489,11 +489,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Qyzylorda.pm b/lib/DateTime/TimeZone/Asia/Qyzylorda.pm
index 83650de9..a0ace0bb 100644
--- a/lib/DateTime/TimeZone/Asia/Qyzylorda.pm
+++ b/lib/DateTime/TimeZone/Asia/Qyzylorda.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -498,11 +498,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Riyadh.pm b/lib/DateTime/TimeZone/Asia/Riyadh.pm
index aaec1535..46841f38 100644
--- a/lib/DateTime/TimeZone/Asia/Riyadh.pm
+++ b/lib/DateTime/TimeZone/Asia/Riyadh.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Sakhalin.pm b/lib/DateTime/TimeZone/Asia/Sakhalin.pm
index ebe6bce3..c0309a6d 100644
--- a/lib/DateTime/TimeZone/Asia/Sakhalin.pm
+++ b/lib/DateTime/TimeZone/Asia/Sakhalin.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Samarkand.pm b/lib/DateTime/TimeZone/Asia/Samarkand.pm
index 6f322107..5aff0af3 100644
--- a/lib/DateTime/TimeZone/Asia/Samarkand.pm
+++ b/lib/DateTime/TimeZone/Asia/Samarkand.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -255,11 +255,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 11 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Seoul.pm b/lib/DateTime/TimeZone/Asia/Seoul.pm
index ef8e6835..8693b986 100644
--- a/lib/DateTime/TimeZone/Asia/Seoul.pm
+++ b/lib/DateTime/TimeZone/Asia/Seoul.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -291,11 +291,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 12 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Shanghai.pm b/lib/DateTime/TimeZone/Asia/Shanghai.pm
index 2dbc0edd..8c08731f 100644
--- a/lib/DateTime/TimeZone/Asia/Shanghai.pm
+++ b/lib/DateTime/TimeZone/Asia/Shanghai.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -30,8 +30,26 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
     [
 59958201257, #    utc_start 1900-12-31 15:54:17 (Mon)
-61202016000, #      utc_end 1940-05-31 16:00:00 (Fri)
+60535008000, #      utc_end 1919-04-12 16:00:00 (Sat)
 59958230057, #  local_start 1900-12-31 23:54:17 (Mon)
+60535036800, #    local_end 1919-04-13 00:00:00 (Sun)
+28800,
+0,
+'CST',
+    ],
+    [
+60535008000, #    utc_start 1919-04-12 16:00:00 (Sat)
+60549778800, #      utc_end 1919-09-30 15:00:00 (Tue)
+60535040400, #  local_start 1919-04-13 01:00:00 (Sun)
+60549811200, #    local_end 1919-10-01 00:00:00 (Wed)
+32400,
+1,
+'CDT',
+    ],
+    [
+60549778800, #    utc_start 1919-09-30 15:00:00 (Tue)
+61202016000, #      utc_end 1940-05-31 16:00:00 (Fri)
+60549807600, #  local_start 1919-09-30 23:00:00 (Tue)
 61202044800, #    local_end 1940-06-01 00:00:00 (Sat)
 28800,
 0,
@@ -273,11 +291,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 13 }
+sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Singapore.pm b/lib/DateTime/TimeZone/Asia/Singapore.pm
index f745b12d..6dadfa05 100644
--- a/lib/DateTime/TimeZone/Asia/Singapore.pm
+++ b/lib/DateTime/TimeZone/Asia/Singapore.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -102,11 +102,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Srednekolymsk.pm b/lib/DateTime/TimeZone/Asia/Srednekolymsk.pm
index 3b45f5f3..2c8740fd 100644
--- a/lib/DateTime/TimeZone/Asia/Srednekolymsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Srednekolymsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Taipei.pm b/lib/DateTime/TimeZone/Asia/Taipei.pm
index b1c23755..5b474216 100644
--- a/lib/DateTime/TimeZone/Asia/Taipei.pm
+++ b/lib/DateTime/TimeZone/Asia/Taipei.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -399,11 +399,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 19 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Tashkent.pm b/lib/DateTime/TimeZone/Asia/Tashkent.pm
index 3176f2ff..663b5bc4 100644
--- a/lib/DateTime/TimeZone/Asia/Tashkent.pm
+++ b/lib/DateTime/TimeZone/Asia/Tashkent.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -255,11 +255,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 11 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Tbilisi.pm b/lib/DateTime/TimeZone/Asia/Tbilisi.pm
index 85317190..876b12b7 100644
--- a/lib/DateTime/TimeZone/Asia/Tbilisi.pm
+++ b/lib/DateTime/TimeZone/Asia/Tbilisi.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -516,11 +516,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 26 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Tehran.pm b/lib/DateTime/TimeZone/Asia/Tehran.pm
index 986e1fbb..c3476d21 100644
--- a/lib/DateTime/TimeZone/Asia/Tehran.pm
+++ b/lib/DateTime/TimeZone/Asia/Tehran.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1857,7 +1857,7 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 100 }
 
diff --git a/lib/DateTime/TimeZone/Asia/Thimphu.pm b/lib/DateTime/TimeZone/Asia/Thimphu.pm
index 87c149b9..405377a3 100644
--- a/lib/DateTime/TimeZone/Asia/Thimphu.pm
+++ b/lib/DateTime/TimeZone/Asia/Thimphu.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Tokyo.pm b/lib/DateTime/TimeZone/Asia/Tokyo.pm
index fd050fb3..74b41468 100644
--- a/lib/DateTime/TimeZone/Asia/Tokyo.pm
+++ b/lib/DateTime/TimeZone/Asia/Tokyo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -111,11 +111,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Tomsk.pm b/lib/DateTime/TimeZone/Asia/Tomsk.pm
index 330af4aa..ab87461c 100644
--- a/lib/DateTime/TimeZone/Asia/Tomsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Tomsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -633,11 +633,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 31 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Ulaanbaatar.pm b/lib/DateTime/TimeZone/Asia/Ulaanbaatar.pm
index c122a852..d8849088 100644
--- a/lib/DateTime/TimeZone/Asia/Ulaanbaatar.pm
+++ b/lib/DateTime/TimeZone/Asia/Ulaanbaatar.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -480,11 +480,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 24 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Urumqi.pm b/lib/DateTime/TimeZone/Asia/Urumqi.pm
index 7a248613..d2c585b6 100644
--- a/lib/DateTime/TimeZone/Asia/Urumqi.pm
+++ b/lib/DateTime/TimeZone/Asia/Urumqi.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Ust_Nera.pm b/lib/DateTime/TimeZone/Asia/Ust_Nera.pm
index b5fcf76f..1bf21ed8 100644
--- a/lib/DateTime/TimeZone/Asia/Ust_Nera.pm
+++ b/lib/DateTime/TimeZone/Asia/Ust_Nera.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Vladivostok.pm b/lib/DateTime/TimeZone/Asia/Vladivostok.pm
index d9a87d02..78e63bcb 100644
--- a/lib/DateTime/TimeZone/Asia/Vladivostok.pm
+++ b/lib/DateTime/TimeZone/Asia/Vladivostok.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Yakutsk.pm b/lib/DateTime/TimeZone/Asia/Yakutsk.pm
index 786a5f65..5f9b407d 100644
--- a/lib/DateTime/TimeZone/Asia/Yakutsk.pm
+++ b/lib/DateTime/TimeZone/Asia/Yakutsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Yangon.pm b/lib/DateTime/TimeZone/Asia/Yangon.pm
index 69c19fd0..6db277ea 100644
--- a/lib/DateTime/TimeZone/Asia/Yangon.pm
+++ b/lib/DateTime/TimeZone/Asia/Yangon.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Yekaterinburg.pm b/lib/DateTime/TimeZone/Asia/Yekaterinburg.pm
index 5948f4c0..cbeb563d 100644
--- a/lib/DateTime/TimeZone/Asia/Yekaterinburg.pm
+++ b/lib/DateTime/TimeZone/Asia/Yekaterinburg.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Asia/Yerevan.pm b/lib/DateTime/TimeZone/Asia/Yerevan.pm
index cd63d702..b640806f 100644
--- a/lib/DateTime/TimeZone/Asia/Yerevan.pm
+++ b/lib/DateTime/TimeZone/Asia/Yerevan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Atlantic/Azores.pm b/lib/DateTime/TimeZone/Atlantic/Azores.pm
index 968d9e16..39aabfa2 100644
--- a/lib/DateTime/TimeZone/Atlantic/Azores.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Azores.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1880,15 +1880,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054976400, #    local_end 2030-10-27 01:00:00 (Sun)
 0,
 1,
+'+00',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054972800, #  local_start 2030-10-27 00:00:00 (Sun)
+64068278400, #    local_end 2031-03-30 00:00:00 (Sun)
+-3600,
+0,
+'-01',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068282000, #  local_start 2031-03-30 01:00:00 (Sun)
+64086426000, #    local_end 2031-10-26 01:00:00 (Sun)
+0,
+1,
 '+00',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 106 }
+sub has_dst_changes { 107 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1938,24 +1956,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Atlantic/Bermuda.pm b/lib/DateTime/TimeZone/Atlantic/Bermuda.pm
index 408d8cd5..2f6f3e3b 100644
--- a/lib/DateTime/TimeZone/Atlantic/Bermuda.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Bermuda.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1061,15 +1061,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -10800,
 1,
+'ADT',
+    ],
+    [
+64055595600, #    utc_start 2030-11-03 05:00:00 (Sun)
+64066485600, #      utc_end 2031-03-09 06:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-14400,
+0,
+'AST',
+    ],
+    [
+64066485600, #    utc_start 2031-03-09 06:00:00 (Sun)
+64087045200, #      utc_end 2031-11-02 05:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-10800,
+1,
 'ADT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 57 }
+sub has_dst_changes { 58 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1120,23 +1138,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Atlantic/Canary.pm b/lib/DateTime/TimeZone/Atlantic/Canary.pm
index 25e2b4b6..1d856835 100644
--- a/lib/DateTime/TimeZone/Atlantic/Canary.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Canary.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -953,15 +953,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'WEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'WET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'WEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 51 }
+sub has_dst_changes { 52 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1011,24 +1029,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Atlantic/Cape_Verde.pm b/lib/DateTime/TimeZone/Atlantic/Cape_Verde.pm
index 81deb263..2ddf2b8d 100644
--- a/lib/DateTime/TimeZone/Atlantic/Cape_Verde.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Cape_Verde.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Atlantic/Faroe.pm b/lib/DateTime/TimeZone/Atlantic/Faroe.pm
index 8ec7ded0..c475f798 100644
--- a/lib/DateTime/TimeZone/Atlantic/Faroe.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Faroe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -935,15 +935,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'WEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'WET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'WEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 50 }
+sub has_dst_changes { 51 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -993,24 +1011,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Atlantic/Madeira.pm b/lib/DateTime/TimeZone/Atlantic/Madeira.pm
index bf264db5..2799a99d 100644
--- a/lib/DateTime/TimeZone/Atlantic/Madeira.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Madeira.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1880,15 +1880,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'WEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'WET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'WEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 106 }
+sub has_dst_changes { 107 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Atlantic/Reykjavik.pm b/lib/DateTime/TimeZone/Atlantic/Reykjavik.pm
index e609e65d..e70508da 100644
--- a/lib/DateTime/TimeZone/Atlantic/Reykjavik.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Reykjavik.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -642,11 +642,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 33 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Atlantic/South_Georgia.pm b/lib/DateTime/TimeZone/Atlantic/South_Georgia.pm
index 7b4dc64c..75fc018b 100644
--- a/lib/DateTime/TimeZone/Atlantic/South_Georgia.pm
+++ b/lib/DateTime/TimeZone/Atlantic/South_Georgia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Atlantic/Stanley.pm b/lib/DateTime/TimeZone/Atlantic/Stanley.pm
index 4b8ac946..a0d336d2 100644
--- a/lib/DateTime/TimeZone/Atlantic/Stanley.pm
+++ b/lib/DateTime/TimeZone/Atlantic/Stanley.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -660,11 +660,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 33 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Adelaide.pm b/lib/DateTime/TimeZone/Australia/Adelaide.pm
index ec9ecc05..5993c1c1 100644
--- a/lib/DateTime/TimeZone/Australia/Adelaide.pm
+++ b/lib/DateTime/TimeZone/Australia/Adelaide.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1187,15 +1187,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 34200,
 0,
+'ACST',
+    ],
+    [
+64053131400, #    utc_start 2030-10-05 16:30:00 (Sat)
+64068856200, #      utc_end 2031-04-05 16:30:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+37800,
+1,
+'ACDT',
+    ],
+    [
+64068856200, #    utc_start 2031-04-05 16:30:00 (Sat)
+64084581000, #      utc_end 2031-10-04 16:30:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+34200,
+0,
 'ACST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Brisbane.pm b/lib/DateTime/TimeZone/Australia/Brisbane.pm
index 2c19ec54..92627a77 100644
--- a/lib/DateTime/TimeZone/Australia/Brisbane.pm
+++ b/lib/DateTime/TimeZone/Australia/Brisbane.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -192,11 +192,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 8 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Broken_Hill.pm b/lib/DateTime/TimeZone/Australia/Broken_Hill.pm
index 648bd352..1621d45c 100644
--- a/lib/DateTime/TimeZone/Australia/Broken_Hill.pm
+++ b/lib/DateTime/TimeZone/Australia/Broken_Hill.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1205,15 +1205,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 34200,
 0,
+'ACST',
+    ],
+    [
+64053131400, #    utc_start 2030-10-05 16:30:00 (Sat)
+64068856200, #      utc_end 2031-04-05 16:30:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+37800,
+1,
+'ACDT',
+    ],
+    [
+64068856200, #    utc_start 2031-04-05 16:30:00 (Sat)
+64084581000, #      utc_end 2031-10-04 16:30:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+34200,
+0,
 'ACST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 65 }
+sub has_dst_changes { 66 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Currie.pm b/lib/DateTime/TimeZone/Australia/Currie.pm
index c2173c3b..df053737 100644
--- a/lib/DateTime/TimeZone/Australia/Currie.pm
+++ b/lib/DateTime/TimeZone/Australia/Currie.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1187,15 +1187,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 36000,
 0,
+'AEST',
+    ],
+    [
+64053129600, #    utc_start 2030-10-05 16:00:00 (Sat)
+64068854400, #      utc_end 2031-04-05 16:00:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+39600,
+1,
+'AEDT',
+    ],
+    [
+64068854400, #    utc_start 2031-04-05 16:00:00 (Sat)
+64084579200, #      utc_end 2031-10-04 16:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+36000,
+0,
 'AEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 65 }
+sub has_dst_changes { 66 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1245,24 +1263,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '2:00s',
-    'from' => '2001',
-    'in' => 'Oct',
-    'letter' => 'D',
+    'from' => '2008',
+    'in' => 'Apr',
+    'letter' => 'S',
     'name' => 'AT',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'Sun>=1',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00s',
-    'from' => '2008',
-    'in' => 'Apr',
-    'letter' => 'S',
+    'from' => '2001',
+    'in' => 'Oct',
+    'letter' => 'D',
     'name' => 'AT',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'Sun>=1',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Australia/Darwin.pm b/lib/DateTime/TimeZone/Australia/Darwin.pm
index c93476a0..6a20cfdc 100644
--- a/lib/DateTime/TimeZone/Australia/Darwin.pm
+++ b/lib/DateTime/TimeZone/Australia/Darwin.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -120,11 +120,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Eucla.pm b/lib/DateTime/TimeZone/Australia/Eucla.pm
index 92553381..52e72426 100644
--- a/lib/DateTime/TimeZone/Australia/Eucla.pm
+++ b/lib/DateTime/TimeZone/Australia/Eucla.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -210,11 +210,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 9 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Hobart.pm b/lib/DateTime/TimeZone/Australia/Hobart.pm
index 3045f8eb..e9a5726e 100644
--- a/lib/DateTime/TimeZone/Australia/Hobart.pm
+++ b/lib/DateTime/TimeZone/Australia/Hobart.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1259,15 +1259,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 36000,
 0,
+'AEST',
+    ],
+    [
+64053129600, #    utc_start 2030-10-05 16:00:00 (Sat)
+64068854400, #      utc_end 2031-04-05 16:00:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+39600,
+1,
+'AEDT',
+    ],
+    [
+64068854400, #    utc_start 2031-04-05 16:00:00 (Sat)
+64084579200, #      utc_end 2031-10-04 16:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+36000,
+0,
 'AEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 69 }
+sub has_dst_changes { 70 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Lindeman.pm b/lib/DateTime/TimeZone/Australia/Lindeman.pm
index 680b2231..08c4f1ff 100644
--- a/lib/DateTime/TimeZone/Australia/Lindeman.pm
+++ b/lib/DateTime/TimeZone/Australia/Lindeman.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -237,11 +237,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 10 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Lord_Howe.pm b/lib/DateTime/TimeZone/Australia/Lord_Howe.pm
index b4878ba3..2fcba5e7 100644
--- a/lib/DateTime/TimeZone/Australia/Lord_Howe.pm
+++ b/lib/DateTime/TimeZone/Australia/Lord_Howe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -935,15 +935,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 37800,
 0,
+'+1030',
+    ],
+    [
+64053127800, #    utc_start 2030-10-05 15:30:00 (Sat)
+64068850800, #      utc_end 2031-04-05 15:00:00 (Sat)
+64053167400, #  local_start 2030-10-06 02:30:00 (Sun)
+64068890400, #    local_end 2031-04-06 02:00:00 (Sun)
+39600,
+1,
+'+11',
+    ],
+    [
+64068850800, #    utc_start 2031-04-05 15:00:00 (Sat)
+64084577400, #      utc_end 2031-10-04 15:30:00 (Sat)
+64068888600, #  local_start 2031-04-06 01:30:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+37800,
+0,
 '+1030',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 50 }
+sub has_dst_changes { 51 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Melbourne.pm b/lib/DateTime/TimeZone/Australia/Melbourne.pm
index 79ea4d65..2dab8f2d 100644
--- a/lib/DateTime/TimeZone/Australia/Melbourne.pm
+++ b/lib/DateTime/TimeZone/Australia/Melbourne.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1178,15 +1178,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 36000,
 0,
+'AEST',
+    ],
+    [
+64053129600, #    utc_start 2030-10-05 16:00:00 (Sat)
+64068854400, #      utc_end 2031-04-05 16:00:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+39600,
+1,
+'AEDT',
+    ],
+    [
+64068854400, #    utc_start 2031-04-05 16:00:00 (Sat)
+64084579200, #      utc_end 2031-10-04 16:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+36000,
+0,
 'AEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1237,23 +1255,23 @@ my $rules = [
   bless( {
     'at' => '2:00s',
     'from' => '2008',
-    'in' => 'Apr',
-    'letter' => 'S',
+    'in' => 'Oct',
+    'letter' => 'D',
     'name' => 'AV',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'Sun>=1',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00s',
     'from' => '2008',
-    'in' => 'Oct',
-    'letter' => 'D',
+    'in' => 'Apr',
+    'letter' => 'S',
     'name' => 'AV',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'Sun>=1',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Australia/Perth.pm b/lib/DateTime/TimeZone/Australia/Perth.pm
index 0d622974..3ca5dfa3 100644
--- a/lib/DateTime/TimeZone/Australia/Perth.pm
+++ b/lib/DateTime/TimeZone/Australia/Perth.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -210,11 +210,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 9 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Australia/Sydney.pm b/lib/DateTime/TimeZone/Australia/Sydney.pm
index b0f60de0..2fb78943 100644
--- a/lib/DateTime/TimeZone/Australia/Sydney.pm
+++ b/lib/DateTime/TimeZone/Australia/Sydney.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1178,15 +1178,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 36000,
 0,
+'AEST',
+    ],
+    [
+64053129600, #    utc_start 2030-10-05 16:00:00 (Sat)
+64068854400, #      utc_end 2031-04-05 16:00:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+39600,
+1,
+'AEDT',
+    ],
+    [
+64068854400, #    utc_start 2031-04-05 16:00:00 (Sat)
+64084579200, #      utc_end 2031-10-04 16:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+36000,
+0,
 'AEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 64 }
+sub has_dst_changes { 65 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/CET.pm b/lib/DateTime/TimeZone/CET.pm
index 4651bb75..6deec68b 100644
--- a/lib/DateTime/TimeZone/CET.pm
+++ b/lib/DateTime/TimeZone/CET.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1115,15 +1115,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 61 }
+sub has_dst_changes { 62 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/CST6CDT.pm b/lib/DateTime/TimeZone/CST6CDT.pm
index f5e74fad..30fe3a30 100644
--- a/lib/DateTime/TimeZone/CST6CDT.pm
+++ b/lib/DateTime/TimeZone/CST6CDT.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1232,15 +1232,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -18000,
 1,
+'CDT',
+    ],
+    [
+64055602800, #    utc_start 2030-11-03 07:00:00 (Sun)
+64066492800, #      utc_end 2031-03-09 08:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-21600,
+0,
+'CST',
+    ],
+    [
+64066492800, #    utc_start 2031-03-09 08:00:00 (Sun)
+64087052400, #      utc_end 2031-11-02 07:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-18000,
+1,
 'CDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Catalog.pm b/lib/DateTime/TimeZone/Catalog.pm
index 024fc4dd..9d1fc7a8 100644
--- a/lib/DateTime/TimeZone/Catalog.pm
+++ b/lib/DateTime/TimeZone/Catalog.pm
@@ -81,7 +81,6 @@ qw(
   America/Fort_Nelson
   America/Fortaleza
   America/Glace_Bay
-  America/Godthab
   America/Goose_Bay
   America/Grand_Turk
   America/Guatemala
@@ -129,6 +128,7 @@ qw(
   America/North_Dakota/Beulah
   America/North_Dakota/Center
   America/North_Dakota/New_Salem
+  America/Nuuk
   America/Ojinaga
   America/Panama
   America/Pangnirtung
@@ -461,7 +461,6 @@ qw(
     Fort_Nelson
     Fortaleza
     Glace_Bay
-    Godthab
     Goose_Bay
     Grand_Turk
     Guatemala
@@ -509,6 +508,7 @@ qw(
     North_Dakota/Beulah
     North_Dakota/Center
     North_Dakota/New_Salem
+    Nuuk
     Ojinaga
     Panama
     Pangnirtung
@@ -1093,7 +1093,7 @@ qw(
     Europe/Gibraltar
 ) ],
   'gl' => [ qw(
-    America/Godthab
+    America/Nuuk
     America/Danmarkshavn
     America/Scoresbysund
     America/Thule
@@ -1736,6 +1736,7 @@ qw(
   'America/Dominica' => 'America/Port_of_Spain',
   'America/Ensenada' => 'America/Tijuana',
   'America/Fort_Wayne' => 'America/Indiana/Indianapolis',
+  'America/Godthab' => 'America/Nuuk',
   'America/Grenada' => 'America/Port_of_Spain',
   'America/Guadeloupe' => 'America/Port_of_Spain',
   'America/Indianapolis' => 'America/Indiana/Indianapolis',
@@ -1898,7 +1899,7 @@ qw(
 
 ;
 
-sub OlsonVersion { '2019c' }
+sub OlsonVersion { '2020a' }
 
 
 1;
@@ -1946,7 +1947,7 @@ so that applications can easily present a list of timezones.
 =head3 America
 
   America/Danmarkshavn
-  America/Godthab
+  America/Nuuk
   America/Scoresbysund
   America/Thule
   America/Adak
@@ -2528,8 +2529,8 @@ so that applications can easily present a list of timezones.
   America/Dawson_Creek - MST - BC (Dawson Cr, Ft St John)
   America/Fort_Nelson - MST - BC (Ft Nelson)
   America/Vancouver - Pacific - BC (most areas)
-  America/Whitehorse - Pacific - Yukon (south)
-  America/Dawson - Pacific - Yukon (north)
+  America/Whitehorse - Pacific - Yukon (east)
+  America/Dawson - Pacific - Yukon (west)
 
 =head3 Cayman Islands (KY)
 
@@ -2726,7 +2727,7 @@ so that applications can easily present a list of timezones.
 
 =head3 Greenland (GL)
 
-  America/Godthab - Greenland (most areas)
+  America/Nuuk - Greenland (most areas)
   America/Danmarkshavn - National Park (east coast)
   America/Scoresbysund - Scoresbysund/Ittoqqortoormiit
   America/Thule - Thule/Pituffik
@@ -3364,10 +3365,10 @@ so that applications can easily present a list of timezones.
 
 =head3 Ukraine (UA)
 
-  Europe/Simferopol - MSK+00 - Crimea
+  Europe/Simferopol - Crimea
   Europe/Kiev - Ukraine (most areas)
-  Europe/Uzhgorod - Ruthenia
-  Europe/Zaporozhye - Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+  Europe/Uzhgorod - Transcarpathia
+  Europe/Zaporozhye - Zaporozhye and east Lugansk
 
 =head3 United Arab Emirates (AE)
 
@@ -3515,6 +3516,7 @@ A linked zone is an alias from one name to another.
   America/Dominica => America/Port_of_Spain
   America/Ensenada => America/Tijuana
   America/Fort_Wayne => America/Indiana/Indianapolis
+  America/Godthab => America/Nuuk
   America/Grenada => America/Port_of_Spain
   America/Guadeloupe => America/Port_of_Spain
   America/Indianapolis => America/Indiana/Indianapolis
diff --git a/lib/DateTime/TimeZone/EET.pm b/lib/DateTime/TimeZone/EET.pm
index 997c3536..a4a7ae11 100644
--- a/lib/DateTime/TimeZone/EET.pm
+++ b/lib/DateTime/TimeZone/EET.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -989,15 +989,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/EST.pm b/lib/DateTime/TimeZone/EST.pm
index c9f3b47e..78431c1f 100644
--- a/lib/DateTime/TimeZone/EST.pm
+++ b/lib/DateTime/TimeZone/EST.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -30,11 +30,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/EST5EDT.pm b/lib/DateTime/TimeZone/EST5EDT.pm
index 10cde202..60d972a0 100644
--- a/lib/DateTime/TimeZone/EST5EDT.pm
+++ b/lib/DateTime/TimeZone/EST5EDT.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1232,15 +1232,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -14400,
 1,
+'EDT',
+    ],
+    [
+64055599200, #    utc_start 2030-11-03 06:00:00 (Sun)
+64066489200, #      utc_end 2031-03-09 07:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-18000,
+0,
+'EST',
+    ],
+    [
+64066489200, #    utc_start 2031-03-09 07:00:00 (Sun)
+64087048800, #      utc_end 2031-11-02 06:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-14400,
+1,
 'EDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1265,23 +1283,23 @@ my $rules = [
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Nov',
-    'letter' => 'S',
+    'in' => 'Mar',
+    'letter' => 'D',
     'name' => 'US',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'Sun>=8',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2007',
-    'in' => 'Mar',
-    'letter' => 'D',
+    'in' => 'Nov',
+    'letter' => 'S',
     'name' => 'US',
-    'offset_from_std' => 3600,
-    'on' => 'Sun>=8',
-    'save' => '1:00',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Amsterdam.pm b/lib/DateTime/TimeZone/Europe/Amsterdam.pm
index e6d8b51b..7360fd49 100644
--- a/lib/DateTime/TimeZone/Europe/Amsterdam.pm
+++ b/lib/DateTime/TimeZone/Europe/Amsterdam.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1520,15 +1520,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 83 }
+sub has_dst_changes { 84 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Andorra.pm b/lib/DateTime/TimeZone/Europe/Andorra.pm
index 2928dad1..526cafce 100644
--- a/lib/DateTime/TimeZone/Europe/Andorra.pm
+++ b/lib/DateTime/TimeZone/Europe/Andorra.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -863,15 +863,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 46 }
+sub has_dst_changes { 47 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Astrakhan.pm b/lib/DateTime/TimeZone/Europe/Astrakhan.pm
index b397fa36..0eb7b01f 100644
--- a/lib/DateTime/TimeZone/Europe/Astrakhan.pm
+++ b/lib/DateTime/TimeZone/Europe/Astrakhan.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Athens.pm b/lib/DateTime/TimeZone/Europe/Athens.pm
index 5bde5b59..91108b52 100644
--- a/lib/DateTime/TimeZone/Europe/Athens.pm
+++ b/lib/DateTime/TimeZone/Europe/Athens.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1142,15 +1142,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 61 }
+sub has_dst_changes { 62 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1200,24 +1218,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Belgrade.pm b/lib/DateTime/TimeZone/Europe/Belgrade.pm
index 3c2db895..1b09a1a7 100644
--- a/lib/DateTime/TimeZone/Europe/Belgrade.pm
+++ b/lib/DateTime/TimeZone/Europe/Belgrade.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -980,15 +980,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Berlin.pm b/lib/DateTime/TimeZone/Europe/Berlin.pm
index ef5eb4e8..4b620795 100644
--- a/lib/DateTime/TimeZone/Europe/Berlin.pm
+++ b/lib/DateTime/TimeZone/Europe/Berlin.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1196,15 +1196,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 66 }
+sub has_dst_changes { 67 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1254,24 +1272,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Brussels.pm b/lib/DateTime/TimeZone/Europe/Brussels.pm
index 106a50f7..ff0a599a 100644
--- a/lib/DateTime/TimeZone/Europe/Brussels.pm
+++ b/lib/DateTime/TimeZone/Europe/Brussels.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1574,15 +1574,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 85 }
+sub has_dst_changes { 86 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Bucharest.pm b/lib/DateTime/TimeZone/Europe/Bucharest.pm
index 7beb875e..0c5dc92a 100644
--- a/lib/DateTime/TimeZone/Europe/Bucharest.pm
+++ b/lib/DateTime/TimeZone/Europe/Bucharest.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1142,15 +1142,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 60 }
+sub has_dst_changes { 61 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1200,24 +1218,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Budapest.pm b/lib/DateTime/TimeZone/Europe/Budapest.pm
index d53ac630..9dec6e61 100644
--- a/lib/DateTime/TimeZone/Europe/Budapest.pm
+++ b/lib/DateTime/TimeZone/Europe/Budapest.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1268,15 +1268,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1326,24 +1344,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Chisinau.pm b/lib/DateTime/TimeZone/Europe/Chisinau.pm
index d9ea72e0..94ccba6a 100644
--- a/lib/DateTime/TimeZone/Europe/Chisinau.pm
+++ b/lib/DateTime/TimeZone/Europe/Chisinau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1178,15 +1178,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054972800, #    utc_start 2030-10-27 00:00:00 (Sun)
+64068278400, #      utc_end 2031-03-30 00:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068278400, #    utc_start 2031-03-30 00:00:00 (Sun)
+64086422400, #      utc_end 2031-10-26 00:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 63 }
+sub has_dst_changes { 64 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1235,25 +1253,25 @@ sub _last_observance { $last_observance }
 
 my $rules = [
   bless( {
-    'at' => '2:00',
+    'at' => '3:00',
     'from' => '1997',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'Moldova',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
-    'at' => '3:00',
+    'at' => '2:00',
     'from' => '1997',
-    'in' => 'Oct',
-    'letter' => '',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'Moldova',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Copenhagen.pm b/lib/DateTime/TimeZone/Europe/Copenhagen.pm
index b267d3a5..7c093830 100644
--- a/lib/DateTime/TimeZone/Europe/Copenhagen.pm
+++ b/lib/DateTime/TimeZone/Europe/Copenhagen.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1106,15 +1106,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 59 }
+sub has_dst_changes { 60 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Dublin.pm b/lib/DateTime/TimeZone/Europe/Dublin.pm
index bda1cc21..bda9cc5c 100644
--- a/lib/DateTime/TimeZone/Europe/Dublin.pm
+++ b/lib/DateTime/TimeZone/Europe/Dublin.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1952,15 +1952,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 0,
+'IST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+1,
+'GMT',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+0,
 'IST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 107 }
+sub has_dst_changes { 108 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Gibraltar.pm b/lib/DateTime/TimeZone/Europe/Gibraltar.pm
index c628fc82..1d4f3925 100644
--- a/lib/DateTime/TimeZone/Europe/Gibraltar.pm
+++ b/lib/DateTime/TimeZone/Europe/Gibraltar.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1682,15 +1682,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 97 }
+sub has_dst_changes { 98 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1740,24 +1758,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Helsinki.pm b/lib/DateTime/TimeZone/Europe/Helsinki.pm
index efbbad04..938edb1a 100644
--- a/lib/DateTime/TimeZone/Europe/Helsinki.pm
+++ b/lib/DateTime/TimeZone/Europe/Helsinki.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -962,15 +962,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 51 }
+sub has_dst_changes { 52 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Istanbul.pm b/lib/DateTime/TimeZone/Europe/Istanbul.pm
index 076308bd..f6817c56 100644
--- a/lib/DateTime/TimeZone/Europe/Istanbul.pm
+++ b/lib/DateTime/TimeZone/Europe/Istanbul.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1110,11 +1110,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 57 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Kaliningrad.pm b/lib/DateTime/TimeZone/Europe/Kaliningrad.pm
index 23ef0012..7cf8ab5c 100644
--- a/lib/DateTime/TimeZone/Europe/Kaliningrad.pm
+++ b/lib/DateTime/TimeZone/Europe/Kaliningrad.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -750,11 +750,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 38 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Kiev.pm b/lib/DateTime/TimeZone/Europe/Kiev.pm
index 938fb90f..6d41b862 100644
--- a/lib/DateTime/TimeZone/Europe/Kiev.pm
+++ b/lib/DateTime/TimeZone/Europe/Kiev.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -989,15 +989,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1047,24 +1065,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Kirov.pm b/lib/DateTime/TimeZone/Europe/Kirov.pm
index 1349f715..35afc997 100644
--- a/lib/DateTime/TimeZone/Europe/Kirov.pm
+++ b/lib/DateTime/TimeZone/Europe/Kirov.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -597,11 +597,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Lisbon.pm b/lib/DateTime/TimeZone/Europe/Lisbon.pm
index 9a9dc7b0..e4370cb7 100644
--- a/lib/DateTime/TimeZone/Europe/Lisbon.pm
+++ b/lib/DateTime/TimeZone/Europe/Lisbon.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1889,15 +1889,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'WEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'WET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'WEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 106 }
+sub has_dst_changes { 107 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1947,24 +1965,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/London.pm b/lib/DateTime/TimeZone/Europe/London.pm
index 4f385ce9..40d433c5 100644
--- a/lib/DateTime/TimeZone/Europe/London.pm
+++ b/lib/DateTime/TimeZone/Europe/London.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -2078,15 +2078,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'BST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'GMT',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'BST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 119 }
+sub has_dst_changes { 120 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -2136,24 +2154,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Luxembourg.pm b/lib/DateTime/TimeZone/Europe/Luxembourg.pm
index 9c1d8ffe..90cff8cb 100644
--- a/lib/DateTime/TimeZone/Europe/Luxembourg.pm
+++ b/lib/DateTime/TimeZone/Europe/Luxembourg.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1547,15 +1547,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 84 }
+sub has_dst_changes { 85 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1605,24 +1623,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Madrid.pm b/lib/DateTime/TimeZone/Europe/Madrid.pm
index 2c1dc082..bd781993 100644
--- a/lib/DateTime/TimeZone/Europe/Madrid.pm
+++ b/lib/DateTime/TimeZone/Europe/Madrid.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1358,15 +1358,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 74 }
+sub has_dst_changes { 75 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1416,24 +1434,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Malta.pm b/lib/DateTime/TimeZone/Europe/Malta.pm
index d6557acd..49e843d2 100644
--- a/lib/DateTime/TimeZone/Europe/Malta.pm
+++ b/lib/DateTime/TimeZone/Europe/Malta.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1421,15 +1421,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 77 }
+sub has_dst_changes { 78 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1479,24 +1497,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Minsk.pm b/lib/DateTime/TimeZone/Europe/Minsk.pm
index 652e9d28..ee85c963 100644
--- a/lib/DateTime/TimeZone/Europe/Minsk.pm
+++ b/lib/DateTime/TimeZone/Europe/Minsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -651,11 +651,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 32 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Monaco.pm b/lib/DateTime/TimeZone/Europe/Monaco.pm
index 9e43de85..78412be5 100644
--- a/lib/DateTime/TimeZone/Europe/Monaco.pm
+++ b/lib/DateTime/TimeZone/Europe/Monaco.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1565,15 +1565,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 89 }
+sub has_dst_changes { 90 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1623,24 +1641,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Moscow.pm b/lib/DateTime/TimeZone/Europe/Moscow.pm
index 35e5283a..5159063e 100644
--- a/lib/DateTime/TimeZone/Europe/Moscow.pm
+++ b/lib/DateTime/TimeZone/Europe/Moscow.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -732,11 +732,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 38 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Oslo.pm b/lib/DateTime/TimeZone/Europe/Oslo.pm
index 0808a52b..1b7d3972 100644
--- a/lib/DateTime/TimeZone/Europe/Oslo.pm
+++ b/lib/DateTime/TimeZone/Europe/Oslo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1169,15 +1169,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 63 }
+sub has_dst_changes { 64 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1227,24 +1245,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Paris.pm b/lib/DateTime/TimeZone/Europe/Paris.pm
index 83448427..9bd01871 100644
--- a/lib/DateTime/TimeZone/Europe/Paris.pm
+++ b/lib/DateTime/TimeZone/Europe/Paris.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1556,15 +1556,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 86 }
+sub has_dst_changes { 87 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1614,24 +1632,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Prague.pm b/lib/DateTime/TimeZone/Europe/Prague.pm
index 967f2695..c4e8089a 100644
--- a/lib/DateTime/TimeZone/Europe/Prague.pm
+++ b/lib/DateTime/TimeZone/Europe/Prague.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1205,15 +1205,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 65 }
+sub has_dst_changes { 66 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Riga.pm b/lib/DateTime/TimeZone/Europe/Riga.pm
index d186efaa..ba9d87b5 100644
--- a/lib/DateTime/TimeZone/Europe/Riga.pm
+++ b/lib/DateTime/TimeZone/Europe/Riga.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1052,15 +1052,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1110,24 +1128,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Rome.pm b/lib/DateTime/TimeZone/Europe/Rome.pm
index 059f402b..50e1c59a 100644
--- a/lib/DateTime/TimeZone/Europe/Rome.pm
+++ b/lib/DateTime/TimeZone/Europe/Rome.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1448,15 +1448,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 79 }
+sub has_dst_changes { 80 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Samara.pm b/lib/DateTime/TimeZone/Europe/Samara.pm
index 52b7895e..eba9d301 100644
--- a/lib/DateTime/TimeZone/Europe/Samara.pm
+++ b/lib/DateTime/TimeZone/Europe/Samara.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Saratov.pm b/lib/DateTime/TimeZone/Europe/Saratov.pm
index f8748871..5c0abbd5 100644
--- a/lib/DateTime/TimeZone/Europe/Saratov.pm
+++ b/lib/DateTime/TimeZone/Europe/Saratov.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -606,11 +606,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Simferopol.pm b/lib/DateTime/TimeZone/Europe/Simferopol.pm
index 4a2d40c8..3fa59eda 100644
--- a/lib/DateTime/TimeZone/Europe/Simferopol.pm
+++ b/lib/DateTime/TimeZone/Europe/Simferopol.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -732,11 +732,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 35 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Sofia.pm b/lib/DateTime/TimeZone/Europe/Sofia.pm
index c986003d..d61b93bd 100644
--- a/lib/DateTime/TimeZone/Europe/Sofia.pm
+++ b/lib/DateTime/TimeZone/Europe/Sofia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1052,15 +1052,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Stockholm.pm b/lib/DateTime/TimeZone/Europe/Stockholm.pm
index 48375628..6ca2ebe5 100644
--- a/lib/DateTime/TimeZone/Europe/Stockholm.pm
+++ b/lib/DateTime/TimeZone/Europe/Stockholm.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -980,15 +980,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1038,24 +1056,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Tallinn.pm b/lib/DateTime/TimeZone/Europe/Tallinn.pm
index e72e6bd1..029abb4c 100644
--- a/lib/DateTime/TimeZone/Europe/Tallinn.pm
+++ b/lib/DateTime/TimeZone/Europe/Tallinn.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1016,15 +1016,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 53 }
+sub has_dst_changes { 54 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1074,24 +1092,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Tirane.pm b/lib/DateTime/TimeZone/Europe/Tirane.pm
index d562aaa5..3d057e3a 100644
--- a/lib/DateTime/TimeZone/Europe/Tirane.pm
+++ b/lib/DateTime/TimeZone/Europe/Tirane.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1097,15 +1097,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 60 }
+sub has_dst_changes { 61 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1155,24 +1173,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Ulyanovsk.pm b/lib/DateTime/TimeZone/Europe/Ulyanovsk.pm
index b1bcd60a..0184f9a9 100644
--- a/lib/DateTime/TimeZone/Europe/Ulyanovsk.pm
+++ b/lib/DateTime/TimeZone/Europe/Ulyanovsk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -624,11 +624,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 30 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Uzhgorod.pm b/lib/DateTime/TimeZone/Europe/Uzhgorod.pm
index 41df9869..2e812bcf 100644
--- a/lib/DateTime/TimeZone/Europe/Uzhgorod.pm
+++ b/lib/DateTime/TimeZone/Europe/Uzhgorod.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1016,15 +1016,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1074,24 +1092,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Vienna.pm b/lib/DateTime/TimeZone/Europe/Vienna.pm
index 1d8cb06c..c4d7cd05 100644
--- a/lib/DateTime/TimeZone/Europe/Vienna.pm
+++ b/lib/DateTime/TimeZone/Europe/Vienna.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1169,15 +1169,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 62 }
+sub has_dst_changes { 63 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Vilnius.pm b/lib/DateTime/TimeZone/Europe/Vilnius.pm
index c6791622..0225f2f0 100644
--- a/lib/DateTime/TimeZone/Europe/Vilnius.pm
+++ b/lib/DateTime/TimeZone/Europe/Vilnius.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -989,15 +989,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 50 }
+sub has_dst_changes { 51 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1047,24 +1065,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Volgograd.pm b/lib/DateTime/TimeZone/Europe/Volgograd.pm
index 2e02667a..5de30296 100644
--- a/lib/DateTime/TimeZone/Europe/Volgograd.pm
+++ b/lib/DateTime/TimeZone/Europe/Volgograd.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -615,11 +615,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 29 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Warsaw.pm b/lib/DateTime/TimeZone/Europe/Warsaw.pm
index f67d7d56..c7a6634e 100644
--- a/lib/DateTime/TimeZone/Europe/Warsaw.pm
+++ b/lib/DateTime/TimeZone/Europe/Warsaw.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1403,15 +1403,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 75 }
+sub has_dst_changes { 76 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Europe/Zaporozhye.pm b/lib/DateTime/TimeZone/Europe/Zaporozhye.pm
index dc56bada..74aa1a01 100644
--- a/lib/DateTime/TimeZone/Europe/Zaporozhye.pm
+++ b/lib/DateTime/TimeZone/Europe/Zaporozhye.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -998,15 +998,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054987200, #    local_end 2030-10-27 04:00:00 (Sun)
 10800,
 1,
+'EEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054983600, #  local_start 2030-10-27 03:00:00 (Sun)
+64068289200, #    local_end 2031-03-30 03:00:00 (Sun)
+7200,
+0,
+'EET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068292800, #  local_start 2031-03-30 04:00:00 (Sun)
+64086436800, #    local_end 2031-10-26 04:00:00 (Sun)
+10800,
+1,
 'EEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1056,24 +1074,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Europe/Zurich.pm b/lib/DateTime/TimeZone/Europe/Zurich.pm
index d87187e7..2b4e4ad6 100644
--- a/lib/DateTime/TimeZone/Europe/Zurich.pm
+++ b/lib/DateTime/TimeZone/Europe/Zurich.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -980,15 +980,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'CEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'CET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'CEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 52 }
+sub has_dst_changes { 53 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1038,24 +1056,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/HST.pm b/lib/DateTime/TimeZone/HST.pm
index b1bac791..bbdc1835 100644
--- a/lib/DateTime/TimeZone/HST.pm
+++ b/lib/DateTime/TimeZone/HST.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -30,11 +30,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Chagos.pm b/lib/DateTime/TimeZone/Indian/Chagos.pm
index c54d328b..271e1387 100644
--- a/lib/DateTime/TimeZone/Indian/Chagos.pm
+++ b/lib/DateTime/TimeZone/Indian/Chagos.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Christmas.pm b/lib/DateTime/TimeZone/Indian/Christmas.pm
index c088cd4b..eb59ce8f 100644
--- a/lib/DateTime/TimeZone/Indian/Christmas.pm
+++ b/lib/DateTime/TimeZone/Indian/Christmas.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Cocos.pm b/lib/DateTime/TimeZone/Indian/Cocos.pm
index f09b808f..6f0100af 100644
--- a/lib/DateTime/TimeZone/Indian/Cocos.pm
+++ b/lib/DateTime/TimeZone/Indian/Cocos.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Kerguelen.pm b/lib/DateTime/TimeZone/Indian/Kerguelen.pm
index c3f82655..ef1044b0 100644
--- a/lib/DateTime/TimeZone/Indian/Kerguelen.pm
+++ b/lib/DateTime/TimeZone/Indian/Kerguelen.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/antarctica.  Olson data version 2019c
+# Generated from debian/tzdata/antarctica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Mahe.pm b/lib/DateTime/TimeZone/Indian/Mahe.pm
index a204fb81..231a60c0 100644
--- a/lib/DateTime/TimeZone/Indian/Mahe.pm
+++ b/lib/DateTime/TimeZone/Indian/Mahe.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Maldives.pm b/lib/DateTime/TimeZone/Indian/Maldives.pm
index 8e3cf742..eb4f0a89 100644
--- a/lib/DateTime/TimeZone/Indian/Maldives.pm
+++ b/lib/DateTime/TimeZone/Indian/Maldives.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/asia.  Olson data version 2019c
+# Generated from debian/tzdata/asia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Mauritius.pm b/lib/DateTime/TimeZone/Indian/Mauritius.pm
index ebbdc7cc..9e30b254 100644
--- a/lib/DateTime/TimeZone/Indian/Mauritius.pm
+++ b/lib/DateTime/TimeZone/Indian/Mauritius.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 2 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Indian/Reunion.pm b/lib/DateTime/TimeZone/Indian/Reunion.pm
index af7e5e29..84334b98 100644
--- a/lib/DateTime/TimeZone/Indian/Reunion.pm
+++ b/lib/DateTime/TimeZone/Indian/Reunion.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/africa.  Olson data version 2019c
+# Generated from debian/tzdata/africa.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/MET.pm b/lib/DateTime/TimeZone/MET.pm
index 7f6c7ccc..37e1ac17 100644
--- a/lib/DateTime/TimeZone/MET.pm
+++ b/lib/DateTime/TimeZone/MET.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1115,15 +1115,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054983600, #    local_end 2030-10-27 03:00:00 (Sun)
 7200,
 1,
+'MEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054980000, #  local_start 2030-10-27 02:00:00 (Sun)
+64068285600, #    local_end 2031-03-30 02:00:00 (Sun)
+3600,
+0,
+'MET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068289200, #  local_start 2031-03-30 03:00:00 (Sun)
+64086433200, #    local_end 2031-10-26 03:00:00 (Sun)
+7200,
+1,
 'MEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 61 }
+sub has_dst_changes { 62 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/MST.pm b/lib/DateTime/TimeZone/MST.pm
index c93f2268..f51ddcd5 100644
--- a/lib/DateTime/TimeZone/MST.pm
+++ b/lib/DateTime/TimeZone/MST.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -30,11 +30,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/MST7MDT.pm b/lib/DateTime/TimeZone/MST7MDT.pm
index 4917d0cd..47cc364c 100644
--- a/lib/DateTime/TimeZone/MST7MDT.pm
+++ b/lib/DateTime/TimeZone/MST7MDT.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1232,15 +1232,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -21600,
 1,
+'MDT',
+    ],
+    [
+64055606400, #    utc_start 2030-11-03 08:00:00 (Sun)
+64066496400, #      utc_end 2031-03-09 09:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-25200,
+0,
+'MST',
+    ],
+    [
+64066496400, #    utc_start 2031-03-09 09:00:00 (Sun)
+64087056000, #      utc_end 2031-11-02 08:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-21600,
+1,
 'MDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/PST8PDT.pm b/lib/DateTime/TimeZone/PST8PDT.pm
index d05e0dba..5d010f34 100644
--- a/lib/DateTime/TimeZone/PST8PDT.pm
+++ b/lib/DateTime/TimeZone/PST8PDT.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1232,15 +1232,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64055584800, #    local_end 2030-11-03 02:00:00 (Sun)
 -25200,
 1,
+'PDT',
+    ],
+    [
+64055610000, #    utc_start 2030-11-03 09:00:00 (Sun)
+64066500000, #      utc_end 2031-03-09 10:00:00 (Sun)
+64055581200, #  local_start 2030-11-03 01:00:00 (Sun)
+64066471200, #    local_end 2031-03-09 02:00:00 (Sun)
+-28800,
+0,
+'PST',
+    ],
+    [
+64066500000, #    utc_start 2031-03-09 10:00:00 (Sun)
+64087059600, #      utc_end 2031-11-02 09:00:00 (Sun)
+64066474800, #  local_start 2031-03-09 03:00:00 (Sun)
+64087034400, #    local_end 2031-11-02 02:00:00 (Sun)
+-25200,
+1,
 'PDT',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 68 }
+sub has_dst_changes { 69 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Apia.pm b/lib/DateTime/TimeZone/Pacific/Apia.pm
index 735d700e..c9db7dca 100644
--- a/lib/DateTime/TimeZone/Pacific/Apia.pm
+++ b/lib/DateTime/TimeZone/Pacific/Apia.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -422,15 +422,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64052564400, #    local_end 2030-09-29 03:00:00 (Sun)
 46800,
 0,
+'+13',
+    ],
+    [
+64052517600, #    utc_start 2030-09-28 14:00:00 (Sat)
+64068847200, #      utc_end 2031-04-05 14:00:00 (Sat)
+64052568000, #  local_start 2030-09-29 04:00:00 (Sun)
+64068897600, #    local_end 2031-04-06 04:00:00 (Sun)
+50400,
+1,
+'+14',
+    ],
+    [
+64068847200, #    utc_start 2031-04-05 14:00:00 (Sat)
+64083967200, #      utc_end 2031-09-27 14:00:00 (Sat)
+64068894000, #  local_start 2031-04-06 03:00:00 (Sun)
+64084014000, #    local_end 2031-09-28 03:00:00 (Sun)
+46800,
+0,
 '+13',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 22 }
+sub has_dst_changes { 23 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -479,25 +497,25 @@ sub _last_observance { $last_observance }
 
 my $rules = [
   bless( {
-    'at' => '3:00',
+    'at' => '4:00',
     'from' => '2012',
-    'in' => 'Sep',
+    'in' => 'Apr',
     'letter' => '',
     'name' => 'WS',
-    'offset_from_std' => 3600,
-    'on' => 'lastSun',
-    'save' => '1',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=1',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
-    'at' => '4:00',
+    'at' => '3:00',
     'from' => '2012',
-    'in' => 'Apr',
+    'in' => 'Sep',
     'letter' => '',
     'name' => 'WS',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=1',
-    'save' => '0',
+    'offset_from_std' => 3600,
+    'on' => 'lastSun',
+    'save' => '1',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Pacific/Auckland.pm b/lib/DateTime/TimeZone/Pacific/Auckland.pm
index af1554b2..8b9080e6 100644
--- a/lib/DateTime/TimeZone/Pacific/Auckland.pm
+++ b/lib/DateTime/TimeZone/Pacific/Auckland.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1295,15 +1295,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64052560800, #    local_end 2030-09-29 02:00:00 (Sun)
 43200,
 0,
+'NZST',
+    ],
+    [
+64052517600, #    utc_start 2030-09-28 14:00:00 (Sat)
+64068847200, #      utc_end 2031-04-05 14:00:00 (Sat)
+64052564400, #  local_start 2030-09-29 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+46800,
+1,
+'NZDT',
+    ],
+    [
+64068847200, #    utc_start 2031-04-05 14:00:00 (Sat)
+64083967200, #      utc_end 2031-09-27 14:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084010400, #    local_end 2031-09-28 02:00:00 (Sun)
+43200,
+0,
 'NZST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 71 }
+sub has_dst_changes { 72 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Bougainville.pm b/lib/DateTime/TimeZone/Pacific/Bougainville.pm
index 3b9f38af..81f7cb3a 100644
--- a/lib/DateTime/TimeZone/Pacific/Bougainville.pm
+++ b/lib/DateTime/TimeZone/Pacific/Bougainville.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -75,11 +75,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Chatham.pm b/lib/DateTime/TimeZone/Pacific/Chatham.pm
index 54daf0d8..a2f25bbc 100644
--- a/lib/DateTime/TimeZone/Pacific/Chatham.pm
+++ b/lib/DateTime/TimeZone/Pacific/Chatham.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1052,15 +1052,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64052563500, #    local_end 2030-09-29 02:45:00 (Sun)
 45900,
 0,
+'+1245',
+    ],
+    [
+64052517600, #    utc_start 2030-09-28 14:00:00 (Sat)
+64068847200, #      utc_end 2031-04-05 14:00:00 (Sat)
+64052567100, #  local_start 2030-09-29 03:45:00 (Sun)
+64068896700, #    local_end 2031-04-06 03:45:00 (Sun)
+49500,
+1,
+'+1345',
+    ],
+    [
+64068847200, #    utc_start 2031-04-05 14:00:00 (Sat)
+64083967200, #      utc_end 2031-09-27 14:00:00 (Sat)
+64068893100, #  local_start 2031-04-06 02:45:00 (Sun)
+64084013100, #    local_end 2031-09-28 02:45:00 (Sun)
+45900,
+0,
 '+1245',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 57 }
+sub has_dst_changes { 58 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Chuuk.pm b/lib/DateTime/TimeZone/Pacific/Chuuk.pm
index 18fdd63d..9a9ce529 100644
--- a/lib/DateTime/TimeZone/Pacific/Chuuk.pm
+++ b/lib/DateTime/TimeZone/Pacific/Chuuk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -84,11 +84,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Easter.pm b/lib/DateTime/TimeZone/Pacific/Easter.pm
index 4529277e..73af2a1b 100644
--- a/lib/DateTime/TimeZone/Pacific/Easter.pm
+++ b/lib/DateTime/TimeZone/Pacific/Easter.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -1142,15 +1142,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64050732000, #    local_end 2030-09-07 22:00:00 (Sat)
 -21600,
 0,
+'-06',
+    ],
+    [
+64050753600, #    utc_start 2030-09-08 04:00:00 (Sun)
+64068894000, #      utc_end 2031-04-06 03:00:00 (Sun)
+64050735600, #  local_start 2030-09-07 23:00:00 (Sat)
+64068876000, #    local_end 2031-04-05 22:00:00 (Sat)
+-18000,
+1,
+'-05',
+    ],
+    [
+64068894000, #    utc_start 2031-04-06 03:00:00 (Sun)
+64082203200, #      utc_end 2031-09-07 04:00:00 (Sun)
+64068872400, #  local_start 2031-04-05 21:00:00 (Sat)
+64082181600, #    local_end 2031-09-06 22:00:00 (Sat)
+-21600,
+0,
 '-06',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 62 }
+sub has_dst_changes { 63 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Efate.pm b/lib/DateTime/TimeZone/Pacific/Efate.pm
index 9a939aa1..e88a01ce 100644
--- a/lib/DateTime/TimeZone/Pacific/Efate.pm
+++ b/lib/DateTime/TimeZone/Pacific/Efate.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -219,11 +219,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 10 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Enderbury.pm b/lib/DateTime/TimeZone/Pacific/Enderbury.pm
index 96b83689..3c42af0b 100644
--- a/lib/DateTime/TimeZone/Pacific/Enderbury.pm
+++ b/lib/DateTime/TimeZone/Pacific/Enderbury.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Fakaofo.pm b/lib/DateTime/TimeZone/Pacific/Fakaofo.pm
index 26d2c694..e7d812c4 100644
--- a/lib/DateTime/TimeZone/Pacific/Fakaofo.pm
+++ b/lib/DateTime/TimeZone/Pacific/Fakaofo.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Fiji.pm b/lib/DateTime/TimeZone/Pacific/Fiji.pm
index 368dc271..76a908f7 100644
--- a/lib/DateTime/TimeZone/Pacific/Fiji.pm
+++ b/lib/DateTime/TimeZone/Pacific/Fiji.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -449,15 +449,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64056189600, #    local_end 2030-11-10 02:00:00 (Sun)
 43200,
 0,
+'+12',
+    ],
+    [
+64056146400, #    utc_start 2030-11-09 14:00:00 (Sat)
+64061589600, #      utc_end 2031-01-11 14:00:00 (Sat)
+64056193200, #  local_start 2030-11-10 03:00:00 (Sun)
+64061636400, #    local_end 2031-01-12 03:00:00 (Sun)
+46800,
+1,
+'+13',
+    ],
+    [
+64061589600, #    utc_start 2031-01-11 14:00:00 (Sat)
+64087596000, #      utc_end 2031-11-08 14:00:00 (Sat)
+64061632800, #  local_start 2031-01-12 02:00:00 (Sun)
+64087639200, #    local_end 2031-11-09 02:00:00 (Sun)
+43200,
+0,
 '+12',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 24 }
+sub has_dst_changes { 25 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -505,17 +523,6 @@ my $last_observance = bless( {
 sub _last_observance { $last_observance }
 
 my $rules = [
-  bless( {
-    'at' => '3:00',
-    'from' => '2015',
-    'in' => 'Jan',
-    'letter' => '',
-    'name' => 'Fiji',
-    'offset_from_std' => 0,
-    'on' => 'Sun>=12',
-    'save' => '0',
-    'to' => 'max'
-  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00',
     'from' => '2019',
@@ -526,6 +533,17 @@ my $rules = [
     'on' => 'Sun>=8',
     'save' => '1:00',
     'to' => 'max'
+  }, 'DateTime::TimeZone::OlsonDB::Rule' ),
+  bless( {
+    'at' => '3:00',
+    'from' => '2015',
+    'in' => 'Jan',
+    'letter' => '',
+    'name' => 'Fiji',
+    'offset_from_std' => 0,
+    'on' => 'Sun>=12',
+    'save' => '0',
+    'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
 ;
diff --git a/lib/DateTime/TimeZone/Pacific/Funafuti.pm b/lib/DateTime/TimeZone/Pacific/Funafuti.pm
index a8a664ef..aa908b60 100644
--- a/lib/DateTime/TimeZone/Pacific/Funafuti.pm
+++ b/lib/DateTime/TimeZone/Pacific/Funafuti.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Galapagos.pm b/lib/DateTime/TimeZone/Pacific/Galapagos.pm
index ad8ba0e6..918c3e14 100644
--- a/lib/DateTime/TimeZone/Pacific/Galapagos.pm
+++ b/lib/DateTime/TimeZone/Pacific/Galapagos.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/southamerica.  Olson data version 2019c
+# Generated from debian/tzdata/southamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 1 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Gambier.pm b/lib/DateTime/TimeZone/Pacific/Gambier.pm
index 51f3cd38..5442fa24 100644
--- a/lib/DateTime/TimeZone/Pacific/Gambier.pm
+++ b/lib/DateTime/TimeZone/Pacific/Gambier.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Guadalcanal.pm b/lib/DateTime/TimeZone/Pacific/Guadalcanal.pm
index 2c7038d4..b7a4f282 100644
--- a/lib/DateTime/TimeZone/Pacific/Guadalcanal.pm
+++ b/lib/DateTime/TimeZone/Pacific/Guadalcanal.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Guam.pm b/lib/DateTime/TimeZone/Pacific/Guam.pm
index faf793e4..d9c22b3e 100644
--- a/lib/DateTime/TimeZone/Pacific/Guam.pm
+++ b/lib/DateTime/TimeZone/Pacific/Guam.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -219,11 +219,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 8 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Honolulu.pm b/lib/DateTime/TimeZone/Pacific/Honolulu.pm
index 65c15f75..8ab0ea28 100644
--- a/lib/DateTime/TimeZone/Pacific/Honolulu.pm
+++ b/lib/DateTime/TimeZone/Pacific/Honolulu.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/northamerica.  Olson data version 2019c
+# Generated from debian/tzdata/northamerica.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Kiritimati.pm b/lib/DateTime/TimeZone/Pacific/Kiritimati.pm
index 8b5aeb7f..2f06b406 100644
--- a/lib/DateTime/TimeZone/Pacific/Kiritimati.pm
+++ b/lib/DateTime/TimeZone/Pacific/Kiritimati.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Kosrae.pm b/lib/DateTime/TimeZone/Pacific/Kosrae.pm
index f5572b0d..9371e505 100644
--- a/lib/DateTime/TimeZone/Pacific/Kosrae.pm
+++ b/lib/DateTime/TimeZone/Pacific/Kosrae.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -111,11 +111,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Kwajalein.pm b/lib/DateTime/TimeZone/Pacific/Kwajalein.pm
index cddcb9c3..8a75c8e6 100644
--- a/lib/DateTime/TimeZone/Pacific/Kwajalein.pm
+++ b/lib/DateTime/TimeZone/Pacific/Kwajalein.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -84,11 +84,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Majuro.pm b/lib/DateTime/TimeZone/Pacific/Majuro.pm
index 77f0cbf3..59c5d6c7 100644
--- a/lib/DateTime/TimeZone/Pacific/Majuro.pm
+++ b/lib/DateTime/TimeZone/Pacific/Majuro.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Marquesas.pm b/lib/DateTime/TimeZone/Pacific/Marquesas.pm
index dbcc057d..38a4e702 100644
--- a/lib/DateTime/TimeZone/Pacific/Marquesas.pm
+++ b/lib/DateTime/TimeZone/Pacific/Marquesas.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Nauru.pm b/lib/DateTime/TimeZone/Pacific/Nauru.pm
index 0d41186b..61f7bdf9 100644
--- a/lib/DateTime/TimeZone/Pacific/Nauru.pm
+++ b/lib/DateTime/TimeZone/Pacific/Nauru.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -66,11 +66,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Niue.pm b/lib/DateTime/TimeZone/Pacific/Niue.pm
index e1644fec..e2c1bc75 100644
--- a/lib/DateTime/TimeZone/Pacific/Niue.pm
+++ b/lib/DateTime/TimeZone/Pacific/Niue.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -57,11 +57,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Norfolk.pm b/lib/DateTime/TimeZone/Pacific/Norfolk.pm
index a9f3e1d4..911de31b 100644
--- a/lib/DateTime/TimeZone/Pacific/Norfolk.pm
+++ b/lib/DateTime/TimeZone/Pacific/Norfolk.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -278,15 +278,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64053165600, #    local_end 2030-10-06 02:00:00 (Sun)
 39600,
 0,
+'+11',
+    ],
+    [
+64053126000, #    utc_start 2030-10-05 15:00:00 (Sat)
+64068850800, #      utc_end 2031-04-05 15:00:00 (Sat)
+64053169200, #  local_start 2030-10-06 03:00:00 (Sun)
+64068894000, #    local_end 2031-04-06 03:00:00 (Sun)
+43200,
+1,
+'+12',
+    ],
+    [
+64068850800, #    utc_start 2031-04-05 15:00:00 (Sat)
+64084575600, #      utc_end 2031-10-04 15:00:00 (Sat)
+64068890400, #  local_start 2031-04-06 02:00:00 (Sun)
+64084615200, #    local_end 2031-10-05 02:00:00 (Sun)
+39600,
+0,
 '+11',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 13 }
+sub has_dst_changes { 14 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -337,23 +355,23 @@ my $rules = [
   bless( {
     'at' => '2:00s',
     'from' => '2008',
-    'in' => 'Oct',
-    'letter' => 'D',
+    'in' => 'Apr',
+    'letter' => 'S',
     'name' => 'AN',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'Sun>=1',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '2:00s',
     'from' => '2008',
-    'in' => 'Apr',
-    'letter' => 'S',
+    'in' => 'Oct',
+    'letter' => 'D',
     'name' => 'AN',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'Sun>=1',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
diff --git a/lib/DateTime/TimeZone/Pacific/Noumea.pm b/lib/DateTime/TimeZone/Pacific/Noumea.pm
index 299aa930..c78c9bd7 100644
--- a/lib/DateTime/TimeZone/Pacific/Noumea.pm
+++ b/lib/DateTime/TimeZone/Pacific/Noumea.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 3 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Pago_Pago.pm b/lib/DateTime/TimeZone/Pacific/Pago_Pago.pm
index 04ff572b..fdfee5cb 100644
--- a/lib/DateTime/TimeZone/Pacific/Pago_Pago.pm
+++ b/lib/DateTime/TimeZone/Pacific/Pago_Pago.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Palau.pm b/lib/DateTime/TimeZone/Pacific/Palau.pm
index d4f30d14..12611f5b 100644
--- a/lib/DateTime/TimeZone/Pacific/Palau.pm
+++ b/lib/DateTime/TimeZone/Pacific/Palau.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Pitcairn.pm b/lib/DateTime/TimeZone/Pacific/Pitcairn.pm
index fb004d20..3619d6cd 100644
--- a/lib/DateTime/TimeZone/Pacific/Pitcairn.pm
+++ b/lib/DateTime/TimeZone/Pacific/Pitcairn.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Pohnpei.pm b/lib/DateTime/TimeZone/Pacific/Pohnpei.pm
index e47c4ff8..8fd11c0f 100644
--- a/lib/DateTime/TimeZone/Pacific/Pohnpei.pm
+++ b/lib/DateTime/TimeZone/Pacific/Pohnpei.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -93,11 +93,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Port_Moresby.pm b/lib/DateTime/TimeZone/Pacific/Port_Moresby.pm
index b9375c48..61c0f13d 100644
--- a/lib/DateTime/TimeZone/Pacific/Port_Moresby.pm
+++ b/lib/DateTime/TimeZone/Pacific/Port_Moresby.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -48,11 +48,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Rarotonga.pm b/lib/DateTime/TimeZone/Pacific/Rarotonga.pm
index 72da16e7..54674d49 100644
--- a/lib/DateTime/TimeZone/Pacific/Rarotonga.pm
+++ b/lib/DateTime/TimeZone/Pacific/Rarotonga.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -273,11 +273,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 13 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Tahiti.pm b/lib/DateTime/TimeZone/Pacific/Tahiti.pm
index a97dee21..6d08ea12 100644
--- a/lib/DateTime/TimeZone/Pacific/Tahiti.pm
+++ b/lib/DateTime/TimeZone/Pacific/Tahiti.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Tarawa.pm b/lib/DateTime/TimeZone/Pacific/Tarawa.pm
index dbc12da5..259efeab 100644
--- a/lib/DateTime/TimeZone/Pacific/Tarawa.pm
+++ b/lib/DateTime/TimeZone/Pacific/Tarawa.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Tongatapu.pm b/lib/DateTime/TimeZone/Pacific/Tongatapu.pm
index efb93750..c0783e45 100644
--- a/lib/DateTime/TimeZone/Pacific/Tongatapu.pm
+++ b/lib/DateTime/TimeZone/Pacific/Tongatapu.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -129,11 +129,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 4 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Wake.pm b/lib/DateTime/TimeZone/Pacific/Wake.pm
index 35f92df6..1481e6ed 100644
--- a/lib/DateTime/TimeZone/Pacific/Wake.pm
+++ b/lib/DateTime/TimeZone/Pacific/Wake.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/Pacific/Wallis.pm b/lib/DateTime/TimeZone/Pacific/Wallis.pm
index 4ad37658..e817fc57 100644
--- a/lib/DateTime/TimeZone/Pacific/Wallis.pm
+++ b/lib/DateTime/TimeZone/Pacific/Wallis.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/australasia.  Olson data version 2019c
+# Generated from debian/tzdata/australasia.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -39,11 +39,11 @@ DateTime::TimeZone::INFINITY, #    local_end
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
 sub has_dst_changes { 0 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
diff --git a/lib/DateTime/TimeZone/WET.pm b/lib/DateTime/TimeZone/WET.pm
index 94243934..53853dee 100644
--- a/lib/DateTime/TimeZone/WET.pm
+++ b/lib/DateTime/TimeZone/WET.pm
@@ -3,7 +3,7 @@
 # DateTime::TimeZone module distribution in the tools/ directory
 
 #
-# Generated from debian/tzdata/europe.  Olson data version 2019c
+# Generated from debian/tzdata/europe.  Olson data version 2020a
 #
 # Do not edit this file directly.
 #
@@ -989,15 +989,33 @@ DateTime::TimeZone::NEG_INFINITY, #  local_start
 64054980000, #    local_end 2030-10-27 02:00:00 (Sun)
 3600,
 1,
+'WEST',
+    ],
+    [
+64054976400, #    utc_start 2030-10-27 01:00:00 (Sun)
+64068282000, #      utc_end 2031-03-30 01:00:00 (Sun)
+64054976400, #  local_start 2030-10-27 01:00:00 (Sun)
+64068282000, #    local_end 2031-03-30 01:00:00 (Sun)
+0,
+0,
+'WET',
+    ],
+    [
+64068282000, #    utc_start 2031-03-30 01:00:00 (Sun)
+64086426000, #      utc_end 2031-10-26 01:00:00 (Sun)
+64068285600, #  local_start 2031-03-30 02:00:00 (Sun)
+64086429600, #    local_end 2031-10-26 02:00:00 (Sun)
+3600,
+1,
 'WEST',
     ],
 ];
 
-sub olson_version { '2019c' }
+sub olson_version { '2020a' }
 
-sub has_dst_changes { 54 }
+sub has_dst_changes { 55 }
 
-sub _max_year { 2029 }
+sub _max_year { 2030 }
 
 sub _new_instance
 {
@@ -1021,24 +1039,24 @@ sub _last_observance { $last_observance }
 my $rules = [
   bless( {
     'at' => '1:00u',
-    'from' => '1996',
-    'in' => 'Oct',
-    'letter' => '',
+    'from' => '1981',
+    'in' => 'Mar',
+    'letter' => 'S',
     'name' => 'EU',
-    'offset_from_std' => 0,
+    'offset_from_std' => 3600,
     'on' => 'lastSun',
-    'save' => '0',
+    'save' => '1:00',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' ),
   bless( {
     'at' => '1:00u',
-    'from' => '1981',
-    'in' => 'Mar',
-    'letter' => 'S',
+    'from' => '1996',
+    'in' => 'Oct',
+    'letter' => '',
     'name' => 'EU',
-    'offset_from_std' => 3600,
+    'offset_from_std' => 0,
     'on' => 'lastSun',
-    'save' => '1:00',
+    'save' => '0',
     'to' => 'max'
   }, 'DateTime::TimeZone::OlsonDB::Rule' )
 ]
