diff --git a/testing/data/create-test-data.sh b/testing/data/create-test-data.sh
index 2d3dce2..de32319 100755
--- a/testing/data/create-test-data.sh
+++ b/testing/data/create-test-data.sh
@@ -60,4 +60,26 @@
     -output_distro_dir ${TEST_DIR}/output_data/distro \
     -output_version_file ${TEST_DIR}/output_data/version/tz_version
 
+# Test 3: A corrupted set of data like test 1, but with a truncated ICU
+# overlay file. This test data set exists because it is (currently) a good way
+# to trigger a boot loop which enables easy watchdog and recovery testing.
+IANA_VERSION=2030a
+TEST_DIR=test3
 
+# Create fake distro input files.
+./transform-distro-files.sh ${REFERENCE_DISTRO_FILES} ${IANA_VERSION} ./${TEST_DIR}/output_data
+
+# Corrupt icu_tzdata.dat by truncating it
+truncate --size 27766 ${TEST_DIR}/output_data/icu_overlay/icu_tzdata.dat
+
+# Create the distro .zip
+mkdir -p ${TEST_DIR}/output_data/distro
+mkdir -p ${TEST_DIR}/output_data/version
+${DISTRO_TOOLS_DIR}/create-distro.py \
+    -iana_version ${IANA_VERSION} \
+    -revision 1 \
+    -tzdata ${TEST_DIR}/output_data/iana/tzdata \
+    -icu ${TEST_DIR}/output_data/icu_overlay/icu_tzdata.dat \
+    -tzlookup ${TEST_DIR}/output_data/android/tzlookup.xml \
+    -output_distro_dir ${TEST_DIR}/output_data/distro \
+    -output_version_file ${TEST_DIR}/output_data/version/tz_version
diff --git a/testing/data/test3/apex/Android.bp b/testing/data/test3/apex/Android.bp
new file mode 100644
index 0000000..e4f9118
--- /dev/null
+++ b/testing/data/test3/apex/Android.bp
@@ -0,0 +1,35 @@
+// Copyright (C) 2019 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+// A test version of apex.tzdata that contains corrupt data.
+// It causes a boot loop on device, for the purposes of testing platform
+// rollback mechanisms.
+// It has a version code that should beat a "real" APEX and enables end-to-end
+// installation testing on devices with the latests real data.
+apex {
+    name: "test3_com.android.tzdata",
+    defaults: ["com.android.tzdata-defaults"],
+    manifest: "manifest.json",
+    prebuilts: [
+        "apex_tz_version_test3",
+        "apex_tzlookup.xml_test3",
+        "apex_tzdata_test3",
+        "apex_icu_tzdata.dat_test3",
+    ],
+
+    // installable: false as we do not want test APEX versions in the system
+    // image.
+    installable: false,
+}
+
diff --git a/testing/data/test3/apex/manifest.json b/testing/data/test3/apex/manifest.json
new file mode 100644
index 0000000..c1bdf6a
--- /dev/null
+++ b/testing/data/test3/apex/manifest.json
@@ -0,0 +1,4 @@
+{
+  "name": "com.android.tzdata",
+  "version": 300000000
+}
diff --git a/testing/data/test3/output_data/Android.bp b/testing/data/test3/output_data/Android.bp
new file mode 100644
index 0000000..1447456
--- /dev/null
+++ b/testing/data/test3/output_data/Android.bp
@@ -0,0 +1,48 @@
+// Copyright (C) 2018 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//     http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+prebuilt_etc {
+    name: "apex_tz_version_test3",
+    src: "version/tz_version",
+    filename: "tz_version",
+    sub_dir: "tz",
+    installable: false,
+}
+
+prebuilt_etc {
+    name: "apex_tzlookup.xml_test3",
+    src: "android/tzlookup.xml",
+    filename: "tzlookup.xml",
+    sub_dir: "tz",
+    installable: false,
+}
+
+prebuilt_etc {
+    name: "apex_tzdata_test3",
+    src: "iana/tzdata",
+    notice: "iana/NOTICE",
+    filename: "tzdata",
+    sub_dir: "tz",
+    installable: false,
+}
+
+prebuilt_etc {
+    name: "apex_icu_tzdata.dat_test3",
+    src: "icu_overlay/icu_tzdata.dat",
+    notice: "icu_overlay/LICENSE",
+    filename: "icu_tzdata.dat",
+    sub_dir: "icu",
+    installable: false,
+}
+
diff --git a/testing/data/test3/output_data/android/tzlookup.xml b/testing/data/test3/output_data/android/tzlookup.xml
new file mode 100644
index 0000000..dc29817
--- /dev/null
+++ b/testing/data/test3/output_data/android/tzlookup.xml
@@ -0,0 +1,927 @@
+<?xml version="1.0" encoding="UTF-8"?><!--
+
+ **** Autogenerated file - DO NOT EDIT ****
+
+--><timezones ianaversion="2030a">
+ <countryzones>
+  <country code="ad" default="Europe/Andorra" everutc="n">
+   <id>Europe/Andorra</id>
+  </country>
+  <country code="ae" default="Asia/Dubai" everutc="n">
+   <id>Asia/Dubai</id>
+  </country>
+  <country code="af" default="Asia/Kabul" everutc="n">
+   <id>Asia/Kabul</id>
+  </country>
+  <country code="ag" default="America/Antigua" everutc="n">
+   <id>America/Antigua</id>
+  </country>
+  <country code="ai" default="America/Anguilla" everutc="n">
+   <id>America/Anguilla</id>
+  </country>
+  <country code="al" default="Europe/Tirane" everutc="n">
+   <id>Europe/Tirane</id>
+  </country>
+  <country code="am" default="Asia/Yerevan" everutc="n">
+   <id>Asia/Yerevan</id>
+  </country>
+  <country code="ao" default="Africa/Luanda" everutc="n">
+   <id>Africa/Luanda</id>
+  </country>
+  <country code="aq" default="Antarctica/McMurdo" everutc="y">
+   <id>Antarctica/McMurdo</id>
+   <id>Antarctica/DumontDUrville</id>
+   <id>Antarctica/Casey</id>
+   <id>Antarctica/Davis</id>
+   <id>Antarctica/Mawson</id>
+   <id>Antarctica/Vostok</id>
+   <id>Antarctica/Syowa</id>
+   <id>Antarctica/Troll</id>
+   <id>Antarctica/Rothera</id>
+   <id>Antarctica/Palmer</id>
+  </country>
+  <country code="ar" default="America/Argentina/Buenos_Aires" everutc="n">
+   <id>America/Argentina/Buenos_Aires</id>
+   <id notafter="687931200000">America/Argentina/Cordoba</id>
+   <id notafter="1096171200000">America/Argentina/Salta</id>
+   <id notafter="687931200000">America/Argentina/Jujuy</id>
+   <id notafter="1087099200000">America/Argentina/Tucuman</id>
+   <id notafter="1087704000000">America/Argentina/Catamarca</id>
+   <id notafter="687931200000">America/Argentina/La_Rioja</id>
+   <id notafter="1090728000000">America/Argentina/San_Juan</id>
+   <id notafter="1237082400000">America/Argentina/Mendoza</id>
+   <id>America/Argentina/San_Luis</id>
+   <id notafter="673588800000">America/Argentina/Rio_Gallegos</id>
+   <id notafter="1087704000000">America/Argentina/Ushuaia</id>
+  </country>
+  <country code="as" default="Pacific/Pago_Pago" everutc="n">
+   <id>Pacific/Pago_Pago</id>
+  </country>
+  <country code="at" default="Europe/Vienna" everutc="n">
+   <id>Europe/Vienna</id>
+  </country>
+  <country code="au" default="Australia/Sydney" everutc="n">
+   <id>Australia/Sydney</id>
+   <id notafter="796147200000">Australia/Melbourne</id>
+   <id>Australia/Brisbane</id>
+   <id notafter="1193500800000">Australia/Hobart</id>
+   <id notafter="37728000000">Australia/Currie</id>
+   <id notafter="762883200000">Australia/Lindeman</id>
+   <id>Antarctica/Macquarie</id>
+   <id>Australia/Lord_Howe</id>
+   <id>Australia/Adelaide</id>
+   <id notafter="796149000000">Australia/Broken_Hill</id>
+   <id>Australia/Darwin</id>
+   <id>Australia/Perth</id>
+   <id>Australia/Eucla</id>
+  </country>
+  <country code="aw" default="America/Aruba" everutc="n">
+   <id>America/Aruba</id>
+  </country>
+  <country code="ax" default="Europe/Mariehamn" everutc="n">
+   <id>Europe/Mariehamn</id>
+  </country>
+  <country code="az" default="Asia/Baku" everutc="n">
+   <id>Asia/Baku</id>
+  </country>
+  <country code="ba" default="Europe/Sarajevo" everutc="n">
+   <id>Europe/Sarajevo</id>
+  </country>
+  <country code="bb" default="America/Barbados" everutc="n">
+   <id>America/Barbados</id>
+  </country>
+  <country code="bd" default="Asia/Dhaka" everutc="n">
+   <id>Asia/Dhaka</id>
+  </country>
+  <country code="be" default="Europe/Brussels" everutc="n">
+   <id>Europe/Brussels</id>
+  </country>
+  <country code="bf" default="Africa/Ouagadougou" everutc="y">
+   <id>Africa/Ouagadougou</id>
+  </country>
+  <country code="bg" default="Europe/Sofia" everutc="n">
+   <id>Europe/Sofia</id>
+  </country>
+  <country code="bh" default="Asia/Bahrain" everutc="n">
+   <id>Asia/Bahrain</id>
+  </country>
+  <country code="bi" default="Africa/Bujumbura" everutc="n">
+   <id>Africa/Bujumbura</id>
+  </country>
+  <country code="bj" default="Africa/Porto-Novo" everutc="n">
+   <id>Africa/Porto-Novo</id>
+  </country>
+  <country code="bl" default="America/St_Barthelemy" everutc="n">
+   <id>America/St_Barthelemy</id>
+  </country>
+  <country code="bm" default="Atlantic/Bermuda" everutc="n">
+   <id>Atlantic/Bermuda</id>
+  </country>
+  <country code="bn" default="Asia/Brunei" everutc="n">
+   <id>Asia/Brunei</id>
+  </country>
+  <country code="bo" default="America/La_Paz" everutc="n">
+   <id>America/La_Paz</id>
+  </country>
+  <country code="bq" default="America/Kralendijk" everutc="n">
+   <id>America/Kralendijk</id>
+  </country>
+  <country code="br" default="America/Noronha" everutc="n">
+   <id>America/Noronha</id>
+   <id>America/Sao_Paulo</id>
+   <id notafter="1013911200000">America/Belem</id>
+   <id notafter="972180000000">America/Fortaleza</id>
+   <id notafter="1330221600000">America/Recife</id>
+   <id notafter="1361066400000">America/Araguaina</id>
+   <id notafter="824004000000">America/Maceio</id>
+   <id>America/Bahia</id>
+   <id notafter="1214280000000">America/Santarem</id>
+   <id>America/Manaus</id>
+   <id notafter="1076814000000">America/Campo_Grande</id>
+   <id>America/Cuiaba</id>
+   <id notafter="761713200000">America/Porto_Velho</id>
+   <id notafter="971578800000">America/Boa_Vista</id>
+   <id notafter="761716800000">America/Eirunepe</id>
+   <id>America/Rio_Branco</id>
+  </country>
+  <country code="bs" default="America/Nassau" everutc="n">
+   <id>America/Nassau</id>
+  </country>
+  <country code="bt" default="Asia/Thimphu" everutc="n">
+   <id>Asia/Thimphu</id>
+  </country>
+  <country code="bw" default="Africa/Gaborone" everutc="n">
+   <id>Africa/Gaborone</id>
+  </country>
+  <country code="by" default="Europe/Minsk" everutc="n">
+   <id>Europe/Minsk</id>
+  </country>
+  <country code="bz" default="America/Belize" everutc="n">
+   <id>America/Belize</id>
+  </country>
+  <country code="ca" default="America/St_Johns" everutc="n">
+   <id>America/St_Johns</id>
+   <id>America/Halifax</id>
+   <id notafter="57733200000">America/Glace_Bay</id>
+   <id notafter="1162098000000">America/Moncton</id>
+   <id notafter="1299996000000">America/Goose_Bay</id>
+   <id>America/Blanc-Sablon</id>
+   <id>America/Toronto</id>
+   <id notafter="89186400000">America/Nipigon</id>
+   <id notafter="120636000000">America/Thunder_Bay</id>
+   <id notafter="972802800000">America/Iqaluit</id>
+   <id notafter="796806000000">America/Pangnirtung</id>
+   <id>America/Atikokan</id>
+   <id>America/Winnipeg</id>
+   <id>America/Regina</id>
+   <id notafter="1130659200000">America/Rankin_Inlet</id>
+   <id notafter="986112000000">America/Rainy_River</id>
+   <id notafter="73472400000">America/Swift_Current</id>
+   <id notafter="1173600000000">America/Resolute</id>
+   <id>America/Edmonton</id>
+   <id notafter="986115600000">America/Cambridge_Bay</id>
+   <id notafter="309945600000">America/Yellowknife</id>
+   <id notafter="294228000000">America/Inuvik</id>
+   <id>America/Dawson_Creek</id>
+   <id notafter="84013200000">America/Creston</id>
+   <id notafter="1425808800000">America/Fort_Nelson</id>
+   <id>America/Vancouver</id>
+   <id notafter="309949200000">America/Whitehorse</id>
+   <id notafter="120646800000">America/Dawson</id>
+  </country>
+  <country code="cc" default="Indian/Cocos" everutc="n">
+   <id>Indian/Cocos</id>
+  </country>
+  <country code="cd" default="Africa/Kinshasa" everutc="n">
+   <id>Africa/Lubumbashi</id>
+   <id>Africa/Kinshasa</id>
+  </country>
+  <country code="cf" default="Africa/Bangui" everutc="n">
+   <id>Africa/Bangui</id>
+  </country>
+  <country code="cg" default="Africa/Brazzaville" everutc="n">
+   <id>Africa/Brazzaville</id>
+  </country>
+  <country code="ch" default="Europe/Zurich" everutc="n">
+   <id>Europe/Zurich</id>
+  </country>
+  <country code="ci" default="Africa/Abidjan" everutc="y">
+   <id>Africa/Abidjan</id>
+  </country>
+  <country code="ck" default="Pacific/Rarotonga" everutc="n">
+   <id>Pacific/Rarotonga</id>
+  </country>
+  <country code="cl" default="America/Santiago" everutc="n">
+   <id>America/Punta_Arenas</id>
+   <id>America/Santiago</id>
+   <id>Pacific/Easter</id>
+  </country>
+  <country code="cm" default="Africa/Douala" everutc="n">
+   <id>Africa/Douala</id>
+  </country>
+  <country code="cn" default="Asia/Shanghai" everutc="n">
+   <id>Asia/Shanghai</id>
+   <id>Asia/Urumqi</id>
+  </country>
+  <country code="co" default="America/Bogota" everutc="n">
+   <id>America/Bogota</id>
+  </country>
+  <country code="cr" default="America/Costa_Rica" everutc="n">
+   <id>America/Costa_Rica</id>
+  </country>
+  <country code="cu" default="America/Havana" everutc="n">
+   <id>America/Havana</id>
+  </country>
+  <country code="cv" default="Atlantic/Cape_Verde" everutc="n">
+   <id>Atlantic/Cape_Verde</id>
+  </country>
+  <country code="cw" default="America/Curacao" everutc="n">
+   <id>America/Curacao</id>
+  </country>
+  <country code="cx" default="Indian/Christmas" everutc="n">
+   <id>Indian/Christmas</id>
+  </country>
+  <country code="cy" default="Asia/Nicosia" everutc="n">
+   <id>Asia/Nicosia</id>
+   <id>Asia/Famagusta</id>
+  </country>
+  <country code="cz" default="Europe/Prague" everutc="n">
+   <id>Europe/Prague</id>
+  </country>
+  <country code="de" default="Europe/Berlin" everutc="n">
+   <id>Europe/Berlin</id>
+   <id notafter="338950800000">Europe/Busingen</id>
+  </country>
+  <country code="dj" default="Africa/Djibouti" everutc="n">
+   <id>Africa/Djibouti</id>
+  </country>
+  <country code="dk" default="Europe/Copenhagen" everutc="n">
+   <id>Europe/Copenhagen</id>
+  </country>
+  <country code="dm" default="America/Dominica" everutc="n">
+   <id>America/Dominica</id>
+  </country>
+  <country code="do" default="America/Santo_Domingo" everutc="n">
+   <id>America/Santo_Domingo</id>
+  </country>
+  <country code="dz" default="Africa/Algiers" everutc="n">
+   <id>Africa/Algiers</id>
+  </country>
+  <country code="ec" default="America/Guayaquil" everutc="n">
+   <id>America/Guayaquil</id>
+   <id>Pacific/Galapagos</id>
+  </country>
+  <country code="ee" default="Europe/Tallinn" everutc="n">
+   <id>Europe/Tallinn</id>
+  </country>
+  <country code="eg" default="Africa/Cairo" everutc="n">
+   <id>Africa/Cairo</id>
+  </country>
+  <country code="eh" default="Africa/El_Aaiun" everutc="y">
+   <id>Africa/El_Aaiun</id>
+  </country>
+  <country code="er" default="Africa/Asmara" everutc="n">
+   <id>Africa/Asmara</id>
+  </country>
+  <country code="es" default="Europe/Madrid" everutc="y">
+   <id>Europe/Madrid</id>
+   <id notafter="496803600000">Africa/Ceuta</id>
+   <id>Atlantic/Canary</id>
+  </country>
+  <country code="et" default="Africa/Addis_Ababa" everutc="n">
+   <id>Africa/Addis_Ababa</id>
+  </country>
+  <country code="fi" default="Europe/Helsinki" everutc="n">
+   <id>Europe/Helsinki</id>
+  </country>
+  <country code="fj" default="Pacific/Fiji" everutc="n">
+   <id>Pacific/Fiji</id>
+  </country>
+  <country code="fk" default="Atlantic/Stanley" everutc="n">
+   <id>Atlantic/Stanley</id>
+  </country>
+  <country code="fm" default="Pacific/Pohnpei" everutc="n">
+   <id>Pacific/Pohnpei</id>
+   <id>Pacific/Kosrae</id>
+   <id>Pacific/Chuuk</id>
+  </country>
+  <country code="fo" default="Atlantic/Faroe" everutc="y">
+   <id>Atlantic/Faroe</id>
+  </country>
+  <country code="fr" default="Europe/Paris" everutc="n">
+   <id>Europe/Paris</id>
+  </country>
+  <country code="ga" default="Africa/Libreville" everutc="n">
+   <id>Africa/Libreville</id>
+  </country>
+  <country code="gb" default="Europe/London" everutc="y">
+   <id>Europe/London</id>
+  </country>
+  <country code="gd" default="America/Grenada" everutc="n">
+   <id>America/Grenada</id>
+  </country>
+  <country code="ge" default="Asia/Tbilisi" everutc="n">
+   <id>Asia/Tbilisi</id>
+  </country>
+  <country code="gf" default="America/Cayenne" everutc="n">
+   <id>America/Cayenne</id>
+  </country>
+  <country code="gg" default="Europe/Guernsey" everutc="y">
+   <id>Europe/Guernsey</id>
+  </country>
+  <country code="gh" default="Africa/Accra" everutc="y">
+   <id>Africa/Accra</id>
+  </country>
+  <country code="gi" default="Europe/Gibraltar" everutc="n">
+   <id>Europe/Gibraltar</id>
+  </country>
+  <country code="gl" default="America/Godthab" everutc="y">
+   <id>America/Danmarkshavn</id>
+   <id>America/Scoresbysund</id>
+   <id>America/Godthab</id>
+   <id>America/Thule</id>
+  </country>
+  <country code="gm" default="Africa/Banjul" everutc="y">
+   <id>Africa/Banjul</id>
+  </country>
+  <country code="gn" default="Africa/Conakry" everutc="y">
+   <id>Africa/Conakry</id>
+  </country>
+  <country code="gp" default="America/Guadeloupe" everutc="n">
+   <id>America/Guadeloupe</id>
+  </country>
+  <country code="gq" default="Africa/Malabo" everutc="n">
+   <id>Africa/Malabo</id>
+  </country>
+  <country code="gr" default="Europe/Athens" everutc="n">
+   <id>Europe/Athens</id>
+  </country>
+  <country code="gs" default="Atlantic/South_Georgia" everutc="n">
+   <id>Atlantic/South_Georgia</id>
+  </country>
+  <country code="gt" default="America/Guatemala" everutc="n">
+   <id>America/Guatemala</id>
+  </country>
+  <country code="gu" default="Pacific/Guam" everutc="n">
+   <id>Pacific/Guam</id>
+  </country>
+  <country code="gw" default="Africa/Bissau" everutc="y">
+   <id>Africa/Bissau</id>
+  </country>
+  <country code="gy" default="America/Guyana" everutc="n">
+   <id>America/Guyana</id>
+  </country>
+  <country code="hk" default="Asia/Hong_Kong" everutc="n">
+   <id>Asia/Hong_Kong</id>
+  </country>
+  <country code="hn" default="America/Tegucigalpa" everutc="n">
+   <id>America/Tegucigalpa</id>
+  </country>
+  <country code="hr" default="Europe/Zagreb" everutc="n">
+   <id>Europe/Zagreb</id>
+  </country>
+  <country code="ht" default="America/Port-au-Prince" everutc="n">
+   <id>America/Port-au-Prince</id>
+  </country>
+  <country code="hu" default="Europe/Budapest" everutc="n">
+   <id>Europe/Budapest</id>
+  </country>
+  <country code="id" default="Asia/Jakarta" everutc="n">
+   <id>Asia/Jayapura</id>
+   <id>Asia/Makassar</id>
+   <id>Asia/Jakarta</id>
+   <id notafter="567964800000">Asia/Pontianak</id>
+  </country>
+  <country code="ie" default="Europe/Dublin" everutc="y">
+   <id>Europe/Dublin</id>
+  </country>
+  <country code="il" default="Asia/Jerusalem" everutc="n">
+   <id>Asia/Jerusalem</id>
+  </country>
+  <country code="im" default="Europe/Isle_of_Man" everutc="y">
+   <id>Europe/Isle_of_Man</id>
+  </country>
+  <country code="in" default="Asia/Kolkata" everutc="n">
+   <id>Asia/Kolkata</id>
+  </country>
+  <country code="io" default="Indian/Chagos" everutc="n">
+   <id>Indian/Chagos</id>
+  </country>
+  <country code="iq" default="Asia/Baghdad" everutc="n">
+   <id>Asia/Baghdad</id>
+  </country>
+  <country code="ir" default="Asia/Tehran" everutc="n">
+   <id>Asia/Tehran</id>
+  </country>
+  <country code="is" default="Atlantic/Reykjavik" everutc="y">
+   <id>Atlantic/Reykjavik</id>
+  </country>
+  <country code="it" default="Europe/Rome" everutc="n">
+   <id>Europe/Rome</id>
+  </country>
+  <country code="je" default="Europe/Jersey" everutc="y">
+   <id>Europe/Jersey</id>
+  </country>
+  <country code="jm" default="America/Jamaica" everutc="n">
+   <id>America/Jamaica</id>
+  </country>
+  <country code="jo" default="Asia/Amman" everutc="n">
+   <id>Asia/Amman</id>
+  </country>
+  <country code="jp" default="Asia/Tokyo" everutc="n">
+   <id>Asia/Tokyo</id>
+  </country>
+  <country code="ke" default="Africa/Nairobi" everutc="n">
+   <id>Africa/Nairobi</id>
+  </country>
+  <country code="kg" default="Asia/Bishkek" everutc="n">
+   <id>Asia/Bishkek</id>
+  </country>
+  <country code="kh" default="Asia/Phnom_Penh" everutc="n">
+   <id>Asia/Phnom_Penh</id>
+  </country>
+  <country code="ki" default="Pacific/Tarawa" everutc="n">
+   <id>Pacific/Kiritimati</id>
+   <id>Pacific/Enderbury</id>
+   <id>Pacific/Tarawa</id>
+  </country>
+  <country code="km" default="Indian/Comoro" everutc="n">
+   <id>Indian/Comoro</id>
+  </country>
+  <country code="kn" default="America/St_Kitts" everutc="n">
+   <id>America/St_Kitts</id>
+  </country>
+  <country code="kp" default="Asia/Pyongyang" everutc="n">
+   <id>Asia/Pyongyang</id>
+  </country>
+  <country code="kr" default="Asia/Seoul" everutc="n">
+   <id>Asia/Seoul</id>
+  </country>
+  <country code="kw" default="Asia/Kuwait" everutc="n">
+   <id>Asia/Kuwait</id>
+  </country>
+  <country code="ky" default="America/Cayman" everutc="n">
+   <id>America/Cayman</id>
+  </country>
+  <country code="kz" default="Asia/Almaty" everutc="n">
+   <id>Asia/Almaty</id>
+   <id notafter="1099170000000">Asia/Qostanay</id>
+   <id notafter="1099173600000">Asia/Aqtau</id>
+   <id>Asia/Oral</id>
+   <id notafter="1545328800000">Asia/Qyzylorda</id>
+   <id notafter="1545328800000">Asia/Aqtobe</id>
+   <id notafter="922572000000">Asia/Atyrau</id>
+  </country>
+  <country code="la" default="Asia/Vientiane" everutc="n">
+   <id>Asia/Vientiane</id>
+  </country>
+  <country code="lb" default="Asia/Beirut" everutc="n">
+   <id>Asia/Beirut</id>
+  </country>
+  <country code="lc" default="America/St_Lucia" everutc="n">
+   <id>America/St_Lucia</id>
+  </country>
+  <country code="li" default="Europe/Vaduz" everutc="n">
+   <id>Europe/Vaduz</id>
+  </country>
+  <country code="lk" default="Asia/Colombo" everutc="n">
+   <id>Asia/Colombo</id>
+  </country>
+  <country code="lr" default="Africa/Monrovia" everutc="y">
+   <id>Africa/Monrovia</id>
+  </country>
+  <country code="ls" default="Africa/Maseru" everutc="n">
+   <id>Africa/Maseru</id>
+  </country>
+  <country code="lt" default="Europe/Vilnius" everutc="n">
+   <id>Europe/Vilnius</id>
+  </country>
+  <country code="lu" default="Europe/Luxembourg" everutc="n">
+   <id>Europe/Luxembourg</id>
+  </country>
+  <country code="lv" default="Europe/Riga" everutc="n">
+   <id>Europe/Riga</id>
+  </country>
+  <country code="ly" default="Africa/Tripoli" everutc="n">
+   <id>Africa/Tripoli</id>
+  </country>
+  <country code="ma" default="Africa/Casablanca" everutc="y">
+   <id>Africa/Casablanca</id>
+  </country>
+  <country code="mc" default="Europe/Monaco" everutc="n">
+   <id>Europe/Monaco</id>
+  </country>
+  <country code="md" default="Europe/Chisinau" everutc="n">
+   <id>Europe/Chisinau</id>
+  </country>
+  <country code="me" default="Europe/Podgorica" everutc="n">
+   <id>Europe/Podgorica</id>
+  </country>
+  <country code="mf" default="America/Marigot" everutc="n">
+   <id>America/Marigot</id>
+  </country>
+  <country code="mg" default="Indian/Antananarivo" everutc="n">
+   <id>Indian/Antananarivo</id>
+  </country>
+  <country code="mh" default="Pacific/Majuro" everutc="n">
+   <id>Pacific/Majuro</id>
+   <id notafter="745934400000">Pacific/Kwajalein</id>
+  </country>
+  <country code="mk" default="Europe/Skopje" everutc="n">
+   <id>Europe/Skopje</id>
+  </country>
+  <country code="ml" default="Africa/Bamako" everutc="y">
+   <id>Africa/Bamako</id>
+  </country>
+  <country code="mm" default="Asia/Yangon" everutc="n">
+   <id>Asia/Yangon</id>
+  </country>
+  <country code="mn" default="Asia/Ulaanbaatar" everutc="n">
+   <id>Asia/Choibalsan</id>
+   <id>Asia/Ulaanbaatar</id>
+   <id>Asia/Hovd</id>
+  </country>
+  <country code="mo" default="Asia/Macau" everutc="n">
+   <id>Asia/Macau</id>
+  </country>
+  <country code="mp" default="Pacific/Saipan" everutc="n">
+   <id>Pacific/Saipan</id>
+  </country>
+  <country code="mq" default="America/Martinique" everutc="n">
+   <id>America/Martinique</id>
+  </country>
+  <country code="mr" default="Africa/Nouakchott" everutc="y">
+   <id>Africa/Nouakchott</id>
+  </country>
+  <country code="ms" default="America/Montserrat" everutc="n">
+   <id>America/Montserrat</id>
+  </country>
+  <country code="mt" default="Europe/Malta" everutc="n">
+   <id>Europe/Malta</id>
+  </country>
+  <country code="mu" default="Indian/Mauritius" everutc="n">
+   <id>Indian/Mauritius</id>
+  </country>
+  <country code="mv" default="Indian/Maldives" everutc="n">
+   <id>Indian/Maldives</id>
+  </country>
+  <country code="mw" default="Africa/Blantyre" everutc="n">
+   <id>Africa/Blantyre</id>
+  </country>
+  <country code="mx" default="America/Mexico_City" everutc="n">
+   <id>America/Mexico_City</id>
+   <id notafter="407653200000">America/Merida</id>
+   <id notafter="594198000000">America/Monterrey</id>
+   <id>America/Matamoros</id>
+   <id notafter="1270371600000">America/Bahia_Banderas</id>
+   <id>America/Cancun</id>
+   <id>America/Chihuahua</id>
+   <id>America/Hermosillo</id>
+   <id notafter="891766800000">America/Mazatlan</id>
+   <id>America/Ojinaga</id>
+   <id>America/Tijuana</id>
+  </country>
+  <country code="my" default="Asia/Kuala_Lumpur" everutc="n">
+   <id>Asia/Kuala_Lumpur</id>
+   <id notafter="378664200000">Asia/Kuching</id>
+  </country>
+  <country code="mz" default="Africa/Maputo" everutc="n">
+   <id>Africa/Maputo</id>
+  </country>
+  <country code="na" default="Africa/Windhoek" everutc="n">
+   <id>Africa/Windhoek</id>
+  </country>
+  <country code="nc" default="Pacific/Noumea" everutc="n">
+   <id>Pacific/Noumea</id>
+  </country>
+  <country code="ne" default="Africa/Niamey" everutc="n">
+   <id>Africa/Niamey</id>
+  </country>
+  <country code="nf" default="Pacific/Norfolk" everutc="n">
+   <id>Pacific/Norfolk</id>
+  </country>
+  <country code="ng" default="Africa/Lagos" everutc="n">
+   <id>Africa/Lagos</id>
+  </country>
+  <country code="ni" default="America/Managua" everutc="n">
+   <id>America/Managua</id>
+  </country>
+  <country code="nl" default="Europe/Amsterdam" everutc="n">
+   <id>Europe/Amsterdam</id>
+  </country>
+  <country code="no" default="Europe/Oslo" everutc="n">
+   <id>Europe/Oslo</id>
+  </country>
+  <country code="np" default="Asia/Kathmandu" everutc="n">
+   <id>Asia/Kathmandu</id>
+  </country>
+  <country code="nr" default="Pacific/Nauru" everutc="n">
+   <id>Pacific/Nauru</id>
+  </country>
+  <country code="nu" default="Pacific/Niue" everutc="n">
+   <id>Pacific/Niue</id>
+  </country>
+  <country code="nz" default="Pacific/Auckland" everutc="n">
+   <id>Pacific/Auckland</id>
+   <id>Pacific/Chatham</id>
+  </country>
+  <country code="om" default="Asia/Muscat" everutc="n">
+   <id>Asia/Muscat</id>
+  </country>
+  <country code="pa" default="America/Panama" everutc="n">
+   <id>America/Panama</id>
+  </country>
+  <country code="pe" default="America/Lima" everutc="n">
+   <id>America/Lima</id>
+  </country>
+  <country code="pf" default="Pacific/Tahiti" everutc="n">
+   <id>Pacific/Gambier</id>
+   <id>Pacific/Marquesas</id>
+   <id>Pacific/Tahiti</id>
+  </country>
+  <country code="pg" default="Pacific/Port_Moresby" everutc="n">
+   <id>Pacific/Port_Moresby</id>
+   <id>Pacific/Bougainville</id>
+  </country>
+  <country code="ph" default="Asia/Manila" everutc="n">
+   <id>Asia/Manila</id>
+  </country>
+  <country code="pk" default="Asia/Karachi" everutc="n">
+   <id>Asia/Karachi</id>
+  </country>
+  <country code="pl" default="Europe/Warsaw" everutc="n">
+   <id>Europe/Warsaw</id>
+  </country>
+  <country code="pm" default="America/Miquelon" everutc="n">
+   <id>America/Miquelon</id>
+  </country>
+  <country code="pn" default="Pacific/Pitcairn" everutc="n">
+   <id>Pacific/Pitcairn</id>
+  </country>
+  <country code="pr" default="America/Puerto_Rico" everutc="n">
+   <id>America/Puerto_Rico</id>
+  </country>
+  <country code="ps" default="Asia/Gaza" everutc="n">
+   <id notafter="1317330000000">Asia/Gaza</id>
+   <id>Asia/Hebron</id>
+  </country>
+  <country code="pt" default="Europe/Lisbon" everutc="y">
+   <id>Europe/Lisbon</id>
+   <id notafter="828234000000">Atlantic/Madeira</id>
+   <id>Atlantic/Azores</id>
+  </country>
+  <country code="pw" default="Pacific/Palau" everutc="n">
+   <id>Pacific/Palau</id>
+  </country>
+  <country code="py" default="America/Asuncion" everutc="n">
+   <id>America/Asuncion</id>
+  </country>
+  <country code="qa" default="Asia/Qatar" everutc="n">
+   <id>Asia/Qatar</id>
+  </country>
+  <country code="re" default="Indian/Reunion" everutc="n">
+   <id>Indian/Reunion</id>
+  </country>
+  <country code="ro" default="Europe/Bucharest" everutc="n">
+   <id>Europe/Bucharest</id>
+  </country>
+  <country code="rs" default="Europe/Belgrade" everutc="n">
+   <id>Europe/Belgrade</id>
+  </country>
+  <country code="ru" default="Europe/Moscow" everutc="n">
+   <id>Asia/Kamchatka</id>
+   <id>Asia/Anadyr</id>
+   <id>Asia/Magadan</id>
+   <id>Asia/Sakhalin</id>
+   <id>Asia/Srednekolymsk</id>
+   <id>Asia/Vladivostok</id>
+   <id notafter="1315828800000">Asia/Ust-Nera</id>
+   <id notafter="1459015200000">Asia/Yakutsk</id>
+   <id>Asia/Chita</id>
+   <id notafter="1315832400000">Asia/Khandyga</id>
+   <id>Asia/Irkutsk</id>
+   <id>Asia/Krasnoyarsk</id>
+   <id>Asia/Novosibirsk</id>
+   <id>Asia/Barnaul</id>
+   <id notafter="1459022400000">Asia/Novokuznetsk</id>
+   <id notafter="1464465600000">Asia/Tomsk</id>
+   <id>Asia/Omsk</id>
+   <id>Asia/Yekaterinburg</id>
+   <id>Europe/Samara</id>
+   <id notafter="701823600000">Europe/Astrakhan</id>
+   <id notafter="1480806000000">Europe/Ulyanovsk</id>
+   <id>Europe/Saratov</id>
+   <id>Europe/Volgograd</id>
+   <id>Europe/Moscow</id>
+   <id>Europe/Kirov</id>
+   <id picker="n" notafter="1396137600000">Europe/Simferopol</id>
+   <id>Europe/Kaliningrad</id>
+  </country>
+  <country code="rw" default="Africa/Kigali" everutc="n">
+   <id>Africa/Kigali</id>
+  </country>
+  <country code="sa" default="Asia/Riyadh" everutc="n">
+   <id>Asia/Riyadh</id>
+  </country>
+  <country code="sb" default="Pacific/Guadalcanal" everutc="n">
+   <id>Pacific/Guadalcanal</id>
+  </country>
+  <country code="sc" default="Indian/Mahe" everutc="n">
+   <id>Indian/Mahe</id>
+  </country>
+  <country code="sd" default="Africa/Khartoum" everutc="n">
+   <id>Africa/Khartoum</id>
+  </country>
+  <country code="se" default="Europe/Stockholm" everutc="n">
+   <id>Europe/Stockholm</id>
+  </country>
+  <country code="sg" default="Asia/Singapore" everutc="n">
+   <id>Asia/Singapore</id>
+  </country>
+  <country code="sh" default="Atlantic/St_Helena" everutc="y">
+   <id>Atlantic/St_Helena</id>
+  </country>
+  <country code="si" default="Europe/Ljubljana" everutc="n">
+   <id>Europe/Ljubljana</id>
+  </country>
+  <country code="sj" default="Arctic/Longyearbyen" everutc="n">
+   <id>Arctic/Longyearbyen</id>
+  </country>
+  <country code="sk" default="Europe/Bratislava" everutc="n">
+   <id>Europe/Bratislava</id>
+  </country>
+  <country code="sl" default="Africa/Freetown" everutc="y">
+   <id>Africa/Freetown</id>
+  </country>
+  <country code="sm" default="Europe/San_Marino" everutc="n">
+   <id>Europe/San_Marino</id>
+  </country>
+  <country code="sn" default="Africa/Dakar" everutc="y">
+   <id>Africa/Dakar</id>
+  </country>
+  <country code="so" default="Africa/Mogadishu" everutc="n">
+   <id>Africa/Mogadishu</id>
+  </country>
+  <country code="sr" default="America/Paramaribo" everutc="n">
+   <id>America/Paramaribo</id>
+  </country>
+  <country code="ss" default="Africa/Juba" everutc="n">
+   <id>Africa/Juba</id>
+  </country>
+  <country code="st" default="Africa/Sao_Tome" everutc="y">
+   <id>Africa/Sao_Tome</id>
+  </country>
+  <country code="sv" default="America/El_Salvador" everutc="n">
+   <id>America/El_Salvador</id>
+  </country>
+  <country code="sx" default="America/Lower_Princes" everutc="n">
+   <id>America/Lower_Princes</id>
+  </country>
+  <country code="sy" default="Asia/Damascus" everutc="n">
+   <id>Asia/Damascus</id>
+  </country>
+  <country code="sz" default="Africa/Mbabane" everutc="n">
+   <id>Africa/Mbabane</id>
+  </country>
+  <country code="tc" default="America/Grand_Turk" everutc="n">
+   <id>America/Grand_Turk</id>
+  </country>
+  <country code="td" default="Africa/Ndjamena" everutc="n">
+   <id>Africa/Ndjamena</id>
+  </country>
+  <country code="tf" default="Indian/Kerguelen" everutc="n">
+   <id>Indian/Kerguelen</id>
+  </country>
+  <country code="tg" default="Africa/Lome" everutc="y">
+   <id>Africa/Lome</id>
+  </country>
+  <country code="th" default="Asia/Bangkok" everutc="n">
+   <id>Asia/Bangkok</id>
+  </country>
+  <country code="tj" default="Asia/Dushanbe" everutc="n">
+   <id>Asia/Dushanbe</id>
+  </country>
+  <country code="tk" default="Pacific/Fakaofo" everutc="n">
+   <id>Pacific/Fakaofo</id>
+  </country>
+  <country code="tl" default="Asia/Dili" everutc="n">
+   <id>Asia/Dili</id>
+  </country>
+  <country code="tm" default="Asia/Ashgabat" everutc="n">
+   <id>Asia/Ashgabat</id>
+  </country>
+  <country code="tn" default="Africa/Tunis" everutc="n">
+   <id>Africa/Tunis</id>
+  </country>
+  <country code="to" default="Pacific/Tongatapu" everutc="n">
+   <id>Pacific/Tongatapu</id>
+  </country>
+  <country code="tr" default="Europe/Istanbul" everutc="n">
+   <id>Europe/Istanbul</id>
+  </country>
+  <country code="tt" default="America/Port_of_Spain" everutc="n">
+   <id>America/Port_of_Spain</id>
+  </country>
+  <country code="tv" default="Pacific/Funafuti" everutc="n">
+   <id>Pacific/Funafuti</id>
+  </country>
+  <country code="tw" default="Asia/Taipei" everutc="n">
+   <id>Asia/Taipei</id>
+  </country>
+  <country code="tz" default="Africa/Dar_es_Salaam" everutc="n">
+   <id>Africa/Dar_es_Salaam</id>
+  </country>
+  <country code="ua" default="Europe/Kiev" everutc="n">
+   <id>Europe/Kiev</id>
+   <id notafter="686091600000">Europe/Uzhgorod</id>
+   <id notafter="686102400000">Europe/Zaporozhye</id>
+  </country>
+  <country code="ug" default="Africa/Kampala" everutc="n">
+   <id>Africa/Kampala</id>
+  </country>
+  <country code="um" default="Pacific/Wake" everutc="n">
+   <id>Pacific/Wake</id>
+   <id>Pacific/Midway</id>
+  </country>
+  <country code="us" default="America/New_York" everutc="n">
+   <id>America/New_York</id>
+   <id notafter="167814000000">America/Detroit</id>
+   <id notafter="152089200000">America/Kentucky/Louisville</id>
+   <id notafter="972802800000">America/Kentucky/Monticello</id>
+   <id notafter="1130652000000">America/Indiana/Indianapolis</id>
+   <id notafter="1194159600000">America/Indiana/Vincennes</id>
+   <id notafter="1173600000000">America/Indiana/Winamac</id>
+   <id notafter="183535200000">America/Indiana/Marengo</id>
+   <id notafter="247042800000">America/Indiana/Petersburg</id>
+   <id notafter="89186400000">America/Indiana/Vevay</id>
+   <id>America/Chicago</id>
+   <id notafter="688546800000">America/Indiana/Knox</id>
+   <id notafter="104918400000">America/Menominee</id>
+   <id notafter="720000000000">America/North_Dakota/Center</id>
+   <id notafter="1067155200000">America/North_Dakota/New_Salem</id>
+   <id notafter="1143964800000">America/Indiana/Tell_City</id>
+   <id notafter="1289116800000">America/North_Dakota/Beulah</id>
+   <id>America/Denver</id>
+   <id notafter="129114000000">America/Boise</id>
+   <id>America/Phoenix</id>
+   <id>America/Los_Angeles</id>
+   <id>America/Anchorage</id>
+   <id notafter="436359600000">America/Juneau</id>
+   <id notafter="436356000000">America/Yakutat</id>
+   <id notafter="436363200000">America/Nome</id>
+   <id notafter="1547978400000">America/Metlakatla</id>
+   <id notafter="341402400000">America/Sitka</id>
+   <id>Pacific/Honolulu</id>
+   <id>America/Adak</id>
+  </country>
+  <country code="uy" default="America/Montevideo" everutc="n">
+   <id>America/Montevideo</id>
+  </country>
+  <country code="uz" default="Asia/Tashkent" everutc="n">
+   <id>Asia/Tashkent</id>
+   <id notafter="670366800000">Asia/Samarkand</id>
+  </country>
+  <country code="va" default="Europe/Vatican" everutc="n">
+   <id>Europe/Vatican</id>
+  </country>
+  <country code="vc" default="America/St_Vincent" everutc="n">
+   <id>America/St_Vincent</id>
+  </country>
+  <country code="ve" default="America/Caracas" everutc="n">
+   <id>America/Caracas</id>
+  </country>
+  <country code="vg" default="America/Tortola" everutc="n">
+   <id>America/Tortola</id>
+  </country>
+  <country code="vi" default="America/St_Thomas" everutc="n">
+   <id>America/St_Thomas</id>
+  </country>
+  <country code="vn" default="Asia/Ho_Chi_Minh" everutc="n">
+   <id>Asia/Ho_Chi_Minh</id>
+  </country>
+  <country code="vu" default="Pacific/Efate" everutc="n">
+   <id>Pacific/Efate</id>
+  </country>
+  <country code="wf" default="Pacific/Wallis" everutc="n">
+   <id>Pacific/Wallis</id>
+  </country>
+  <country code="ws" default="Pacific/Apia" everutc="n">
+   <id>Pacific/Apia</id>
+  </country>
+  <country code="ye" default="Asia/Aden" everutc="n">
+   <id>Asia/Aden</id>
+  </country>
+  <country code="yt" default="Indian/Mayotte" everutc="n">
+   <id>Indian/Mayotte</id>
+  </country>
+  <country code="za" default="Africa/Johannesburg" everutc="n">
+   <id>Africa/Johannesburg</id>
+  </country>
+  <country code="zm" default="Africa/Lusaka" everutc="n">
+   <id>Africa/Lusaka</id>
+  </country>
+  <country code="zw" default="Africa/Harare" everutc="n">
+   <id>Africa/Harare</id>
+  </country>
+ </countryzones>
+</timezones>
diff --git a/testing/data/test3/output_data/distro/distro.zip b/testing/data/test3/output_data/distro/distro.zip
new file mode 100644
index 0000000..faf1043
--- /dev/null
+++ b/testing/data/test3/output_data/distro/distro.zip
Binary files differ
diff --git a/testing/data/test3/output_data/iana/NOTICE b/testing/data/test3/output_data/iana/NOTICE
new file mode 100644
index 0000000..148eb23
--- /dev/null
+++ b/testing/data/test3/output_data/iana/NOTICE
@@ -0,0 +1,4 @@
+With a few exceptions, all files in the tz code and data (including
+this one) are in the public domain.  The exceptions are date.c,
+newstrftime.3, and strftime.c, which contain material derived from BSD
+and which use the BSD 3-clause license.
diff --git a/testing/data/test3/output_data/iana/tzdata b/testing/data/test3/output_data/iana/tzdata
new file mode 100644
index 0000000..ef81695
--- /dev/null
+++ b/testing/data/test3/output_data/iana/tzdata
Binary files differ
diff --git a/testing/data/test3/output_data/icu_overlay/LICENSE b/testing/data/test3/output_data/icu_overlay/LICENSE
new file mode 100644
index 0000000..25b6eb9
--- /dev/null
+++ b/testing/data/test3/output_data/icu_overlay/LICENSE
@@ -0,0 +1,414 @@
+COPYRIGHT AND PERMISSION NOTICE (ICU 58 and later)
+
+Copyright © 1991-2018 Unicode, Inc. All rights reserved.
+Distributed under the Terms of Use in http://www.unicode.org/copyright.html.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of the Unicode data files and any associated documentation
+(the "Data Files") or Unicode software and any associated documentation
+(the "Software") to deal in the Data Files or Software
+without restriction, including without limitation the rights to use,
+copy, modify, merge, publish, distribute, and/or sell copies of
+the Data Files or Software, and to permit persons to whom the Data Files
+or Software are furnished to do so, provided that either
+(a) this copyright and permission notice appear with all copies
+of the Data Files or Software, or
+(b) this copyright and permission notice appear in associated
+Documentation.
+
+THE DATA FILES AND SOFTWARE ARE PROVIDED "AS IS", WITHOUT WARRANTY OF
+ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
+WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+NONINFRINGEMENT OF THIRD PARTY RIGHTS.
+IN NO EVENT SHALL THE COPYRIGHT HOLDER OR HOLDERS INCLUDED IN THIS
+NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL INDIRECT OR CONSEQUENTIAL
+DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+PERFORMANCE OF THE DATA FILES OR SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale,
+use or other dealings in these Data Files or Software without prior
+written authorization of the copyright holder.
+
+---------------------
+
+Third-Party Software Licenses
+
+This section contains third-party software notices and/or additional
+terms for licensed third-party software components included within ICU
+libraries.
+
+1. ICU License - ICU 1.8.1 to ICU 57.1
+
+COPYRIGHT AND PERMISSION NOTICE
+
+Copyright (c) 1995-2016 International Business Machines Corporation and others
+All rights reserved.
+
+Permission is hereby granted, free of charge, to any person obtaining
+a copy of this software and associated documentation files (the
+"Software"), to deal in the Software without restriction, including
+without limitation the rights to use, copy, modify, merge, publish,
+distribute, and/or sell copies of the Software, and to permit persons
+to whom the Software is furnished to do so, provided that the above
+copyright notice(s) and this permission notice appear in all copies of
+the Software and that both the above copyright notice(s) and this
+permission notice appear in supporting documentation.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
+EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT
+OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR
+HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY
+SPECIAL INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER
+RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF
+CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+Except as contained in this notice, the name of a copyright holder
+shall not be used in advertising or otherwise to promote the sale, use
+or other dealings in this Software without prior written authorization
+of the copyright holder.
+
+All trademarks and registered trademarks mentioned herein are the
+property of their respective owners.
+
+2. Chinese/Japanese Word Break Dictionary Data (cjdict.txt)
+
+ #     The Google Chrome software developed by Google is licensed under
+ # the BSD license. Other software included in this distribution is
+ # provided under other licenses, as set forth below.
+ #
+ #  The BSD License
+ #  http://opensource.org/licenses/bsd-license.php
+ #  Copyright (C) 2006-2008, Google Inc.
+ #
+ #  All rights reserved.
+ #
+ #  Redistribution and use in source and binary forms, with or without
+ # modification, are permitted provided that the following conditions are met:
+ #
+ #  Redistributions of source code must retain the above copyright notice,
+ # this list of conditions and the following disclaimer.
+ #  Redistributions in binary form must reproduce the above
+ # copyright notice, this list of conditions and the following
+ # disclaimer in the documentation and/or other materials provided with
+ # the distribution.
+ #  Neither the name of  Google Inc. nor the names of its
+ # contributors may be used to endorse or promote products derived from
+ # this software without specific prior written permission.
+ #
+ #
+ #  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+ # CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ # INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ # MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ # DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
+ # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+ # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
+ # BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+ # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+ # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ #
+ #
+ #  The word list in cjdict.txt are generated by combining three word lists
+ # listed below with further processing for compound word breaking. The
+ # frequency is generated with an iterative training against Google web
+ # corpora.
+ #
+ #  * Libtabe (Chinese)
+ #    - https://sourceforge.net/project/?group_id=1519
+ #    - Its license terms and conditions are shown below.
+ #
+ #  * IPADIC (Japanese)
+ #    - http://chasen.aist-nara.ac.jp/chasen/distribution.html
+ #    - Its license terms and conditions are shown below.
+ #
+ #  ---------COPYING.libtabe ---- BEGIN--------------------
+ #
+ #  /*
+ #   * Copyright (c) 1999 TaBE Project.
+ #   * Copyright (c) 1999 Pai-Hsiang Hsiao.
+ #   * All rights reserved.
+ #   *
+ #   * Redistribution and use in source and binary forms, with or without
+ #   * modification, are permitted provided that the following conditions
+ #   * are met:
+ #   *
+ #   * . Redistributions of source code must retain the above copyright
+ #   *   notice, this list of conditions and the following disclaimer.
+ #   * . Redistributions in binary form must reproduce the above copyright
+ #   *   notice, this list of conditions and the following disclaimer in
+ #   *   the documentation and/or other materials provided with the
+ #   *   distribution.
+ #   * . Neither the name of the TaBE Project nor the names of its
+ #   *   contributors may be used to endorse or promote products derived
+ #   *   from this software without specific prior written permission.
+ #   *
+ #   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ #   * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ #   * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ #   * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ #   * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ #   * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ #   * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ #   * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ #   * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ #   * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ #   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ #   * OF THE POSSIBILITY OF SUCH DAMAGE.
+ #   */
+ #
+ #  /*
+ #   * Copyright (c) 1999 Computer Systems and Communication Lab,
+ #   *                    Institute of Information Science, Academia
+ #       *                    Sinica. All rights reserved.
+ #   *
+ #   * Redistribution and use in source and binary forms, with or without
+ #   * modification, are permitted provided that the following conditions
+ #   * are met:
+ #   *
+ #   * . Redistributions of source code must retain the above copyright
+ #   *   notice, this list of conditions and the following disclaimer.
+ #   * . Redistributions in binary form must reproduce the above copyright
+ #   *   notice, this list of conditions and the following disclaimer in
+ #   *   the documentation and/or other materials provided with the
+ #   *   distribution.
+ #   * . Neither the name of the Computer Systems and Communication Lab
+ #   *   nor the names of its contributors may be used to endorse or
+ #   *   promote products derived from this software without specific
+ #   *   prior written permission.
+ #   *
+ #   * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ #   * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ #   * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ #   * FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ #   * REGENTS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
+ #   * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ #   * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ #   * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ #   * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ #   * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ #   * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ #   * OF THE POSSIBILITY OF SUCH DAMAGE.
+ #   */
+ #
+ #  Copyright 1996 Chih-Hao Tsai @ Beckman Institute,
+ #      University of Illinois
+ #  c-tsai4@uiuc.edu  http://casper.beckman.uiuc.edu/~c-tsai4
+ #
+ #  ---------------COPYING.libtabe-----END--------------------------------
+ #
+ #
+ #  ---------------COPYING.ipadic-----BEGIN-------------------------------
+ #
+ #  Copyright 2000, 2001, 2002, 2003 Nara Institute of Science
+ #  and Technology.  All Rights Reserved.
+ #
+ #  Use, reproduction, and distribution of this software is permitted.
+ #  Any copy of this software, whether in its original form or modified,
+ #  must include both the above copyright notice and the following
+ #  paragraphs.
+ #
+ #  Nara Institute of Science and Technology (NAIST),
+ #  the copyright holders, disclaims all warranties with regard to this
+ #  software, including all implied warranties of merchantability and
+ #  fitness, in no event shall NAIST be liable for
+ #  any special, indirect or consequential damages or any damages
+ #  whatsoever resulting from loss of use, data or profits, whether in an
+ #  action of contract, negligence or other tortuous action, arising out
+ #  of or in connection with the use or performance of this software.
+ #
+ #  A large portion of the dictionary entries
+ #  originate from ICOT Free Software.  The following conditions for ICOT
+ #  Free Software applies to the current dictionary as well.
+ #
+ #  Each User may also freely distribute the Program, whether in its
+ #  original form or modified, to any third party or parties, PROVIDED
+ #  that the provisions of Section 3 ("NO WARRANTY") will ALWAYS appear
+ #  on, or be attached to, the Program, which is distributed substantially
+ #  in the same form as set out herein and that such intended
+ #  distribution, if actually made, will neither violate or otherwise
+ #  contravene any of the laws and regulations of the countries having
+ #  jurisdiction over the User or the intended distribution itself.
+ #
+ #  NO WARRANTY
+ #
+ #  The program was produced on an experimental basis in the course of the
+ #  research and development conducted during the project and is provided
+ #  to users as so produced on an experimental basis.  Accordingly, the
+ #  program is provided without any warranty whatsoever, whether express,
+ #  implied, statutory or otherwise.  The term "warranty" used herein
+ #  includes, but is not limited to, any warranty of the quality,
+ #  performance, merchantability and fitness for a particular purpose of
+ #  the program and the nonexistence of any infringement or violation of
+ #  any right of any third party.
+ #
+ #  Each user of the program will agree and understand, and be deemed to
+ #  have agreed and understood, that there is no warranty whatsoever for
+ #  the program and, accordingly, the entire risk arising from or
+ #  otherwise connected with the program is assumed by the user.
+ #
+ #  Therefore, neither ICOT, the copyright holder, or any other
+ #  organization that participated in or was otherwise related to the
+ #  development of the program and their respective officials, directors,
+ #  officers and other employees shall be held liable for any and all
+ #  damages, including, without limitation, general, special, incidental
+ #  and consequential damages, arising out of or otherwise in connection
+ #  with the use or inability to use the program or any product, material
+ #  or result produced or otherwise obtained by using the program,
+ #  regardless of whether they have been advised of, or otherwise had
+ #  knowledge of, the possibility of such damages at any time during the
+ #  project or thereafter.  Each user will be deemed to have agreed to the
+ #  foregoing by his or her commencement of use of the program.  The term
+ #  "use" as used herein includes, but is not limited to, the use,
+ #  modification, copying and distribution of the program and the
+ #  production of secondary products from the program.
+ #
+ #  In the case where the program, whether in its original form or
+ #  modified, was distributed or delivered to or received by a user from
+ #  any person, organization or entity other than ICOT, unless it makes or
+ #  grants independently of ICOT any specific warranty to the user in
+ #  writing, such person, organization or entity, will also be exempted
+ #  from and not be held liable to the user for any such damages as noted
+ #  above as far as the program is concerned.
+ #
+ #  ---------------COPYING.ipadic-----END----------------------------------
+
+3. Lao Word Break Dictionary Data (laodict.txt)
+
+ #  Copyright (c) 2013 International Business Machines Corporation
+ #  and others. All Rights Reserved.
+ #
+ # Project: http://code.google.com/p/lao-dictionary/
+ # Dictionary: http://lao-dictionary.googlecode.com/git/Lao-Dictionary.txt
+ # License: http://lao-dictionary.googlecode.com/git/Lao-Dictionary-LICENSE.txt
+ #              (copied below)
+ #
+ #  This file is derived from the above dictionary, with slight
+ #  modifications.
+ #  ----------------------------------------------------------------------
+ #  Copyright (C) 2013 Brian Eugene Wilson, Robert Martin Campbell.
+ #  All rights reserved.
+ #
+ #  Redistribution and use in source and binary forms, with or without
+ #  modification,
+ #  are permitted provided that the following conditions are met:
+ #
+ #
+ # Redistributions of source code must retain the above copyright notice, this
+ #  list of conditions and the following disclaimer. Redistributions in
+ #  binary form must reproduce the above copyright notice, this list of
+ #  conditions and the following disclaimer in the documentation and/or
+ #  other materials provided with the distribution.
+ #
+ #
+ # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ # "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+ # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ # FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
+ # COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
+ # INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
+ # (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
+ # HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
+ # STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
+ # OF THE POSSIBILITY OF SUCH DAMAGE.
+ #  --------------------------------------------------------------------------
+
+4. Burmese Word Break Dictionary Data (burmesedict.txt)
+
+ #  Copyright (c) 2014 International Business Machines Corporation
+ #  and others. All Rights Reserved.
+ #
+ #  This list is part of a project hosted at:
+ #    github.com/kanyawtech/myanmar-karen-word-lists
+ #
+ #  --------------------------------------------------------------------------
+ #  Copyright (c) 2013, LeRoy Benjamin Sharon
+ #  All rights reserved.
+ #
+ #  Redistribution and use in source and binary forms, with or without
+ #  modification, are permitted provided that the following conditions
+ #  are met: Redistributions of source code must retain the above
+ #  copyright notice, this list of conditions and the following
+ #  disclaimer.  Redistributions in binary form must reproduce the
+ #  above copyright notice, this list of conditions and the following
+ #  disclaimer in the documentation and/or other materials provided
+ #  with the distribution.
+ #
+ #    Neither the name Myanmar Karen Word Lists, nor the names of its
+ #    contributors may be used to endorse or promote products derived
+ #    from this software without specific prior written permission.
+ #
+ #  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
+ #  CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES,
+ #  INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+ #  MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
+ #  DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS
+ #  BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+ #  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+ #  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+ #  DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ #  ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR
+ #  TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF
+ #  THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
+ #  SUCH DAMAGE.
+ #  --------------------------------------------------------------------------
+
+5. Time Zone Database
+
+  ICU uses the public domain data and code derived from Time Zone
+Database for its time zone support. The ownership of the TZ database
+is explained in BCP 175: Procedure for Maintaining the Time Zone
+Database section 7.
+
+ # 7.  Database Ownership
+ #
+ #    The TZ database itself is not an IETF Contribution or an IETF
+ #    document.  Rather it is a pre-existing and regularly updated work
+ #    that is in the public domain, and is intended to remain in the
+ #    public domain.  Therefore, BCPs 78 [RFC5378] and 79 [RFC3979] do
+ #    not apply to the TZ Database or contributions that individuals make
+ #    to it.  Should any claims be made and substantiated against the TZ
+ #    Database, the organization that is providing the IANA
+ #    Considerations defined in this RFC, under the memorandum of
+ #    understanding with the IETF, currently ICANN, may act in accordance
+ #    with all competent court orders.  No ownership claims will be made
+ #    by ICANN or the IETF Trust on the database or the code.  Any person
+ #    making a contribution to the database or code waives all rights to
+ #    future claims in that contribution or in the TZ Database.
+
+6. Google double-conversion
+
+Copyright 2006-2011, the V8 project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+    * Neither the name of Google Inc. nor the names of its
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/testing/data/test3/output_data/icu_overlay/icu_tzdata.dat b/testing/data/test3/output_data/icu_overlay/icu_tzdata.dat
new file mode 100644
index 0000000..115b655
--- /dev/null
+++ b/testing/data/test3/output_data/icu_overlay/icu_tzdata.dat
Binary files differ
diff --git a/testing/data/test3/output_data/version/tz_version b/testing/data/test3/output_data/version/tz_version
new file mode 100644
index 0000000..e1e8f45
--- /dev/null
+++ b/testing/data/test3/output_data/version/tz_version
@@ -0,0 +1 @@
+004.001|2030a|001
\ No newline at end of file
