Update timezone data to 2016f

The 2016f release of the tz code and data is available. It reflects the
following changes, which were either circulated on the tz mailing list
or are relatively minor technical or administrative changes:

   Changes affecting future time stamps

     The Egyptian government changed its mind on short notice, and
     Africa/Cairo will not introduce DST starting 2016-07-07 after all.
     (Thanks to Mina Samuel.)

     Asia/Novosibirsk switches from +06 to +07 on 2016-07-24 at 02:00.
     (Thanks to Stepan Golosunov.)

   Changes to past and future time stamps

     Asia/Novokuznetsk and Asia/Novosibirsk now use numeric time zone
     abbreviations instead of invented ones.

   Changes affecting past time stamps

     Europe/Minsk's 1992-03-29 spring-forward transition was at 02:00
not 00:00.
     (Thanks to Stepan Golosunov.)

This change also contains updates from:
http://bugs.icu-project.org/trac/changeset/38944
http://bugs.icu-project.org/trac/changeset/38943
(the change to tztest.cpp has not been applied since it relates to
the ICU license change, not tzdata at all)

Note: Paul Eggert changed the key used to sign the tzdata bundle and
the new public key cannot be found. The changes to the data since
2016e have been verified visually.

Change-Id: I4ceb56e7ecb5090340a1b184334047e5fb6cec7e
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_util
Test: Ran CTS/android.core.tests.libcore.package.harmony_java_text
Test: Ran CTS/android.core.tests.libcore.package.libcore
Bug: 29984514
diff --git a/icu4c/source/data/misc/zoneinfo64.txt b/icu4c/source/data/misc/zoneinfo64.txt
index dc079b4..1ab9f95 100644
--- a/icu4c/source/data/misc/zoneinfo64.txt
+++ b/icu4c/source/data/misc/zoneinfo64.txt
@@ -3,9 +3,9 @@
 // Corporation and others.  All Rights Reserved.
 //---------------------------------------------------------
 // Build tool:  tz2icu
-// Build date:  Wed Jun 15 14:33:28 2016
+// Build date:  Wed Jul  6 15:23:58 2016
 // tz database: ftp://ftp.iana.org/tz/
-// tz version:  2016e
+// tz version:  2016f
 // ICU version: 56.1
 //---------------------------------------------------------
 // >> !!! >>   THIS IS A MACHINE-GENERATED FILE   << !!! <<
@@ -13,7 +13,7 @@
 //---------------------------------------------------------
 
 zoneinfo64:table(nofallback) {
- TZVersion { "2016e" }
+ TZVersion { "2016f" }
  Zones:array { 
   /* ACT */ :int { 350 } //Z#0
   /* AET */ :int { 362 } //Z#1
@@ -53,13 +53,9 @@
   /* Africa/Bujumbura */ :int { 43 } //Z#17
   /* Africa/Cairo */ :table {
     transPre32:intvector { -1, 2109558187 }
-    trans:intvector { -929844000, -923108400, -906170400, -892868400, -875844000, -857790000, -844308000, -825822000, -812685600, -794199600, -779853600, -762663600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -71107200, -52707600, -39484800, -21171600, -7948800, 10364400, 23587200, 41900400, 55123200, 73522800, 86745600, 105058800, 118281600, 136594800, 149817600, 168130800, 181353600, 199753200, 212976000, 231289200, 244512000, 262825200, 276048000, 294361200, 307584000, 325983600, 339206400, 357519600, 370742400, 396399600, 402278400, 426812400, 433814400, 452214000, 465436800, 483750000, 496972800, 515286000, 528508800, 546822000, 560044800, 578444400, 591667200, 610412400, 623203200, 641516400, 654739200, 673052400, 686275200, 704674800, 717897600, 736210800, 749433600, 767746800, 780969600, 799020000, 812322000, 830469600, 843771600, 861919200, 875221200, 893368800, 906670800, 925423200, 938725200, 956872800, 970174800, 988322400, 1001624400, 1019772000, 1033074000, 1051221600, 1064523600, 1083276000, 1096578000, 1114725600, 1128027600, 1146175200, 1158872400, 1177624800, 1189112400, 1209074400, 1219957200, 1240524000, 1250802000, 1272578400, 1281474000, 1284069600, 1285880400, 1400191200, 1403816400, 1406844000, 1411678800, 1467928800, 1477602000, 1493330400, 1495746000, 1498773600, 1509051600, 1524780000, 1525986000, 1529013600, 1540501200, 1556229600, 1556830800, 1559858400, 1572555600, 1590703200, 1604005200, 1620943200, 1635454800, 1651788000, 1666904400, 1682632800, 1698354000, 1714082400, 1730408400, 1745532000, 1761858000, 1777586400, 1793307600, 1809036000, 1824757200, 1840485600, 1856206800, 1871935200, 1887656400, 1903384800, 1919710800, 1934834400, 1951160400, 1966888800, 1982610000, 1998338400, 2014059600, 2029788000, 2045509200, 2061237600, 2076958800, 2092687200, 2107803600, 2124741600, 2138648400 }
-    transPost32:intvector { 0, -2138776096, 0, -2126078896, 0, -2107326496, 0, -2095234096, 0, -2092206496, 0, -2091605296, 0, -2075876896, 0, -2064389296, 0, -2061361696, 0, -2060155696, 0, -2044427296, 0, -2034149296, 0, -2031121696, 0, -2028101296, 0, -2012977696, 0, -2003304496, 0, -2000276896, 0, -1996651696, 0, -1980923296, 0, -1972459696, 0, -1969432096, 0, -1965202096, 0, -1949473696, 0, -1942219696, 0, -1939192096, 0, -1933752496, 0, -1918024096, 0, -1911374896, 0, -1908347296, 0, -1902302896, 0, -1886574496, 0, -1881134896, 0, -1877502496, 0, -1870853296, 0, -1855124896, 0, -1850290096, 0, -1847262496, 0, -1838798896, 0, -1823070496, 0, -1819445296, 0, -1816417696, 0, -1807349296, 0, -1791620896, 0, -1789205296, 0, -1786177696, 0, -1775899696, 0, -1760171296, 0, -1758360496, 0, -1755332896, 0, -1744450096, 0, -1728721696, 0, -1727515696, 0, -1724488096, 0, -1713000496, 0, -1694248096, 0, -1680946096, 0, -1663403296, 0, -1649496496, 0, -1632558496, 0, -1618046896, 0, -1602318496, 0, -1586597296 }
+    trans:intvector { -929844000, -923108400, -906170400, -892868400, -875844000, -857790000, -844308000, -825822000, -812685600, -794199600, -779853600, -762663600, -399088800, -386650800, -368330400, -355114800, -336790800, -323654400, -305168400, -292032000, -273632400, -260496000, -242096400, -228960000, -210560400, -197424000, -178938000, -165801600, -147402000, -134265600, -115866000, -102643200, -84330000, -71107200, -52707600, -39484800, -21171600, -7948800, 10364400, 23587200, 41900400, 55123200, 73522800, 86745600, 105058800, 118281600, 136594800, 149817600, 168130800, 181353600, 199753200, 212976000, 231289200, 244512000, 262825200, 276048000, 294361200, 307584000, 325983600, 339206400, 357519600, 370742400, 396399600, 402278400, 426812400, 433814400, 452214000, 465436800, 483750000, 496972800, 515286000, 528508800, 546822000, 560044800, 578444400, 591667200, 610412400, 623203200, 641516400, 654739200, 673052400, 686275200, 704674800, 717897600, 736210800, 749433600, 767746800, 780969600, 799020000, 812322000, 830469600, 843771600, 861919200, 875221200, 893368800, 906670800, 925423200, 938725200, 956872800, 970174800, 988322400, 1001624400, 1019772000, 1033074000, 1051221600, 1064523600, 1083276000, 1096578000, 1114725600, 1128027600, 1146175200, 1158872400, 1177624800, 1189112400, 1209074400, 1219957200, 1240524000, 1250802000, 1272578400, 1281474000, 1284069600, 1285880400, 1400191200, 1403816400, 1406844000, 1411678800 }
     typeOffsets:intvector { 7509, 0, 7200, 0, 7200, 3600 }
-    typeMap:bin { "0102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
-    finalRule { "Egypt" }
-    finalRaw:int { 7200 }
-    finalYear:int { 2056 }
+    typeMap:bin { "01020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201020102010201" }
     links:intvector { 3, 18, 396 }
   } //Z#18
   /* Africa/Casablanca */ :table {
@@ -1519,9 +1515,9 @@
     typeMap:bin { "01030403040304030403040304030403040304030403020103040304030403040304030403040304030403040304030403040304030403040304030403020103" }
   } //Z#295
   /* Asia/Novosibirsk */ :table {
-    trans:intvector { -1579476700, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 738086400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600 }
+    trans:intvector { -1579476700, -1247551200, 354906000, 370713600, 386442000, 402249600, 417978000, 433785600, 449600400, 465332400, 481057200, 496782000, 512506800, 528231600, 543956400, 559681200, 575406000, 591130800, 606855600, 622580400, 638305200, 654634800, 670359600, 686088000, 695764800, 701809200, 717534000, 733258800, 738086400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600, 1469304000 }
     typeOffsets:intvector { 19900, 0, 21600, 0, 21600, 3600, 25200, 0, 25200, 3600 }
-    typeMap:bin { "010304030403040304030403040304030403040304030201030403040201020102010201020102010201020102010201020102010201020102010201020102010301" }
+    typeMap:bin { "01030403040304030403040304030403040304030403020103040304020102010201020102010201020102010201020102010201020102010201020102010201030103" }
   } //Z#296
   /* Asia/Omsk */ :table {
     trans:intvector { -1582088010, -1247547600, 354909600, 370717200, 386445600, 402253200, 417981600, 433789200, 449604000, 465336000, 481060800, 496785600, 512510400, 528235200, 543960000, 559684800, 575409600, 591134400, 606859200, 622584000, 638308800, 654638400, 670363200, 686091600, 695768400, 701812800, 717537600, 733262400, 748987200, 764712000, 780436800, 796161600, 811886400, 828216000, 846360000, 859665600, 877809600, 891115200, 909259200, 922564800, 941313600, 954014400, 972763200, 985464000, 1004212800, 1017518400, 1035662400, 1048968000, 1067112000, 1080417600, 1099166400, 1111867200, 1130616000, 1143316800, 1162065600, 1174766400, 1193515200, 1206820800, 1224964800, 1238270400, 1256414400, 1269720000, 1288468800, 1301169600, 1414263600 }
@@ -2236,7 +2232,7 @@
   /* Europe/Mariehamn */ :int { 451 } //Z#464
   /* Europe/Minsk */ :table {
     transPre32:intvector { -1, 1454819880 }
-    trans:intvector { -1441158600, -1247536800, -899780400, -857257200, -844556400, -828226800, -812502000, -804650400, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 670374000, 686102400, 701820000, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000 }
+    trans:intvector { -1441158600, -1247536800, -899780400, -857257200, -844556400, -828226800, -812502000, -804650400, 354920400, 370728000, 386456400, 402264000, 417992400, 433800000, 449614800, 465346800, 481071600, 496796400, 512521200, 528246000, 543970800, 559695600, 575420400, 591145200, 606870000, 622594800, 670374000, 686102400, 701827200, 717552000, 733276800, 749001600, 764726400, 780451200, 796176000, 811900800, 828230400, 846374400, 859680000, 877824000, 891129600, 909273600, 922579200, 941328000, 954028800, 972777600, 985478400, 1004227200, 1017532800, 1035676800, 1048982400, 1067126400, 1080432000, 1099180800, 1111881600, 1130630400, 1143331200, 1162080000, 1174780800, 1193529600, 1206835200, 1224979200, 1238284800, 1256428800, 1269734400, 1288483200, 1301184000 }
     typeOffsets:intvector { 6616, 0, 3600, 0, 3600, 3600, 6600, 0, 7200, 0, 7200, 3600, 10800, 0, 10800, 3600 }
     typeMap:bin { "0304060201020102060706070607060706070607060706070607060504050405040504050405040504050405040504050405040504050405040504050405040504050406" }
   } //Z#465
@@ -3091,69 +3087,66 @@
   EUAsia:intvector {
     2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 3600
   } //_#11
-  Egypt:intvector {
-    3, -30, -5, 86400, 0, 9, -31, -5, 86400, 0, 3600
-  } //_#12
   Fiji:intvector {
     10, 1, -1, 7200, 0, 0, 15, -1, 10800, 0, 3600
-  } //_#13
+  } //_#12
   Iran:intvector {
     2, 21, 0, 0, 0, 8, 21, 0, 0, 0, 3600
-  } //_#14
+  } //_#13
   Jordan:intvector {
     2, -31, -5, 86400, 0, 9, -31, -6, 0, 1, 3600
-  } //_#15
+  } //_#14
   LH:intvector {
     9, 1, -1, 7200, 0, 3, 1, -1, 7200, 0, 1800
-  } //_#16
+  } //_#15
   Lebanon:intvector {
     2, -31, -1, 0, 0, 9, -31, -1, 0, 0, 3600
-  } //_#17
+  } //_#16
   Mexico:intvector {
     3, 1, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#18
+  } //_#17
   Moldova:intvector {
     2, -31, -1, 7200, 0, 9, -31, -1, 10800, 0, 3600
-  } //_#19
+  } //_#18
   Mongol:intvector {
     2, -31, -7, 7200, 0, 8, -30, -7, 0, 0, 3600
-  } //_#20
+  } //_#19
   Morocco:intvector {
     2, -31, -1, 7200, 0, 9, -31, -1, 10800, 0, 3600
-  } //_#21
+  } //_#20
   NZ:intvector {
     8, -30, -1, 7200, 1, 3, 1, -1, 7200, 1, 3600
-  } //_#22
+  } //_#21
   Namibia:intvector {
     8, 1, -1, 7200, 0, 3, 1, -1, 7200, 0, 3600
-  } //_#23
+  } //_#22
   Palestine:intvector {
     2, -31, -7, 3600, 0, 9, 21, -6, 0, 0, 3600
-  } //_#24
+  } //_#23
   Para:intvector {
     9, 1, -1, 0, 0, 2, 22, -1, 0, 0, 3600
-  } //_#25
+  } //_#24
   Syria:intvector {
     2, -31, -6, 0, 0, 9, -31, -6, 0, 0, 3600
-  } //_#26
+  } //_#25
   SystemV:intvector {
     3, -30, -1, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#27
+  } //_#26
   Thule:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#28
+  } //_#27
   Troll:intvector {
     2, -31, -1, 3600, 2, 9, -31, -1, 3600, 2, 7200
-  } //_#29
+  } //_#28
   US:intvector {
     2, 8, -1, 7200, 0, 10, 1, -1, 7200, 0, 3600
-  } //_#30
+  } //_#29
   WS:intvector {
     8, -30, -1, 10800, 0, 3, 1, -1, 14400, 0, 3600
-  } //_#31
+  } //_#30
   Zion:intvector {
     2, 23, -6, 7200, 0, 9, -31, -1, 7200, 0, 3600
-  } //_#32
+  } //_#31
  }
  Regions:array {
   "AU", //Z#0 ACT
diff --git a/icu4c/source/stubdata/icudt56l.dat b/icu4c/source/stubdata/icudt56l.dat
index b771b9a..a1c5ef5 100644
--- a/icu4c/source/stubdata/icudt56l.dat
+++ b/icu4c/source/stubdata/icudt56l.dat
Binary files differ
diff --git a/icu4c/source/test/intltest/tztest.cpp b/icu4c/source/test/intltest/tztest.cpp
index 57e9e19..15a251d 100644
--- a/icu4c/source/test/intltest/tztest.cpp
+++ b/icu4c/source/test/intltest/tztest.cpp
@@ -861,7 +861,7 @@
         {"ECT", 60, TRUE},    // ICU Link - Europe/Paris
         {"MET", 60, TRUE},    // Olson europe 1:00 C-Eur
         {"CAT", 120, FALSE},  // ICU Link - Africa/Maputo
-        {"ART", 120, TRUE},  // ICU Link - Africa/Cairo
+        {"ART", 120, FALSE},  // ICU Link - Africa/Cairo
         {"EET", 120, TRUE},   // Olson europe 2:00 EU
         {"EAT", 180, FALSE},  // ICU Link - Africa/Addis_Ababa
         {"NET", 240, FALSE},  // ICU Link - Asia/Yerevan
diff --git a/icu4j/main/shared/data/icudata.jar b/icu4j/main/shared/data/icudata.jar
index a6bdc2d..f51d830 100644
--- a/icu4j/main/shared/data/icudata.jar
+++ b/icu4j/main/shared/data/icudata.jar
Binary files differ
diff --git a/icu4j/main/shared/data/icutzdata.jar b/icu4j/main/shared/data/icutzdata.jar
index da6306c..c2cbd6e 100644
--- a/icu4j/main/shared/data/icutzdata.jar
+++ b/icu4j/main/shared/data/icutzdata.jar
Binary files differ
diff --git a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
index cc2f12b..bac70b5 100644
--- a/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
+++ b/icu4j/main/tests/core/src/com/ibm/icu/dev/test/timezone/TimeZoneTest.java
@@ -152,7 +152,7 @@
             new ZoneDescriptor("ECT", 60, true),    // ICU Link - Europe/Paris
             new ZoneDescriptor("MET", 60, true),    // Olson europe 1:00 C-Eur
             new ZoneDescriptor("CAT", 120, false),  // ICU Link - Africa/Harare
-            new ZoneDescriptor("ART", 120, true),  // ICU Link - Africa/Cairo
+            new ZoneDescriptor("ART", 120, false),  // ICU Link - Africa/Cairo
             new ZoneDescriptor("EET", 120, true),   // Olson europe 2:00 EU
             new ZoneDescriptor("EAT", 180, false),  // ICU Link - Africa/Addis_Ababa
             new ZoneDescriptor("NET", 240, false),  // ICU Link - Asia/Yerevan