aboutsummaryrefslogtreecommitdiff
path: root/share/security
diff options
context:
space:
mode:
authorGleb Smirnoff <glebius@FreeBSD.org>2016-12-06 19:15:01 +0000
committerGleb Smirnoff <glebius@FreeBSD.org>2016-12-06 19:15:01 +0000
commitcf7400e34a4f5bc22b8de49f0d0aa7ab4641725d (patch)
tree83528cbb970e571d363fafdea13b3f06b32780df /share/security
parentdcae9150997ecf279dbd4c7baab016880ed6b1ca (diff)
downloaddoc-cf7400e34a4f5bc22b8de49f0d0aa7ab4641725d.tar.gz
doc-cf7400e34a4f5bc22b8de49f0d0aa7ab4641725d.zip
Document EN-16:19.tzcode, EN-16:20.tzdata, EN-16:21.localedef;
SA-16:36.telnetd, SA-16:37.libc, SA-16:38.bhyve;
Notes
Notes: svn path=/head/; revision=49711
Diffstat (limited to 'share/security')
-rw-r--r--share/security/advisories/FreeBSD-EN-16:19.tzcode.asc133
-rw-r--r--share/security/advisories/FreeBSD-EN-16:20.tzdata.asc176
-rw-r--r--share/security/advisories/FreeBSD-EN-16:21.localedef.asc132
-rw-r--r--share/security/advisories/FreeBSD-SA-16:36.telnetd.asc157
-rw-r--r--share/security/advisories/FreeBSD-SA-16:37.libc.asc139
-rw-r--r--share/security/advisories/FreeBSD-SA-16:38.bhyve.asc143
-rw-r--r--share/security/patches/EN-16:19/tzcode.patch70
-rw-r--r--share/security/patches/EN-16:19/tzcode.patch.asc16
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.1.patch15859
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.1.patch.asc16
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.2.patch11263
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.2.patch.asc16
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.3.patch10686
-rw-r--r--share/security/patches/EN-16:20/tzdata-10.3.patch.asc16
-rw-r--r--share/security/patches/EN-16:20/tzdata-11.0.patch10655
-rw-r--r--share/security/patches/EN-16:20/tzdata-11.0.patch.asc16
-rw-r--r--share/security/patches/EN-16:20/tzdata-9.3.patch15769
-rw-r--r--share/security/patches/EN-16:20/tzdata-9.3.patch.asc16
-rw-r--r--share/security/patches/EN-16:21/localedef.patch78
-rw-r--r--share/security/patches/EN-16:21/localedef.patch.asc16
-rw-r--r--share/security/patches/SA-16:36/telnetd.patch26
-rw-r--r--share/security/patches/SA-16:36/telnetd.patch.asc16
-rw-r--r--share/security/patches/SA-16:37/libc.patch75
-rw-r--r--share/security/patches/SA-16:37/libc.patch.asc16
-rw-r--r--share/security/patches/SA-16:38/bhyve-10.patch19
-rw-r--r--share/security/patches/SA-16:38/bhyve-10.patch.asc16
-rw-r--r--share/security/patches/SA-16:38/bhyve.patch24
-rw-r--r--share/security/patches/SA-16:38/bhyve.patch.asc16
28 files changed, 65580 insertions, 0 deletions
diff --git a/share/security/advisories/FreeBSD-EN-16:19.tzcode.asc b/share/security/advisories/FreeBSD-EN-16:19.tzcode.asc
new file mode 100644
index 0000000000..04c7392590
--- /dev/null
+++ b/share/security/advisories/FreeBSD-EN-16:19.tzcode.asc
@@ -0,0 +1,133 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-16:19.tzcode Errata Notice
+ The FreeBSD Project
+
+Topic: Avoid warnings about valid time zone abbreviations
+
+Category: contrib
+Module: tzcode
+Announced: 2016-12-06
+Credits: Baptiste Daroussin
+Affects: All supported versions of FreeBSD
+Corrected: 2016-10-15 12:37:57 UTC (stable/11, 11.0-STABLE)
+ 2016-12-05 23:17:05 UTC (releng/11.0, 11.0-RELEASE-p4)
+ 2016-10-15 12:38:21 UTC (stable/10, 10.3-STABLE)
+ 2016-12-05 23:13:16 UTC (releng/10.3, 10.3-RELEASE-p13)
+ 2016-12-05 23:12:22 UTC (releng/10.2, 10.2-RELEASE-p26)
+ 2016-12-05 23:09:54 UTC (releng/10.1, 10.1-RELEASE-p43)
+ 2016-10-15 12:38:50 UTC (stable/9, 9.3-STABLE)
+ 2016-12-05 22:43:24 UTC (releng/9.3, 9.3-RELEASE-p51)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+<URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+The zic(8) utility reads text from the file(s) named on the command line
+and creates the time conversion information files specified in this input.
+
+The zdump(8) utility prints the current time in each zonename named on the
+command line.
+
+II. Problem Description
+
+Until 2000, timezone abbreviations starting with ':', and could not contain
+',', '-', '+', NUL, or a digit for POSIX compatibility. In 2001, the POSIX
+compatibility rules changed, and timezone abbreviations can contain only
+'-', '+', and alphanumeric characters from the portable character set in the
+current locale.
+
+III. Impact
+
+This is needed to be able to update tzdata to a newer version.
+
+IV. Workaround
+
+No workaround is available, however systems configured to use Coordinated
+Universal Time (UTC) are not affected.
+
+V. Solution
+
+1) Upgrade your system to a supported FreeBSD stable or release / security
+branch (releng) dated after the correction date.
+
+2) To update your system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+3) To update your system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+# fetch https://security.FreeBSD.org/patches/EN-16:19/tzcode.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:19/tzcode.patch.asc
+# gpg --verify tzcode.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/9/ r307360
+releng/9.3/ r309567
+stable/10/ r307359
+releng/10.1/ r309570
+releng/10.2/ r309571
+releng/10.3/ r309572
+stable/11/ r307358
+releng/11.0/ r309573
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-EN-16:19.tzcode.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1nAAoJEO1n7NZdz2rnaowQAM/QDvH9LzIUfnydfZklBvPM
+vCF0M6aDsGZNONQCik/ZdyICZ8lws/DcVKG4cz3Fth8XRI0GYsFQPO1m1AJICdVX
+CH8bVmgFN0ajChezScYgXNG3qIlQKkeZK1dMaZwLkI02wtn9InqPW4vdecIUcegr
+cLK8ppPTB51iWZp0HGXcURzCJRy444l6KhFwfPJdB0dzjrBRkQZXP4ewW1hVuZMK
+/trACy5TzKahEzwbqtyNjC22Ou73rb39kH5XweGIx38WfyXeqh3mLwC1qny7PCcI
+44V60ovwNyxzUHFFueriDeTeNp+rPkzn6MbjMbtJIhN4K3rO3ekw3KyR6lpZN0WI
+VM9Lvz0+vuTHjDuJqte/yiztyexj+aol7xOMv0Ak/0JlXigFwsOVqx0zHn6cHUey
+oB9cgNlmb8N51HRX0UiI6x/MJO5ZQm53LsD+YTr1y8iQDHtE2JJfnLj9v/rnFK/q
+cPqwxD1vYWQa9rnImFMdI6Ahix3LvSNQLQybWYgSkq+AH5Nbsqfl3CbJdE5ry7Xn
+bllPD5cbLTZVqA4hdGpptEAPFBiHgsExxPHswn1uvkMQEettVKb7hzNXkVF4p1GB
+CSq80neXh2GyvyA+G07I/7uNmFqzthnGQRsI0PJAItazZnwGlnyGDDtF7okpOkYO
+M70LiIMI27QIqMdiWfO5
+=68Rp
+-----END PGP SIGNATURE-----
diff --git a/share/security/advisories/FreeBSD-EN-16:20.tzdata.asc b/share/security/advisories/FreeBSD-EN-16:20.tzdata.asc
new file mode 100644
index 0000000000..eb5e28e2d9
--- /dev/null
+++ b/share/security/advisories/FreeBSD-EN-16:20.tzdata.asc
@@ -0,0 +1,176 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-16:20.tzdata Errata Notice
+ The FreeBSD Project
+
+Topic: Timezone database information update
+
+Category: contrib
+Module: zoneinfo
+Announced: 2016-12-06
+Credits: Maxim Sobolev
+Affects: All supported versions of FreeBSD
+Corrected: 2016-11-04 17:55:50 UTC (stable/11, 11.0-STABLE)
+ 2016-12-06 00:06:16 UTC (releng/11.0, 11.0-RELEASE-p4)
+ 2016-11-04 17:55:50 UTC (stable/10, 10.3-STABLE)
+ 2016-12-05 23:30:13 UTC (releng/10.3, 10.3-RELEASE-p13)
+ 2016-12-05 23:26:06 UTC (releng/10.2, 10.2-RELEASE-p26)
+ 2016-12-05 23:23:13 UTC (releng/10.1, 10.1-RELEASE-p43)
+ 2016-11-04 17:55:50 UTC (stable/9, 9.3-STABLE)
+ 2016-12-05 23:02:02 UTC (releng/9.3, 9.3-RELEASE-p51)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+<URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+The tzsetup(8) program allows the user to specify the default local
+timezone. Based on the selected timezone, tzsetup(8) copies one of the
+files from /usr/share/zoneinfo to /etc/localtime. This file actually
+controls the conversion.
+
+II. Problem Description
+
+Several changes in Daylight Savings Time happened after previous
+FreeBSD releases were released that would affect many people who
+live in different countries. Because of these changes, the data in
+the zoneinfo files need to be updated, and if the local timezone on
+the running system is affected, tzsetup(8) needs to be run so the
+/etc/localtime is updated.
+
+III. Impact
+
+An incorrect time will be displayed on a system configured to use one
+of the affected timezones if the /usr/share/zoneinfo and /etc/localtime
+files are not updated, and all applications on the system that rely on
+the system time, such as cron(8) and syslog(8), will be affected.
+
+IV. Workaround
+
+The system administrator can install an updated timezone database from
+the misc/zoneinfo port and run tzsetup(8) to get the timezone database
+corrected.
+
+Applications that store and display times in Coordinated Universal Time
+(UTC) are not affected.
+
+V. Solution
+
+Please note that some third party software, for instance PHP, Ruby,
+Java and Perl, may be using different zoneinfo data source, in such
+cases these software has to be updated separately. For software
+packages that is installed via package collection, they can be
+upgraded by doing a `pkg upgrade'.
+
+Following the instructions in this Errata Notice will update all of
+the zoneinfo files to be the same as what was released with FreeBSD
+release.
+
+Perform one of the following:
+
+1) Upgrade your system to a supported FreeBSD stable or release / security
+branch (releng) dated after the correction date. Restart all the affected
+applications and daemons, or reboot the system.
+
+2) To update your system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+Restart all the affected applications and daemons, or reboot the system.
+
+3) To update your system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+[FreeBSD 11.0]
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-11.0.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-11.0.patch.asc
+# gpg --verify tzdata-11.0.patch.asc
+
+[FreeBSD 10.3]
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.3.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.3.patch.asc
+# gpg --verify tzdata-10.3.patch.asc
+
+[FreeBSD 10.2]
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.2.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.2.patch.asc
+# gpg --verify tzdata-10.2.patch.asc
+
+[FreeBSD 10.1]
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.1.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-10.1.patch.asc
+# gpg --verify tzdata-10.1.patch.asc
+
+[FreeBSD 9.3]
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-9.3.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:20/tzdata-9.3.patch.asc
+# gpg --verify tzdata-9.3.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Restart all the affected applications and daemons, or reboot the system.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/9/ r308302
+releng/9.3/ r309568
+stable/10/ r308302
+releng/10.1/ r309574
+releng/10.2/ r309576
+releng/10.3/ r309577
+stable/11/ r308302
+releng/11.0/ r309583
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-EN-16:20.tzdata.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1qAAoJEO1n7NZdz2rnGCwQALsF2A+HnuJMUsbVUXfLCa92
+zzId31hBC039WwyAjsSeYO1GjKu/KRfsjV4yzJ9uArLBsx+wRRltMeuoMgl4P/z4
+huqh9huQJaRACPdgPoGfrPZItbKeo63sAOzMpBa0Z9TBaxN8NzTCAkcFt+iFM/Oi
+eQaGH3JlfASFwIRN+CIlVhhUwfufsXf5KI5Vk2k3CmF88n5uQCUwybwckZYp2Cl5
+vHGJh5wkyh/pkZ3W4NljQdRXQYkosj27IIaAym4RCQnQgOlJYRxxEJWMw631EFRw
+PIUgDfOcLKwG1e2V9XF0TnyKXvj7Uwt8lSUNyGUmfiBAdrWiSzfbL81+puKYzwOY
+wisSNnEXpXBBhAMSVvWvt91o/Oe4HxJ7ZAT4w9FlUjbaJ3ahPh3phb9VPBXPuHhT
+IJ+mWoEG3atQafJCPAwNmuIXh4V+Vo0UyimCrNBqWNOMqepyto93sdlYYcYhV/Bg
+zhOWxbSObKPhoLrsaIKVRVVEvTeotDEZKNgKu6U+twaBv5JMnyUdlqQKfxYfmzAR
+4N8YwFFSwrYiSVfGVBOM62AicSICNBxvzzb0xrvEw8c2KYbNv+MnE7/sQ/Wd/aR2
+t6PJIwYk7hAPSFmKLNf3ebYaTuybCyYWjYmzpplcRxBF9MuHxdd8bGuVvo/ZK1Jv
+Lb0DmoBUk7O77KJxeqTI
+=Pj/k
+-----END PGP SIGNATURE-----
diff --git a/share/security/advisories/FreeBSD-EN-16:21.localedef.asc b/share/security/advisories/FreeBSD-EN-16:21.localedef.asc
new file mode 100644
index 0000000000..b95bab430f
--- /dev/null
+++ b/share/security/advisories/FreeBSD-EN-16:21.localedef.asc
@@ -0,0 +1,132 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-16:21.localedef Errata Notice
+ The FreeBSD Project
+
+Topic: Incorrectly defined unicode character(s)
+
+Category: core
+Module: localedef
+Announced: 2016-12-06
+Credits:
+Affects: FreeBSD 11.0
+Corrected: 2016-11-05 09:46:48 UTC (stable/11, 11.0-STABLE)
+ 2016-12-06 00:09:52 UTC (releng/11.0, 11.0-RELEASE-p4)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+<URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+The localedef(1) utility converts source definitions for locale categories
+into a format usable by the functions and utilities whose operational
+behavior is determined by the setting of the locale environment variables.
+
+II. Problem Description
+
+When compiling character class definitions, localedef(1) may incorrectly
+coalesce non-consecutive ranges, so that unused codepoints located in a
+gap between two ranges of characters belonging to a same class will be
+included in that class.
+
+III. Impact
+
+Some Unicode codepoints that are reserved for later use may be reported as
+valid by the ctype(3) / wctype(3) functions. Incorrect classification may
+result in input validation errors.
+
+IV. Workaround
+
+No workaround is available.
+
+V. Solution
+
+Perform one of the following:
+
+1) Upgrade your system to a supported FreeBSD stable or release / security
+branch (releng) dated after the correction date.
+
+2) To update your system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+Restart all daemons that are running with unicode locale, or reboot the
+system.
+
+3) To update your system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+# fetch https://security.FreeBSD.org/patches/EN-16:21/localedef.patch
+# fetch https://security.FreeBSD.org/patches/EN-16:21/localedef.patch.asc
+# gpg --verify localedef.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Note that rebuilding the localedef(1) utility only isn't enough to
+fix already installed locales on your system.
+
+Restart all daemons that are running with unicode locale, or reboot the
+system.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/11/ r308330
+releng/11.0/ r309584
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=213013>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-EN-16:21.localedef.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1tAAoJEO1n7NZdz2rn+l8QAKBNhMxJ4Gkqh/B8EwU0MR/v
+flI0pOWEnxSyzGdMgL8KFng1YXCp77SlSp+uG5ASNBbJDroEVGQ2LcDQWEsr2QfE
+I6a7xLNXx5l3ytiR50/eZRyIhWt7/aLzrtYvabJckvxkZCUZ8Itolvha7gu8HGk/
+Is5chXNQxOAYXOjJuiOY99o6oe9tXqGA+eKBkyjOyEUoYK0D402fkPaXvEajmYqD
+ynS2N72zmyNp9ZT6d/UWwCPBr7VM9yXgx9cYhYBwxlYBfOeAAHIfjG6LULGyr+7Y
+tDj+Q+1I1vEE3OtsnLeGFJw21sPZtnXVM4Dmly4OJoSngYrM+mb8DY96QGqAgRjh
+5G4EqxIKUQQsoiCmqfFSy9zT2o0RHLjfCvMgBJS4jznijsY6YufodmG6P2Px+yMw
+vW4PeCravUvCjMtJTfYDMoyxW1068m8JZk2X2ehDMCLh6gk8ytJn9z/E1TpEzEiM
+5coP//KPmBQFrgYkSmj2FH1fuWCrU6Cw5JrWhATgw8+GLi5r42r44BQ5mj3rW8rz
+5VVugAht06hR9jmkH8+c/OEOkhyrnU+Psvk9YfqN4yn5Etoa03taZw/L0UHRk0M1
+vb/krFMtbGBeh4XOH4N8YJ+jaO2pw1bLIBKpdGB6fSgyHuN5vNhi0eO3NOy7HSuh
+hEh9Vaqvzd8mefLV653c
+=XdaZ
+-----END PGP SIGNATURE-----
diff --git a/share/security/advisories/FreeBSD-SA-16:36.telnetd.asc b/share/security/advisories/FreeBSD-SA-16:36.telnetd.asc
new file mode 100644
index 0000000000..c8850f6cc2
--- /dev/null
+++ b/share/security/advisories/FreeBSD-SA-16:36.telnetd.asc
@@ -0,0 +1,157 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-SA-16:36.telnetd Security Advisory
+ The FreeBSD Project
+
+Topic: Possible login(1) argument injection in telnetd(8)
+
+Category: core
+Module: telnetd
+Announced: 2016-12-06
+Credits: Brooks Davis (sponsored by: DARPA, AFRL)
+Affects: All supported versions of FreeBSD.
+Corrected: 2016-12-06 18:52:02 UTC (stable/11, 11.0-STABLE)
+ 2016-12-06 18:49:38 UTC (releng/11.0, 11.0-RELEASE-p4)
+ 2016-12-06 18:52:18 UTC (stable/10, 10.3-STABLE)
+ 2016-12-06 18:49:48 UTC (releng/10.3, 10.3-RELEASE-p13)
+ 2016-12-06 18:49:54 UTC (releng/10.2, 10.2-RELEASE-p26)
+ 2016-12-06 18:49:59 UTC (releng/10.1, 10.1-RELEASE-p43)
+ 2016-12-06 18:52:33 UTC (stable/9, 9.3-STABLE)
+ 2016-12-06 18:50:06 UTC (releng/9.3, 9.3-RELEASE-p51)
+CVE Name: CVE-2016-1888
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit <URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+The FreeBSD telnet daemon, telnetd(8), implements the server side of the
+TELNET virtual terminal protocol. It has been disabled by default in
+FreeBSD since August 2001, and due to the lack of cryptographic security
+in the TELNET protocol, it is strongly recommended that the SSH protocol
+be used instead. The FreeBSD telnet daemon can be enabled via the
+/etc/inetd.conf configuration file and the inetd(8) daemon.
+
+After a user is connected, telnetd executes the login(1) program or a
+similar program specified by the -p <loginprog> argument. In order to do
+so, it constructs an array of command line arguments which are passed to
+execv(3).
+
+II. Problem Description
+
+An unexpected sequence of memory allocation failures combined with
+insufficient error checking could result in the construction and
+execution of an argument sequence that was not intended.
+
+III. Impact
+
+An attacker who controls the sequence of memory allocation failures and
+success may cause login(1) to run without authentication and may be able
+to cause misbehavior of login(1) replacements.
+
+No practical way of controlling these memory allocation failures is
+known at this time.
+
+IV. Workaround
+
+No workaround is available, but systems not running the telnet daemon
+are not vulnerable.
+
+Note that the telnet daemon is usually run via inetd, and consequently
+will not show up in a process listing unless a connection is currently
+active; to determine if it is enabled, run
+
+$ ps ax | grep telnetd | grep -v grep
+$ grep telnetd /etc/inetd.conf | grep -vE '^#'
+
+If any output is produced, your system may be vulnerable.
+
+V. Solution
+
+Perform one of the following:
+
+1) Upgrade your vulnerable system to a supported FreeBSD stable or
+release / security branch (releng) dated after the correction date.
+
+2) To update your vulnerable system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+3) To update your vulnerable system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+# fetch https://security.FreeBSD.org/patches/SA-16:36/telnetd.patch
+# fetch https://security.FreeBSD.org/patches/SA-16:36/telnetd.patch.asc
+# gpg --verify telnetd.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Kill any running telnetd processes, or reboot the system.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/9/ r309643
+releng/9.3/ r309637
+stable/10/ r309642
+releng/10.1/ r309636
+releng/10.2/ r309635
+releng/10.3/ r309634
+stable/11/ r309641
+releng/11.0/ r309633
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1888>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-16:36.telnetd.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1uAAoJEO1n7NZdz2rnUC0P/3R7UoeNFknnYEXs25NnTS3h
+oDZnGEbLloqQC4mAtPsC2v9WdSRh318J7UMOpko+uYlvxwsJe9TXRgUwP24atdtJ
+a0Al8BvbmIHckIxG7cFJ6Xsw5NDXBgHo2JWBgdU2xvRafZYvFmjlGyxGrvg6Ok0s
+LCz+cnOwni+J4R0CUHTb7eyoeW4HYsg5bVBnzmDwdqQTiig4PsIBVSu+VbOM8kTT
+u7JCzxibzwm9TE0orxDBsY60//hbJRMm12SXj+tVJS3w+qK2iY+Aq02llyTqlGHd
+Tpz4++d9UlS5QSPnu42ev/wzfPDZoxhbb5yciEUDSZA7vG5RD0pCfxfOf+8zORXA
+PLp8XRrl76DJonULUjtNPo8xE3gFOztbUZyTFpxChXUPzZGp0oPRQgTIBTMEPejH
+jC7O5ic0q7aA8UcQk5tqn6lNS6eK6z2UoKGYN4qCjTlC18s1u9dPwHzeSAzjg5YF
+fHX0t/MB8zJ5ts0pUs6OTMOu6umrP4SUJF9hpACFG16vzjJ1S573tuPr9L4HMNCv
+XTX9kjcFwmHqpbrFYW38Fk90x14TT3tigi+xYvCruS1XQeLQM48ThgYAdEboGJvT
+8LGVI8rbwjaglrEk670RlnWVKQInqtPBmbV/GXL9AtE4zzsTHXDT/7iJ30pb4RJq
+rA+cnK1Bog6FHCWGTxjF
+=uYUg
+-----END PGP SIGNATURE-----
diff --git a/share/security/advisories/FreeBSD-SA-16:37.libc.asc b/share/security/advisories/FreeBSD-SA-16:37.libc.asc
new file mode 100644
index 0000000000..d747f2915c
--- /dev/null
+++ b/share/security/advisories/FreeBSD-SA-16:37.libc.asc
@@ -0,0 +1,139 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-SA-16:37.libc Security Advisory
+ The FreeBSD Project
+
+Topic: link_ntoa(3) buffer overflow
+
+Category: core
+Module: libc
+Announced: 2016-12-06
+Affects: All supported versions of FreeBSD.
+Corrected: 2016-12-06 18:53:21 UTC (stable/11, 11.0-STABLE)
+ 2016-12-06 18:49:38 UTC (releng/11.0, 11.0-RELEASE-p4)
+ 2016-12-06 18:53:46 UTC (stable/10, 10.3-STABLE)
+ 2016-12-06 18:49:48 UTC (releng/10.3, 10.3-RELEASE-p13)
+ 2016-12-06 18:49:54 UTC (releng/10.2, 10.2-RELEASE-p26)
+ 2016-12-06 18:49:59 UTC (releng/10.1, 10.1-RELEASE-p43)
+ 2016-12-06 18:54:04 UTC (stable/9, 9.3-STABLE)
+ 2016-12-06 18:50:06 UTC (releng/9.3, 9.3-RELEASE-p51)
+CVE Name: CVE-2016-6559
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit <URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+The link_ntoa(3) function generates ASCII representation of a link-level
+address and is avaliable as part of standard C library (libc).
+
+II. Problem Description
+
+A specially crafted argument can trigger a static buffer overflow in the
+library, with possibility to rewrite following static buffers that belong to
+other library functions.
+
+III. Impact
+
+Due to very limited use of the function in the existing applications,
+and limited length of the overflow, exploitation of the vulnerability
+does not seem feasible. None of the utilities and daemons in the base
+system are known to be vulnerable. However, careful review of third
+party software that may use the function was not performed.
+
+IV. Workaround
+
+No workaround is available.
+
+V. Solution
+
+Perform one of the following:
+
+1) Upgrade your vulnerable system to a supported FreeBSD stable or
+release / security branch (releng) dated after the correction date.
+
+2) To update your vulnerable system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the i386 or amd64
+platforms can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+Restart all daemons that use the library, or reboot the system.
+
+3) To update your vulnerable system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+# fetch https://security.FreeBSD.org/patches/SA-16:37/libc.patch
+# fetch https://security.FreeBSD.org/patches/SA-16:37/libc.patch.asc
+# gpg --verify libc.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+c) Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+Restart all daemons that use the library, or reboot the system.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/9/ r309646
+releng/9.3/ r309637
+stable/10/ r309645
+releng/10.1/ r309636
+releng/10.2/ r309635
+releng/10.3/ r309634
+stable/11/ r309644
+releng/11.0/ r309633
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:http://www.kb.cert.org/vuls/id/548487>
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6559>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-16:37.libc.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1vAAoJEO1n7NZdz2rnk5sP/18NuTRoit3jfa1uHCYMyTOB
+vOGtNtn5xs8NNY4wAdYx2cF3CscTZEWyQtXWsMWzXgbWI0KrWteacGDaDlFwraCu
+9/TJmkCQC5FCfYsgQFOpOPtMl9W+gY2ZrmEPXsfc/smjvIas3fPCBjnoRM2qQlfc
+25YIut+S6OFhm2XM42t/jljbLs6b/PJikeKt7kEEEjKKXWHNwLEYjbtEyelKxD1i
+1IBVe4Run2RajERg99yCznAGGvRo2hbGmnV59kDAilanJK+s3pzCOBFdnKyZd/2l
+Ie8B/fKEXRJyFgJF7A9eSuElTV5fCFfX05AC3PXMoi+GsVPQqhEpNb1FvJoANiFL
+l61nbqkM5KEteIWvf1udHZo6kjhYY4YlvutXW7o41XaUhnaO3dC+4+VpfTycH/no
+j8kVFS1Y9oun31TTZ/+aQqnCfozAMKFaZtrZI3UkSR1kjz5Z5Rqrc4isBhXXP1dQ
+QC87THCyW2D1+E0LvMyJEWKtjGMd8OO5KZjvTxcmxDSrqEOn+yGT1Lp8G/NLuQ4D
+zcarPPl2eE0bikvL/T/k7OdpplTDXoaCOHiMIr02WpbJwipw6HD4FZrg1IQu/Db9
+2cHihr/tS1mbr7k/VKUyIZvQQhZ9j72m4wwBk0CFEG8DeZtMeSum1xgLTEjUerHe
+rWrKG2feWv//R0BvVNhu
+=8y53
+-----END PGP SIGNATURE-----
diff --git a/share/security/advisories/FreeBSD-SA-16:38.bhyve.asc b/share/security/advisories/FreeBSD-SA-16:38.bhyve.asc
new file mode 100644
index 0000000000..26f0bb90e0
--- /dev/null
+++ b/share/security/advisories/FreeBSD-SA-16:38.bhyve.asc
@@ -0,0 +1,143 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-SA-16:38.bhyve Security Advisory
+ The FreeBSD Project
+
+Topic: bhyve(8) virtual machine escape
+
+Category: core
+Module: bhyve
+Announced: 2016-12-06
+Credits: Felix Wilhelm
+Affects: FreeBSD 10.x, FreeBSD 11.0
+Corrected: 2016-12-06 18:54:43 UTC (stable/11, 11.0-STABLE)
+ 2016-12-06 18:49:38 UTC (releng/11.0, 11.0-RELEASE-p4)
+ 2016-12-06 18:55:01 UTC (stable/10, 10.3-STABLE)
+ 2016-12-06 18:49:48 UTC (releng/10.3, 10.3-RELEASE-p13)
+ 2016-12-06 18:49:54 UTC (releng/10.2, 10.2-RELEASE-p26)
+ 2016-12-06 18:49:59 UTC (releng/10.1, 10.1-RELEASE-p43)
+CVE Name: CVE-2016-1889
+
+For general information regarding FreeBSD Security Advisories,
+including descriptions of the fields above, security branches, and the
+following sections, please visit <URL:https://security.FreeBSD.org/>.
+
+I. Background
+
+bhyve(8) is a hypervisor that supports running a variety of virtual
+machines (guests).
+
+II. Problem Description
+
+The bounds checking of accesses to guest memory greater than 4GB by
+device emulations is subject to integer overflow.
+
+III. Impact
+
+For a bhyve virtual machine with more than 3GB of guest memory configured,
+a malicious guest could craft device descriptors that could give it access
+to the heap of the bhyve process. Since the bhyve process is running as root,
+this may allow guests to obtain full control of the hosts they're running on.
+
+IV. Workaround
+
+No workaround is available, however, systems not using bhyve(8) for
+virtualization are not vulnerable. Additionally, systems using bhyve(8) with
+3GB or less of configured guest memory are not vulnerable.
+
+V. Solution
+
+Upgrade your vulnerable system to a supported FreeBSD stable or
+release / security branch (releng) dated after the correction date.
+
+No reboot is needed. Rather the bhyve(8) process for vulnerable virtual
+machines should be restarted.
+
+Perform one of the following:
+
+1) Upgrade your vulnerable system to a supported FreeBSD stable or
+release / security branch (releng) dated after the correction date.
+
+2) To update your vulnerable system via a binary patch:
+
+Systems running a RELEASE version of FreeBSD on the amd64
+platform can be updated via the freebsd-update(8) utility:
+
+# freebsd-update fetch
+# freebsd-update install
+
+3) To update your vulnerable system via a source code patch:
+
+The following patches have been verified to apply to the applicable
+FreeBSD release branches.
+
+a) Download the relevant patch from the location below, and verify the
+detached PGP signature using your PGP utility.
+
+[FreeBSD 11.0, FreeBSD 10.3]
+# fetch https://security.FreeBSD.org/patches/SA-16:38/bhyve.patch
+# fetch https://security.FreeBSD.org/patches/SA-16:38/bhyve.patch.asc
+# gpg --verify bhyve.patch.asc
+
+[FreeBSD 10.2, FreeBSD 10.1]
+# fetch https://security.FreeBSD.org/patches/SA-16:38/bhyve-10.patch
+# fetch https://security.FreeBSD.org/patches/SA-16:38/bhyve-10.patch.asc
+# gpg --verify bhyve-10.patch.asc
+
+b) Apply the patch. Execute the following commands as root:
+
+# cd /usr/src
+# patch < /path/to/patch
+
+Recompile the operating system using buildworld and installworld as
+described in <URL:https://www.FreeBSD.org/handbook/makeworld.html>.
+
+VI. Correction details
+
+The following list contains the correction revision numbers for each
+affected branch.
+
+Branch/path Revision
+- -------------------------------------------------------------------------
+stable/10/ r309648
+releng/10.1/ r309636
+releng/10.2/ r309635
+releng/10.3/ r309634
+stable/11/ r309647
+releng/11.0/ r309633
+- -------------------------------------------------------------------------
+
+To see which files were modified by a particular revision, run the
+following command, replacing NNNNNN with the revision number, on a
+machine with Subversion installed:
+
+# svn diff -cNNNNNN --summarize svn://svn.freebsd.org/base
+
+Or visit the following URL, replacing NNNNNN with the revision number:
+
+<URL:https://svnweb.freebsd.org/base?view=revision&revision=NNNNNN>
+
+VII. References
+
+<URL:https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-1889>
+
+The latest revision of this advisory is available at
+<URL:https://security.FreeBSD.org/advisories/FreeBSD-SA-16:38.bhyve.asc>
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAEBCgAGBQJYRw1wAAoJEO1n7NZdz2rnepoP/1b6uXh8BFW8Qi9cVyfUkldC
+aRfAdmE3azyJCwTY2cipIA+qp9SJUxnLf1lPicERIPZY6iiC6Zm1Qi+cfwCvgczu
+ksY9aYOM7/v1jKuUrPf7tJZ5OokRzkL8W2uCKqAn2BODBK1mA4yy8yGthgyCT6bH
+JzvINPnlQzJKHCdp/8goRVITxa+kMF7UBbpPDAkHuBNKKNRLOYb50Z9G7BZp9/u6
+/Y8avPVCOnU7WKDehG6FgyfE0Z+pUw6dAgpYNblsdQc148xGCSoHyHjXIX1jHzCv
+ZChUhj+6m7CQkjh/GG6x1Bz1lCcsIgsnPAAuQC0WqsaQRnUWJXjTyPMHwkxIHlD7
+sFGPdM4RdMI0O95xMm9Dy05baNsAtBr6DExd48jFv/qbUio9FhUNUJ5rfQEAnyp2
+aAZL34rd90KPFn5zp8EhskOPWGJp7lr+5FpV1m85R07qRES9875eWWYUW5H+yZK+
+kwUcRKiYyvAFTx7Ag38pCtH4SVZ4zRV0mBZnOvchNosMSJz+tZYxApaXHY/nBJck
+wCr+v4DlB9x4LKt9CnB1ow+YqVsMuPyXwyj4e9Pyw/zkvW1aA/TJeUonmm1c2vI4
+07b64wnTsvLGgbhN2ei8LPtAEwpN/DBn7D098Zwf4CfCGQ2VZQeC5AjyTSX9bvy/
+WnKlRTDLDrFSpAD/1/Dz
+=ts3q
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:19/tzcode.patch b/share/security/patches/EN-16:19/tzcode.patch
new file mode 100644
index 0000000000..2e6afdfd6c
--- /dev/null
+++ b/share/security/patches/EN-16:19/tzcode.patch
@@ -0,0 +1,70 @@
+--- contrib/tzcode/zic/zdump.c.orig
++++ contrib/tzcode/zic/zdump.c
+@@ -212,24 +212,16 @@
+ return;
+ cp = abbrp;
+ wp = NULL;
+- while (isascii((unsigned char) *cp) && isalpha((unsigned char) *cp))
++ while (isascii((unsigned char) *cp) &&
++ (isalnum((unsigned char)*cp) || *cp == '-' || *cp == '+'))
+ ++cp;
+- if (cp - abbrp == 0)
+- wp = _("lacks alphabetic at start");
+- else if (cp - abbrp < 3)
+- wp = _("has fewer than 3 alphabetics");
++ if (cp - abbrp < 3)
++ wp = _("has fewer than 3 characters");
+ else if (cp - abbrp > 6)
+- wp = _("has more than 6 alphabetics");
+- if (wp == NULL && (*cp == '+' || *cp == '-')) {
+- ++cp;
+- if (isascii((unsigned char) *cp) &&
+- isdigit((unsigned char) *cp))
+- if (*cp++ == '1' && *cp >= '0' && *cp <= '4')
+- ++cp;
+- if (*cp != '\0')
+- wp = _("differs from POSIX standard");
+- }
+- if (wp == NULL)
++ wp = _("has more than 6 characters");
++ else if (*cp)
++ wp = "has characters other than ASCII alphanumerics, '-' or '+'";
++ else
+ return;
+ (void) fflush(stdout);
+ (void) fprintf(stderr,
+--- contrib/tzcode/zic/zic.c.orig
++++ contrib/tzcode/zic/zic.c
+@@ -2615,29 +2615,15 @@
+ register const char * cp;
+ register char * wp;
+
+- /*
+- ** Want one to ZIC_MAX_ABBR_LEN_WO_WARN alphabetics
+- ** optionally followed by a + or - and a number from 1 to 14.
+- */
+ cp = string;
+ wp = NULL;
+ while (isascii((unsigned char) *cp) &&
+- isalpha((unsigned char) *cp))
++ (isalnum((unsigned char)*cp) || *cp == '-' || *cp == '+'))
+ ++cp;
+- if (cp - string == 0)
+-wp = _("time zone abbreviation lacks alphabetic at start");
+ if (noise && cp - string > 3)
+-wp = _("time zone abbreviation has more than 3 alphabetics");
++wp = _("time zone abbreviation has more than 3 characters");
+ if (cp - string > ZIC_MAX_ABBR_LEN_WO_WARN)
+-wp = _("time zone abbreviation has too many alphabetics");
+- if (wp == NULL && (*cp == '+' || *cp == '-')) {
+- ++cp;
+- if (isascii((unsigned char) *cp) &&
+- isdigit((unsigned char) *cp))
+- if (*cp++ == '1' &&
+- *cp >= '0' && *cp <= '4')
+- ++cp;
+- }
++wp = _("time zone abbreviation has too many characters");
+ if (*cp != '\0')
+ wp = _("time zone abbreviation differs from POSIX standard");
+ if (wp != NULL) {
diff --git a/share/security/patches/EN-16:19/tzcode.patch.asc b/share/security/patches/EN-16:19/tzcode.patch.asc
new file mode 100644
index 0000000000..a9ebdfc7e9
--- /dev/null
+++ b/share/security/patches/EN-16:19/tzcode.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1pAAoJEO1n7NZdz2rn52EP/itjGSb9xqDAmCNvcNxFgPvJ
+fBZ+bBre8eh908lmMbnLJvXRmz/wTxljqmt+6dHwsoAPDo+FGLudZyWTrA2dqTZm
+fPu8GBTtFlynmwAqXjNePTk+Z4EcqkY1ZwyNuJuOVtnsOpqTb9gTRDlNyrVwcz19
+IlUUJuylCC7hf7v51nheVXY799EywUYznKqPfsfTp0qRxQfwvi1dku1nbCc/dR+/
+qjLhFzl58yjiprpnWxUsU+SJKie2svsM9UEg62aZgs7ZWXZ2RP7QP4rSrwJSf5x1
+6NI7PUM17HqQK1peG8pwwoeeKjP7r1kbFY5udGHY/KWrtLg/0U2erENScUvv8RkJ
+8Dl8FMdWUpoWd3/Xs/W82b0r0sEVDS65JPZJNYy2iMegZUHji6+y1i4UUywhXtoj
+5GU0p1voD8g+6JmP90NC7w2mg7UgYvBovW9osKH5s01CntG+XmWoQLwCCHWJwK9G
+Uan949xMT5VoaUn9UyXhLQ9xAD5mUTkNRy8JFbUjblBR6Rrk1mdHdhZq6I3pQ/3i
+QSsH44cyrVLCZ3j0AeITPZDtvN8Iw34D8yM0uTenRXWTRdzQEEFBoxwl7QBGD3I6
+Og9lZJ5J53GCx37vyMmyb+FHaMjZnWFBMUDnrNfK0eImlEXjSH797Iz7JAlDEv2e
+jSrQ0ZFzbbUgMN9f1xxj
+=DGoh
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:20/tzdata-10.1.patch b/share/security/patches/EN-16:20/tzdata-10.1.patch
new file mode 100644
index 0000000000..fd3378f4ae
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.1.patch
@@ -0,0 +1,15859 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -0,0 +1,73 @@
++Contributing to the tz code and data
++
++The time zone database is by no means authoritative: governments
++change timekeeping rules erratically and sometimes with little
++warning, the data entries do not cover all of civil time before
++1970, and undoubtedly errors remain in the code and data. Feel
++free to fill gaps or fix mistakes, and please email improvements
++to tz@iana.org for use in the future.
++
++To email small changes, please run a POSIX shell command like
++'diff -u old/europe new/europe >myfix.patch', and attach
++myfix.patch to the email.
++
++For more-elaborate changes, please read the Theory file and browse
++the mailing list archives <http://mm.icann.org/pipermail/tz/> for
++examples of patches that tend to work well. Ideally, additions to
++data should contain commentary citing reliable sources as
++justification.
++
++Please submit changes against either the latest release in
++<ftp://ftp.iana.org/tz/> or the master branch of the experimental
++Git repository. If you use Git the following workflow may be helpful:
++
++ * Copy the experimental repository.
++
++ git clone https://github.com/eggert/tz.git
++ cd tz
++
++ * Get current with the master branch.
++
++ git checkout master
++ git pull
++
++ * Switch to a new branch for the changes. Choose a different
++ branch name for each change set.
++
++ git checkout -b mybranch
++
++ * Edit source files. Include commentary that justifies the
++ changes by citing reliable sources.
++
++ * Debug the changes, e.g.:
++
++ make check
++ make install
++ ./zdump -v America/Los_Angeles
++
++ * For each separable change, commit it in the new branch, e.g.:
++
++ git add northamerica
++ git commit
++
++ See recent 'git log' output for the commit-message style.
++
++ * Create patch files 0001-*, 0002-*, ...
++
++ git format-patch master
++
++ * After reviewing the patch files, send the patches to tz@iana.org
++ for others to review.
++
++ git send-email master
++
++ * Start anew by getting current with the master branch again
++ (the second step above).
++
++Please do not create issues or pull requests on GitHub, as the
++proper procedure for proposing and distributing patches is via
++email as illustrated above.
++
++-----
++
++This file is in the public domain.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -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.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -0,0 +1,793 @@
++# This file is in the public domain, so clarified as of
++# 2009-05-17 by Arthur David Olson.
++
++# Package name for the code distribution.
++PACKAGE= tzcode
++
++# Version number for the distribution, overridden in the 'tarballs' rule below.
++VERSION= unknown
++
++# Email address for bug reports.
++BUGEMAIL= tz@iana.org
++
++# Change the line below for your time zone (after finding the zone you want in
++# the time zone files, or adding it to a time zone file).
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -l rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for LOCALTIME.
++
++LOCALTIME= GMT
++
++# If you want something other than Eastern United States time as a template
++# for handling POSIX-style time zone environment variables,
++# change the line below (after finding the zone you want in the
++# time zone files, or adding it to a time zone file).
++# (When a POSIX-style environment variable is handled, the rules in the
++# template file are used to determine "spring forward" and "fall back" days and
++# times; the environment variable itself specifies UT offsets of standard and
++# summer time.)
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -p rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for POSIXRULES.
++# If you want POSIX compatibility, use "America/New_York".
++
++POSIXRULES= America/New_York
++
++# Also see TZDEFRULESTRING below, which takes effect only
++# if the time zone files cannot be accessed.
++
++# Everything gets put in subdirectories of. . .
++
++TOPDIR= /usr/local
++
++# "Compiled" time zone information is placed in the "TZDIR" directory
++# (and subdirectories).
++# Use an absolute path name for TZDIR unless you're just testing the software.
++
++TZDIR_BASENAME= zoneinfo
++TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
++
++# Types to try, as an alternative to time_t. int64_t should be first.
++TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
++
++# The "tzselect", "zic", and "zdump" commands get installed in. . .
++
++ETCDIR= $(TOPDIR)/etc
++
++# If you "make INSTALL", the "date" command gets installed in. . .
++
++BINDIR= $(TOPDIR)/bin
++
++# Manual pages go in subdirectories of. . .
++
++MANDIR= $(TOPDIR)/man
++
++# Library functions are put in an archive in LIBDIR.
++
++LIBDIR= $(TOPDIR)/lib
++
++# If you always want time values interpreted as "seconds since the epoch
++# (not counting leap seconds)", use
++# REDO= posix_only
++# below. If you always want right time values interpreted as "seconds since
++# the epoch" (counting leap seconds)", use
++# REDO= right_only
++# below. If you want both sets of data available, with leap seconds not
++# counted normally, use
++# REDO= posix_right
++# below. If you want both sets of data available, with leap seconds counted
++# normally, use
++# REDO= right_posix
++# below. POSIX mandates that leap seconds not be counted; for compatibility
++# with it, use "posix_only" or "posix_right".
++
++REDO= posix_right
++
++# If you want out-of-scope and often-wrong data from the file 'backzone', use
++# PACKRATDATA= backzone
++# To omit this data, use
++# PACKRATDATA=
++
++PACKRATDATA=
++
++# Since "." may not be in PATH...
++
++YEARISTYPE= ./yearistype
++
++# Non-default libraries needed to link.
++LDLIBS=
++
++# Add the following to the end of the "CFLAGS=" line as needed.
++# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r
++# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
++# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS)
++# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares
++# ctime_r and asctime_r incompatibly with the POSIX standard
++# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
++# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h"
++# -DHAVE_LINK=0 if your system lacks a link function
++# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
++# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
++# This defaults to 1 if a working localtime_rz seems to be available.
++# localtime_rz can make zdump significantly faster, but is nonstandard.
++# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
++# functions like 'link' or variables like 'tzname' required by POSIX
++# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h"
++# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l
++# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_STRDUP=0 if your system lacks the strdup function
++# -DHAVE_SYMLINK=0 if your system lacks the symlink function
++# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h"
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h"
++# -DHAVE_TZSET=0 if your system lacks a tzset function
++# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?)
++# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT
++# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater
++# than what POSIX specifies, assuming local time is UT.
++# For example, N is 252460800 on AmigaOS.
++# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1
++# if you do not want run time warnings about formats that may cause
++# year 2000 grief
++# -Dssize_t=long on ancient hosts that lack ssize_t
++# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires;
++# not needed by the main-program tz code, which is single-threaded.
++# Append other compiler flags as needed, e.g., -pthread on GNU/Linux.
++# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t
++# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz"
++# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
++# the default is system-supplied, typically "/usr/lib/locale"
++# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
++# DST transitions if the time zone files cannot be accessed
++# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems
++# other than simply getting garbage data
++# -DUSE_LTZ=0 to build zdump with the system time zone library
++# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
++# -DZIC_MAX_ABBR_LEN_WO_WARN=3
++# (or some other number) to set the maximum time zone abbreviation length
++# that zic will accept without a warning (the default is 6)
++# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
++GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
++ -Wall -Wextra \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement \
++ -Wdouble-promotion \
++ -Wformat=2 -Winit-self -Wjump-misses-init \
++ -Wlogical-op -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \
++ -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \
++ -Wsuggest-attribute=pure -Wtrampolines \
++ -Wunused -Wwrite-strings \
++ -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
++ -Wno-type-limits -Wno-unused-parameter
++#
++# If you want to use System V compatibility code, add
++# -DUSG_COMPAT
++# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight"
++# variables to be kept up-to-date by the time conversion functions. Neither
++# "timezone" nor "daylight" is described in X3J11's work.
++#
++# If your system has a "GMT offset" field in its "struct tm"s
++# (or if you decide to add such a field in your system's "time.h" file),
++# add the name to a define such as
++# -DTM_GMTOFF=tm_gmtoff
++# to the end of the "CFLAGS=" line. If not defined, the code attempts to
++# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this.
++# Similarly, if your system has a "zone abbreviation" field, define
++# -DTM_ZONE=tm_zone
++# and define NO_TM_ZONE to suppress any guessing. These two fields are not
++# required by POSIX, but are widely available on GNU/Linux and BSD systems.
++#
++# If you want functions that were inspired by early versions of X3J11's work,
++# add
++# -DSTD_INSPIRED
++# to the end of the "CFLAGS=" line. This arranges for the functions
++# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
++# "posix2time", and "time2posix" to be added to the time conversion library.
++# "tzsetwall" is like "tzset" except that it arranges for local wall clock
++# time (rather than the time specified in the TZ environment variable)
++# to be used.
++# "offtime" is like "gmtime" except that it accepts a second (long) argument
++# that gives an offset to add to the time_t when converting it.
++# "timelocal" is equivalent to "mktime".
++# "timegm" is like "timelocal" except that it turns a struct tm into
++# a time_t using UT (rather than local time as "timelocal" does).
++# "timeoff" is like "timegm" except that it accepts a second (long) argument
++# that gives an offset to use when converting to a time_t.
++# "posix2time" and "time2posix" are described in an included manual page.
++# X3J11's work does not describe any of these functions.
++# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0.
++# These functions may well disappear in future releases of the time
++# conversion package.
++#
++# If you don't want functions that were inspired by NetBSD, add
++# -DNETBSD_INSPIRED=0
++# to the end of the "CFLAGS=" line. Otherwise, the functions
++# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
++# time library, and if STD_INSPIRED is also defined the functions
++# "posix2time_z" and "time2posix_z" are added as well.
++# The functions ending in "_z" (or "_rz") are like their unsuffixed
++# (or suffixed-by-"_r") counterparts, except with an extra first
++# argument of opaque type timezone_t that specifies the time zone.
++# "tzalloc" allocates a timezone_t value, and "tzfree" frees it.
++#
++# If you want to allocate state structures in localtime, add
++# -DALL_STATE
++# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc.
++#
++# If you want an "altzone" variable (a la System V Release 3.1), add
++# -DALTZONE
++# to the end of the "CFLAGS=" line.
++# This variable is not described in X3J11's work.
++#
++# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put
++# out by the National Institute of Standards and Technology
++# which claims to test C and Posix conformance. If you want to pass PCTS, add
++# -DPCTS
++# to the end of the "CFLAGS=" line.
++#
++# If you want strict compliance with XPG4 as of 1994-04-09, add
++# -DXPG4_1994_04_09
++# to the end of the "CFLAGS=" line. This causes "strftime" to always return
++# 53 as a week number (rather than 52 or 53) for those days in January that
++# before the first Monday in January when a "%V" format is used and January 1
++# falls on a Friday, Saturday, or Sunday.
++
++CFLAGS=
++
++# Linker flags. Default to $(LFLAGS) for backwards compatibility
++# to release 2012h and earlier.
++
++LDFLAGS= $(LFLAGS)
++
++# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in
++# submake command lines. The default is no leap seconds.
++
++LEAPSECONDS=
++
++# The zic command and its arguments.
++
++zic= ./zic
++ZIC= $(zic) $(ZFLAGS)
++
++ZFLAGS=
++
++# How to use zic to install tz binary files.
++
++ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++
++# The name of a Posix-compliant 'awk' on your system.
++AWK= awk
++
++# The full path name of a Posix-compliant shell, preferably one that supports
++# the Korn shell's 'select' statement as an extension.
++# These days, Bash is the most popular.
++# It should be OK to set this to /bin/sh, on platforms where /bin/sh
++# lacks 'select' or doesn't completely conform to Posix, but /bin/bash
++# is typically nicer if it works.
++KSHELL= /bin/bash
++
++# The path where SGML DTDs are kept and the catalog file(s) to use when
++# validating. The default should work on both Debian and Red Hat.
++SGML_TOPDIR= /usr
++SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
++SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
++SGML_CATALOG_FILES= \
++ $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
++
++# The name, arguments and environment of a program to validate your web pages.
++# See <http://openjade.sourceforge.net/doc/> for a validator, and
++# <https://validator.w3.org/source/> for a validation library.
++VALIDATE = nsgmls
++VALIDATE_FLAGS = -s -B -wall -wno-unused-param
++VALIDATE_ENV = \
++ SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \
++ SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \
++ SP_CHARSET_FIXED=YES \
++ SP_ENCODING=UTF-8
++
++# This expensive test requires USE_LTZ.
++# To suppress it, define this macro to be empty.
++CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
++
++# SAFE_CHAR is a regular expression that matches a safe character.
++# Some parts of this distribution are limited to safe characters;
++# others can use any UTF-8 character.
++# For now, the safe characters are a safe subset of ASCII.
++# The caller must set the shell variable 'sharp' to the character '#',
++# since Makefile macros cannot contain '#'.
++# TAB_CHAR is a single tab character, in single quotes.
++TAB_CHAR= ' '
++SAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@'
++SAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`'
++SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~'
++SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
++SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]'
++
++# OK_CHAR matches any character allowed in the distributed files.
++# This is the same as SAFE_CHAR, except that multibyte letters are
++# also allowed so that commentary can contain people's names and quote
++# non-English sources. For non-letters the sources are limited to
++# ASCII renderings for the convenience of maintainers whose text editors
++# mishandle UTF-8 by default (e.g., XEmacs 21.4.22).
++OK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]'
++
++# SAFE_LINE matches a line of safe characters.
++# SAFE_SHARP_LINE is similar, except any OK character can follow '#';
++# this is so that comments can contain non-ASCII characters.
++# OK_LINE matches a line of OK characters.
++SAFE_LINE= '^'$(SAFE_CHAR)'*$$'
++SAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$'
++OK_LINE= '^'$(OK_CHAR)'*$$'
++
++# Flags to give 'tar' when making a distribution.
++# Try to use flags appropriate for GNU tar.
++GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
++TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
++ then echo $(GNUTARFLAGS); \
++ else :; \
++ fi`
++
++# Flags to give 'gzip' when making a distribution.
++GZIPFLAGS= -9n
++
++###############################################################################
++
++#MAKE= make
++
++cc= cc
++CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++
++AR= ar
++
++# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib.
++RANLIB= :
++
++TZCOBJS= zic.o
++TZDOBJS= zdump.o localtime.o asctime.o
++DATEOBJS= date.o localtime.o strftime.o asctime.o
++LIBSRCS= localtime.c asctime.c difftime.c
++LIBOBJS= localtime.o asctime.o difftime.o
++HEADERS= tzfile.h private.h
++NONLIBSRCS= zic.c zdump.c
++NEWUCBSRCS= date.c strftime.c
++SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
++ tzselect.ksh workman.sh
++MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
++ tzfile.5 tzselect.8 zic.8 zdump.8
++MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
++ time2posix.3.txt \
++ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \
++ date.1.txt
++COMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version
++WEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm
++DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
++PRIMARY_YDATA= africa antarctica asia australasia \
++ europe northamerica southamerica
++YDATA= $(PRIMARY_YDATA) pacificnew etcetera backward
++NDATA= systemv factory
++TDATA= $(YDATA) $(NDATA)
++ZONETABLES= zone1970.tab zone.tab
++TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++LEAP_DEPS= leapseconds.awk leap-seconds.list
++DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
++ leap-seconds.list yearistype.sh
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
++MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
++TZS_YEAR= 2050
++TZS= to$(TZS_YEAR).tzs
++TZS_NEW= to$(TZS_YEAR)new.tzs
++TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
++ private.h tzfile.h zdump.c zic.c
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
++
++# Consult these files when deciding whether to rebuild the 'version' file.
++# This list is not the same as the output of 'git ls-files', since
++# .gitignore is not distributed.
++VERSION_DEPS= \
++ CONTRIBUTING LICENSE Makefile NEWS README Theory \
++ africa antarctica asctime.c asia australasia \
++ backward backzone \
++ checklinks.awk checktab.awk \
++ date.1 date.c difftime.c \
++ etcetera europe factory iso3166.tab \
++ leap-seconds.list leapseconds.awk localtime.c \
++ newctime.3 newstrftime.3 newtzset.3 northamerica \
++ pacificnew private.h \
++ southamerica strftime.c systemv \
++ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
++ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
++ workman.sh yearistype.sh \
++ zdump.8 zdump.c zic.8 zic.c \
++ zone.tab zone1970.tab zoneinfo2tdf.pl
++
++# And for the benefit of csh users on systems that assume the user
++# shell should be used to handle commands in Makefiles. . .
++
++SHELL= /bin/sh
++
++all: tzselect yearistype zic zdump libtz.a $(TABDATA)
++
++ALL: all date $(ENCHILADA)
++
++install: all $(DATA) $(REDO) $(MANS)
++ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
++ $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
++ $(DESTDIR)$(MANDIR)/man8
++ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
++ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp libtz.a $(DESTDIR)$(LIBDIR)/.
++ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
++ cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
++ cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
++ cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
++
++INSTALL: ALL install date.1
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp date $(DESTDIR)$(BINDIR)/.
++ cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
++
++version: $(VERSION_DEPS)
++ { (type git) >/dev/null 2>&1 && \
++ V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
++ --abbrev=7 --dirty` || \
++ V=$(VERSION); } && \
++ printf '%s\n' "$$V" >$@.out
++ mv $@.out $@
++
++version.h: version
++ VERSION=`cat version` && printf '%s\n' \
++ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
++ "static char const TZVERSION[]=\"$$VERSION\";" \
++ 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \
++ >$@.out
++ mv $@.out $@
++
++zdump: $(TZDOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
++
++zic: $(TZCOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
++
++yearistype: yearistype.sh
++ cp yearistype.sh yearistype
++ chmod +x yearistype
++
++leapseconds: $(LEAP_DEPS)
++ $(AWK) -f leapseconds.awk leap-seconds.list >$@.out
++ mv $@.out $@
++
++# Arguments to pass to submakes of install_data.
++# They can be overridden by later submake arguments.
++INSTALLARGS = \
++ DESTDIR=$(DESTDIR) \
++ LEAPSECONDS='$(LEAPSECONDS)' \
++ PACKRATDATA='$(PACKRATDATA)' \
++ TZDIR=$(TZDIR) \
++ YEARISTYPE=$(YEARISTYPE) \
++ ZIC='$(ZIC)'
++
++# 'make install_data' installs one set of tz binary files.
++# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc.
++install_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA)
++ $(ZIC_INSTALL) $(TDATA)
++ $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA)
++
++posix_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
++
++right_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \
++ install_data
++
++# In earlier versions of this makefile, the other two directories were
++# subdirectories of $(TZDIR). However, this led to configuration errors.
++# For example, with posix_right under the earlier scheme,
++# TZ='right/Australia/Adelaide' got you localtime with leap seconds,
++# but gmtime without leap seconds, which led to problems with applications
++# like sendmail that subtract gmtime from localtime.
++# Therefore, the other two directories are now siblings of $(TZDIR).
++# You must replace all of $(TZDIR) to switch from not using leap seconds
++# to using them, or vice versa.
++right_posix: right_only
++ rm -fr $(DESTDIR)$(TZDIR)-leaps
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++
++posix_right: posix_only
++ rm -fr $(DESTDIR)$(TZDIR)-posix
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++
++# This obsolescent rule is present for backwards compatibility with
++# tz releases 2014g through 2015g. It should go away eventually.
++posix_packrat:
++ $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only
++
++zones: $(REDO)
++
++$(TZS_NEW): $(TDATA) zdump zic
++ mkdir -p tzs.dir
++ $(zic) -d tzs.dir $(TDATA)
++ $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
++ $(TDATA) | LC_ALL=C sort >$@.out
++ wd=`pwd` && \
++ zones=`$(AWK) -v wd="$$wd" \
++ '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ | LC_ALL=C sort` && \
++ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
++ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
++ rm -fr tzs.dir $@.out
++ mv $@.sed.out $@
++
++# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
++# If it exists but 'make check_tzs' fails, a maintainer should inspect the
++# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
++$(TZS):
++ $(MAKE) force_tzs
++
++force_tzs: $(TZS_NEW)
++ cp $(TZS_NEW) $(TZS)
++
++libtz.a: $(LIBOBJS)
++ $(AR) ru $@ $(LIBOBJS)
++ $(RANLIB) $@
++
++date: $(DATEOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
++
++tzselect: tzselect.ksh version
++ VERSION=`cat version` && sed \
++ -e 's|#!/bin/bash|#!$(KSHELL)|g' \
++ -e 's|AWK=[^}]*|AWK=$(AWK)|g' \
++ -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
++ -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
++ -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
++ -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \
++ <$@.ksh >$@.out
++ chmod +x $@.out
++ mv $@.out $@
++
++check: check_character_set check_white_space check_links check_sorted \
++ check_tables check_tzs check_web
++
++check_character_set: $(ENCHILADA)
++ LC_ALL=en_US.utf8 && export LC_ALL && \
++ sharp='#' && \
++ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
++ $(MISC) $(SOURCES) $(WEB_PAGES) \
++ CONTRIBUTING LICENSE Makefile README version && \
++ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
++ leapseconds yearistype.sh zone.tab && \
++ ! grep -Env $(OK_LINE) $(ENCHILADA)
++
++check_white_space: $(ENCHILADA)
++ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
++ ! grep -En "$$pat" $(ENCHILADA)
++ ! grep -n '[[:space:]]$$' $(ENCHILADA)
++
++CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
++
++check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
++ $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
++ $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
++ LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
++ LC_ALL=C sort -cu
++
++check_links: checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk $(TDATA)
++
++check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
++ for tab in $(ZONETABLES); do \
++ $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \
++ || exit; \
++ done
++
++check_tzs: $(TZS) $(TZS_NEW)
++ diff -u $(TZS) $(TZS_NEW)
++
++check_web: $(WEB_PAGES)
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++
++clean_misc:
++ rm -f core *.o *.out \
++ date tzselect version.h zdump zic yearistype libtz.a
++clean: clean_misc
++ rm -fr *.dir tzdb-*/ $(TZS_NEW)
++
++maintainer-clean: clean
++ @echo 'This command is intended for maintainers to use; it'
++ @echo 'deletes files that may need special tools to rebuild.'
++ rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
++
++names:
++ @echo $(ENCHILADA)
++
++public: check check_public $(CHECK_TIME_T_ALTERNATIVES) \
++ tarballs signatures
++
++date.1.txt: date.1
++newctime.3.txt: newctime.3
++newstrftime.3.txt: newstrftime.3
++newtzset.3.txt: newtzset.3
++time2posix.3.txt: time2posix.3
++tzfile.5.txt: tzfile.5
++tzselect.8.txt: tzselect.8
++zdump.8.txt: zdump.8
++zic.8.txt: zic.8
++
++$(MANTXTS): workman.sh
++ LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out
++ mv $@.out $@
++
++# Set the time stamps to those of the git repository, if available,
++# and if the files have not changed since then.
++# This uses GNU 'touch' syntax 'touch -d@N FILE',
++# where N is the number of seconds since 1970.
++# If git or GNU 'touch' is absent, don't bother to sync with git timestamps.
++# Also, set the timestamp of each prebuilt file like 'leapseconds'
++# to be the maximum of the files it depends on.
++set-timestamps.out: $(ENCHILADA)
++ rm -f $@
++ if (type git) >/dev/null 2>&1 && \
++ files=`git ls-files $(ENCHILADA)` && \
++ touch -md @1 test.out; then \
++ rm -f test.out && \
++ for file in $$files; do \
++ if git diff --quiet $$file; then \
++ time=`git log -1 --format='tformat:%ct' $$file` && \
++ touch -cmd @$$time $$file; \
++ else \
++ echo >&2 "$$file: warning: does not match repository"; \
++ fi || exit; \
++ done; \
++ fi
++ touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds
++ for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \
++ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
++ exit; \
++ done
++ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
++ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
++ touch $@
++
++# The zics below ensure that each data file can stand on its own.
++# We also do an all-files run to catch links to links.
++
++check_public:
++ $(MAKE) maintainer-clean
++ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
++ mkdir -p public.dir
++ for i in $(TDATA) ; do \
++ $(zic) -v -d public.dir $$i 2>&1 || exit; \
++ done
++ $(zic) -v -d public.dir $(TDATA)
++ rm -fr public.dir
++
++# Check that the code works under various alternative
++# implementations of time_t.
++check_time_t_alternatives:
++ if diff -q Makefile Makefile 2>/dev/null; then \
++ quiet_option='-q'; \
++ else \
++ quiet_option=''; \
++ fi && \
++ wd=`pwd` && \
++ zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
++ for type in $(TIME_T_ALTERNATIVES); do \
++ mkdir -p time_t.dir/$$type && \
++ $(MAKE) clean_misc && \
++ $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \
++ CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
++ REDO='$(REDO)' \
++ install && \
++ diff $$quiet_option -r \
++ time_t.dir/int64_t/etc/zoneinfo \
++ time_t.dir/$$type/etc/zoneinfo && \
++ case $$type in \
++ int32_t) range=-2147483648,2147483647;; \
++ uint32_t) range=0,4294967296;; \
++ int64_t) continue;; \
++ *u*) range=0,10000000000;; \
++ *) range=-10000000000,10000000000;; \
++ esac && \
++ echo checking $$type zones ... && \
++ time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/int64_t.out && \
++ time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/$$type.out && \
++ diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
++ || exit; \
++ done
++ rm -fr time_t.dir
++
++tarballs traditional_tarballs signatures traditional_signatures: version
++ VERSION=`cat version` && \
++ $(MAKE) VERSION="$$VERSION" $@_version
++
++tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
++traditional_tarballs_version: \
++ tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
++signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
++traditional_signatures_version: \
++ tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
++
++tzcode$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - \
++ $(COMMON) $(DOCS) $(SOURCES) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdata$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdb-$(VERSION).tar.lz: set-timestamps.out
++ rm -fr tzdb-$(VERSION)
++ mkdir tzdb-$(VERSION)
++ ln $(ENCHILADA) tzdb-$(VERSION)
++ touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION)
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out
++ mv $@.out $@
++
++tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
++ gpg --armor --detach-sign $?
++
++typecheck:
++ $(MAKE) clean
++ for i in "long long" unsigned; \
++ do \
++ $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \
++ ./zdump -v Europe/Rome ; \
++ $(MAKE) clean ; \
++ done
++
++zonenames: $(TDATA)
++ @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++
++asctime.o: private.h tzfile.h
++date.o: private.h
++difftime.o: private.h
++localtime.o: private.h tzfile.h
++strftime.o: private.h tzfile.h
++zdump.o: version.h
++zic.o: private.h tzfile.h version.h
++
++.KEEP_STATE:
++
++.PHONY: ALL INSTALL all
++.PHONY: check check_character_set check_links
++.PHONY: check_public check_sorted check_tables
++.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
++.PHONY: clean clean_misc force_tzs
++.PHONY: install install_data maintainer-clean names
++.PHONY: posix_only posix_packrat posix_right
++.PHONY: public right_only right_posix signatures signatures_version
++.PHONY: tarballs tarballs_version typecheck
++.PHONY: zonenames zones
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -0,0 +1,3782 @@
++News for the tz database
++
++Release 2016i - 2016-11-01 23:19:52 -0700
++
++ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
++ reintroduces DST on 2016-11-06.
++
++ Changes to future time stamps
++
++ Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
++ 2017-01-15 at 03:00. Assume future observances in Tonga will be
++ from the first Sunday in November through the third Sunday in
++ January, like Fiji. (Thanks to Pulu ʻAnau.) Switch to numeric
++ time zone abbreviations for this zone.
++
++ Changes to past and future time stamps
++
++ Northern Cyprus is now +03 year round, causing a split in Cyprus
++ time zones starting 2016-10-30 at 04:00. This creates a zone
++ Asia/Famagusta. (Thanks to Even Scharning and Matt Johnson.)
++
++ Antarctica/Casey switched from +08 to +11 on 2016-10-22.
++ (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Several corrections were made for pre-1975 time stamps in Italy.
++ These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
++ Europe/Vatican.
++
++ First, the 1893-11-01 00:00 transition in Italy used the new UT
++ offset (+01), not the old (+00:49:56). (Thanks to Michael
++ Deckers.)
++
++ Second, rules for daylight saving in Italy were changed to agree
++ with Italy's National Institute of Metrological Research (INRiM)
++ except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
++ Inglis, and Michael Deckers):
++
++ The 1916-06-03 transition was at 24:00, not 00:00.
++
++ The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
++ 00:00, not 01:00.
++
++ The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
++ 01:00.
++
++ The 1944-09-17 transition was at 03:00, not 01:00. This
++ particular change is taken from Italian law as INRiM's table,
++ (which says 02:00) appears to have a typo here. Also, keep the
++ 1944-04-03 transition for Europe/Rome, as Rome was controlled by
++ Germany then.
++
++ The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
++ not 00:00.
++
++ Changes to code
++
++ The code should now be buildable on AmigaOS merely by setting the
++ appropriate Makefile variables. (From a patch by Carsten Larsen.)
++
++
++Release 2016h - 2016-10-19 23:17:57 -0700
++
++ Changes to future time stamps
++
++ Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
++ 2016-10-21 at 00:00. (Thanks to Sharef Mustafa.) Predict that
++ future fall transitions will be on the last Saturday of October
++ at 01:00, which is consistent with predicted spring transitions
++ on the last Saturday of March. (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ In Turkey, transitions in 1986-1990 were at 01:00 standard time
++ not at 02:00, and the spring 1994 transition was on March 20, not
++ March 27. (Thanks to Kıvanç Yazan.)
++
++ Changes to past and future time zone abbreviations
++
++ Asia/Colombo now uses numeric time zone abbreviations like "+0530"
++ instead of alphabetic ones like "IST" and "LKT". Various
++ English-language sources use "IST", "LKT" and "SLST", with no
++ working consensus. (Usage of "SLST" mentioned by Sadika
++ Sumanapala.)
++
++ Changes to code
++
++ zic no longer mishandles relativizing file names when creating
++ symbolic links like /etc/localtime, when these symbolic links
++ are outside the usual directory hierarchy. This fixes a bug
++ introduced in 2016g. (Problem reported by Andreas Stieger.)
++
++ Changes to build procedure
++
++ New rules 'traditional_tarballs' and 'traditional_signatures' for
++ building just the traditional-format distribution. (Requested by
++ Deborah Goldsmith.)
++
++ The file 'version' is now put into the tzdata tarball too.
++ (Requested by Howard Hinnant.)
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now has a section on interface stability.
++ (Requested by Paul Koning.) It also mentions features like
++ tm_zone and localtime_rz that have long been supported by the
++ reference code.
++
++ tz-link.htm has improved coverage of time zone boundaries suitable
++ for geolocation. (Thanks to heads-ups from Evan Siroky and Matt
++ Johnson.)
++
++ The US commentary now mentions Allen and the "day of two noons".
++
++ The Fiji commentary mentions the government's 2016-10-03 press
++ release. (Thanks to Raymond Kumar.)
++
++
++Release 2016g - 2016-09-13 08:56:38 -0700
++
++ Changes to future time stamps
++
++ Turkey switched from EET/EEST (+02/+03) to permanent +03,
++ effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather
++ than an invented abbreviation for the new time.
++
++ New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
++ (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ For America/Los_Angeles, spring-forward transition times have been
++ corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
++ 1950-1966.
++
++ For zones using Soviet time on 1919-07-01, transitions to UT-based
++ time were at 00:00 UT, not at 02:00 local time. The affected
++ zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
++ Europe/Ulyanovsk. (Thanks to Alexander Belopolsky.)
++
++ Changes to past and future time zone abbreviations
++
++ The Factory zone now uses the time zone abbreviation -00 instead
++ of a long English-language string, as -00 is now the normal way to
++ represent an undefined time zone.
++
++ Several zones in Antarctica and the former Soviet Union, along
++ with zones intended for ships at sea that cannot use POSIX TZ
++ strings, now use numeric time zone abbreviations instead of
++ invented or obsolete alphanumeric abbreviations. The affected
++ zones are Antarctica/Casey, Antarctica/Davis,
++ Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
++ Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
++ Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
++ Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
++ Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
++ Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
++ Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
++ Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
++ Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
++ Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
++ Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
++ Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
++ Europe/Minsk, Europe/Samara, Europe/Volgograd, and
++ Indian/Kerguelen. For Europe/Moscow the invented abbreviation MSM
++ was replaced by +05, whereas MSK and MSD were kept as they are not
++ our invention and are widely used.
++
++ Changes to zone names
++
++ Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
++ (Thanks to David Massoud.)
++
++ Changes to code
++
++ zic no longer generates binary files containing POSIX TZ-like
++ strings that disagree with the local time type after the last
++ explicit transition in the data. This fixes a bug with
++ Africa/Casablanca and Africa/El_Aaiun in some year-2037 time
++ stamps on the reference platform. (Thanks to Alexander Belopolsky
++ for reporting the bug and suggesting a way forward.)
++
++ If the installed localtime and/or posixrules files are symbolic
++ links, zic now keeps them symbolic links when updating them, for
++ compatibility with platforms like OpenSUSE where other programs
++ configure these files as symlinks.
++
++ zic now avoids hard linking to symbolic links, avoids some
++ unnecessary mkdir and stat system calls, and uses shorter file
++ names internally.
++
++ zdump has a new -i option to generate transitions in a
++ more-compact but still human-readable format. This option is
++ experimental, and the output format may change in future versions.
++ (Thanks to Jon Skeet for suggesting that an option was needed,
++ and thanks to Tim Parenti and Chris Rovick for further comments.)
++
++ Changes to build procedure
++
++ An experimental distribution format is available, in addition
++ to the traditional format which will continue to be distributed.
++ The new format is a tarball tzdb-VERSION.tar.lz with signature
++ file tzdb-VERSION.tar.lz.asc. It unpacks to a top-level directory
++ tzdb-VERSION containing the code and data of the traditional
++ two-tarball format, along with extra data that may be useful.
++ (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
++ for comments about the experimental format.)
++
++ The release version number is now more accurate in the usual case
++ where releases are built from a Git repository. For example, if
++ 23 commits and some working-file changes have been made since
++ release 2016g, the version number is now something like
++ '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
++ Official releases uses the same version number format as before,
++ e.g., '2016g'. To support the more-accurate version number, its
++ specification has moved from a line in the Makefile to a new
++ source file 'version'.
++
++ The experimental distribution contains a file to2050.tzs that
++ contains what should be the output of 'zdump -i -c 2050' on
++ primary zones. If this file is available, 'make check' now checks
++ that zdump generates this output.
++
++ 'make check_web' now works on Fedora-like distributions.
++
++ Changes to documentation and commentary
++
++ tzfile.5 now documents the new restriction on POSIX TZ-like
++ strings that is now implemented by zic.
++
++ Comments now cite URLs for some 1917-1921 Russian DST decrees.
++ (Thanks to Alexander Belopolsky.)
++
++ tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
++ (thanks to Meno Hochschild) and ThreeTen-Extra, and its
++ description of Java 8 has been brought up to date (thanks to
++ Stephen Colebourne). Its description of local time on Mars has
++ been updated to match current practice, and URLs have been updated
++ and some obsolete ones removed.
++
++
++Release 2016f - 2016-07-05 16:26:51 +0200
++
++ 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.)
++
++
++Release 2016e - 2016-06-14 08:46:16 -0700
++
++ Changes affecting future time stamps
++
++ Africa/Cairo observes DST in 2016 from July 7 to the end of October.
++ Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
++ For future years, guess April's last Thursday to October's last
++ Thursday except for Ramadan.
++
++ Changes affecting past time stamps
++
++ Locations while uninhabited now use '-00', not 'zzz', as a
++ placeholder time zone abbreviation. This is inspired by Internet
++ RFC 3339 and is more consistent with numeric time zone
++ abbreviations already used elsewhere. The change affects several
++ arctic and antarctic locations, e.g., America/Cambridge_Bay before
++ 1920 and Antarctica/Troll before 2005.
++
++ Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
++ at 03:00, not 23:00 the previous day. (Thanks to Michael Deckers.)
++
++ Changes to code
++
++ zic now outputs a dummy transition at time 2**31 - 1 in zones
++ whose POSIX-style TZ strings contain a '<'. This mostly works
++ around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
++ (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm says why governments should give plenty of notice for
++ time zone or DST changes, and refers to Matt Johnson's blog post.
++
++ tz-link.htm mentions Tzdata for Elixir. (Thanks to Matt Johnson.)
++
++
++Release 2016d - 2016-04-17 22:50:29 -0700
++
++ Changes affecting future time stamps
++
++ America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
++ (Thanks to Alexander Krivenyshev for the heads-up.)
++
++ Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
++ (Thanks to Alexander Krivenyshev and Matt Johnson.)
++
++ New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
++ Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
++ at 02:00. (Thanks to Stepan Golosunov.)
++
++ Changes affecting past time stamps
++
++ New zone Europe/Kirov, split off from Europe/Volgograd. It covers
++ Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
++ 1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
++ the same change. (Thanks to Stepan Golosunov.)
++
++ Russia and nearby locations had daylight-saving transitions on
++ 1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
++ 1992-03-28 at 23:00 and 1992-09-26 at 23:00. (Thanks to Stepan
++ Golosunov.)
++
++ Many corrections to historical time in Kazakhstan from 1991
++ through 2005. (Thanks to Stepan Golosunov.) Replace Kazakhstan's
++ invented time zone abbreviations with numeric abbreviations.
++
++ Changes to commentary
++
++ Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
++
++
++Release 2016c - 2016-03-23 00:51:27 -0700
++
++ Changes affecting future time stamps
++
++ Azerbaijan no longer observes DST. (Thanks to Steffen Thorsen.)
++
++ Chile reverts from permanent to seasonal DST. (Thanks to Juan
++ Correa for the heads-up, and to Tim Parenti for corrections.)
++ Guess that future transitions are August's and May's second
++ Saturdays at 24:00 mainland time. Also, call the period from
++ 2014-09-07 through 2016-05-14 daylight saving time instead of
++ standard time, as that seems more appropriate now.
++
++ Changes affecting past time stamps
++
++ Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
++ +02/+03 on 1989-03-26, not 1991-03-31. Europe/Volgograd changed
++ from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to commentary
++
++ Several updates and URLs for historical and proposed Russian changes.
++ (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
++
++
++Release 2016b - 2016-03-12 17:30:14 -0800
++
++ Compatibility note
++
++ Starting with release 2016b, some data entries cause zic implementations
++ derived from tz releases 2005j through 2015e to issue warnings like
++ "time zone abbreviation differs from POSIX standard (+03)".
++ These warnings should not otherwise affect zic's output and can safely be
++ ignored on today's platforms, as the warnings refer to a restriction in
++ POSIX.1-1988 that was removed in POSIX.1-2001. One way to suppress the
++ warnings is to upgrade to zic derived from tz releases 2015f and later.
++
++ Changes affecting future time stamps
++
++ New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
++ Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
++ 2016-03-27 at 02:00 local time. They need distinct zones since their
++ post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and
++ Altai Republic, Russia, which will switch from +06 to +07 on the same date
++ and local time. The Astrakhan change is already official; the others have
++ passed the first reading in the State Duma and are extremely likely.
++ Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
++ and Stepan Golosunov for followup.)
++
++ As a trial of a new system that needs less information to be made up,
++ the new zones use numeric time zone abbreviations like "+04"
++ instead of invented abbreviations like "ASTT".
++
++ Haiti will not observe DST in 2016. (Thanks to Jean Antoine via
++ Steffen Thorsen.)
++
++ Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
++ (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
++ Saturday at 01:00, not March's last Friday at 24:00.
++
++ Changes affecting past time stamps
++
++ Europe/Chisinau observed DST during 1990, and switched from +04 to
++ +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
++ (Thanks to Stepan Golosunov.)
++
++ 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
++ KUYT/KUYST. (Thanks to Stepan Golosunov.)
++
++ Changes to code
++
++ tzselect's diagnostics and checking, and checktab.awk's checking,
++ have been improved. (Thanks to J William Piggott.)
++
++ tzcode now builds under MinGW. (Thanks to Ian Abbott and Esben Haabendal.)
++
++ tzselect now tests Julian-date TZ settings more accurately.
++ (Thanks to J William Piggott.)
++
++ Changes to commentary
++
++ Comments in zone tables have been improved. (Thanks to J William Piggott.)
++
++ tzselect again limits its menu comments so that menus fit on a
++ 24x80 alphanumeric display.
++
++ A new web page tz-how-to.html. (Thanks to Bill Seymour.)
++
++ In the Theory file, the description of possible time zone abbreviations in
++ tzdata has been cleaned up, as the old description was unclear and
++ inconsistent. (Thanks to Alain Mouette for reporting the problem.)
++
++
++Release 2016a - 2016-01-26 23:28:02 -0800
++
++ Changes affecting future time stamps
++
++ America/Cayman will not observe daylight saving this year after all.
++ Revert our guess that it would. (Thanks to Matt Johnson.)
++
++ Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev.)
++
++ Asia/Tehran now has DST predictions for the year 2038 and later,
++ to be March 21 00:00 to September 21 00:00. This is likely better
++ than predicting no DST, albeit off by a day every now and then.
++
++ Changes affecting past and future time stamps
++
++ America/Metlakatla switched from PST all year to AKST/AKDT on
++ 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.)
++
++ America/Santa_Isabel has been removed, and replaced with a
++ backward compatibility link to America/Tijuana. Its contents were
++ apparently based on a misreading of Mexican legislation.
++
++ Changes affecting past time stamps
++
++ Asia/Karachi's two transition times in 2002 were off by a minute.
++ (Thanks to Matt Johnson.)
++
++ Changes affecting build procedure
++
++ An installer can now combine leap seconds with use of the backzone file,
++ e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
++ The old 'make posix_packrat' rule is now marked as obsolescent.
++ (Thanks to Ian Abbott for an initial implementation.)
++
++ Changes affecting documentation and commentary
++
++ A new file LICENSE makes it easier to see that the code and data
++ are mostly public-domain. (Thanks to James Knight.) The three
++ non-public-domain files now use the current (3-clause) BSD license
++ instead of older versions of that license.
++
++ tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
++ CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
++ on editing tz source files (with a mention of Sublime zoneinfo,
++ thanks to Gilmore Davidson).
++
++ The Theory and asia files now mention the 2015 book "The Global
++ Transformation of Time, 1870-1950", and cite a couple of reviews.
++
++ The America/Chicago entry now documents the informal use of US
++ central time in Fort Pierre, South Dakota. (Thanks to Rick
++ McDermid, Matt Johnson, and Steve Jones.)
++
++
++Release 2015g - 2015-10-01 00:39:51 -0700
++
++ Changes affecting future time stamps
++
++ Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
++ (Thanks to Fatih.)
++
++ Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.)
++
++ Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
++ (Thanks to Ken Rylander.)
++
++ Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
++ effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
++ New zone America/Fort_Nelson. (Thanks to Matt Johnson.)
++
++ Changes affecting past time stamps
++
++ Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
++
++ Changes affecting code
++
++ localtime no longer mishandles America/Anchorage after 2037.
++ (Thanks to Bradley White for reporting the bug.)
++
++ On hosts with signed 32-bit time_t, localtime no longer mishandles
++ Pacific/Fiji after 2038-01-16 14:00 UTC.
++
++ The localtime module allows the variables 'timezone', 'daylight',
++ and 'altzone' to be in common storage shared with other modules,
++ and declares them in case the system <time.h> does not.
++ (Problems reported by Kees Dekker.)
++
++ On platforms with tm_zone, strftime.c now assumes it is not NULL.
++ This simplifies the code and is consistent with zdump.c.
++ (Problem reported by Christos Zoulas.)
++
++ Changes affecting documentation
++
++ The tzfile man page now documents that transition times denote the
++ starts (not the ends) of the corresponding time periods.
++ (Ambiguity reported by Bill Seymour.)
++
++
++Release 2015f - 2015-08-10 18:06:56 -0700
++
++ Changes affecting future time stamps
++
++ North Korea switches to +0830 on 2015-08-15. (Thanks to Steffen Thorsen.)
++ The abbreviation remains "KST". (Thanks to Robert Elz.)
++
++ Uruguay no longer observes DST. (Thanks to Steffen Thorsen
++ and Pablo Camargo.)
++
++ Changes affecting past and future time stamps
++
++ Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
++ (Thanks to Roman Tudos.)
++
++ Changes affecting data format and code
++
++ zic's '-y YEARISTYPE' option is no longer documented. The TYPE
++ field of a Rule line should now be '-'; the old values 'even',
++ 'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
++ Although the implementation has not changed, these features do not
++ work in the default installation, they are not used in the data,
++ and they are now considered obsolescent.
++
++ zic now checks that two rules don't take effect at the same time.
++ (Thanks to Jon Skeet and Arthur David Olson.) Constraints on
++ simultaneity are now documented.
++
++ The two characters '%z' in a zone format now stand for the UTC
++ offset, e.g., '-07' for seven hours behind UTC and '+0530' for
++ five hours and thirty minutes ahead. This better supports time
++ zone abbreviations conforming to POSIX.1-2001 and later.
++
++ Changes affecting installed data files
++
++ Comments for America/Halifax and America/Glace_Bay have been improved.
++ (Thanks to Brian Inglis.)
++
++ Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
++ Europe/Sofia, and Europe/Tallinn. This yields slightly smaller
++ installed data files for Europe/Simferopol and Europe/Tallinn.
++ It does not affect timestamps. (Thanks to Howard Hinnant.)
++
++ Changes affecting code
++
++ zdump and zic no longer warn about valid time zone abbreviations
++ like '-05'.
++
++ Some Visual Studio 2013 warnings have been suppressed.
++ (Thanks to Kees Dekker.)
++
++ 'date' no longer sets the time of day and its -a, -d, -n and -t
++ options have been removed. Long obsolescent, the implementation
++ of these features had porting problems. Builders no longer need
++ to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
++ (Thanks to Kees Dekker for pointing out the problem.)
++
++ Changes affecting documentation
++
++ The Theory file mentions naming issues earlier, as these seem to be
++ poorly publicized (thanks to Gilmore Davidson for reporting the problem).
++
++ tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
++
++ Mention that Herbert Samuel introduced the term "Summer Time".
++
++
++Release 2015e - 2015-06-13 10:56:02 -0700
++
++ Changes affecting future time stamps
++
++ Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
++ not 06-13 and 07-18 as we had guessed. (Thanks to Milamber.)
++
++ Assume Cayman Islands will observe DST starting next year, using US rules.
++ Although it isn't guaranteed, it is the most likely.
++
++ Changes affecting data format
++
++ The file 'iso3166.tab' now uses UTF-8, so that its entries can better
++ spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
++
++ Changes affecting code
++
++ When displaying data, tzselect converts it to the current locale's
++ encoding if the iconv command works. (Problem reported by random832.)
++
++ tzselect no longer mishandles Dominica, fixing a bug introduced
++ in Release 2014f. (Problem reported by Owen Leibman.)
++
++ zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
++ This fixes a bug introduced in Release 2014f.
++ (Problem reported by Leonardo Chiquitto.)
++
++
++Release 2015d - 2015-04-24 08:09:46 -0700
++
++ Changes affecting future time stamps
++
++ Egypt will not observe DST in 2015 and will consider canceling it
++ permanently. For now, assume no DST indefinitely.
++ (Thanks to Ahmed Nazmy and Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
++ 1966-07-01. Also, Yukon's time zone history is documented better.
++ (Thanks to Brian Inglis and Dennis Ferguson.)
++
++ Change affecting past and future time zone abbreviations
++
++ The abbreviations for Hawaii-Aleutian standard and daylight times
++ have been changed from HAST/HADT to HST/HDT, as per US Government
++ Printing Office style. This affects only America/Adak since 1983,
++ as America/Honolulu was already using the new style.
++
++ Changes affecting code
++
++ zic has some minor performance improvements.
++
++
++Release 2015c - 2015-04-11 08:55:55 -0700
++
++ Changes affecting future time stamps
++
++ Egypt's spring-forward transition is at 24:00 on April's last Thursday,
++ not 00:00 on April's last Friday. 2015's transition will therefore be on
++ Thursday, April 30 at 24:00, not Friday, April 24 at 00:00. Similar fixes
++ apply to 2026, 2037, 2043, etc. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The following changes affect some pre-1991 Chile-related time stamps
++ in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
++
++ The 1910 transition was January 10, not January 1.
++
++ The 1918 transition was September 10, not September 1.
++
++ The UT -04 time observed from 1932 to 1942 is now considered to
++ be standard time, not year-round DST.
++
++ Santiago observed DST (UT -03) from 1946-07-15 through
++ 1946-08-31, then reverted to standard time, then switched to -05
++ on 1947-04-01.
++
++ Assume transitions before 1968 were at 00:00, since we have no data
++ saying otherwise.
++
++ The spring 1988 transition was 1988-10-09, not 1988-10-02.
++ The fall 1990 transition was 1990-03-11, not 1990-03-18.
++
++ Assume no UTC offset change for Pacific/Easter on 1890-01-01,
++ and omit all transitions on Pacific/Easter from 1942 through 1946
++ since we have no data suggesting that they existed.
++
++ One more zone has been turned into a link, as it differed
++ from an existing zone only for older time stamps. As usual,
++ this change affects UTC offsets in pre-1970 time stamps only.
++ The zone's old contents have been moved to the 'backzone' file.
++ The affected zone is America/Montreal.
++
++ Changes affecting commentary
++
++ Mention the TZUpdater tool.
++
++ Mention "The Time Now". (Thanks to Brandon Ramsey.)
++
++
++Release 2015b - 2015-03-19 23:28:11 -0700
++
++ Changes affecting future time stamps
++
++ Mongolia will start observing DST again this year, from the last
++ Saturday in March at 02:00 to the last Saturday in September at 00:00.
++ (Thanks to Ganbold Tsagaankhuu.)
++
++ Palestine will start DST on March 28, not March 27. Also,
++ correct the fall 2014 transition from September 26 to October 24.
++ Adjust future predictions accordingly. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
++ regression. (Thanks to Stuart Bishop for reporting the problem.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: America/Antigua, America/Cayman,
++ Pacific/Midway, and Pacific/Saipan.
++
++ Changes affecting time zone abbreviations
++
++ Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
++ (Thanks to Hank W.)
++
++ Changes affecting code
++
++ Fix integer overflow bug in reference 'mktime' implementation.
++ (Problem reported by Jörg Richter.)
++
++ Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
++ to be used in the same executable as standard-library time_t functions.
++ (Problems reported by Bradley White.)
++
++ Changes affecting commentary
++
++ Cite the recent Mexican decree changing Quintana Roo's time zone.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Likewise for the recent Chilean decree. (Thanks to Eduardo Romero Urra.)
++
++ Update info about Mars time.
++
++
++Release 2015a - 2015-01-29 22:35:20 -0800
++
++ Changes affecting future time stamps
++
++ The Mexican state of Quintana Roo, represented by America/Cancun,
++ will shift from Central Time with DST to Eastern Time without DST
++ on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
++
++ Chile will not change clocks in April or thereafter; its new standard time
++ will be its old daylight saving time. This affects America/Santiago,
++ Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
++
++ New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
++ (Thanks to Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ Iceland observed DST in 1919 and 1921, and its 1939 fallback
++ transition was Oct. 29, not Nov. 29. Remove incorrect data from
++ Shanks about time in Iceland between 1837 and 1908.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
++ and Asia/Muscat.
++
++ Changes affecting code
++
++ tzalloc now scrubs time zone abbreviations compatibly with the way
++ that tzset always has, by replacing invalid bytes with '_' and by
++ shortening too-long abbreviations.
++
++ tzselect ports to POSIX awk implementations, no longer mishandles
++ POSIX TZ settings when GNU awk is used, and reports POSIX TZ
++ settings to the user. (Thanks to Stefan Kuhn.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks for links to links in the data.
++ One such link (for Africa/Asmera) has been fixed.
++ (Thanks to Stephen Colebourne for pointing out the problem.)
++
++ Changes affecting commentary
++
++ The leapseconds file commentary now mentions the expiration date.
++ (Problem reported by Martin Burnicki.)
++
++ Update Mexican Library of Congress URL.
++
++
++Release 2014j - 2014-11-10 17:37:11 -0800
++
++ Changes affecting current and future time stamps
++
++ Turks & Caicos' switch from US eastern time to UT -04 year-round
++ did not occur on 2014-11-02 at 02:00. It's currently scheduled
++ for 2015-11-01 at 02:00. (Thanks to Chris Walton.)
++
++ Changes affecting past time stamps
++
++ Many pre-1989 time stamps have been corrected for Asia/Seoul and
++ Asia/Pyongyang, based on sources for the Korean-language Wikipedia
++ entry for time in Korea. (Thanks to Sanghyuk Jung.) Also, no
++ longer guess that Pyongyang mimicked Seoul time after World War II,
++ as this is politically implausible.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
++ Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
++ Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
++ Indian/Mayotte.
++
++ Changes affecting commentary
++
++ The commentary is less enthusiastic about Shanks as a source,
++ and is more careful to distinguish UT from UTC.
++
++
++Release 2014i - 2014-10-21 22:04:57 -0700
++
++ Changes affecting future time stamps
++
++ Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
++ (Thanks to Ken Rylander for the heads-up.) Guess that future
++ years will use a similar pattern.
++
++ A new Zone Pacific/Bougainville, for the part of Papua New Guinea
++ that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
++ (Thanks to Kiley Walbom for the heads-up.)
++
++ Changes affecting time zone abbreviations
++
++ Since Belarus is not changing its clocks even though Moscow is,
++ the time zone abbreviation in Europe/Minsk is changing from FET
++ to its more-traditional value MSK on 2014-10-26 at 01:00.
++ (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
++
++ The new abbreviation IDT stands for the pre-1976 use of UT +08 in
++ Indochina, to distinguish it better from ICT (+07).
++
++ Changes affecting past time stamps
++
++ Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
++ (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
++ authoritative book). Asia/Ho_Chi_Minh has been added to
++ zone1970.tab, to give tzselect users in Vietnam two choices,
++ since north and south Vietnam disagreed after our 1970 cutoff.
++
++ Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
++ they differed from existing zones only for older time stamps. As
++ usual, these changes affect pre-1970 time stamps only. Their old
++ contents have been moved to the 'backzone' file.
++
++ Changes affecting code
++
++ The time-related library functions now set errno on failure, and
++ some crashes in the new tzalloc-related library functions have
++ been fixed. (Thanks to Christos Zoulas for reporting most of
++ these problems and for suggesting fixes.)
++
++ If USG_COMPAT is defined and the requested time stamp is standard time,
++ the tz library's localtime and mktime functions now set the extern
++ variable timezone to a value appropriate for that time stamp; and
++ similarly for ALTZONE, daylight saving time, and the altzone variable.
++ This change is a companion to the tzname change in 2014h, and is
++ designed to make timezone and altzone more compatible with tzname.
++
++ The tz library's functions now set errno to EOVERFLOW if they fail
++ because the result cannot be represented. ctime and ctime_r now
++ return NULL and set errno when a time stamp is out of range, rather
++ than having undefined behavior.
++
++ Some bugs associated with the new 2014g functions have been fixed.
++ This includes a bug that largely incapacitated the new functions
++ time2posix_z and posix2time_z. (Thanks to Christos Zoulas.)
++ It also includes some uses of uninitialized variables after tzalloc.
++ The new code uses the standard type 'ssize_t', which the Makefile
++ now gives porting advice about.
++
++ Changes affecting commentary
++
++ Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
++
++
++Release 2014h - 2014-09-25 18:59:03 -0700
++
++ Changes affecting past time stamps
++
++ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
++
++ Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
++ not 1920-01-06. The old entry was based on a misinterpretation of Shanks.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Blantyre, Africa/Bujumbura,
++ Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
++ Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
++
++ Changes affecting code
++
++ zdump -V and -v now output gmtoff= values on all platforms,
++ not merely on platforms defining TM_GMTOFF.
++
++ The tz library's localtime and mktime functions now set tzname to a value
++ appropriate for the requested time stamp, and zdump now uses this
++ on platforms not defining TM_ZONE, fixing a 2014g regression.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ The tz library no longer sets tzname if localtime or mktime fails.
++
++ zdump -c no longer mishandles transitions near year boundaries.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ An access to uninitialized data has been fixed.
++ (Thanks to Jörg Richter for reporting the problem.)
++
++ When THREAD_SAFE is defined, the code ports to the C11 memory model.
++ A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
++ and two threads race to initialize data used by gmtime-like functions.
++ (Thanks to Andy Heninger for reporting the problems.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks better for properly-sorted data.
++
++ Changes affecting documentation and commentary
++
++ zdump's gmtoff=N output is now documented, and its isdst=D output
++ is now documented to possibly output D values other than 0 or 1.
++
++ zdump -c's treatment of years is now documented to use the
++ Gregorian calendar and Universal Time without leap seconds,
++ and its behavior at cutoff boundaries is now documented better.
++ (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
++
++ Programs are now documented to use the proleptic Gregorian calendar.
++ (Thanks to Alan Barrett for the suggestion.)
++
++ Fractional-second GMT offsets have been documented for civil time
++ in 19th-century Chennai, Jakarta, and New York.
++
++
++Release 2014g - 2014-08-28 12:31:23 -0700
++
++ Changes affecting future time stamps
++
++ Turks & Caicos is switching from US eastern time to UT -04
++ year-round, modeled as a switch on 2014-11-02 at 02:00.
++ [As noted in 2014j, this switch was later delayed.]
++
++ Changes affecting past time stamps
++
++ Time in Russia or the USSR before 1926 or so has been corrected by
++ a few seconds in the following zones: Asia/Irkutsk,
++ Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
++ Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
++ Asia/Yekaterinburg the correction is a few minutes. (Thanks to
++ Vladimir Karpinsky.)
++
++ The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
++ This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
++ Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
++ GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
++ (Thanks to Stephen Colebourne for pointing to the decree.)
++
++ Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
++
++ A new file 'backzone' contains data which may appeal to
++ connoisseurs of old time stamps, although it is out of scope for
++ the tz database, is often poorly sourced, and contains some data
++ that is known to be incorrect. The new file is not recommended
++ for ordinary use and its entries are not installed by default.
++ (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
++ Isle of Man entries.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Bangui, Africa/Brazzaville,
++ Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
++ Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
++
++ Changes affecting code
++
++ Unless NETBSD_INSPIRED is defined to 0, the tz library now
++ supplies functions for creating and using objects that represent
++ time zones. The new functions are tzalloc, tzfree, localtime_rz,
++ mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
++ time2posix_z. They are intended for performance: for example,
++ localtime_rz (unlike localtime_r) is trivially thread-safe without
++ locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
++ functions, and to Alan Barrett and Jonathan Lennox for helping to
++ debug the change.)
++
++ zdump now builds with the tz library unless USE_LTZ is defined to 0,
++ This lets zdump use tz features even if the system library lacks them.
++ To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
++ TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
++
++ zdump now uses localtime_rz if available, as it's significantly faster,
++ and it can help zdump better diagnose invalid time zone names.
++ Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
++ defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
++ not available, zdump now uses localtime_r and tzset if available,
++ as this is a bit cleaner and faster than plain localtime. Compile
++ with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
++ lacks these two functions.
++
++ If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
++ Although not needed for tz's own applications, which are single-threaded,
++ this supports POSIX better if the tz library is used in multithreaded apps.
++
++ Some crashes have been fixed when zdump or the tz library is given
++ invalid or outlandish input.
++
++ The tz library no longer mishandles leap seconds on platforms with
++ unsigned time_t in time zones that lack ordinary transitions after 1970.
++
++ The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
++ already defined, to make it easier to configure on common platforms.
++ Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
++
++ Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
++ assumes that reading uninitialized memory yields garbage values
++ but does not cause other problems such as traps.
++
++ If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
++ more likely to guess right for ambiguous time stamps near
++ transitions where tm_isdst does not change.
++
++ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
++ strftime_l for compatibility with recent versions of POSIX.
++ Only the C locale is supported, though. HAVE_STRFTIME_L defaults
++ to 1 on recent POSIX versions, and to 0 otherwise.
++
++ tzselect -c now uses a hybrid distance measure that works better
++ in Africa. (Thanks to Alan Barrett for noting the problem.)
++
++ The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
++ or when time_tz is defined.
++
++ When HAVE_UTMPX_H is set the 'date' command now builds on systems
++ whose <utmpx.h> file does not define WTMPX_FILE, and when setting
++ the date it updates the wtmpx file if _PATH_WTMPX is defined.
++ This affects GNU/Linux and similar systems.
++
++ For easier maintenance later, some C code has been simplified,
++ some lint has been removed, and the code has been tweaked so that
++ plain 'make' is more likely to work.
++
++ The C type 'bool' is now used for boolean values, instead of 'int'.
++
++ The long-obsolete LOCALE_HOME code has been removed.
++
++ The long-obsolete 'gtime' function has been removed.
++
++ Changes affecting build procedure
++
++ 'zdump' no longer links in ialloc.o, as it's not needed.
++
++ 'make check_time_t_alternatives' no longer assumes GNU diff.
++
++ Changes affecting distribution tarballs
++
++ The files checktab.awk and zoneinfo2tdf.pl are now distributed in
++ the tzdata tarball instead of the tzcode tarball, since they help
++ maintain the data. The NEWS and Theory files are now also
++ distributed in the tzdata tarball, as they're relevant for data.
++ (Thanks to Alan Barrett for pointing this out.) Also, the
++ leapseconds.awk file is no longer distributed in the tzcode
++ tarball, since it belongs in the tzdata tarball (where 2014f
++ inadvertently also distributed it).
++
++ Changes affecting documentation and commentary
++
++ A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
++ suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
++ for debugging it.)
++
++ The man pages have been updated to use function prototypes,
++ to document thread-safe variants like localtime_r, and to document
++ the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
++ mktime_z.
++
++ The fields in Link lines have been renamed to be more descriptive
++ and more like the parameters of 'ln'. LINK-FROM has become TARGET,
++ and LINK-TO has become LINK-NAME.
++
++ tz-link.htm mentions the IETF's tzdist working group; Windows
++ Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
++
++ Some broken URLs have been fixed in the commentary. (Thanks to
++ Lester Caine.)
++
++ Commentary about Philippines DST has been updated, and commentary
++ on pre-1970 time in India has been added.
++
++
++Release 2014f - 2014-08-05 17:42:36 -0700
++
++ Changes affecting future time stamps
++
++ Russia will subtract an hour from most of its time zones on 2014-10-26
++ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
++ There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
++ Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
++ (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
++ (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
++ (Europe/Samara) are not changing their clocks. The changed zones are
++ Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
++ Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
++ Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
++ Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
++ subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
++ but not its UTC offset. Two zones are added: Asia/Chita (split
++ from Asia/Yakutsk, and also with two hours subtracted) and
++ Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
++ subtracted). (Thanks to Tim Parenti for much of the above.)
++
++ Changes affecting time zone abbreviations
++
++ Australian eastern time zone abbreviations are now AEST/AEDT not EST,
++ and similarly for the other Australian zones. That is, for eastern
++ standard and daylight saving time the abbreviations are AEST and AEDT
++ instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
++ and AWST/AWDT are now used instead of the former CST, CWST, and WST.
++ This change does not affect UTC offsets, only time zone abbreviations.
++ (Thanks to Rich Tibbett and many others.)
++
++ Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
++ effective 2014-10-26 at 02:00 local time.
++
++ The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
++ has been changed from URUT to XJT. (Thanks to Luther Ma.)
++
++ Prefer MSK/MSD for Moscow time in Russia, even in other cities.
++ Similarly, prefer EET/EEST for eastern European time in Russia.
++
++ Change time zone abbreviations in (western) Samoa to use "ST" and
++ "DT" suffixes, as this is more likely to match common practice.
++ Prefix "W" to (western) Samoa time when its standard-time offset
++ disagrees with that of American Samoa.
++
++ America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
++
++ Time zone abbreviations have been updated for Japan's two time
++ zones used 1896-1937. JWST now stands for Western Standard
++ Time, and JCST for Central Standard Time (formerly this was CJT).
++ These abbreviations are now used for time in Korea, Taiwan,
++ and Sakhalin while controlled by Japan.
++
++ Changes affecting past time stamps
++
++ China's five zones have been simplified to two, since the post-1970
++ differences in the other three seem to have been imaginary. The
++ zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
++ removed; backwards-compatibility links still work, albeit with
++ different behaviors for time stamps before May 1980. Asia/Urumqi's
++ 1980 transition to UT +08 has been removed, so that it is now at
++ +06 and not +08. (Thanks to Luther Ma and to Alois Treindl;
++ Treindl sent helpful translations of two papers by Guo Qingsheng.)
++
++ Some zones have been turned into links, when they differed from existing
++ zones only for older UTC offsets where data entries were likely invented.
++ These changes affect UTC offsets in pre-1970 time stamps only. This is
++ similar to the change in release 2013e, except this time for western
++ Africa. The affected zones are: Africa/Bamako, Africa/Banjul,
++ Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
++ Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
++ Atlantic/St_Helena. This also affects the backwards-compatibility
++ link Africa/Timbuktu. (Thanks to Alan Barrett, Stephen Colebourne,
++ Tim Parenti, and David Patte for reporting problems in earlier
++ versions of this change.)
++
++ Asia/Shanghai's pre-standard-time UT offset has been changed from
++ 8:05:57 to 8:05:43, the location of Xujiahui Observatory. Its
++ transition to standard time has been changed from 1928 to 1901.
++
++ Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
++ then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
++ In 1946 it observed DST from 05-15 through 09-30; in 1947
++ from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
++ (Thanks to Yu-Cheng Chuang.)
++
++ Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
++
++ Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
++ 10-03 at 00:00. (Thanks to Konstantin Hyppönen.)
++
++ Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
++ period from 1911 to 1950.
++
++ Pacific/Chatham has been changed to New Zealand standard time plus
++ 45 minutes for the period before 1957, reflecting a 1956 remark in
++ the New Zealand parliament.
++
++ Europe/Budapest has several pre-1946 corrections: in 1918 the transition
++ out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
++ 1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
++ not 04-06 at 02:00; and there was no DST in 1920.
++
++ Africa/Accra is now assumed to have observed DST from 1920 through 1935.
++
++ Time in Russia before 1927 or so has been corrected by a few seconds in
++ the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
++ Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
++ Europe/Riga. Also, Moscow's location has been changed to its Kilometer 0
++ point. (Thanks to Vladimir Karpinsky for the Moscow changes.)
++
++ Changes affecting data format
++
++ A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
++ The new file's extended format allows multiple country codes per zone.
++ The older file is still installed but is deprecated; its format is
++ not changing and it will still be distributed for a while, but new
++ applications should use the new file.
++
++ The new file format simplifies maintenance of obscure locations.
++ To test this, it adds coverage for the Crozet Islands and the
++ Scattered Islands. (Thanks to Tobias Conradi and Antoine Leca.)
++
++ The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
++ It is still ASCII now, but commentary about the switch has been added.
++ The new file 'zone1970.tab' already uses UTF-8.
++
++ Changes affecting code
++
++ 'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
++ is defined. (Thanks to Elliott Hughes for reporting the problem.)
++
++ 'zic' no longer mishandles input when ignoring case in locales that
++ are not compatible with English, e.g., unibyte Turkish locales when
++ compiled with HAVE_GETTEXT.
++
++ Error diagnostics of 'zic' and 'yearistype' have been reworded so that
++ they no longer use ASCII '-' as if it were a dash.
++
++ 'zic' now rejects output file names that contain '.' or '..' components.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ 'zic -v' now warns about output file names that do not follow
++ POSIX rules, or that contain a digit or '.'. (Thanks to Arthur
++ David Olson for starting the ball rolling on this.)
++
++ Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
++
++ Changes affecting build procedure
++
++ 'zic' no longer links in localtime.o and asctime.o, as they're not needed.
++ (Thanks to John Cochran.)
++
++ Changes affecting documentation and commentary
++
++ The 'Theory' file documents legacy names, the longstanding
++ exceptions to the POSIX-inspired file name rules.
++
++ The 'zic' documentation clarifies the role of time types when
++ interpreting dates. (Thanks to Arthur David Olson.)
++
++ Documentation and commentary now prefer UTF-8 to US-ASCII,
++ allowing the use of proper accents in foreign words and names.
++ Code and data have not changed because of this. (Thanks to
++ Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
++ this.)
++
++ Non-HTML documentation and commentary now use plain-text URLs instead of
++ HTML insertions, and are more consistent about bracketing URLs when they
++ are not already surrounded by white space. (Thanks to suggestions by
++ Steffen Nurpmeso.)
++
++ There is new commentary about Xujiahui Observatory, the five time-zone
++ project in China from 1918 to 1949, timekeeping in Japanese-occupied
++ Shanghai, and Tibet Time in the 1950s. The sharp-eyed can spot the
++ warlord Jin Shuren in the data.
++
++ Commentary about the coverage of each Russian zone has been standardized.
++ (Thanks to Tim Parenti).
++
++ There is new commentary about contemporary timekeeping in Ethiopia.
++
++ Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
++
++ There is new commentary about time in Poland in 1919.
++
++ Proper credit has been given to DST inventor George Vernon Hudson.
++
++ Commentary about time in Metlakatla, AK and Resolute, NU has been
++ improved, with a new source for the former.
++
++ In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
++ is uninhabited.
++
++ Commentary about permanent Antarctic bases has been updated.
++
++ Several typos have been corrected. (Thanks to Tim Parenti for
++ contributing some of these fixes.)
++
++ tz-link.htm now mentions the JavaScript libraries Moment Timezone,
++ TimezoneJS.Date, Walltime-js, and Timezone. (Thanks to a heads-up
++ from Matt Johnson.) Also, it mentions the Go 'latlong' package.
++ (Thanks to a heads-up from Dirkjan Ochtman.)
++
++ The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
++ have been removed. These obsolescent US Naval Observatory entries were no
++ longer helpful for maintenance. (Thanks to Tim Parenti for the suggestion.)
++
++
++Release 2014e - 2014-06-12 21:53:52 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
++ (Thanks to Imed Chihi.) Guess that from 2015 on Egypt will temporarily
++ switch to standard time at 24:00 the last Thursday before Ramadan, and
++ back to DST at 00:00 the first Friday after Ramadan.
++
++ Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00. (Thanks
++ to Milamber Space Network.) Guess that from 2015 on Morocco will
++ temporarily switch to standard time at 03:00 the last Saturday before
++ Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
++
++ Changes affecting past time stamps
++
++ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
++ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
++ "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
++ in 1991. (Thanks to Hank W. for reporting the problems.)
++
++ Changes affecting commentary
++
++ tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
++ draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
++ removes stale pointers to World Time Explorer and WORLDTIME.
++
++
++Release 2014d - 2014-05-27 21:34:40 -0700
++
++ Changes affecting code
++
++ zic no longer generates files containing time stamps before the Big Bang.
++ This works around GNOME bug 730332
++ <https://bugzilla.gnome.org/show_bug.cgi?id=730332>.
++ (Thanks to Leonardo Chiquitto for reporting the bug, and to
++ Arthur David Olson and James Cloos for suggesting improvements to the fix.)
++
++ Changes affecting documentation
++
++ tz-link.htm now mentions GNOME.
++
++
++Release 2014c - 2014-05-13 07:44:13 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt observes DST starting 2014-05-15 at 24:00.
++ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
++ Details have not been announced, except that DST will not be observed
++ during Ramadan. Guess that DST will stop during the same Ramadan dates as
++ Morocco, and that Egypt's future spring and fall transitions will be the
++ same as 2010 when it last observed DST, namely April's last Friday at
++ 00:00 to September's last Thursday at 23:00 standard time. Also, guess
++ that Ramadan transitions will be at 00:00 standard time.
++
++ Changes affecting code
++
++ zic now generates transitions for minimum time values, eliminating guesswork
++ when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++
++ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
++
++ Changes affecting commentary and documentation
++
++ Remove now-confusing comment about Jordan. (Thanks to Oleksii Nochovnyi.)
++
++
++Release 2014b - 2014-03-24 21:28:50 -0700
++
++ Changes affecting near-future time stamps
++
++ Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.) Move its zone.tab entry from UA to RU.
++
++ New entry for Troll station, Antarctica. (Thanks to Paul-Inge Flakstad and
++ Bengt-Inge Larsson.) This is currently an approximation; a better version
++ will require the zic and localtime fixes mentioned below, and the plan is
++ to wait for a while until at least the zic fixes propagate.
++
++ Changes affecting code
++
++ 'zic' and 'localtime' no longer reject locations needing four transitions
++ per year for the foreseeable future. (Thanks to Andrew Main (Zefram).)
++ Also, 'zic' avoids some unlikely failures due to integer overflow.
++
++ Changes affecting build procedure
++
++ 'make check' now detects Rule lines defined but never used.
++ The NZAQ rules, an instance of this problem, have been removed.
++
++ Changes affecting commentary and documentation
++
++ Fix Tuesday/Thursday typo in description of time in Israel.
++ (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
++
++ Microsoft Windows 8.1 doesn't support tz database names. (Thanks
++ to Donald MacQueen.) Instead, the Microsoft Windows Store app
++ library supports them.
++
++ Add comments about Johnston Island time in the 1960s.
++ (Thanks to Lyle McElhaney.)
++
++ Morocco's 2014 DST start will be as predicted.
++ (Thanks to Sebastien Willemijns.)
++
++
++Release 2014a - 2014-03-07 23:30:29 -0800
++
++ Changes affecting near-future time stamps
++
++ Turkey begins DST on 2014-03-31, not 03-30. (Thanks to Faruk Pasin for
++ the heads-up, and to Tim Parenti for simplifying the update.)
++
++ Changes affecting past time stamps
++
++ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
++ (Thanks to Steffen Thorsen.)
++
++ Ukraine switched from Moscow to Eastern European time on 1990-07-01
++ (not 1992-01-01), and observed DST during the entire next winter.
++ (Thanks to Vladimir in Moscow via Alois Treindl.)
++
++ In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
++ (Thanks to Avigdor Finkelstein.)
++
++ Changes affecting code
++
++ A uninitialized-storage bug in 'localtime' has been fixed.
++ (Thanks to Logan Chien.)
++
++ Changes affecting the build procedure
++
++ The settings for 'make check_web' now default to Ubuntu 13.10.
++
++ Changes affecting commentary and documentation
++
++ The boundary of the US Pacific time zone is given more accurately.
++ (Thanks to Alan Mintz.)
++
++ Chile's 2014 DST will be as predicted. (Thanks to José Miguel Garrido.)
++
++ Paraguay's 2014 DST will be as predicted. (Thanks to Carlos Raúl Perasso.)
++
++ Better descriptions of countries with same time zone history as
++ Trinidad and Tobago since 1970. (Thanks to Alan Barrett for suggestion.)
++
++ Several changes affect tz-link.htm, the main web page.
++
++ Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
++ David Braverman).
++
++ Mention xCal (Internet RFC 6321) and jCal.
++
++ Microsoft has some support for tz database names.
++
++ CLDR data formats include both XML and JSON.
++
++ Mention Maggiolo's map of solar vs standard time.
++ (Thanks to Arthur David Olson.)
++
++ Mention TZ4Net. (Thanks to Matt Johnson.)
++
++ Mention the timezone-olson Haskell package.
++
++ Mention zeitverschiebung.net. (Thanks to Martin Jäger.)
++
++ Remove moribund links to daylight-savings-time.info and to
++ Simple Timer + Clocks.
++
++ Update two links. (Thanks to Oscar van Vlijmen.)
++
++ Fix some formatting glitches, e.g., remove random newlines from
++ abbr elements' title attributes.
++
++
++Release 2013i - 2013-12-17 07:25:23 -0800
++
++ Changes affecting near-future time stamps:
++
++ Jordan switches back to standard time at 00:00 on December 20, 2013.
++ The 2006-2011 transition schedule is planned to resume in 2014.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps:
++
++ In 2004, Cuba began DST on March 28, not April 4.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting code
++
++ The compile-time flag NOSOLAR has been removed, as nowadays the
++ benefit of slightly shrinking runtime table size is outweighed by the
++ cost of disallowing potential future updates that exceed old limits.
++
++ Changes affecting documentation and commentary
++
++ The files solar87, solar88, and solar89 are no longer distributed.
++ They were a negative experiment - that is, a demonstration that
++ tz data can represent solar time only with some difficulty and error.
++ Their presence in the distribution caused confusion, as Riyadh
++ civil time was generally not solar time in those years.
++
++ tz-link.htm now mentions Noda Time. (Thanks to Matt Johnson.)
++
++
++Release 2013h - 2013-10-25 15:32:32 -0700
++
++ Changes affecting current and future time stamps:
++
++ Libya has switched its UT offset back to +02 without DST, instead
++ of +01 with DST. (Thanks to Even Scharning.)
++
++ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
++ (Thanks to Gwillim Law.)
++
++ Changes affecting future time stamps:
++
++ Acre and (we guess) western Amazonas will switch from UT -04 to -05
++ on 2013-11-10. This affects America/Rio_Branco and America/Eirunepe.
++ (Thanks to Steffen Thorsen.)
++
++ Add entries for DST transitions in Morocco in the year 2038.
++ This avoids some year-2038 glitches introduced in 2013g.
++ (Thanks to Yoshito Umaoka for reporting the problem.)
++
++ Changes affecting API
++
++ The 'tzselect' command no longer requires the 'select' command,
++ and should now work with /bin/sh on more platforms. It also works
++ around a bug in BusyBox awk before version 1.21.0. (Thanks to
++ Patrick 'P. J.' McDermott and Alan Barrett.)
++
++ Changes affecting code
++
++ Fix localtime overflow bugs with 32-bit unsigned time_t.
++
++ zdump no longer assumes sscanf returns maximal values on overflow.
++
++ Changes affecting the build procedure
++
++ The builder can specify which programs to use, if any, instead of
++ 'ar' and 'ranlib', and libtz.a is now built locally before being
++ installed. (Thanks to Michael Forney.)
++
++ A dependency typo in the 'zdump' rule has been fixed.
++ (Thanks to Andrew Paprocki.)
++
++ The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
++ work as specified by POSIX.2-1992 or later; this is portable nowadays.
++
++ 'make clean' no longer removes 'leapseconds', since it's
++ host-independent and is part of the distribution.
++
++ The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
++ (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
++
++ Update URLs in tz-link page. Add URLs for Microsoft Windows, since
++ 8.1 introduces tz support. Remove URLs for Tru64 and UnixWare (no
++ longer maintained) and for old advisories. SOFA now does C.
++
++Release 2013g - 2013-09-30 21:08:26 -0700
++
++ Changes affecting current and near-future time stamps
++
++ Morocco now observes DST from the last Sunday in March to the last
++ Sunday in October, not April to September respectively. (Thanks
++ to Steffen Thorsen.)
++
++ Changes affecting 'zic'
++
++ 'zic' now runs on platforms that lack both hard links and symlinks.
++ (Thanks to Theo Veenker for reporting the problem, for MinGW.)
++ Also, fix some bugs on platforms that lack hard links but have symlinks.
++
++ 'zic -v' again warns that Asia/Tehran has no POSIX environment variable
++ to predict the far future, fixing a bug introduced in 2013e.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is again put into the tzdata tarball.
++ Also, 'leapseconds.awk', so tzdata is self-contained. (Thanks to
++ Matt Burgess and Ian Abbott.) The timestamps of these and other
++ dependent files in tarballs are adjusted more consistently.
++
++ Changes affecting documentation and commentary
++
++ The README file is now part of the data tarball as well as the code.
++ It now states that files are public domain unless otherwise specified.
++ (Thanks to Andrew Main (Zefram) for asking for clarifications.)
++ Its details about the 1989 release moved to a place of honor near
++ the end of NEWS.
++
++
++Release 2013f - 2013-09-24 23:37:36 -0700
++
++ Changes affecting near-future time stamps
++
++ Tocantins will very likely not observe DST starting this spring.
++ (Thanks to Steffen Thorsen.)
++
++ Jordan will likely stay at UT +03 indefinitely, and will not fall
++ back this fall.
++
++ Palestine will fall back at 00:00, not 01:00. (Thanks to Steffen Thorsen.)
++
++ Changes affecting API
++
++ The types of the global variables 'timezone' and 'altzone' (if present)
++ have been changed back to 'long'. This is required for 'timezone'
++ by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
++ These variables were originally 'long' in the tz code, but were
++ mistakenly changed to 'time_t' in 1987; nobody reported the
++ incompatibility until now. The difference matters on x32, where
++ 'long' is 32 bits and 'time_t' is 64. (Thanks to Elliott Hughes.)
++
++ Changes affecting the build procedure
++
++ Avoid long strings in leapseconds.awk to work around a mawk bug.
++ (Thanks to Cyril Baurand.)
++
++ Changes affecting documentation and commentary
++
++ New file 'NEWS' that contains release notes like this one.
++
++ Paraguay's law does not specify DST transition time; 00:00 is customary.
++ (Thanks to Waldemar Villamayor-Venialbo.)
++
++ Minor capitalization fixes.
++
++ Changes affecting version-control only
++
++ The experimental GitHub repository now contains annotated and
++ signed tags for recent releases, e.g., '2013e' for Release 2013e.
++ Releases are tagged starting with 2012e; earlier releases were
++ done differently, and tags would either not have a simple name or
++ not exactly match what was released.
++
++ 'make set-timestamps' is now simpler and a bit more portable.
++
++
++Release 2013e - 2013-09-19 23:50:04 -0700
++
++ Changes affecting near-future time stamps
++
++ This year Fiji will start DST on October 27, not October 20.
++ (Thanks to David Wheeler for the heads-up.) For now, guess that
++ Fiji will continue to spring forward the Sunday before the fourth
++ Monday in October.
++
++ Changes affecting current and future time zone abbreviations
++
++ Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
++ time zone abbreviations since 1932. (Thanks to George Ziegler,
++ Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
++ Benny Lin.) This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
++ Asia/Makassar, and Asia/Pontianak.
++
++ Use ART (UT -03, standard time), rather than WARST (also -03, but
++ daylight saving time) for San Luis, Argentina since 2009.
++
++ Changes affecting Godthåb time stamps after 2037 if version mismatch
++
++ Allow POSIX-like TZ strings where the transition time's hour can
++ range from -167 through 167, instead of the POSIX-required 0
++ through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
++ new Fiji rules. This is a more-compact way to represent
++ far-future time stamps for America/Godthab, America/Santiago,
++ Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
++ Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
++ this change. (Derived from a suggestion by Arthur David Olson.)
++
++ Allow POSIX-like TZ strings where daylight saving time is in
++ effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
++ Argentina Summer Time all year. This supports a more-compact way
++ to represent the 2013d data for America/Argentina/San_Luis.
++ Because of the change for San Luis noted above this change does not
++ affect the current data. (Thanks to Andrew Main (Zefram) for
++ suggestions that improved this change.)
++
++ Where these two TZ changes take effect, there is a minor extension
++ to the tz file format in that it allows new values for the
++ embedded TZ-format string, and the tz file format version number
++ has therefore been increased from 2 to 3 as a precaution.
++ Version-2-based client code should continue to work as before for
++ all time stamps before 2038. Existing version-2-based client code
++ (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
++ files, and typically works in practice even for time stamps after
++ 2037; the only known exception is America/Godthab.
++
++ Changes affecting time stamps before 1970
++
++ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
++ some errors before 1947.
++
++ Some zones have been turned into links, when they differ from existing
++ zones only in older data entries that were likely invented or that
++ differ only in LMT or transitions from LMT. These changes affect
++ only time stamps before 1943. The affected zones are:
++ Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
++ America/Grenada, America/Guadeloupe, America/Marigot,
++ America/Montserrat, America/St_Barthelemy, America/St_Kitts,
++ America/St_Lucia, America/St_Thomas, America/St_Vincent,
++ America/Tortola, and Europe/Vaduz. (Thanks to Alois Treindl for
++ confirming that the old Europe/Vaduz zone was wrong and the new
++ link is better for WWII-era times.)
++
++ Change Kingston Mean Time from -5:07:12 to -5:07:11. This affects
++ America/Cayman, America/Jamaica and America/Grand_Turk time stamps
++ from 1890 to 1912.
++
++ Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
++ This affects Europe/Zurich time stamps from 1853 to 1894. (Thanks
++ to Alois Treindl).
++
++ Change the date of the circa-1850 Zurich transition from 1849-09-12
++ to 1853-07-16, overriding Shanks with data from Messerli about
++ postal and telegraph time in Switzerland.
++
++ Changes affecting time zone abbreviations before 1970
++
++ For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
++ as Jakarta was called Batavia back then.
++
++ Changes affecting API
++
++ The 'zic' command now outputs a dummy transition when far-future
++ data can't be summarized using a TZ string, and uses a 402-year
++ window rather than a 400-year window. For the current data, this
++ affects only the Asia/Tehran file. It does not affect any of the
++ time stamps that this file represents, so zdump outputs the same
++ information as before. (Thanks to Andrew Main (Zefram).)
++
++ The 'date' command has a new '-r' option, which lets you specify
++ the integer time to display, a la FreeBSD.
++
++ The 'tzselect' command has two new options '-c' and '-n', which lets you
++ select a zone based on latitude and longitude.
++
++ The 'zic' command's '-v' option now warns about constructs that
++ require the new version-3 binary file format. (Thanks to Arthur
++ David Olson for the suggestion.)
++
++ Support for floating-point time_t has been removed.
++ It was always dicey, and POSIX no longer requires it.
++ (Thanks to Eric Blake for suggesting to the POSIX committee to
++ remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
++ Heninger, Arthur David Olson, and Alois Treindl, for reporting
++ bugs and elucidating some of the corners of the old floating-point
++ implementation.)
++
++ The signatures of 'offtime', 'timeoff', and 'gtime' have been
++ changed back to the old practice of using 'long' to represent UT
++ offsets. This had been inadvertently and mistakenly changed to
++ 'int_fast32_t'. (Thanks to Christos Zoulas.)
++
++ The code avoids undefined behavior on integer overflow in some
++ more places, including gmtime, localtime, mktime and zdump.
++
++ Changes affecting the zdump utility
++
++ zdump now outputs "UT" when referring to Universal Time, not "UTC".
++ "UTC" does not make sense for time stamps that predate the introduction
++ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
++ for clarifying UT vs UTC.)
++
++ Data changes affecting behavior of tzselect and similar programs
++
++ Country code BQ is now called the more-common name "Caribbean Netherlands"
++ rather than the more-official "Bonaire, St Eustatius & Saba".
++
++ Remove from zone.tab the names America/Montreal, America/Shiprock,
++ and Antarctica/South_Pole, as they are equivalent to existing
++ same-country-code zones for post-1970 time stamps. The data entries for
++ these names are unchanged, so the names continue to work as before.
++
++ Changes affecting code internals
++
++ zic -c now runs way faster on 64-bit hosts when given large numbers.
++
++ zic now uses vfprintf to avoid allocating and freeing some memory.
++
++ tzselect now computes the list of continents from the data,
++ rather than have it hard-coded.
++
++ Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is now generated automatically from a
++ new file 'leap-seconds.list', which is a copy of
++ <ftp://time.nist.gov/pub/leap-seconds.list>.
++ A new source file 'leapseconds.awk' implements this.
++ The goal is simplification of the future maintenance of 'leapseconds'.
++
++ When building the 'posix' or 'right' subdirectories, if the
++ subdirectory would be a copy of the default subdirectory, it is
++ now made a symbolic link if that is supported. This saves about
++ 2 MB of file system space.
++
++ The links America/Shiprock and Antarctica/South_Pole have been
++ moved to the 'backward' file. This affects only nondefault builds
++ that omit 'backward'.
++
++ Changes affecting version-control only
++
++ .gitignore now ignores 'date'.
++
++ Changes affecting documentation and commentary
++
++ Changes to the 'tzfile' man page
++
++ It now mentions that the binary file format may be extended in
++ future versions by appending data.
++
++ It now refers to the 'zdump' and 'zic' man pages.
++
++ Changes to the 'zic' man page
++
++ It lists conditions that elicit a warning with '-v'.
++
++ It says that the behavior is unspecified when duplicate names
++ are given, or if the source of one link is the target of another.
++
++ Its examples are updated to match the latest data.
++
++ The definition of white space has been clarified slightly.
++ (Thanks to Michael Deckers.)
++
++ Changes to the 'Theory' file
++
++ There is a new section about the accuracy of the tz database,
++ describing the many ways that errors can creep in, and
++ explaining why so many of the pre-1970 time stamps are wrong or
++ misleading (thanks to Steve Allen, Lester Caine, and Garrett
++ Wollman for discussions that contributed to this).
++
++ The 'Theory' file describes LMT better (this follows a
++ suggestion by Guy Harris).
++
++ It refers to the 2013 edition of POSIX rather than the 2004 edition.
++
++ It's mentioned that excluding 'backward' should not affect the
++ other data, and it suggests at least one zone.tab name per
++ inhabited country (thanks to Stephen Colebourne).
++
++ Some longstanding restrictions on names are documented, e.g.,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++
++ It gives more reasons for the 1970 cutoff.
++
++ It now mentions which time_t variants are supported, such as
++ signed integer time_t. (Thanks to Paul Goyette for reporting
++ typos in an experimental version of this change.)
++
++ (Thanks to Philip Newton for correcting typos in these changes.)
++
++ Documentation and commentary is more careful to distinguish UT in
++ general from UTC in particular. (Thanks to Steve Allen.)
++
++ Add a better source for the Zurich 1894 transition.
++ (Thanks to Pierre-Yves Berger.)
++
++ Update shapefile citations in tz-link.htm. (Thanks to Guy Harris.)
++
++
++Release 2013d - 2013-07-05 07:38:01 -0700
++
++ Changes affecting future time stamps:
++
++ Morocco's midsummer transitions this year are July 7 and August 10,
++ not July 9 and August 8. (Thanks to Andrew Paprocki.)
++
++ Israel now falls back on the last Sunday of October.
++ (Thanks to Ephraim Silverberg.)
++
++ Changes affecting past time stamps:
++
++ Specify Jerusalem's location more precisely; this changes the pre-1880
++ times by 2 s.
++
++ Changing affecting metadata only:
++
++ Fix typos in the entries for country codes BQ and SX.
++
++ Changes affecting code:
++
++ Rework the code to fix a bug with handling Australia/Macquarie on
++ 32-bit hosts (thanks to Arthur David Olson).
++
++ Port to platforms like NetBSD, where time_t can be wider than long.
++
++ Add support for testing time_t types other than the system's.
++ Run 'make check_time_t_alternatives' to try this out.
++ Currently, the tests fail for unsigned time_t;
++ this should get fixed at some point.
++
++ Changes affecting documentation and commentary:
++
++ Deemphasize the significance of national borders.
++
++ Update the zdump man page.
++
++ Remove obsolete NOID comment (thanks to Denis Excoffier).
++
++ Update several URLs and comments in the web pages.
++
++ Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
++
++ Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
++
++
++Release 2013c - 2013-04-19 16:17:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Palestine observed DST starting March 29, 2013. (Thanks to
++ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
++ with the predicted rules being the last Thursday in March at 24:00
++ to the first Friday on or after September 21 at 01:00.
++
++ Assume that the recent change to Paraguay's DST rules is permanent,
++ by moving the end of DST to the 4th Sunday in March every year.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Changes affecting past time stamps:
++
++ Fix some historical data for Palestine to agree with that of
++ timeanddate.com, as follows:
++
++ The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
++ 00:00 Apr 1.
++
++ The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
++ 02:00.
++
++ The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
++
++ The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
++
++ The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
++
++ The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
++
++ Fix times of habitation for Macquarie to agree with the Tasmania
++ Parks & Wildlife Service history, which indicates that permanent
++ habitation was 1899-1919 and 1948 on.
++
++ Changing affecting metadata only:
++
++ Macquarie Island is politically part of Australia, not Antarctica.
++ (Thanks to Tobias Conradi.)
++
++ Sort Macquarie more-consistently with other parts of Australia.
++ (Thanks to Tim Parenti.)
++
++
++Release 2013b - 2013-03-10 22:33:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Haiti uses US daylight-saving rules this year, and presumably future years.
++ This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++
++ Paraguay will end DST on March 24 this year.
++ (Thanks to Steffen Thorsen.) For now, assume it's just this year.
++
++ Morocco does not observe DST during Ramadan;
++ try to predict Ramadan in Morocco as best we can.
++ (Thanks to Erik Homoet for the heads-up.)
++
++ Changes affecting commentary:
++
++ Update URLs in tz-link page. Add URLs for webOS, BB10, iOS.
++ Update URL for Solaris. Mention Internet RFC 6557.
++ Update Internet RFCs 2445->5545, 2822->5322.
++ Switch from FTP to HTTP for Internet RFCs.
++
++
++Release 2013a - 2013-02-27 09:20:35 -0800
++
++ Change affecting binary data format:
++
++ The zone offset at the end of version-2-format zone files is now
++ allowed to be 24:00, as per POSIX.1-2008. (Thanks to Arthur David Olson.)
++
++ Changes affecting current and future time stamps:
++
++ Chile's 2013 rules, and we guess rules for 2014 and later, will be
++ the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
++ (Thanks to Steffen Thorsen and Robert Elz.)
++
++ New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
++ (Thanks to Tobias Conradi and Arthur David Olson.)
++
++ Many changes affect historical time stamps before 1940.
++ These were deduced from: Milne J. Civil time. Geogr J. 1899
++ Feb;13(2):173-94 <http://www.jstor.org/stable/1774359>.
++
++ Changes affecting the code:
++
++ Fix zic bug that mishandled Egypt's 2010 changes (this also affected
++ the data). (Thanks to Arthur David Olson.)
++
++ Fix localtime bug when time_t is unsigned and data files were generated
++ by a signed time_t system. (Thanks to Doug Bailey for reporting and
++ to Arthur David Olson for fixing.)
++
++ Allow the email address for bug reports to be set by the packager.
++ The default is tz@iana.org, as before. (Thanks to Joseph S. Myers.)
++
++ Update HTML checking to be compatible with Ubuntu 12.10.
++
++ Check that files are a safe subset of ASCII. At some point we may
++ relax this requirement to a safe subset of UTF-8. Without the
++ check, some non-UTF-8 encodings were leaking into the distribution.
++
++ Commentary changes:
++
++ Restore a comment about copyright notices that was inadvertently deleted.
++ (Thanks to Arthur David Olson.)
++
++ Improve the commentary about which districts observe what times
++ in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
++
++ Add web page links to tz.js.
++
++ Add "Run by the Monkeys" to tz-art. (Thanks to Arthur David Olson.)
++
++
++Release 2012j - 2012-11-12 18:34:49 -0800
++
++ Libya moved to CET this weekend, but with DST planned next year.
++ (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
++
++ Signatures now have the extension .asc, not .sign, as that's more
++ standard. (Thanks to Phil Pennock.)
++
++ The output of 'zdump --version', and of 'zic --version', now
++ uses a format that is more typical for --version.
++ (Thanks to Joseph S. Myers.)
++
++ The output of 'tzselect --help', 'zdump --help', and 'zic --help'
++ now uses tz@iana.org rather than the old elsie address.
++
++ zic -v now complains about abbreviations that are less than 3
++ or more than 6 characters, as per Posix. Formerly, it checked
++ for abbreviations that were more than 3.
++
++ 'make public' no longer puts its temporary directory under /tmp,
++ and uses the just-built zic rather than the system zic.
++
++ Various fixes to documentation and commentary.
++
++
++Release 2012i - 2012-11-03 12:57:09 -0700
++
++ Cuba switches from DST tomorrow at 01:00. (Thanks to Steffen Thorsen.)
++
++ Linker flags can now be specified via LDFLAGS.
++ AWK now defaults to 'awk', not 'nawk'.
++ The shell in tzselect now defaults to /bin/bash, but this can
++ be overridden by specifying KSHELL.
++ The main web page now mentions the unofficial GitHub repository.
++ (Thanks to Mike Frysinger.)
++
++ Tarball signatures can now be built by running 'make signatures'.
++ There are also new makefile rules 'tarballs', 'check_public', and
++ separate makefile rules for each tarball and signature file.
++ A few makefile rules are now more portable to strict POSIX.
++
++ The main web page now lists the canonical IANA URL.
++
++
++Release 2012h - 2012-10-26 22:49:10 -0700
++
++ Bahia no longer has DST. (Thanks to Kelley Cook.)
++
++ Tocantins has DST. (Thanks to Rodrigo Severo.)
++
++ Israel has new DST rules next year. (Thanks to Ephraim Silverberg.)
++
++ Jordan stays on DST this winter. (Thanks to Steffen Thorsen.)
++
++ Web page updates.
++
++ More C modernization, except that at Arthur David Olson's suggestion
++ the instances of 'register' were kept.
++
++
++Release 2012g - 2012-10-17 20:59:45 -0700
++
++ Samoa fall 2012 and later. (Thanks to Nicholas Pereira and Robert Elz.)
++
++ Palestine fall 2012. (Thanks to Steffen Thorsen.)
++
++ Assume C89.
++
++ To attack the version-number problem, this release ships the file
++ 'Makefile' (which contains the release number) in both the tzcode and
++ the tzdata tarballs. The two Makefiles are identical, and should be
++ identical in any matching pair of tarballs, so it shouldn't matter
++ which order you extract the tarballs. Perhaps we can come up with a
++ better version-number scheme at some point; this scheme does have the
++ virtue of not adding more files.
++
++
++Release 2012f - 2012-09-12 23:17:03 -0700
++
++ * australasia (Pacific/Fiji): Fiji DST is October 21 through January
++ 20 this year. (Thanks to Steffen Thorsen.)
++
++
++Release 2012e - 2012-08-02 20:44:55 -0700
++
++ * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
++ (Thanks to Steffen Thorsen.)
++
++ * Use a single version number for both code and data.
++
++ * .gitignore: New file.
++
++ * Remove trailing white space.
++
++
++Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
++
++ Changes for Morocco's time stamps, which take effect in a couple of
++ hours, along with infrastructure changes to accommodate how the tz
++ code and data are released on IANA.
++
++
++Release data2012c - 2012-03-27 12:17:25 -0400
++
++ africa
++ Summer time changes for Morocco (to start late April 2012)
++
++ asia
++ Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
++
++ northamerica
++ Haiti following US/Canada rules for 2012 (and we're assuming,
++ for now anyway, for the future).
++
++
++Release 2012b - 2012-03-02 12:29:15 +0700
++
++ There is just one change to tzcode2012b (compared with 2012a):
++ the Makefile that was accidentally included with 2012a has been
++ replaced with the version that should have been there, which is
++ identical with the previous version (from tzcode2011i).
++
++ There are just two changes in tzdata2012b compared with 2012a.
++
++ Most significantly, summer time in Cuba has been delayed 3 weeks
++ (now starts April 1 rather than March 11). Since Mar 11 (the old start
++ date, as listed in 2012a) is just a little over a week away, this
++ change is urgent.
++
++ Less importantly, an excess tab in one of the changes in zone.tab
++ in 2012a has been removed.
++
++
++Release 2012a - 2012-03-01 18:28:10 +0700
++
++ The changes in tzcode2012a (compared to the previous version, 2011i)
++ are entirely to the README and tz-art.htm and tz-link.htm files, if
++ none of those concern you, you can ignore the code update. The changes
++ reflect the changed addresses for the mailing list and the code and
++ data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
++ has been added to tz-link.htm).
++
++ In tzdata2012a (compared to the previous release, which was 2011n)
++ the major changes are:
++ Chile 2011/2012 and 2012/2013 summer time date adjustments.
++ Falkland Islands onto permanent summer time (we're assuming for the
++ foreseeable future, though 2012 is all we're fairly certain of.)
++ Armenia has abolished Summer Time.
++ Tokelau jumped the International Date Line back last December
++ (just the same as their near neighbour, Samoa).
++ America/Creston is a new zone for a small area of British Columbia
++ There will be a leapsecond 2012-06-30 23:59:60 UTC.
++
++ Other minor changes are:
++ Corrections to 1918 Canadian summer time end dates.
++ Updated URL for UK time zone history (in comments)
++ A few typos in Le Corre's list of free French place names (comments)
++
++
++Release data2011n - 2011-10-30 14:57:54 +0700
++
++ There are three changes of note - most urgently, Cuba (America/Havana)
++ has extended summer time by two weeks, now to end on Nov 13, rather than
++ the (already past) Oct 30. Second, the Pridnestrovian Moldavian Republic
++ (Europe/Tiraspol) decided not to split from the rest of Moldova after
++ all, and consequently that zone has been removed (again) and reinstated
++ in the "backward" file as a link to Europe/Chisinau. And third, the
++ end date for Fiji's summer time this summer was moved forward from the
++ earlier planned Feb 26, to Jan 22.
++
++ Apart from that, Moldova (MD) returns to a single entry in zone.tab
++ (and the incorrect syntax that was in the 2011m version of that file
++ is so fixed - it would have been fixed in a different way had this
++ change not happened - that's the "missing" sccs version id).
++
++
++Release data2011m - 2011-10-24 21:42:16 +0700
++
++ In particular, the typos in comments in the data (2011-11-17 should have
++ been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
++ Tim Parenti noted) have been fixed, and the change for Ukraine has been
++ made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
++ Tim Parenti, and also Denys Gavrysh)
++
++ In addition, I added Europe/Tiraspol to zone.tab.
++
++ This time, all the files have new version numbers... (including the files
++ otherwise unchanged in 2011m that were changed in 2011l but didn't get new
++ version numbers there...)
++
++
++Release data2011l - 2011-10-10 11:15:43 +0700
++
++ There are just 2 changes that cause different generated tzdata files from
++ zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
++ is included, but commented out. Compared with the diff I sent out last week,
++ this version also includes attributions for the sources for the changes
++ (in much the same format as ado used, but the html tags have not been
++ checked, verified, or used in any way at all, so if there are errors there,
++ please let me know.)
++
++
++Release data2011k - 2011-09-20 17:54:03 -0400
++
++ [not summarized]
++
++
++Release data2011j - 2011-09-12 09:22:49 -0400
++
++ (contemporary changes for Samoa; past changes for Kenya, Uganda, and
++ Tanzania); there are also two spelling corrections to comments in
++ the australasia file (with thanks to Christos Zoulas).
++
++
++Release 2011i - 2011-08-29 05:56:32 -0400
++
++ [not summarized]
++
++
++Release data2011h - 2011-06-15 18:41:48 -0400
++
++ Russia and Curaçao changes
++
++
++Release 2011g - 2011-04-25 09:07:22 -0400
++
++ update the rules for Egypt to reflect its abandonment of DST this year
++
++
++Release 2011f - 2011-04-06 17:14:53 -0400
++
++ [not summarized]
++
++
++Release 2011e - 2011-03-31 16:04:38 -0400
++
++ Morocco, Chile, and tz-link changes
++
++
++Release 2011d - 2011-03-14 09:18:01 -0400
++
++ changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++
++
++Release 2011c - 2011-03-07 09:30:09 -0500
++
++ These do affect current time stamps in Chile and Annette Island, Canada.
++
++
++Release 2011b - 2011-02-07 08:44:50 -0500
++
++ [not summarized]
++
++
++Release 2011a - 2011-01-24 10:30:16 -0500
++
++ [not summarized]
++
++
++Release data2010o - 2010-11-01 09:18:23 -0400
++
++ change to the end of DST in Fiji in 2011
++
++
++Release 2010n - 2010-10-25 08:19:17 -0400
++
++ [not summarized]
++
++
++Release 2010m - 2010-09-27 09:24:48 -0400
++
++ Hong Kong, Vostok, and zic.c changes
++
++
++Release 2010l - 2010-08-16 06:57:25 -0400
++
++ [not summarized]
++
++
++Release 2010k - 2010-07-26 10:42:27 -0400
++
++ [not summarized]
++
++
++Release 2010j - 2010-05-10 09:07:48 -0400
++
++ changes for Bahía de Banderas and for version naming
++
++
++Release data2010i - 2010-04-16 18:50:45 -0400
++
++ the end of DST in Morocco on 2010-08-08
++
++
++Release data2010h - 2010-04-05 09:58:56 -0400
++
++ [not summarized]
++
++
++Release data2010g - 2010-03-24 11:14:53 -0400
++
++ [not summarized]
++
++
++Release 2010f - 2010-03-22 09:45:46 -0400
++
++ [not summarized]
++
++
++Release data2010e - 2010-03-08 14:24:27 -0500
++
++ corrects the Dhaka bug found by Danvin Ruangchan
++
++
++Release data2010d - 2010-03-06 07:26:01 -0500
++
++ [not summarized]
++
++
++Release 2010c - 2010-03-01 09:20:58 -0500
++
++ changes including KRE's suggestion for earlier initialization of
++ "goahead" and "goback" structure elements
++
++
++Release code2010a - 2010-02-16 10:40:04 -0500
++
++ [not summarized]
++
++
++Release data2010b - 2010-01-20 12:37:01 -0500
++
++ Mexico changes
++
++
++Release data2010a - 2010-01-18 08:30:04 -0500
++
++ changes to Dhaka
++
++
++Release data2009u - 2009-12-26 08:32:28 -0500
++
++ changes to DST in Bangladesh
++
++
++Release 2009t - 2009-12-21 13:24:27 -0500
++
++ [not summarized]
++
++
++Release data2009s - 2009-11-14 10:26:32 -0500
++
++ (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
++
++
++Release 2009r - 2009-11-09 10:10:31 -0500
++
++ "antarctica" and "tz-link.htm" changes
++
++
++Release 2009q - 2009-11-02 09:12:40 -0500
++
++ with two corrections as reported by Eric Muller and Philip Newton
++
++
++Release data2009p - 2009-10-23 15:05:27 -0400
++
++ Argentina (including San Luis) changes (with the correction from
++ Mariano Absatz)
++
++
++Release data2009o - 2009-10-14 16:49:38 -0400
++
++ Samoa (commentary only), Pakistan, and Bangladesh changes
++
++
++Release data2009n - 2009-09-22 15:13:38 -0400
++
++ added commentary for Argentina and a change to the end of DST in
++ 2009 in Pakistan
++
++
++Release data2009m - 2009-09-03 10:23:43 -0400
++
++ Samoa and Palestine changes
++
++
++Release data2009l - 2009-08-14 09:13:07 -0400
++
++ Samoa (comments only) and Egypt
++
++
++Release 2009k - 2009-07-20 09:46:08 -0400
++
++ [not summarized]
++
++
++Release data2009j - 2009-06-15 06:43:59 -0400
++
++ Bangladesh change (with a short turnaround since the DST change is
++ impending)
++
++
++Release 2009i - 2009-06-08 09:21:22 -0400
++
++ updating for DST in Bangladesh this year
++
++
++Release 2009h - 2009-05-26 09:19:14 -0400
++
++ [not summarized]
++
++
++Release data2009g - 2009-04-20 16:34:07 -0400
++
++ Cairo
++
++
++Release data2009f - 2009-04-10 11:00:52 -0400
++
++ correct DST in Pakistan
++
++
++Release 2009e - 2009-04-06 09:08:11 -0400
++
++ [not summarized]
++
++
++Release 2009d - 2009-03-23 09:38:12 -0400
++
++ Morocco, Tunisia, Argentina, and American Astronomical Society changes
++
++
++Release data2009c - 2009-03-16 09:47:51 -0400
++
++ change to the start of Cuban DST
++
++
++Release 2009b - 2009-02-09 11:15:22 -0500
++
++ [not summarized]
++
++
++Release 2009a - 2009-01-21 10:09:39 -0500
++
++ [not summarized]
++
++
++Release data2008i - 2008-10-21 12:10:25 -0400
++
++ southamerica and zone.tab files, with Argentina DST rule changes and
++ United States zone reordering and recommenting
++
++
++Release 2008h - 2008-10-13 07:33:56 -0400
++
++ [not summarized]
++
++
++Release 2008g - 2008-10-06 09:03:18 -0400
++
++ Fix a broken HTML anchor and update Brazil's DST transitions;
++ there's also a slight reordering of information in tz-art.htm.
++
++
++Release data2008f - 2008-09-09 22:33:26 -0400
++
++ [not summarized]
++
++
++Release 2008e - 2008-07-28 14:11:17 -0400
++
++ changes by Arthur David Olson and Jesper Nørgaard Welen
++
++
++Release data2008d - 2008-07-07 09:51:38 -0400
++
++ changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
++
++
++Release data2008c - 2008-05-19 17:48:03 -0400
++
++ Pakistan, Morocco, and Mongolia
++
++
++Release data2008b - 2008-03-24 08:30:59 -0400
++
++ including renaming Asia/Calcutta to Asia/Kolkata, with a backward
++ link provided
++
++
++Release 2008a - 2008-03-08 05:42:16 -0500
++
++ [not summarized]
++
++
++Release 2007k - 2007-12-31 10:25:22 -0500
++
++ most importantly, changes to the "southamerica" file based on
++ Argentina's readoption of daylight saving time
++
++
++Release 2007j - 2007-12-03 09:51:01 -0500
++
++ 1. eliminate the "P" (parameter) macro;
++
++ 2. the "noncontroversial" changes circulated on the time zone
++ mailing list (less the changes to "logwtmp.c");
++
++ 3. eliminate "too many transition" errors when "min" is used in time
++ zone rules;
++
++ 4. changes by Paul Eggert (including updated information for Venezuela).
++
++
++Release data2007i - 2007-10-30 10:28:11 -0400
++
++ changes for Cuba and Syria
++
++
++Release 2007h - 2007-10-01 10:05:51 -0400
++
++ changes by Paul Eggert, as well as an updated link to the ICU
++ project in tz-link.htm
++
++
++Release 2007g - 2007-08-20 10:47:59 -0400
++
++ changes by Paul Eggert
++
++ The "leapseconds" file has been updated to incorporate the most
++ recent International Earth Rotation and Reference Systems Service
++ (IERS) bulletin.
++
++ There's an addition to tz-art.htm regarding the television show "Medium".
++
++
++Release 2007f - 2007-05-07 10:46:46 -0400
++
++ changes by Paul Eggert (including Haiti, Turks and Caicos, and New
++ Zealand)
++
++ changes to zic.c to allow hour values greater than 24 (along with
++ Paul's improved time value overflow checking)
++
++
++Release 2007e - 2007-04-02 10:11:52 -0400
++
++ Syria and Honduras changes by Paul Eggert
++
++ zic.c variable renaming changes by Arthur David Olson
++
++
++Release 2007d - 2007-03-20 08:48:30 -0400
++
++ changes by Paul Eggert
++
++ the elimination of white space at the ends of lines
++
++
++Release 2007c - 2007-02-26 09:09:37 -0500
++
++ changes by Paul Eggert
++
++
++Release 2007b - 2007-02-12 09:34:20 -0500
++
++ Paul Eggert's proposed change to the quotation handling logic in zic.c.
++
++ changes to the commentary in "leapseconds" reflecting the IERS
++ announcement that there is to be no positive leap second at the end
++ of June 2007.
++
++
++Release 2007a - 2007-01-08 12:28:29 -0500
++
++ changes by Paul Eggert
++
++ Derick Rethan's Asmara change
++
++ Oscar van Vlijmen's Easter Island local mean time change
++
++ symbolic link changes
++
++
++Release 2006p - 2006-11-27 08:54:27 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006o - 2006-11-06 09:18:07 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006n - 2006-10-10 11:32:06 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006m - 2006-10-02 15:32:35 -0400
++
++ changes for Uruguay, Palestine, and Egypt by Paul Eggert
++
++ (minimalist) changes to zic.8 to clarify "until" information
++
++
++Release data2006l - 2006-09-18 12:58:11 -0400
++
++ Paul's best-effort work on this coming weekend's Egypt time change
++
++
++Release 2006k - 2006-08-28 12:19:09 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006j - 2006-08-21 09:56:32 -0400
++
++ changes by Paul Eggert
++
++
++Release code2006i - 2006-08-07 12:30:55 -0400
++
++ localtime.c fixes
++
++ Ken Pizzini's conversion script
++
++
++Release code2006h - 2006-07-24 09:19:37 -0400
++
++ adds public domain notices to four files
++
++ includes a fix for transition times being off by a second
++
++ adds a new recording to the "arts" file (information courtesy Colin Bowern)
++
++
++Release 2006g - 2006-05-08 17:18:09 -0400
++
++ northamerica changes by Paul Eggert
++
++
++Release 2006f - 2006-05-01 11:46:00 -0400
++
++ a missing version number problem is fixed (with thanks to Bradley
++ White for catching the problem)
++
++
++Release 2006d - 2006-04-17 14:33:43 -0400
++
++ changes by Paul Eggert
++
++ added new items to tz-arts.htm that were found by Paul
++
++
++Release 2006c - 2006-04-03 10:09:32 -0400
++
++ two sets of data changes by Paul Eggert
++
++ a fencepost error fix in zic.c
++
++ changes to zic.c and the "europe" file to minimize differences
++ between output produced by the old 32-bit zic and the new 64-bit
++ version
++
++
++Release 2006b - 2006-02-20 10:08:18 -0500
++ [tz32code2006b + tz64code2006b + tzdata2006b]
++
++ 64-bit code
++
++ All SCCS IDs were bumped to "8.1" for this release.
++
++
++Release 2006a - 2006-01-30 08:59:31 -0500
++
++ changes by Paul Eggert (in particular, Indiana time zone moves)
++
++ an addition to the zic manual page to describe how special-case
++ transitions are handled
++
++
++Release 2005r - 2005-12-27 09:27:13 -0500
++
++ Canadian changes by Paul Eggert
++
++ They also add "<pre>" directives to time zone data files and reflect
++ changes to warning message logic in "zdump.c" (but with calls to
++ "gettext" kept unbundled at the suggestion of Ken Pizzini).
++
++
++Release 2005q - 2005-12-13 09:17:09 -0500
++
++ Nothing earth-shaking here:
++ 1. Electronic mail addresses have been removed.
++ 2. Casts of the return value of exit have been removed.
++ 3. Casts of the argument of is.* macros have been added.
++ 4. Indentation in one section of zic.c has been fixed.
++ 5. References to dead URLs in the data files have been dealt with.
++
++
++Release 2005p - 2005-12-05 10:30:53 -0500
++
++ "systemv", "tz-link.htm", and "zdump.c" changes
++ (less the casts of arguments to the is* macros)
++
++
++Release 2005o - 2005-11-28 10:55:26 -0500
++
++ Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
++
++ zdump.c lint fixes by Arthur David Olson
++
++
++Release 2005n - 2005-10-03 09:44:09 -0400
++
++ changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
++ et al. changes)
++
++
++Release 2005m - 2005-08-29 12:15:40 -0400
++
++ changes by Paul Eggert (with a small tweak to the tz-art change)
++
++ a declaration of an unused variable has been removed from zdump.c
++
++
++Release 2005l - 2005-08-22 12:06:39 -0400
++
++ changes by Paul Eggert
++
++ overflow/underflow checks by Arthur David Olson, minus changes to
++ the "Theory" file about the pending addition of 64-bit data (I grow
++ less confident of the changes being accepted with each passing day,
++ and the changes no longer increase the data files nine-fold--there's
++ less than a doubling in size by my local Sun's reckoning)
++
++
++Release 2005k - 2005-07-14 14:14:24 -0400
++
++ The "leapseconds" file has been edited to reflect the recently
++ announced leap second at the end of 2005.
++
++ I've also deleted electronic mail addresses from the files as an
++ anti-spam measure.
++
++
++Release 2005j - 2005-06-13 14:34:13 -0400
++
++ These reflect changes to limit the length of time zone abbreviations
++ and the characters used in those abbreviations.
++
++ There are also changes to handle POSIX-style "quoted" time zone
++ environment variables.
++
++ The changes were circulated on the time zone mailing list; the only
++ change since then was the removal of a couple of minimum-length of
++ abbreviation checks.
++
++
++Release data2005i - 2005-04-21 15:04:16 -0400
++
++ changes (most importantly to Nicaragua and Haiti) by Paul Eggert
++
++
++Release 2005h - 2005-04-04 11:24:47 -0400
++
++ changes by Paul Eggert
++
++ minor changes to Makefile and zdump.c to produce more useful output
++ when doing a "make typecheck"
++
++
++Release 2005g - 2005-03-14 10:11:21 -0500
++
++ changes by Paul Eggert (a change to current DST rules in Uruguay and
++ an update to a link to time zone software)
++
++
++Release 2005f - 2005-03-01 08:45:32 -0500
++
++ data and documentation changes by Paul Eggert
++
++
++Release 2005e - 2005-02-10 15:59:44 -0500
++
++ [not summarized]
++
++
++Release code2005d - 2005-01-31 09:21:47 -0500
++
++ make zic complain about links to links if the -v flag is used
++
++ have "make public" do more code checking
++
++ add an include to "localtime.c" for the benefit of gcc systems
++
++
++Release 2005c - 2005-01-17 18:36:29 -0500
++
++ get better results when mktime runs on a system where time_t is double
++
++ changes to the data files (most importantly to Paraguay)
++
++
++Release 2005b - 2005-01-10 09:19:54 -0500
++
++ Get localtime and gmtime working on systems with exotic time_t types.
++
++ Update the leap second commentary in the "leapseconds" file.
++
++
++Release 2005a - 2005-01-01 13:13:44 -0500
++
++ [not summarized]
++
++
++Release code2004i - 2004-12-14 13:42:58 -0500
++
++ Deal with systems where time_t is unsigned.
++
++
++Release code2004h - 2004-12-07 11:40:18 -0500
++
++ 64-bit-time_t changes
++
++
++Release 2004g - 2004-11-02 09:06:01 -0500
++
++ update to Cuba (taking effect this weekend)
++
++ other changes by Paul Eggert
++
++ correction of the spelling of Oslo
++
++ changed versions of difftime.c and private.h
++
++
++Release code2004f - 2004-10-21 10:25:22 -0400
++
++ Cope with wide-ranging tm_year values.
++
++
++Release 2004e - 2004-10-11 14:47:21 -0400
++
++ Brazil/Argentina/Israel changes by Paul Eggert
++
++ changes to tz-link.htm by Paul
++
++ one small fix to Makefile
++
++
++Release 2004d - 2004-09-22 08:27:29 -0400
++
++ Avoid overflow problems when TM_YEAR_BASE is added to an integer.
++
++
++Release 2004c - 2004-08-11 12:06:26 -0400
++
++ asctime-related changes
++
++ (variants of) some of the documentation changes suggested by Paul Eggert
++
++
++Release 2004b - 2004-07-19 14:33:35 -0400
++
++ data changes by Paul Eggert - most importantly, updates for Argentina
++
++
++Release 2004a - 2004-05-27 12:00:47 -0400
++
++ changes by Paul Eggert
++
++ Handle DST transitions that occur at the end of a month in some
++ years but at the start of the following month in other years.
++
++ Add a copy of the correspondence that's the basis for claims about
++ DST in the Navajo Nation.
++
++
++Release 2003e - 2003-12-15 09:36:47 -0500
++
++ changes by Arthur David Olson (primarily code changes)
++
++ changes by Paul Eggert (primarily data changes)
++
++ minor changes to "Makefile" and "northamerica" (in the latter case,
++ optimization of the "Toronto" rules)
++
++
++Release 2003d - 2003-10-06 09:34:44 -0400
++
++ changes by Paul Eggert
++
++
++Release 2003c - 2003-09-16 10:47:05 -0400
++
++ Fix bad returns in zic.c's inleap function.
++ Thanks to Bradley White for catching the problem!
++
++
++Release 2003b - 2003-09-16 07:13:44 -0400
++
++ Add a "--version" option (and documentation) to the zic and zdump commands.
++
++ changes to overflow/underflow checking in zic
++
++ a localtime typo fix.
++
++ Update the leapseconds and tz-art.htm files.
++
++
++Release 2003a - 2003-03-24 09:30:54 -0500
++
++ changes by Paul Eggert
++
++ a few additions and modifications to the tz-art.htm file
++
++
++Release 2002d - 2002-10-15 13:12:42 -0400
++
++ changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
++
++ There's also a new time zone quote in "tz-art.htm".
++
++
++Release 2002c - 2002-04-04 11:55:20 -0500
++
++ changes by Paul Eggert
++
++ Change zic.c to avoid creating symlinks to files that don't exist.
++
++
++Release 2002b - 2002-01-28 12:56:03 -0500
++
++ [These change notes are for Release 2002a, which was corrupted.
++ 2002b was a corrected version of 2002a.]
++
++ changes by Paul Eggert
++
++ Update the "leapseconds" file to note that there'll be no leap
++ second at the end of June, 2002.
++
++ Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
++
++ Change to "difftime.c" to avoid sizeof problems.
++
++
++Release 2001d - 2001-10-09 13:31:32 -0400
++
++ changes by Paul Eggert
++
++
++Release 2001c - 2001-06-05 13:59:55 -0400
++
++ changes by Paul Eggert and Andrew Brown
++
++
++Release 2001b - 2001-04-05 16:44:38 -0400
++
++ changes by Paul Eggert (modulo jnorgard's typo fix)
++
++ tz-art.htm has been HTMLified.
++
++
++Release 2001a - 2001-03-13 12:57:44 -0500
++
++ changes by Paul Eggert
++
++ An addition to the "leapseconds" file: comments with the text of the
++ latest IERS leap second notice.
++
++ Trailing white space has been removed from data file lines, and
++ repeated spaces in "Rule Jordan" lines in the "asia" file have been
++ converted to tabs.
++
++
++Release 2000h - 2000-12-14 15:33:38 -0500
++
++ changes by Paul Eggert
++
++ one typo fix in the "art" file
++
++ With providence, this is the last update of the millennium.
++
++
++Release 2000g - 2000-10-10 11:35:22 -0400
++
++ changes by Paul Eggert
++
++ correction of John Mackin's name submitted by Robert Elz
++
++ Garry Shandling's Daylight Saving Time joke (!?!) from the recent
++ Emmy Awards broadcast.
++
++
++Release 2000f - 2000-08-10 09:31:58 -0400
++
++ changes by Paul Eggert
++
++ Added information in "tz-art.htm" on a Seinfeld reference to DST.
++
++ Error checking and messages in the "yearistype" script have been
++ improved.
++
++
++Release 2000e - 2000-07-31 09:27:54 -0400
++
++ data changes by Paul Eggert
++
++ a change to the default value of the defined constant HAVE_STRERROR
++
++ the addition of a Dave Barry quote on DST to the tz-arts file
++
++
++Release 2000d - 2000-04-20 15:43:04 -0400
++
++ changes to the documentation and code of strftime for C99 conformance
++
++ a bug fix for date.c
++
++ These are based on (though modified from) changes by Paul Eggert.
++
++
++Release 2000c - 2000-03-04 10:31:43 -0500
++
++ changes by Paul Eggert
++
++
++Release 2000b - 2000-02-21 12:16:29 -0500
++
++ changes by Paul Eggert and Joseph Myers
++
++ modest tweaks to the tz-art.htm and tz-link.htm files
++
++
++Release 2000a - 2000-01-18 09:21:26 -0500
++
++ changes by Paul Eggert
++
++ The two hypertext documents have also been renamed.
++
++
++Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
++
++ Paul Eggert's changes
++
++ additions to the "zic" manual page and the "Arts.htm" file
++
++
++Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
++
++ [not summarized]
++
++
++Release data1999h - 1999-10-07 03:50:29 -0400
++
++ changes by Paul Eggert to "europe" (most importantly, fixing
++ Lithuania and Estonia)
++
++
++Release 1999g - 1999-09-28 11:06:18 -0400
++
++ data changes by Paul Eggert (most importantly, the change for
++ Lebanon that buys correctness for this coming Sunday)
++
++ The "code" file contains changes to "Makefile" and "checktab.awk" to
++ allow better checking of time zone files before they are published.
++
++
++Release 1999f - 1999-09-23 09:48:14 -0400
++
++ changes by Arthur David Olson and Paul Eggert
++
++
++Release 1999e - 1999-08-17 15:20:54 -0400
++
++ changes circulated by Paul Eggert, although the change to handling
++ of DST-specifying time zone names has been commented out for now
++ (search for "XXX" in "localtime.c" for details). These files also
++ do not make any changes to the start of DST in Brazil.
++
++ In addition to Paul's changes, there are updates to "Arts.htm" and
++ cleanups of URLs.
++
++
++Release 1999d - 1999-03-30 11:31:07 -0500
++
++ changes by Paul Eggert
++
++ The Makefile's "make public" rule has also been changed to do a test
++ compile of each individual time zone data file (which should help
++ avoid problems such as the one we had with Nicosia).
++
++
++Release 1999c - 1999-03-25 09:47:47 -0500
++
++ changes by Paul Eggert, most importantly the change for Chile.
++
++
++Release 1999b - 1999-02-01 17:51:44 -0500
++
++ changes by Paul Eggert
++
++ code changes (suggested by Mani Varadarajan, mani at be.com) for
++ correct handling of symbolic links when building using a relative directory
++
++ code changes to generate correct messages for failed links
++
++ updates to the URLs in Arts.htm
++
++
++Release 1999a - 1999-01-19 16:20:29 -0500
++
++ error message internationalizations and corrections in zic.c and
++ zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
++ to whom thanks!)
++
++
++Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
++
++ changes for Brazil, Chile, and Germany
++
++ support for use of "24:00" in the input files for the time zone compiler
++
++
++Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
++
++ changes by Paul Eggert
++
++ correction to a define in the "private.h" file
++
++
++Release data1998g - 1998-08-11 03:28:35 -0000
++ [tzdata1998g.tar.gz is missing!]
++
++ Lithuanian change provided by mgedmin at pub.osf.it
++
++ Move creation of the GMT link with Etc/GMT to "etcetera" (from
++ "backward") to ensure that the GMT file is created even where folks
++ don't want the "backward" links (as suggested by Paul Eggert).
++
++
++Release data1998f - 1998-07-20 13:50:00 -0000
++ [tzdata1998f.tar.gz is missing!]
++
++ Update the "leapseconds" file to include the newly-announced
++ insertion at the end of 1998.
++
++
++Release code1998f - 1998-06-01 10:18:31 -0400
++
++ addition to localtime.c by Guy Harris
++
++
++Release 1998e - 1998-05-28 09:56:26 -0400
++
++ The Makefile is changed to produce zoneinfo-posix rather than
++ zoneinfo/posix, and to produce zoneinfo-leaps rather than
++ zoneinfo/right.
++
++ data changes by Paul Eggert
++
++ changes from Guy Harris to provide asctime_r and ctime_r
++
++ A usno1998 file (substantially identical to usno1997) has been added.
++
++
++Release 1998d - 1998-05-14 11:58:34 -0400
++
++ changes to comments (in particular, elimination of references to CIA maps).
++ "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
++ where changes occur.
++
++
++Release 1998c - 1998-02-28 12:32:26 -0500
++
++ changes by Paul Eggert (save the "French correction," on which I'll
++ wait for the dust to settle)
++
++ symlink changes
++
++ changes and additions to Arts.htm
++
++
++Release 1998b - 1998-01-17 14:31:51 -0500
++
++ URL cleanups and additions
++
++
++Release 1998a - 1998-01-13 12:37:35 -0500
++
++ changes by Paul Eggert
++
++
++Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
++
++ changes by Paul Eggert, with minor modifications from Arthur David
++ Olson to make the files more browser friendly
++
++
++Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
++
++ minor changes to put "TZif" at the start of each time zone information file
++
++ a rule has also been added to the Makefile so you can
++ make zones
++ to just recompile the zone information files (rather than doing a
++ full "make install" with its other effects).
++
++
++Release data1997i - 1997-10-07 08:45:38 -0400
++
++ changes to Africa by Paul Eggert
++
++
++Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
++
++ corrections for Uruguay (and other locations)
++
++ Arthur David Olson's simple-minded fix allowing mktime to both
++ correctly handle leap seconds and correctly handle tm_sec values
++ upon which arithmetic has been performed.
++
++
++Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
++
++ Paul Eggert's updates
++
++ a small change to a function prototype;
++
++ "Music" has been renamed "Arts.htm", HTMLified, and augmented to
++ include information on Around the World in Eighty Days.
++
++
++Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
++
++ fixes to zic's error handling
++
++ changes inspired by the item circulated on Slovenia
++
++ The description of Web resources has been HTMLified for browsing
++ convenience.
++
++ A new piece of tz-related music has been added to the "Music" file.
++
++
++Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
++
++ Paul Eggert's latest suggestions
++
++
++Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
++
++ changes to "zic.c" to correct performance of the "-s" option
++
++ a new file "usno1997"
++
++
++Release data1997c - 1997-03-04 09:58:18 -0500
++
++ changes in Israel
++
++
++Release 1997b - 1997-02-27 18:34:19 -0500
++
++ The data file incorporates the 1997 leap second.
++
++ The code file incorporates Arthur David Olson's take on the
++ zic/multiprocessor/directory-creation situation.
++
++
++Release 1997a - 1997-01-21 09:11:10 -0500
++
++ Paul Eggert's Antarctica (and other changes)
++
++ Arthur David Olson finessed the "getopt" issue by checking against
++ both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
++ is returned while SunOS 5.5's manual says EOF is returned).
++
++
++Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
++
++ Paul Eggert's latest changes
++
++
++Release code1996n - 1996-12-16 09:42:02 -0500
++
++ link snapping fix from Bruce Evans (via Garrett Wollman)
++
++
++Release data1996m - 1996-11-24 02:37:34 -0000
++ [tzdata1996m.tar.gz is missing!]
++
++ Paul Eggert's batch of changes
++
++
++Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
++
++ No functional changes here; the files have simply been changed to
++ make more use of ISO style dates in comments. The names of the above
++ files now include the year in full.
++
++
++Release code96l - 1996-09-08 17:12:20 -0400
++
++ tzcode96k was missing a couple of pieces.
++
++
++Release 96k - 1996-09-08 16:06:22 -0400
++
++ the latest round of changes from Paul Eggert
++
++ the recent Year 2000 material
++
++
++Release code96j - 1996-07-30 13:18:53 -0400
++
++ Set sp->typecnt as suggested by Timothy Patrick Murphy.
++
++
++Release code96i - 1996-07-27 20:11:35 -0400
++
++ Paul's suggested patch for strftime %V week numbers
++
++
++Release data96i - 1996-07-01 18:13:04 -0400
++
++ "northamerica" and "europe" changes by Paul Eggert
++
++
++Release code96h - 1996-06-05 08:02:21 -0400
++
++ fix for handling transitions specified in Universal Time
++
++ Some "public domain" notices have also been added.
++
++
++Release code96g - 1996-05-16 14:00:26 -0400
++
++ fix for the simultaneous-DST-and-zone-change challenge
++
++
++Release data96h - 1996-05-09 17:40:51 -0400
++
++ changes by Paul Eggert
++
++
++Release code96f-data96g - 1996-05-03 03:09:59 -0000
++ [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
++
++ The changes get us some of the way to fixing the problems noted in Paul
++ Eggert's letter yesterday (in addition to a few others). The approach
++ has been to make zic a bit smarter about figuring out what time zone
++ abbreviations apply just after the time specified in the "UNTIL" part
++ of a zone line. Putting the smarts in zic means avoiding having
++ transition times show up in both "Zone" lines and "Rule" lines, which
++ in turn avoids multiple transition time entries in time zone files.
++ (This also makes the zic input files such as "europe" a bit shorter and
++ should ease maintenance.)
++
++
++Release data96f - 1996-04-19 19:20:03 -0000
++ [tzdata96f.tar.gz is missing!]
++
++ The only changes are to the "northamerica" file; the time zone
++ abbreviation for Denver is corrected to MST (and MDT), and the
++ comments for Mexico have been updated.
++
++
++Release data96e - 1996-03-19 17:37:26 -0500
++
++ Proposals by Paul Eggert, in particular the Portugal change that
++ comes into play at the end of this month.
++
++
++Release data96d - 1996-03-18 20:49:39 -0500
++
++ [not summarized]
++
++
++Release code96e - 1996-02-29 15:43:27 -0000
++ [tzcode96e.tar.gz is missing!]
++
++ internationalization changes and the fix to the documentation for strftime
++
++
++Release code96d-data96c - 1996-02-12 11:05:27 -0500
++
++ The "code" file simply updates Bob Kridle's electronic address.
++
++ The "data" file updates rules for Mexico.
++
++
++Release data96b - 1996-01-27 15:44:42 -0500
++
++ Kiribati change
++
++
++Release code96c - 1996-01-16 16:58:15 -0500
++
++ leap-year streamlining and binary-search changes
++
++ fix to newctime.3
++
++
++Release code96b - 1996-01-10 20:42:39 -0500
++
++ fixes and enhancements from Paul Eggert, including code that
++ emulates the behavior of recent versions of the SunOS "date"
++ command.
++
++
++Release 96a - 1996-01-06 09:08:24 -0500
++
++ Israel updates
++
++ fixes to strftime.c for correct ISO 8601 week number generation,
++ plus support for two new formats ('G' and 'g') to give ISO 8601 year
++ numbers (which are not necessarily the same as calendar year numbers)
++
++
++Release code95i-data95m - 1995-12-21 12:46:47 -0500
++
++ The latest revisions from Paul Eggert are included, the usno1995
++ file has been updated, and a new file ("WWW") covering useful URLs
++ has been added.
++
++
++Release code95h-data95l - 1995-12-19 18:10:12 -0500
++
++ A simplification of a macro definition, a change to data for Sudan,
++ and (for last minute shoppers) notes in the "Music" file on the CD
++ "Old Man Time".
++
++
++Release code95g-data95k - 1995-10-30 10:32:47 -0500
++
++ (slightly reformatted) 8-bit-clean proposed patch
++
++ minor patch: US/Eastern -> America/New_York
++
++ snapshot of the USNO's latest data ("usno1995")
++
++ some other minor cleanups
++
++
++Release code95f-data95j - 1995-10-28 21:01:34 -0000
++ [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
++
++ European cleanups
++
++ support for 64-bit time_t's
++
++ optimization in localtime.c
++
++
++Release code95e - 1995-10-13 13:23:57 -0400
++
++ the mktime change to scan from future to past when trying to find time zone
++ offsets
++
++
++Release data95i - 1995-09-26 10:43:26 -0400
++
++ For Canada/Central, guess that the Sun customer's "one week too
++ early" was just a approximation, and the true error is one month
++ too early. This is consistent with the rest of Canada.
++
++
++Release data95h - 1995-09-21 11:26:48 -0400
++
++ latest changes from Paul Eggert
++
++
++Release code95d - 1995-09-14 11:14:45 -0400
++
++ the addition of a "Music" file, which documents four recorded
++ versions of the tune "Save That Time".
++
++
++Release data95g - 1995-09-01 17:21:36 -0400
++
++ "yearistype" correction
++
++
++Release data95f - 1995-08-28 20:46:56 -0400
++
++ Paul Eggert's change to the australasia file
++
++
++Release data95e - 1995-07-08 18:02:34 -0400
++
++ The only change is a leap second at the end of this year.
++ Thanks to Bradley White for forwarding news on the leap second.
++
++
++Release data95d - 1995-07-03 13:26:22 -0400
++
++ Paul Eggert's changes
++
++
++Release data95c - 1995-07-02 19:19:28 -0400
++
++ changes to "asia", "backward", "europe", and "southamerica"
++ (read: northamericacentrics need not apply)
++
++
++Release code95c - 1995-03-13 14:00:46 -0500
++
++ one-line fix for sign extension problems in detzcode
++
++
++Release 95b - 1995-03-04 11:22:38 -0500
++
++ Minor changes in both:
++
++ The "code" file contains a workaround for the lack of "unistd.h" in
++ Microsoft C++ version 7.
++
++ The "data" file contains a fixed "Link" for America/Shiprock.
++
++
++Release 94h - 1994-12-10 12:51:14 -0500
++
++ The files:
++
++ * incorporate the changes to "zdump" and "date" to make changes to
++ the "TZ" environment variable permanent;
++
++ * incorporate the table changes by Paul Eggert;
++
++ * include (and document) support for universal time specifications in
++ data files - but do not (yet) include use of this feature in the
++ data files.
++
++ Think of this as "TZ Classic" - the software has been set up not to break if
++ universal time shows up in its input, and data entries have been
++ left as is so as not to break existing implementations.
++
++
++Release data94f - 1994-08-20 12:56:09 -0400
++
++ (with thanks!) the latest data updates from Paul Eggert
++
++
++Release data94e - 1994-06-04 13:13:53 -0400
++
++ [not summarized]
++
++
++Release code94g - 1994-05-05 12:14:07 -0400
++
++ fix missing "optind.c" and a reference to it in the Makefile
++
++
++Release code94f - 1994-05-05 13:00:33 -0000
++ [tzcode94f.tar.gz is missing!]
++
++ changes to avoid overflow in difftime, as well as changes to cope
++ with the 52/53 challenge in strftime
++
++
++Release code94e - 1994-03-30 23:32:59 -0500
++
++ change for the benefit of PCTS
++
++
++Release 94d - 1994-02-24 15:42:25 -0500
++
++ Avoid clashes with POSIX semantics for zones such as GMT+4.
++
++ Some other very minor housekeeping is also present.
++
++
++Release code94c - 1994-02-10 08:52:40 -0500
++
++ Fix bug where mkdirs was broken unless you compile with
++ -fwritable-strings (which is generally losing to do).
++
++
++Release 94b - 1994-02-07 10:04:33 -0500
++
++ work by Paul Eggert who notes:
++
++ I found another book of time zone histories by E W Whitman; it's not
++ as extensive as Shanks but has a few goodies of its own. I used it
++ to update the tables. I also fixed some more as a result of
++ correspondence with Adam David and Peter Ilieve, and move some stray
++ links from 'europe' to 'backward'. I corrected some scanning errors
++ in usno1989.
++
++ As far as the code goes, I fixed zic to allow years in the range
++ INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
++ And I cleaned up the zic documentation a little bit.
++
++
++Release data94a - 1994-02-03 08:58:54 -0500
++
++ It simply incorporates the recently announced leap second into the
++ "leapseconds" file.
++
++
++Release 93g - 1993-11-22 17:28:27 -0500
++
++ Paul Eggert has provided a good deal of historic information (based
++ on Shanks), and there are some code changes to deal with the buglets
++ that crawled out in dealing with the new information.
++
++
++Release 93f - 1993-10-15 12:27:46 -0400
++
++ Paul Eggert's changes
++
++
++Release 93e - 1993-09-05 21:21:44 -0400
++
++ This has updated data for Israel, England, and Kwajalein. There's
++ also an update to "zdump" to cope with Kwajalein's 24-hour jump.
++ Thanks to Paul Eggert and Peter Ilieve for the changes.
++
++
++Release 93d - 1993-06-17 23:34:17 -0400
++
++ new fix and new data on Israel
++
++
++Release 93c - 1993-06-06 19:31:55 -0400
++
++ [not summarized]
++
++
++Release 93b - 1993-02-02 14:53:58 -0500
++
++ updated "leapseconds" file
++
++
++Release 93 - 1993-01-08 07:01:06 -0500
++
++ At kre's suggestion, the package has been split in two - a code piece
++ (which also includes documentation) that's only of use to folks who
++ want to recompile things and a data piece useful to anyone who can
++ run "zic".
++
++ The new version has a few changes to the data files, a few
++ portability changes, and an off-by-one fix (with thanks to
++ Tom Karzes at deshaw.com for providing a description and a
++ solution).
++
++
++Release 92c - 1992-11-21 17:35:36 -0000
++ [tz92c.tar.Z is missing!]
++
++ The fallout from the latest round of DST transitions.
++
++ There are changes for Portugal, Saskatchewan, and "Pacific-New";
++ there's also a change to "zic.c" that makes it portable to more systems.
++
++
++Release 92 - 1992-04-25 18:17:03 -0000
++ [tz92.tar.Z is missing!]
++
++ By popular demand (well, at any rate, following a request by kre at munnari)
++
++
++The 1989 update of the time zone package featured:
++
++ * POSIXization (including interpretation of POSIX-style TZ environment
++ variables, provided by Guy Harris),
++ * ANSIfication (including versions of "mktime" and "difftime"),
++ * SVIDulation (an "altzone" variable)
++ * MACHination (the "gtime" function)
++ * corrections to some time zone data (including corrections to the rules
++ for Great Britain and New Zealand)
++ * reference data from the United States Naval Observatory for folks who
++ want to do additional time zones
++ * and the 1989 data for Saudi Arabia.
++
++ (Since this code will be treated as "part of the implementation" in some
++ places and as "part of the application" in others, there's no good way to
++ name functions, such as timegm, that are not part of the proposed ANSI C
++ standard; such functions have kept their old, underscore-free names in this
++ update.)
++
++ And the "dysize" function has disappeared; it was present to allow
++ compilation of the "date" command on old BSD systems, and a version of "date"
++ is now provided in the package. The "date" command is not created when you
++ "make all" since it may lack options provided by the version distributed with
++ your operating system, or may not interact with the system in the same way
++ the native version does.
++
++ Since POSIX frowns on correct leap second handling, the default behavior of
++ the "zic" command (in the absence of a "-L" option) has been changed to omit
++ leap second information from its output files.
++
++
++-----
++Notes
++
++This file contains copies of the part of each release announcement
++that talks about the changes in that release. The text has been
++adapted and reformatted for the purposes of this file.
++
++Traditionally a release R consists of a pair of tarball files,
++tzcodeR.tar.gz and tzdataR.tar.gz. However, some releases (e.g.,
++code2010a, data2012c) consist of just one or the other tarball, and a
++few (e.g., code2012c-data2012d) have tarballs with mixed version
++numbers. Recent releases also come in an experimental format
++consisting of a single tarball tzdb-R.tar.lz with extra data.
++
++Release time stamps are taken from the release's commit (for newer,
++Git-based releases), from the newest file in the tarball (for older
++releases, where this info is available) or from the email announcing
++the release (if all else fails; these are marked with a time zone of
++-0000 and an "is missing!" comment).
++
++Earlier versions of the code and data were not announced on the tz
++list and are not summarized here.
++
++This file is in the public domain.
++
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -0,0 +1,71 @@
++README for the tz distribution
++
++"What time is it?" -- Richard Deacon as The King
++"Any time you want it to be." -- Frank Baxter as The Scientist
++ (from the Bell System film "About Time")
++
++The Time Zone Database (often called tz or zoneinfo) contains code and
++data that represent the history of local time for many representative
++locations around the globe. It is updated periodically to reflect
++changes made by political bodies to time zone boundaries, UTC offsets,
++and daylight-saving rules.
++
++Here is a recipe for acquiring, building, installing, and testing the
++tz distribution on a GNU/Linux or similar host.
++
++To acquire the distribution, run the following shell commands:
++
++ mkdir tz
++ cd tz
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tz*-latest.tar.gz'
++ gzip -dc tzcode-latest.tar.gz | tar -xf -
++ gzip -dc tzdata-latest.tar.gz | tar -xf -
++
++Alternatively, the following shell commands acquire the same
++distribution, with extra data useful for regression testing:
++
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tzdb-latest.tar.lz'
++ lzip -dc tzdb-latest.tar.lz | tar -xf -
++
++Be sure to read the comments in "Makefile" and make any changes needed
++to make things right for your system, especially if you are using some
++platform other than GNU/Linux. Then run the following commands,
++substituting your desired installation directory for "$HOME/tzdir":
++
++ make TOPDIR=$HOME/tzdir install
++ $HOME/tzdir/etc/zdump -v America/Los_Angeles
++
++Historical local time information has been included here to:
++
++* provide a compendium of data about the history of civil time
++ that is useful even if not 100% accurate;
++
++* give an idea of the variety of local time rules that have
++ existed in the past and thus an idea of the variety that may be
++ expected in the future;
++
++* provide a test of the generality of the local time rule description
++ system.
++
++The information in the time zone data files is by no means authoritative;
++fixes and enhancements are welcome. Please see the file CONTRIBUTING
++for details.
++
++Thanks to these Time Zone Caballeros who've made major contributions to the
++time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz;
++Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to
++Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales
++for testing work, and to Gwillim Law for checking local mean time data.
++Thanks in particular to Arthur David Olson, the project's founder and first
++maintainer, to whom the time zone community owes the greatest debt of all.
++None of them are responsible for remaining errors.
++
++Look in <ftp://ftp.iana.org/tz/releases/> for updated versions of these files.
++
++Please send comments or information to tz@iana.org.
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson. The other files in this distribution are either
++public domain or BSD licensed; see the file LICENSE for details.
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -0,0 +1,840 @@
++Theory and pragmatics of the tz code and data
++
++
++----- Outline -----
++
++ Scope of the tz database
++ Names of time zone rules
++ Time zone abbreviations
++ Accuracy of the tz database
++ Time and date functions
++ Calendrical issues
++ Time and time zones on Mars
++
++
++----- Scope of the tz database -----
++
++The tz database attempts to record the history and predicted future of
++all computer-based clocks that track civil time. To represent this
++data, the world is partitioned into regions whose clocks all agree
++about time stamps that occur after the somewhat-arbitrary cutoff point
++of the POSIX Epoch (1970-01-01 00:00:00 UTC). For each such region,
++the database records all known clock transitions, and labels the region
++with a notable location. Although 1970 is a somewhat-arbitrary
++cutoff, there are significant challenges to moving the cutoff earlier
++even by a decade or two, due to the wide variety of local practices
++before computer timekeeping became prevalent.
++
++Clock transitions before 1970 are recorded for each such location,
++because most systems support time stamps before 1970 and could
++misbehave if data entries were omitted for pre-1970 transitions.
++However, the database is not designed for and does not suffice for
++applications requiring accurate handling of all past times everywhere,
++as it would take far too much effort and guesswork to record all
++details of pre-1970 civil timekeeping.
++
++As described below, reference source code for using the tz database is
++also available. The tz code is upwards compatible with POSIX, an
++international standard for UNIX-like systems. As of this writing, the
++current edition of POSIX is:
++
++ The Open Group Base Specifications Issue 7
++ IEEE Std 1003.1, 2013 Edition
++ <http://pubs.opengroup.org/onlinepubs/9699919799/>
++
++
++
++----- Names of time zone rules -----
++
++Each of the database's time zone rules has a unique name.
++Inexperienced users are not expected to select these names unaided.
++Distributors should provide documentation and/or a simple selection
++interface that explains the names; for one example, see the 'tzselect'
++program in the tz code. The Unicode Common Locale Data Repository
++<http://cldr.unicode.org/> contains data that may be useful for other
++selection interfaces.
++
++The time zone rule naming conventions attempt to strike a balance
++among the following goals:
++
++ * Uniquely identify every region where clocks have agreed since 1970.
++ This is essential for the intended use: static clocks keeping local
++ civil time.
++
++ * Indicate to experts where that region is.
++
++ * Be robust in the presence of political changes. For example, names
++ of countries are ordinarily not used, to avoid incompatibilities
++ when countries change their name (e.g. Zaire->Congo) or when
++ locations change countries (e.g. Hong Kong from UK colony to
++ China).
++
++ * Be portable to a wide variety of implementations.
++
++ * Use a consistent naming conventions over the entire world.
++
++Names normally have the form AREA/LOCATION, where AREA is the name
++of a continent or ocean, and LOCATION is the name of a specific
++location within that region. North and South America share the same
++area, 'America'. Typical names are 'Africa/Cairo', 'America/New_York',
++and 'Pacific/Honolulu'.
++
++Here are the general rules used for choosing location names,
++in decreasing order of importance:
++
++ Use only valid POSIX file name components (i.e., the parts of
++ names other than '/'). Do not use the file name
++ components '.' and '..'. Within a file name component,
++ use only ASCII letters, '.', '-' and '_'. Do not use
++ digits, as that might create an ambiguity with POSIX
++ TZ strings. A file name component must not exceed 14
++ characters or start with '-'. E.g., prefer 'Brunei'
++ to 'Bandar_Seri_Begawan'. Exceptions: see the discussion
++ of legacy names below.
++ A name must not be empty, or contain '//', or start or end with '/'.
++ Do not use names that differ only in case. Although the reference
++ implementation is case-sensitive, some other implementations
++ are not, and they would mishandle names differing only in case.
++ If one name A is an initial prefix of another name AB (ignoring case),
++ then B must not start with '/', as a regular file cannot have
++ the same name as a directory in POSIX. For example,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++ Uninhabited regions like the North Pole and Bouvet Island
++ do not need locations, since local time is not defined there.
++ There should typically be at least one name for each ISO 3166-1
++ officially assigned two-letter code for an inhabited country
++ or territory.
++ If all the clocks in a region have agreed since 1970,
++ don't bother to include more than one location
++ even if subregions' clocks disagreed before 1970.
++ Otherwise these tables would become annoyingly large.
++ If a name is ambiguous, use a less ambiguous alternative;
++ e.g. many cities are named San José and Georgetown, so
++ prefer 'Costa_Rica' to 'San_Jose' and 'Guyana' to 'Georgetown'.
++ Keep locations compact. Use cities or small islands, not countries
++ or regions, so that any future time zone changes do not split
++ locations into different time zones. E.g. prefer 'Paris'
++ to 'France', since France has had multiple time zones.
++ Use mainstream English spelling, e.g. prefer 'Rome' to 'Roma', and
++ prefer 'Athens' to the Greek 'Αθήνα' or the Romanized 'Athína'.
++ The POSIX file name restrictions encourage this rule.
++ Use the most populous among locations in a zone,
++ e.g. prefer 'Shanghai' to 'Beijing'. Among locations with
++ similar populations, pick the best-known location,
++ e.g. prefer 'Rome' to 'Milan'.
++ Use the singular form, e.g. prefer 'Canary' to 'Canaries'.
++ Omit common suffixes like '_Islands' and '_City', unless that
++ would lead to ambiguity. E.g. prefer 'Cayman' to
++ 'Cayman_Islands' and 'Guatemala' to 'Guatemala_City',
++ but prefer 'Mexico_City' to 'Mexico' because the country
++ of Mexico has several time zones.
++ Use '_' to represent a space.
++ Omit '.' from abbreviations in names, e.g. prefer 'St_Helena'
++ to 'St._Helena'.
++ Do not change established names if they only marginally
++ violate the above rules. For example, don't change
++ the existing name 'Rome' to 'Milan' merely because
++ Milan's population has grown to be somewhat greater
++ than Rome's.
++ If a name is changed, put its old spelling in the 'backward' file.
++ This means old spellings will continue to work.
++
++The file 'zone1970.tab' lists geographical locations used to name time
++zone rules. It is intended to be an exhaustive list of names for
++geographic regions as described above; this is a subset of the names
++in the data. Although a 'zone1970.tab' location's longitude
++corresponds to its LMT offset with one hour for every 15 degrees east
++longitude, this relationship is not exact.
++
++Older versions of this package used a different naming scheme,
++and these older names are still supported.
++See the file 'backward' for most of these older names
++(e.g., 'US/Eastern' instead of 'America/New_York').
++The other old-fashioned names still supported are
++'WET', 'CET', 'MET', and 'EET' (see the file 'europe').
++
++Older versions of this package defined legacy names that are
++incompatible with the first rule of location names, but which are
++still supported. These legacy names are mostly defined in the file
++'etcetera'. Also, the file 'backward' defines the legacy names
++'GMT0', 'GMT-0', 'GMT+0' and 'Canada/East-Saskatchewan', and the file
++'northamerica' defines the legacy names 'EST5EDT', 'CST6CDT',
++'MST7MDT', and 'PST8PDT'.
++
++Excluding 'backward' should not affect the other data. If
++'backward' is excluded, excluding 'etcetera' should not affect the
++remaining data.
++
++
++----- Time zone abbreviations -----
++
++When this package is installed, it generates time zone abbreviations
++like 'EST' to be compatible with human tradition and POSIX.
++Here are the general rules used for choosing time zone abbreviations,
++in decreasing order of importance:
++
++ Use three or more characters that are ASCII alphanumerics or '+' or '-'.
++ Previous editions of this database also used characters like
++ ' ' and '?', but these characters have a special meaning to
++ the shell and cause commands like
++ set `date`
++ to have unexpected effects.
++ Previous editions of this rule required upper-case letters,
++ but the Congressman who introduced Chamorro Standard Time
++ preferred "ChST", so lower-case letters are now allowed.
++ Also, POSIX from 2001 on relaxed the rule to allow '-', '+',
++ and alphanumeric characters from the portable character set
++ in the current locale. In practice ASCII alphanumerics and
++ '+' and '-' are safe in all locales.
++
++ In other words, in the C locale the POSIX extended regular
++ expression [-+[:alnum:]]{3,} should match the abbreviation.
++ This guarantees that all abbreviations could have been
++ specified by a POSIX TZ string.
++
++ Use abbreviations that are in common use among English-speakers,
++ e.g. 'EST' for Eastern Standard Time in North America.
++ We assume that applications translate them to other languages
++ as part of the normal localization process; for example,
++ a French application might translate 'EST' to 'HNE'.
++
++ For zones whose times are taken from a city's longitude, use the
++ traditional xMT notation, e.g. 'PMT' for Paris Mean Time.
++ The only name like this in current use is 'GMT'.
++
++ Use 'LMT' for local mean time of locations before the introduction
++ of standard time; see "Scope of the tz database".
++
++ If there is no common English abbreviation, use numeric offsets like
++ -05 and +0830 that are generated by zic's %z notation.
++
++ [The remaining guidelines predate the introduction of %z.
++ They are problematic as they mean tz data entries invent
++ notation rather than record it. These guidelines are now
++ deprecated and the plan is to gradually move to %z for
++ inhabited locations and to "-00" for uninhabited locations.]
++
++ If there is no common English abbreviation, abbreviate the English
++ translation of the usual phrase used by native speakers.
++ If this is not available or is a phrase mentioning the country
++ (e.g. "Cape Verde Time"), then:
++
++ When a country is identified with a single or principal zone,
++ append 'T' to the country's ISO code, e.g. 'CVT' for
++ Cape Verde Time. For summer time append 'ST';
++ for double summer time append 'DST'; etc.
++ Otherwise, take the first three letters of an English place
++ name identifying each zone and append 'T', 'ST', etc.
++ as before; e.g. 'VLAST' for VLAdivostok Summer Time.
++
++ Use UT (with time zone abbreviation '-00') for locations while
++ uninhabited. The leading '-' is a flag that the time
++ zone is in some sense undefined; this notation is
++ derived from Internet RFC 3339.
++
++Application writers should note that these abbreviations are ambiguous
++in practice: e.g. 'CST' has a different meaning in China than
++it does in the United States. In new applications, it's often better
++to use numeric UT offsets like '-0600' instead of time zone
++abbreviations like 'CST'; this avoids the ambiguity.
++
++
++----- Accuracy of the tz database -----
++
++The tz database is not authoritative, and it surely has errors.
++Corrections are welcome and encouraged; see the file CONTRIBUTING.
++Users requiring authoritative data should consult national standards
++bodies and the references cited in the database's comments.
++
++Errors in the tz database arise from many sources:
++
++ * The tz database predicts future time stamps, and current predictions
++ will be incorrect after future governments change the rules.
++ For example, if today someone schedules a meeting for 13:00 next
++ October 1, Casablanca time, and tomorrow Morocco changes its
++ daylight saving rules, software can mess up after the rule change
++ if it blithely relies on conversions made before the change.
++
++ * The pre-1970 entries in this database cover only a tiny sliver of how
++ clocks actually behaved; the vast majority of the necessary
++ information was lost or never recorded. Thousands more zones would
++ be needed if the tz database's scope were extended to cover even
++ just the known or guessed history of standard time; for example,
++ the current single entry for France would need to split into dozens
++ of entries, perhaps hundreds. And in most of the world even this
++ approach would be misleading due to widespread disagreement or
++ indifference about what times should be observed. In her 2015 book
++ "The Global Transformation of Time, 1870-1950", Vanessa Ogle writes
++ "Outside of Europe and North America there was no system of time
++ zones at all, often not even a stable landscape of mean times,
++ prior to the middle decades of the twentieth century". See:
++ Timothy Shenk, Booked: A Global History of Time. Dissent 2015-12-17
++ https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanessa-ogle
++
++ * Most of the pre-1970 data entries come from unreliable sources, often
++ astrology books that lack citations and whose compilers evidently
++ invented entries when the true facts were unknown, without
++ reporting which entries were known and which were invented.
++ These books often contradict each other or give implausible entries,
++ and on the rare occasions when they are checked they are
++ typically found to be incorrect.
++
++ * For the UK the tz database relies on years of first-class work done by
++ Joseph Myers and others; see <http://www.polyomino.org.uk/british-time/>.
++ Other countries are not done nearly as well.
++
++ * Sometimes, different people in the same city would maintain clocks
++ that differed significantly. Railway time was used by railroad
++ companies (which did not always agree with each other),
++ church-clock time was used for birth certificates, etc.
++ Often this was merely common practice, but sometimes it was set by law.
++ For example, from 1891 to 1911 the UT offset in France was legally
++ 0:09:21 outside train stations and 0:04:21 inside.
++
++ * Although a named location in the tz database stands for the
++ containing region, its pre-1970 data entries are often accurate for
++ only a small subset of that region. For example, Europe/London
++ stands for the United Kingdom, but its pre-1847 times are valid
++ only for locations that have London's exact meridian, and its 1847
++ transition to GMT is known to be valid only for the L&NW and the
++ Caledonian railways.
++
++ * The tz database does not record the earliest time for which a zone's
++ data entries are thereafter valid for every location in the region.
++ For example, Europe/London is valid for all locations in its
++ region after GMT was made the standard time, but the date of
++ standardization (1880-08-02) is not in the tz database, other than
++ in commentary. For many zones the earliest time of validity is
++ unknown.
++
++ * The tz database does not record a region's boundaries, and in many
++ cases the boundaries are not known. For example, the zone
++ America/Kentucky/Louisville represents a region around the city of
++ Louisville, the boundaries of which are unclear.
++
++ * Changes that are modeled as instantaneous transitions in the tz
++ database were often spread out over hours, days, or even decades.
++
++ * Even if the time is specified by law, locations sometimes
++ deliberately flout the law.
++
++ * Early timekeeping practices, even assuming perfect clocks, were
++ often not specified to the accuracy that the tz database requires.
++
++ * Sometimes historical timekeeping was specified more precisely
++ than what the tz database can handle. For example, from 1909 to
++ 1937 Netherlands clocks were legally UT +00:19:32.13, but the tz
++ database cannot represent the fractional second.
++
++ * Even when all the timestamp transitions recorded by the tz database
++ are correct, the tz rules that generate them may not faithfully
++ reflect the historical rules. For example, from 1922 until World
++ War II the UK moved clocks forward the day following the third
++ Saturday in April unless that was Easter, in which case it moved
++ clocks forward the previous Sunday. Because the tz database has no
++ way to specify Easter, these exceptional years are entered as
++ separate tz Rule lines, even though the legal rules did not change.
++
++ * The tz database models pre-standard time using the proleptic Gregorian
++ calendar and local mean time (LMT), but many people used other
++ calendars and other timescales. For example, the Roman Empire used
++ the Julian calendar, and had 12 varying-length daytime hours with a
++ non-hour-based system at night.
++
++ * Early clocks were less reliable, and data entries do not represent
++ this unreliability.
++
++ * As for leap seconds, civil time was not based on atomic time before
++ 1972, and we don't know the history of earth's rotation accurately
++ enough to map SI seconds to historical solar time to more than
++ about one-hour accuracy. See: Morrison LV, Stephenson FR.
++ Historical values of the Earth's clock error Delta T and the
++ calculation of eclipses. J Hist Astron. 2004;35:327-36
++ <http://adsabs.harvard.edu/full/2004JHA....35..327M>;
++ Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
++ <http://adsabs.harvard.edu/full/2005JHA....36..339M>.
++
++ * The relationship between POSIX time (that is, UTC but ignoring leap
++ seconds) and UTC is not agreed upon after 1972. Although the POSIX
++ clock officially stops during an inserted leap second, at least one
++ proposed standard has it jumping back a second instead; and in
++ practice POSIX clocks more typically either progress glacially during
++ a leap second, or are slightly slowed while near a leap second.
++
++ * The tz database does not represent how uncertain its information is.
++ Ideally it would contain information about when data entries are
++ incomplete or dicey. Partial temporal knowledge is a field of
++ active research, though, and it's not clear how to apply it here.
++
++In short, many, perhaps most, of the tz database's pre-1970 and future
++time stamps are either wrong or misleading. Any attempt to pass the
++tz database off as the definition of time should be unacceptable to
++anybody who cares about the facts. In particular, the tz database's
++LMT offsets should not be considered meaningful, and should not prompt
++creation of zones merely because two locations differ in LMT or
++transitioned to standard time at different dates.
++
++
++----- Time and date functions -----
++
++The tz code contains time and date functions that are upwards
++compatible with those of POSIX.
++
++POSIX has the following properties and limitations.
++
++* In POSIX, time display in a process is controlled by the
++ environment variable TZ. Unfortunately, the POSIX TZ string takes
++ a form that is hard to describe and is error-prone in practice.
++ Also, POSIX TZ strings can't deal with other (for example, Israeli)
++ daylight saving time rules, or situations where more than two
++ time zone abbreviations are used in an area.
++
++ The POSIX TZ string takes the following form:
++
++ stdoffset[dst[offset][,date[/time],date[/time]]]
++
++ where:
++
++ std and dst
++ are 3 or more characters specifying the standard
++ and daylight saving time (DST) zone names.
++ Starting with POSIX.1-2001, std and dst may also be
++ in a quoted form like "<UTC+10>"; this allows
++ "+" and "-" in the names.
++ offset
++ is of the form '[+-]hh:[mm[:ss]]' and specifies the
++ offset west of UT. 'hh' may be a single digit; 0<=hh<=24.
++ The default DST offset is one hour ahead of standard time.
++ date[/time],date[/time]
++ specifies the beginning and end of DST. If this is absent,
++ the system supplies its own rules for DST, and these can
++ differ from year to year; typically US DST rules are used.
++ time
++ takes the form 'hh:[mm[:ss]]' and defaults to 02:00.
++ This is the same format as the offset, except that a
++ leading '+' or '-' is not allowed.
++ date
++ takes one of the following forms:
++ Jn (1<=n<=365)
++ origin-1 day number not counting February 29
++ n (0<=n<=365)
++ origin-0 day number counting February 29 if present
++ Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)
++ for the dth day of week n of month m of the year,
++ where week 1 is the first week in which day d appears,
++ and '5' stands for the last week in which day d appears
++ (which may be either the 4th or 5th week).
++ Typically, this is the only useful form;
++ the n and Jn forms are rarely used.
++
++ Here is an example POSIX TZ string, for US Pacific time using rules
++ appropriate from 1987 through 2006:
++
++ TZ='PST8PDT,M4.1.0/02:00,M10.5.0/02:00'
++
++ This POSIX TZ string is hard to remember, and mishandles time stamps
++ before 1987 and after 2006. With this package you can use this
++ instead:
++
++ TZ='America/Los_Angeles'
++
++* POSIX does not define the exact meaning of TZ values like "EST5EDT".
++ Typically the current US DST rules are used to interpret such values,
++ but this means that the US DST rules are compiled into each program
++ that does time conversion. This means that when US time conversion
++ rules change (as in the United States in 1987), all programs that
++ do time conversion must be recompiled to ensure proper results.
++
++* The TZ environment variable is process-global, which makes it hard
++ to write efficient, thread-safe applications that need access
++ to multiple time zones.
++
++* In POSIX, there's no tamper-proof way for a process to learn the
++ system's best idea of local wall clock. (This is important for
++ applications that an administrator wants used only at certain times -
++ without regard to whether the user has fiddled the "TZ" environment
++ variable. While an administrator can "do everything in UTC" to get
++ around the problem, doing so is inconvenient and precludes handling
++ daylight saving time shifts - as might be required to limit phone
++ calls to off-peak hours.)
++
++* POSIX provides no convenient and efficient way to determine the UT
++ offset and time zone abbreviation of arbitrary time stamps,
++ particularly for time zone settings that do not fit into the
++ POSIX model.
++
++* POSIX requires that systems ignore leap seconds.
++
++* The tz code attempts to support all the time_t implementations
++ allowed by POSIX. The time_t type represents a nonnegative count of
++ seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds.
++ In practice, time_t is usually a signed 64- or 32-bit integer; 32-bit
++ signed time_t values stop working after 2038-01-19 03:14:07 UTC, so
++ new implementations these days typically use a signed 64-bit integer.
++ Unsigned 32-bit integers are used on one or two platforms,
++ and 36-bit and 40-bit integers are also used occasionally.
++ Although earlier POSIX versions allowed time_t to be a
++ floating-point type, this was not supported by any practical
++ systems, and POSIX.1-2013 and the tz code both require time_t
++ to be an integer type.
++
++These are the extensions that have been made to the POSIX functions:
++
++* The "TZ" environment variable is used in generating the name of a file
++ from which time zone information is read (or is interpreted a la
++ POSIX); "TZ" is no longer constrained to be a three-letter time zone
++ name followed by a number of hours and an optional three-letter
++ daylight time zone name. The daylight saving time rules to be used
++ for a particular time zone are encoded in the time zone file;
++ the format of the file allows U.S., Australian, and other rules to be
++ encoded, and allows for situations where more than two time zone
++ abbreviations are used.
++
++ It was recognized that allowing the "TZ" environment variable to
++ take on values such as "America/New_York" might cause "old" programs
++ (that expect "TZ" to have a certain form) to operate incorrectly;
++ consideration was given to using some other environment variable
++ (for example, "TIMEZONE") to hold the string used to generate the
++ time zone information file name. In the end, however, it was decided
++ to continue using "TZ": it is widely used for time zone purposes;
++ separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;
++ and systems where "new" forms of "TZ" might cause problems can simply
++ use TZ values such as "EST5EDT" which can be used both by
++ "new" programs (a la POSIX) and "old" programs (as zone names and
++ offsets).
++
++* The code supports platforms with a UT offset member in struct tm,
++ e.g., tm_gmtoff.
++
++* The code supports platforms with a time zone abbreviation member in
++ struct tm, e.g., tm_zone.
++
++* Since the "TZ" environment variable can now be used to control time
++ conversion, the "daylight" and "timezone" variables are no longer
++ needed. (These variables are defined and set by "tzset"; however, their
++ values will not be used by "localtime.")
++
++* Functions tzalloc, tzfree, localtime_rz, and mktime_z for
++ more-efficient thread-safe applications that need to use
++ multiple time zones. The tzalloc and tzfree functions
++ allocate and free objects of type timezone_t, and localtime_rz
++ and mktime_z are like localtime_r and mktime with an extra
++ timezone_t argument. The functions were inspired by NetBSD.
++
++* A function "tzsetwall" has been added to arrange for the system's
++ best approximation to local wall clock time to be delivered by
++ subsequent calls to "localtime." Source code for portable
++ applications that "must" run on local wall clock time should call
++ "tzsetwall();" if such code is moved to "old" systems that don't
++ provide tzsetwall, you won't be able to generate an executable program.
++ (These time zone functions also arrange for local wall clock time to be
++ used if tzset is called - directly or indirectly - and there's no "TZ"
++ environment variable; portable applications should not, however, rely
++ on this behavior since it's not the way SVR2 systems behave.)
++
++* Negative time_t values are supported, on systems where time_t is signed.
++
++* These functions can account for leap seconds, thanks to Bradley White.
++
++Points of interest to folks with other systems:
++
++* Code compatible with this package is already part of many platforms,
++ including GNU/Linux, Android, the BSDs, Chromium OS, Cygwin, AIX, iOS,
++ BlackBery 10, macOS, Microsoft Windows, OpenVMS, and Solaris.
++ On such hosts, the primary use of this package
++ is to update obsolete time zone rule tables.
++ To do this, you may need to compile the time zone compiler
++ 'zic' supplied with this package instead of using the system 'zic',
++ since the format of zic's input is occasionally extended,
++ and a platform may still be shipping an older zic.
++
++* The UNIX Version 7 "timezone" function is not present in this package;
++ it's impossible to reliably map timezone's arguments (a "minutes west
++ of GMT" value and a "daylight saving time in effect" flag) to a
++ time zone abbreviation, and we refuse to guess.
++ Programs that in the past used the timezone function may now examine
++ tzname[localtime(&clock)->tm_isdst] to learn the correct time
++ zone abbreviation to use. Alternatively, use
++ localtime(&clock)->tm_zone if this has been enabled.
++
++* The 4.2BSD gettimeofday function is not used in this package.
++ This formerly let users obtain the current UTC offset and DST flag,
++ but this functionality was removed in later versions of BSD.
++
++* In SVR2, time conversion fails for near-minimum or near-maximum
++ time_t values when doing conversions for places that don't use UT.
++ This package takes care to do these conversions correctly.
++ A comment in the source code tells how to get compatibly wrong
++ results.
++
++The functions that are conditionally compiled if STD_INSPIRED is defined
++should, at this point, be looked on primarily as food for thought. They are
++not in any sense "standard compatible" - some are not, in fact, specified in
++*any* standard. They do, however, represent responses of various authors to
++standardization proposals.
++
++Other time conversion proposals, in particular the one developed by folks at
++Hewlett Packard, offer a wider selection of functions that provide capabilities
++beyond those provided here. The absence of such functions from this package
++is not meant to discourage the development, standardization, or use of such
++functions. Rather, their absence reflects the decision to make this package
++contain valid extensions to POSIX, to ensure its broad acceptability. If
++more powerful time conversion functions can be standardized, so much the
++better.
++
++
++----- Interface stability -----
++
++The tz code and data supply the following interfaces:
++
++ * A set of zone names as per "Names of time zone rules" above.
++
++ * Library functions described in "Time and date functions" above.
++
++ * The programs tzselect, zdump, and zic, documented in their man pages.
++
++ * The format of zic input files, documented in the zic man page.
++
++ * The format of zic output files, documented in the tzfile man page.
++
++ * The format of zone table files, documented in zone1970.tab.
++
++ * The format of the country code file, documented in iso3166.tab.
++
++When these interfaces are changed, an effort is made to preserve
++backward compatibility. For example, tz data files typically do not
++rely on recently-added zic features, so that users can run older zic
++versions to process newer data files.
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for time
++stamps, as data entries are often based on guesswork and these guesses
++may be corrected or improved.
++
++
++----- Calendrical issues -----
++
++Calendrical issues are a bit out of scope for a time zone database,
++but they indicate the sort of problems that we would run into if we
++extended the time zone database further into the past. An excellent
++resource in this area is Nachum Dershowitz and Edward M. Reingold,
++Calendrical Calculations: Third Edition, Cambridge University Press (2008)
++<http://emr.cs.iit.edu/home/reingold/calendar-book/third-edition/>.
++Other information and sources are given below. They sometimes disagree.
++
++
++France
++
++Gregorian calendar adopted 1582-12-20.
++French Revolutionary calendar used 1793-11-24 through 1805-12-31,
++and (in Paris only) 1871-05-06 through 1871-05-23.
++
++
++Russia
++
++From Chris Carrier (1996-12-02):
++On 1929-10-01 the Soviet Union instituted an "Eternal Calendar"
++with 30-day months plus 5 holidays, with a 5-day week.
++On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the
++Gregorian calendar while retaining the 6-day week; on 1940-06-27 it
++reverted to the 7-day week. With the 6-day week the usual days
++off were the 6th, 12th, 18th, 24th and 30th of the month.
++(Source: Evitiar Zerubavel, _The Seven Day Circle_)
++
++
++Mark Brader reported a similar story in "The Book of Calendars", edited
++by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
++
++From: Petteri Sulonen (via Usenet)
++Date: 14 Jan 1999 00:00:00 GMT
++...
++
++If your source is correct, how come documents between 1929 and 1940 were
++still dated using the conventional, Gregorian calendar?
++
++I can post a scan of a document dated December 1, 1934, signed by
++Yenukidze, the secretary, on behalf of Kalinin, the President of the
++Executive Committee of the Supreme Soviet, if you like.
++
++
++
++Sweden (and Finland)
++
++From: Mark Brader
++Subject: Re: Gregorian reform - a part of locale?
++<news:1996Jul6.012937.29190@sq.com>
++Date: 1996-07-06
++
++In 1700, Denmark made the transition from Julian to Gregorian. Sweden
++decided to *start* a transition in 1700 as well, but rather than have one of
++those unsightly calendar gaps :-), they simply decreed that the next leap
++year after 1696 would be in 1744 - putting the whole country on a calendar
++different from both Julian and Gregorian for a period of 40 years.
++
++However, in 1704 something went wrong and the plan was not carried through;
++they did, after all, have a leap year that year. And one in 1708. In 1712
++they gave it up and went back to Julian, putting 30 days in February that
++year!...
++
++Then in 1753, Sweden made the transition to Gregorian in the usual manner,
++getting there only 13 years behind the original schedule.
++
++(A previous posting of this story was challenged, and Swedish readers
++produced the following references to support it: "Tideräkning och historia"
++by Natanael Beckman (1924) and "Tid, en bok om tideräkning och
++kalenderväsen" by Lars-Olof Lodén (1968).
++
++
++Grotefend's data
++
++From: "Michael Palmer" [with one obvious typo fixed]
++Subject: Re: Gregorian Calendar (was Re: Another FHC related question
++Newsgroups: soc.genealogy.german
++Date: Tue, 9 Feb 1999 02:32:48 -800
++...
++
++The following is a(n incomplete) listing, arranged chronologically, of
++European states, with the date they converted from the Julian to the
++Gregorian calendar:
++
++04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman
++ Catholics and Danzig only)
++09/20 Dec 1582 - France, Lorraine
++
++21 Dec 1582/
++ 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau
++10/21 Feb 1583 - bishopric of Liege (Lüttich)
++13/24 Feb 1583 - bishopric of Augsburg
++04/15 Oct 1583 - electorate of Trier
++05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,
++ Salzburg, Brixen
++13/24 Oct 1583 - Austrian Oberelsaß and Breisgau
++20/31 Oct 1583 - bishopric of Basel
++02/13 Nov 1583 - duchy of Jülich-Berg
++02/13 Nov 1583 - electorate and city of Köln
++04/15 Nov 1583 - bishopric of Würzburg
++11/22 Nov 1583 - electorate of Mainz
++16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden
++17/28 Nov 1583 - bishopric of Münster and duchy of Cleve
++14/25 Dec 1583 - Steiermark
++
++06/17 Jan 1584 - Austria and Bohemia
++11/22 Jan 1584 - Lucerne, Uri, Schwyz, Zug, Freiburg, Solothurn
++12/23 Jan 1584 - Silesia and the Lausitz
++22 Jan/
++ 02 Feb 1584 - Hungary (legally on 21 Oct 1587)
++ Jun 1584 - Unterwalden
++01/12 Jul 1584 - duchy of Westfalen
++
++16/27 Jun 1585 - bishopric of Paderborn
++
++14/25 Dec 1590 - Transylvania
++
++22 Aug/
++ 02 Sep 1612 - duchy of Prussia
++
++13/24 Dec 1614 - Pfalz-Neuburg
++
++ 1617 - duchy of Kurland (reverted to the Julian calendar in
++ 1796)
++
++ 1624 - bishopric of Osnabrück
++
++ 1630 - bishopric of Minden
++
++15/26 Mar 1631 - bishopric of Hildesheim
++
++ 1655 - Kanton Wallis
++
++05/16 Feb 1682 - city of Strassburg
++
++18 Feb/
++ 01 Mar 1700 - Protestant Germany (including Swedish possessions in
++ Germany), Denmark, Norway
++30 Jun/
++ 12 Jul 1700 - Gelderland, Zutphen
++10 Nov/
++ 12 Dec 1700 - Utrecht, Overijssel
++
++31 Dec 1700/
++ 12 Jan 1701 - Friesland, Groningen, Zürich, Bern, Basel, Geneva,
++ Turgau, and Schaffhausen
++
++ 1724 - Glarus, Appenzell, and the city of St. Gallen
++
++01 Jan 1750 - Pisa and Florence
++
++02/14 Sep 1752 - Great Britain
++
++17 Feb/
++ 01 Mar 1753 - Sweden
++
++1760-1812 - Graubünden
++
++The Russian empire (including Finland and the Baltic states) did not
++convert to the Gregorian calendar until the Soviet revolution of 1917.
++
++Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen
++Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend
++(Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.
++
++
++----- Time and time zones on Mars -----
++
++Some people's work schedules use Mars time. Jet Propulsion Laboratory
++(JPL) coordinators have kept Mars time on and off at least since 1997
++for the Mars Pathfinder mission. Some of their family members have
++also adapted to Mars time. Dozens of special Mars watches were built
++for JPL workers who kept Mars time during the Mars Exploration
++Rovers mission (2004). These timepieces look like normal Seikos and
++Citizens but use Mars seconds rather than terrestrial seconds.
++
++A Mars solar day is called a "sol" and has a mean period equal to
++about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is
++divided into a conventional 24-hour clock, so each Mars second equals
++about 1.02749125 terrestrial seconds.
++
++The prime meridian of Mars goes through the center of the crater
++Airy-0, named in honor of the British astronomer who built the
++Greenwich telescope that defines Earth's prime meridian. Mean solar
++time on the Mars prime meridian is called Mars Coordinated Time (MTC).
++
++Each landed mission on Mars has adopted a different reference for
++solar time keeping, so there is no real standard for Mars time zones.
++For example, the Mars Exploration Rover project (2004) defined two
++time zones "Local Solar Time A" and "Local Solar Time B" for its two
++missions, each zone designed so that its time equals local true solar
++time at approximately the middle of the nominal mission. Such a "time
++zone" is not particularly suited for any application other than the
++mission itself.
++
++Many calendars have been proposed for Mars, but none have achieved
++wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a
++sequential count of Mars solar days elapsed since about 1873-12-29
++12:00 GMT.
++
++The tz database does not currently support Mars time, but it is
++documented here in the hopes that support will be added eventually.
++
++Sources:
++
++Michael Allison and Robert Schmunk,
++"Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
++<http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2012-08-08).
++
++Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
++<http://articles.latimes.com/2004/jan/14/science/sci-marstime14>
++(2004-01-14), pp A1, A20-A21.
++
++Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
++<http://www.theatlantic.com/technology/archive/2015/02/jet-lag-is-worse-on-mars/386033/>
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson.
++
++-----
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/africa.orig
++++ contrib/tzdata/africa
+@@ -1,32 +1,32 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-02-21):
++# From Paul Eggert (2014-10-31):
+ #
+-# A good source for time zone historical data outside the U.S. is
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -64,7 +64,6 @@
+ # 3:00 CAST Central Africa Summer Time (no longer used)
+ # 3:00 SAST South Africa Summer Time (no longer used)
+ # 3:00 EAT East Africa Time
+-# 4:00 EAST East Africa Summer Time (no longer used)
+
+ # Algeria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -93,9 +92,9 @@
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+ # more precise 0:09:21.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+- 0:00 Algeria WE%sT 1940 Feb 25 2:00
++Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:00 Algeria WE%sT 1940 Feb 25 2:00
+ 1:00 Algeria CE%sT 1946 Oct 7
+ 0:00 - WET 1956 Jan 29
+ 1:00 - CET 1963 Apr 14
+@@ -105,82 +104,55 @@
+ 1:00 - CET
+
+ # Angola
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Luanda 0:52:56 - LMT 1892
+- 0:52:04 - AOT 1911 May 26 # Angola Time
+- 1:00 - WAT
+-
+ # Benin
+-# Whitman says they switched to 1:00 in 1946, not 1934;
+-# go with Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Porto-Novo 0:10:28 - LMT 1912
+- 0:00 - GMT 1934 Feb 26
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Botswana
+-# From Paul Eggert (2013-02-21):
+-# Milne says they were regulated by the Cape Town Signal in 1899;
+-# assume they switched to 2:00 when Cape Town did.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Gaborone 1:43:40 - LMT 1885
+- 1:30 - SAST 1903 Mar
+- 2:00 - CAT 1943 Sep 19 2:00
+- 2:00 1:00 CAST 1944 Mar 19 2:00
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Burkina Faso
+ # See Africa/Abidjan.
+
+ # Burundi
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bujumbura 1:57:28 - LMT 1890
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Cameroon
+-# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Douala 0:38:48 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Cape Verde
++#
++# Shanks gives 1907 for the transition to CVT.
++# Perhaps the 1911-05-26 Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# merely made it official?
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
++Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
+ -2:00 - CVT 1942 Sep
+ -2:00 1:00 CVST 1945 Oct 15
+- -2:00 - CVT 1975 Nov 25 2:00
++ -2:00 - CVT 1975 Nov 25 2:00
+ -1:00 - CVT
+
+ # Central African Republic
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bangui 1:14:20 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Chad
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena
++Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena
+ 1:00 - WAT 1979 Oct 14
+ 1:00 1:00 WAST 1980 Mar 8
+ 1:00 - WAT
+
+ # Comoros
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+-# Democratic Republic of Congo
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
+- 1:00 - WAT
+-Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
+- 2:00 - CAT
++# Democratic Republic of the Congo
++# See Africa/Lagos for the western part and Africa/Maputo for the eastern.
+
+ # Republic of the Congo
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Brazzaville 1:01:08 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+-# Côte D'Ivoire / Ivory Coast
++# Côte d'Ivoire / Ivory Coast
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Abidjan -0:16:08 - LMT 1912
+ 0:00 - GMT
+@@ -196,9 +168,7 @@
+ Link Africa/Abidjan Atlantic/St_Helena # St Helena
+
+ # Djibouti
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ ###############################################################################
+
+@@ -327,7 +297,7 @@
+ # Egypt is to change back to Daylight system on May 15
+ # http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx
+
+-# From Gunther Vermier (2015-05-13):
++# From Gunther Vermier (2014-05-13):
+ # our Egypt office confirms that the change will be at 15 May "midnight" (24:00)
+
+ # From Imed Chihi (2014-06-04):
+@@ -349,35 +319,36 @@
+ # above) says DST had no affect on electricity consumption. There is
+ # no information about when DST will end this fall. See:
+ # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833
+-#
+-# For now, guess that later spring and fall transitions will use
+-# 2010's rules, and guess that Egypt will switch to standard time at
+-# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the
+-# first Friday after Ramadan. To implement this,
+-# transition dates for 2015 through 2037 were determined by running
+-# the following program under GNU Emacs 24.3, with the results integrated
+-# by hand into the table below. Ramadan again intrudes on the guessed
+-# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff.
+-# (let ((islamic-year 1436))
+-# (while (< islamic-year 1460)
+-# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
+-# (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
+-# (friday 5))
+-# (while (/= friday (mod a 7))
+-# (setq a (1- a)))
+-# (while (/= friday (mod b 7))
+-# (setq b (1+ b)))
+-# (setq a (1- a))
+-# (setq b (1- b))
+-# (setq a (calendar-gregorian-from-absolute a))
+-# (setq b (calendar-gregorian-from-absolute b))
+-# (insert
+-# (format
+-# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n"
+-# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n")
+-# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
+-# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
+-# (setq islamic-year (+ 1 islamic-year))))
++
++# From Steffen Thorsen (2015-04-08):
++# Egypt will start DST on midnight after Thursday, April 30, 2015.
++# This is based on a law (no 35) from May 15, 2014 saying it starts the last
++# Thursday of April.... Clocks will still be turned back for Ramadan, but
++# dates not yet announced....
++# http://almogaz.com/news/weird-news/2015/04/05/1947105 ...
++# http://www.timeanddate.com/news/time/egypt-starts-dst-2015.html
++
++# From Ahmed Nazmy (2015-04-20):
++# Egypt's ministers cabinet just announced ... that it will cancel DST at
++# least for 2015.
++#
++# From Tim Parenti (2015-04-20):
++# http://english.ahram.org.eg/WriterArticles/NewsContentP/1/128195/Egypt/No-daylight-saving-this-summer-Egypts-prime-minist.aspx
++# "Egypt's cabinet agreed on Monday not to switch clocks for daylight saving
++# time this summer, and carry out studies on the possibility of canceling the
++# practice altogether in future years."
++#
++# From Paul Eggert (2015-04-24):
++# Yesterday the office of Egyptian President El-Sisi announced his
++# decision to abandon DST permanently. See Ahram Online 2015-04-24.
++# http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx
++
++# From Steffen Thorsen (2016-04-29):
++# Egypt will have DST from July 7 until the end of October....
++# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx
++# From Mina Samuel (2016-07-04):
++# Egyptian government took the decision to cancel the DST,
++
+ Rule Egypt 2008 only - Aug lastThu 24:00 0 -
+ Rule Egypt 2009 only - Aug 20 24:00 0 -
+ Rule Egypt 2010 only - Aug 10 24:00 0 -
+@@ -386,59 +357,21 @@
+ Rule Egypt 2014 only - May 15 24:00 1:00 S
+ Rule Egypt 2014 only - Jun 26 24:00 0 -
+ Rule Egypt 2014 only - Jul 31 24:00 1:00 S
+-Rule Egypt 2014 max - Sep lastThu 24:00 0 -
+-Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S
+-Rule Egypt 2015 only - Jun 11 24:00 0 -
+-Rule Egypt 2015 only - Jul 23 24:00 1:00 S
+-Rule Egypt 2016 only - Jun 2 24:00 0 -
+-Rule Egypt 2016 only - Jul 7 24:00 1:00 S
+-Rule Egypt 2017 only - May 25 24:00 0 -
+-Rule Egypt 2017 only - Jun 29 24:00 1:00 S
+-Rule Egypt 2018 only - May 10 24:00 0 -
+-Rule Egypt 2018 only - Jun 14 24:00 1:00 S
+-Rule Egypt 2019 only - May 2 24:00 0 -
+-Rule Egypt 2019 only - Jun 6 24:00 1:00 S
+-Rule Egypt 2020 only - May 28 24:00 1:00 S
+-Rule Egypt 2021 only - May 13 24:00 1:00 S
+-Rule Egypt 2022 only - May 5 24:00 1:00 S
+-Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S
++Rule Egypt 2014 only - Sep lastThu 24:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Cairo 2:05:09 - LMT 1900 Oct
+ 2:00 Egypt EE%sT
+
+ # Equatorial Guinea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Malabo 0:35:08 - LMT 1912
+- 0:00 - GMT 1963 Dec 15
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Eritrea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Asmara 2:35:32 - LMT 1870
+- 2:35:32 - AMT 1890 # Asmara Mean Time
+- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+- 3:00 - EAT
+-
+ # Ethiopia
+-# From Paul Eggert (2014-07-31):
+-# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
+-# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
+-# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
+-#
+-# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
+-# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
+-# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
+-# was for Adis Dera. Quite likely the Shanks data are wrong anyway.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
+- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Gabon
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Libreville 0:37:48 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Gambia
+ # See Africa/Abidjan.
+@@ -461,8 +394,14 @@
+ # See Africa/Abidjan.
+
+ # Guinea-Bissau
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bissau -1:02:20 - LMT 1911 May 26
++Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1
+ -1:00 - WAT 1975
+ 0:00 - GMT
+
+@@ -473,13 +412,18 @@
+ 2:30 - BEAT 1940
+ 2:45 - BEAUT 1960
+ 3:00 - EAT
++Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
++Link Africa/Nairobi Africa/Asmara # Eritrea
++Link Africa/Nairobi Africa/Dar_es_Salaam # Tanzania
++Link Africa/Nairobi Africa/Djibouti
++Link Africa/Nairobi Africa/Kampala # Uganda
++Link Africa/Nairobi Africa/Mogadishu # Somalia
++Link Africa/Nairobi Indian/Antananarivo # Madagascar
++Link Africa/Nairobi Indian/Comoro
++Link Africa/Nairobi Indian/Mayotte
+
+ # Lesotho
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
+- 2:00 - SAST 1943 Sep 19 2:00
+- 2:00 1:00 SAST 1944 Mar 19 2:00
+- 2:00 - SAST
++# See Africa/Johannesburg.
+
+ # Liberia
+ # From Paul Eggert (2006-03-22):
+@@ -520,7 +464,7 @@
+ # http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
+ #
+ # From Paul Eggert (2013-10-25):
+-# For now, assume they're reverting to the pre-2012 rules of permanent UTC+2.
++# For now, assume they're reverting to the pre-2012 rules of permanent UT +02.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Libya 1951 only - Oct 14 2:00 1:00 S
+@@ -546,24 +490,18 @@
+ 2:00 - EET 1982
+ 1:00 Libya CE%sT 1990 May 4
+ # The 1996 and 1997 entries are from Shanks & Pottenger;
+-# the IATA SSIM data contain some obvious errors.
++# the IATA SSIM data entries contain some obvious errors.
+ 2:00 - EET 1996 Sep 30
+ 1:00 Libya CE%sT 1997 Oct 4
+- 2:00 - EET 2012 Nov 10 2:00
+- 1:00 Libya CE%sT 2013 Oct 25 2:00
++ 2:00 - EET 2012 Nov 10 2:00
++ 1:00 Libya CE%sT 2013 Oct 25 2:00
+ 2:00 - EET
+
+ # Madagascar
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
+- 3:00 - EAT 1954 Feb 27 23:00s
+- 3:00 1:00 EAST 1954 May 29 23:00s
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Malawi
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Mali
+ # Mauritania
+@@ -606,7 +544,7 @@
+
+ # From Alex Krivenyshev (2008-07-11):
+ # Seems that English language article "The revival of daylight saving
+-# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally
++# time: Energy conservation?"- No. 16578 (07/11/2008) was originally
+ # published on Monday, June 30, 2008...
+ #
+ # I guess that article in French "Le gouvernement avance l'introduction
+@@ -657,15 +595,13 @@
+ Rule Mauritius 2008 only - Oct lastSun 2:00 1:00 S
+ Rule Mauritius 2009 only - Mar lastSun 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
++Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
+ 4:00 Mauritius MU%sT # Mauritius Time
+ # Agalega Is, Rodriguez
+ # no information; probably like Indian/Mauritius
+
+ # Mayotte
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Morocco
+ # See the 'europe' file for Spanish Morocco (Africa/Ceuta).
+@@ -682,7 +618,8 @@
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+-# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
++# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe
++# Presse:
+ # http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
+ #
+ # Morocco shifts to daylight time on June 1st through September 27, Govt.
+@@ -739,7 +676,7 @@
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+ # Ministère de la Modernisation des Secteurs Publics
+ #
+-# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
++# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 June 1967)
+ # concerning the amendment of the legal time, the Ministry of Modernization of
+ # Public Sectors announced that the official time in the Kingdom will be
+ # advanced 60 minutes from Sunday 31 May 2009 at midnight.
+@@ -760,8 +697,8 @@
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+-# The 3rd april 2011 at 00:00:00, [it] will be 3rd april 1:00:00
+-# The 31th july 2011 at 00:59:59, [it] will be 31th July 00:00:00
++# The 3rd April 2011 at 00:00:00, [it] will be 3rd April 01:00:00
++# The 31st July 2011 at 00:59:59, [it] will be 31st July 00:00:00
+ # ...Official links of change in morocco
+ # The change was broadcast on the FM Radio
+ # I ve called ANRT (telecom regulations in Morocco) at
+@@ -831,7 +768,7 @@
+ # announced a bit in advance. On 2012-07-11 the Moroccan government
+ # announced that year's Ramadan daylight-saving transitions would be
+ # 2012-07-20 and 2012-08-20; see
+-# <http://www.mmsp.gov.ma/fr/actualites.aspx?id=288>.
++# http://www.mmsp.gov.ma/fr/actualites.aspx?id=288
+
+ # From Andrew Paprocki (2013-07-02):
+ # Morocco announced that the year's Ramadan daylight-savings
+@@ -857,20 +794,41 @@
+ # will resume again at 02:00 on Saturday, August 2, 2014....
+ # http://www.mmsp.gov.ma/fr/actualites.aspx?id=586
+
+-# From Paul Eggert (2014-06-05):
+-# For now, guess that later spring and fall transitions will use 2014's rules,
++# From Milamber (2015-06-08):
++# (Google Translation) The hour will thus be delayed 60 minutes
++# Sunday, June 14 at 3:00, the ministry said in a statement, adding
++# that the time will be advanced again 60 minutes Sunday, July 19,
++# 2015 at 2:00. The move comes under 2.12.126 Decree of 26 Jumada I
++# 1433 (18 April 2012) and the decision of the Head of Government of
++# 16 N. 3-29-15 Chaaban 1435 (4 June 2015).
++# Source (french):
++# http://lnt.ma/le-maroc-reculera-dune-heure-le-dimanche-14-juin/
++#
++# From Milamber (2015-06-09):
++# http://www.mmsp.gov.ma/fr/actualites.aspx?id=863
++#
++# From Michael Deckers (2015-06-09):
++# [The gov.ma announcement] would (probably) make the switch on 2015-07-19 go
++# from 03:00 to 04:00 rather than from 02:00 to 03:00, as in the patch....
++# I think the patch is correct and the quoted text is wrong; the text in
++# <http://lnt.ma/le-maroc-reculera-dune-heure-le-dimanche-14-juin/> agrees
++# with the patch.
++
++# From Paul Eggert (2015-06-08):
++# For now, guess that later spring and fall transitions will use 2015's rules,
+ # and guess that Morocco will switch to standard time at 03:00 the last
+-# Saturday before Ramadan, and back to DST at 02:00 the first Saturday after
+-# Ramadan. To implement this, transition dates for 2015 through 2037 were
++# Sunday before Ramadan, and back to DST at 02:00 the first Sunday after
++# Ramadan. To implement this, transition dates for 2016 through 2037 were
+ # determined by running the following program under GNU Emacs 24.3, with the
+ # results integrated by hand into the table below.
+-# (let ((islamic-year 1436))
++# (let ((islamic-year 1437))
++# (require 'cal-islam)
+ # (while (< islamic-year 1460)
+ # (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
+ # (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
+-# (saturday 6))
+-# (while (/= saturday (mod (setq a (1- a)) 7)))
+-# (while (/= saturday (mod b 7))
++# (sunday 0))
++# (while (/= sunday (mod (setq a (1- a)) 7)))
++# (while (/= sunday (mod b 7))
+ # (setq b (1+ b)))
+ # (setq a (calendar-gregorian-from-absolute a))
+ # (setq b (calendar-gregorian-from-absolute b))
+@@ -906,40 +864,38 @@
+ Rule Morocco 2010 only - May 2 0:00 1:00 S
+ Rule Morocco 2010 only - Aug 8 0:00 0 -
+ Rule Morocco 2011 only - Apr 3 0:00 1:00 S
+-Rule Morocco 2011 only - Jul 31 0 0 -
++Rule Morocco 2011 only - Jul 31 0:00 0 -
+ Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S
+-Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2012 only - Jul 20 3:00 0 -
+ Rule Morocco 2012 only - Aug 20 2:00 1:00 S
++Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2013 only - Jul 7 3:00 0 -
+ Rule Morocco 2013 only - Aug 10 2:00 1:00 S
+ Rule Morocco 2013 max - Oct lastSun 3:00 0 -
+-Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S
++Rule Morocco 2014 2021 - Mar lastSun 2:00 1:00 S
+ Rule Morocco 2014 only - Jun 28 3:00 0 -
+ Rule Morocco 2014 only - Aug 2 2:00 1:00 S
+-Rule Morocco 2015 only - Jun 13 3:00 0 -
+-Rule Morocco 2015 only - Jul 18 2:00 1:00 S
+-Rule Morocco 2016 only - Jun 4 3:00 0 -
+-Rule Morocco 2016 only - Jul 9 2:00 1:00 S
+-Rule Morocco 2017 only - May 20 3:00 0 -
+-Rule Morocco 2017 only - Jul 1 2:00 1:00 S
+-Rule Morocco 2018 only - May 12 3:00 0 -
+-Rule Morocco 2018 only - Jun 16 2:00 1:00 S
+-Rule Morocco 2019 only - May 4 3:00 0 -
+-Rule Morocco 2019 only - Jun 8 2:00 1:00 S
+-Rule Morocco 2020 only - Apr 18 3:00 0 -
+-Rule Morocco 2020 only - May 30 2:00 1:00 S
+-Rule Morocco 2021 only - Apr 10 3:00 0 -
+-Rule Morocco 2021 only - May 15 2:00 1:00 S
+-Rule Morocco 2022 only - Apr 2 3:00 0 -
+-Rule Morocco 2022 only - May 7 2:00 1:00 S
+-Rule Morocco 2023 only - Apr 22 2:00 1:00 S
+-Rule Morocco 2024 only - Apr 13 2:00 1:00 S
+-Rule Morocco 2025 only - Apr 5 2:00 1:00 S
++Rule Morocco 2015 only - Jun 14 3:00 0 -
++Rule Morocco 2015 only - Jul 19 2:00 1:00 S
++Rule Morocco 2016 only - Jun 5 3:00 0 -
++Rule Morocco 2016 only - Jul 10 2:00 1:00 S
++Rule Morocco 2017 only - May 21 3:00 0 -
++Rule Morocco 2017 only - Jul 2 2:00 1:00 S
++Rule Morocco 2018 only - May 13 3:00 0 -
++Rule Morocco 2018 only - Jun 17 2:00 1:00 S
++Rule Morocco 2019 only - May 5 3:00 0 -
++Rule Morocco 2019 only - Jun 9 2:00 1:00 S
++Rule Morocco 2020 only - Apr 19 3:00 0 -
++Rule Morocco 2020 only - May 24 2:00 1:00 S
++Rule Morocco 2021 only - Apr 11 3:00 0 -
++Rule Morocco 2021 only - May 16 2:00 1:00 S
++Rule Morocco 2022 only - May 8 2:00 1:00 S
++Rule Morocco 2023 only - Apr 23 2:00 1:00 S
++Rule Morocco 2024 only - Apr 14 2:00 1:00 S
++Rule Morocco 2025 only - Apr 6 2:00 1:00 S
+ Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S
+-Rule Morocco 2035 only - Oct 27 3:00 0 -
+-Rule Morocco 2036 only - Oct 18 3:00 0 -
+-Rule Morocco 2037 only - Oct 10 3:00 0 -
++Rule Morocco 2036 only - Oct 19 3:00 0 -
++Rule Morocco 2037 only - Oct 4 3:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
+@@ -963,16 +919,29 @@
+ 0:00 Morocco WE%sT
+
+ # Mozambique
++#
++# Shanks gives 1903-03-01 for the transition to CAT.
++# Perhaps the 1911-05-26 Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# merely made it official?
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Maputo 2:10:20 - LMT 1903 Mar
+ 2:00 - CAT
++Link Africa/Maputo Africa/Blantyre # Malawi
++Link Africa/Maputo Africa/Bujumbura # Burundi
++Link Africa/Maputo Africa/Gaborone # Botswana
++Link Africa/Maputo Africa/Harare # Zimbabwe
++Link Africa/Maputo Africa/Kigali # Rwanda
++Link Africa/Maputo Africa/Lubumbashi # E Dem. Rep. of Congo
++Link Africa/Maputo Africa/Lusaka # Zambia
+
+ # Namibia
+ # The 1994-04-03 transition is from Shanks & Pottenger.
+ # Shanks & Pottenger report no DST after 1998-04; go with IATA.
+
+-# From Petronella Sibeene (2007-03-30) in
+-# <http://allafrica.com/stories/200703300178.html>:
++# From Petronella Sibeene (2007-03-30):
++# http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+ # settlements in Caprivi unofficially will not because the sun there
+ # rises and sets earlier compared to other regions. Chief of
+@@ -989,28 +958,33 @@
+ Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
+- 1:30 - SWAT 1903 Mar # SW Africa Time
+- 2:00 - SAST 1942 Sep 20 2:00
+- 2:00 1:00 SAST 1943 Mar 21 2:00
++ 1:30 - SWAT 1903 Mar # SW Africa Time
++ 2:00 - SAST 1942 Sep 20 2:00
++ 2:00 1:00 SAST 1943 Mar 21 2:00
+ 2:00 - SAST 1990 Mar 21 # independence
+ 2:00 - CAT 1994 Apr 3
+ 1:00 Namibia WA%sT
+
+ # Niger
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Niamey 0:08:28 - LMT 1912
+- -1:00 - WAT 1934 Feb 26
+- 0:00 - GMT 1960
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Nigeria
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
+ 1:00 - WAT
++Link Africa/Lagos Africa/Bangui # Central African Republic
++Link Africa/Lagos Africa/Brazzaville # Rep. of the Congo
++Link Africa/Lagos Africa/Douala # Cameroon
++Link Africa/Lagos Africa/Kinshasa # Dem. Rep. of the Congo (west)
++Link Africa/Lagos Africa/Libreville # Gabon
++Link Africa/Lagos Africa/Luanda # Angola
++Link Africa/Lagos Africa/Malabo # Equatorial Guinea
++Link Africa/Lagos Africa/Niamey # Niger
++Link Africa/Lagos Africa/Porto-Novo # Benin
+
+ # Réunion
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
++Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
+ 4:00 - RET # Réunion Time
+ #
+ # Crozet Islands also observes Réunion time; see the 'antarctica' file.
+@@ -1028,9 +1002,7 @@
+ # Tromelin - inhabited until at least 1958
+
+ # Rwanda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # St Helena
+ # See Africa/Abidjan.
+@@ -1047,7 +1019,7 @@
+
+ # Seychelles
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
++Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
+ 4:00 - SCT # Seychelles Time
+ # From Paul Eggert (2001-05-30):
+ # Aldabra, Farquhar, and Desroches, originally dependencies of the
+@@ -1060,11 +1032,7 @@
+ # See Africa/Abidjan.
+
+ # Somalia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
+- 3:00 - EAT 1931
+- 2:30 - BEAT 1957
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # South Africa
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1074,6 +1042,9 @@
+ Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
+ 1:30 - SAST 1903 Mar
+ 2:00 SA SAST
++Link Africa/Johannesburg Africa/Maseru # Lesotho
++Link Africa/Johannesburg Africa/Mbabane # Swaziland
++#
+ # Marion and Prince Edward Is
+ # scientific station since 1947
+ # no information
+@@ -1101,16 +1072,10 @@
+ Link Africa/Khartoum Africa/Juba
+
+ # Swaziland
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
+- 2:00 - SAST
++# See Africa/Johannesburg.
+
+ # Tanzania
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
+- 3:00 - EAT 1948
+- 2:45 - BEAUT 1961
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Togo
+ # See Africa/Abidjan.
+@@ -1128,7 +1093,7 @@
+ #
+ # From Oscar van Vlijmen (2005-05-02):
+ # La Presse, the first national daily newspaper ...
+-# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
++# http://www.lapresse.tn/archives/archives280405/actualites/lheure.html
+ # ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
+ # 1h standard time.
+ #
+@@ -1212,23 +1177,12 @@
+ # Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 1:00 Tunisia CE%sT
+
+ # Uganda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
+- 3:00 - EAT 1930
+- 2:30 - BEAT 1948
+- 2:45 - BEAUT 1957
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Zambia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
+- 2:00 - CAT
+-
+ # Zimbabwe
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Harare 2:04:12 - LMT 1903 Mar
+- 2:00 - CAT
++# See Africa/Maputo.
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -4,51 +4,14 @@
+ # From Paul Eggert (1999-11-15):
+ # To keep things manageable, we list only locations occupied year-round; see
+ # COMNAP - Stations and Bases
+-# <http://www.comnap.aq/comnap/comnap.nsf/P/Stations/>
++# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/
+ # and
+ # Summary of the Peri-Antarctic Islands (1998-07-23)
+-# <http://www.spri.cam.ac.uk/bob/periant.htm>
++# http://www.spri.cam.ac.uk/bob/periant.htm
+ # for information.
+ # Unless otherwise specified, we have no time zone information.
+-#
+-# Except for the French entries,
+-# I made up all time zone abbreviations mentioned here; corrections welcome!
+-# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
+
+-# These rules are stolen from the 'southamerica' file.
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule ArgAQ 1964 1966 - Mar 1 0:00 0 -
+-Rule ArgAQ 1964 1966 - Oct 15 0:00 1:00 S
+-Rule ArgAQ 1967 only - Apr 2 0:00 0 -
+-Rule ArgAQ 1967 1968 - Oct Sun>=1 0:00 1:00 S
+-Rule ArgAQ 1968 1969 - Apr Sun>=1 0:00 0 -
+-Rule ArgAQ 1974 only - Jan 23 0:00 1:00 S
+-Rule ArgAQ 1974 only - May 1 0:00 0 -
+-Rule ChileAQ 1972 1986 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1987 only - Apr 12 3:00u 0 -
+-Rule ChileAQ 1988 1989 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1988 only - Oct Sun>=1 4:00u 1:00 S
+-Rule ChileAQ 1989 only - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1990 only - Mar 18 3:00u 0 -
+-Rule ChileAQ 1990 only - Sep 16 4:00u 1:00 S
+-Rule ChileAQ 1991 1996 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1997 only - Mar 30 3:00u 0 -
+-Rule ChileAQ 1998 only - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1998 only - Sep 27 4:00u 1:00 S
+-Rule ChileAQ 1999 only - Apr 4 3:00u 0 -
+-Rule ChileAQ 1999 2010 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 2000 2007 - Mar Sun>=9 3:00u 0 -
+-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
+-# which is used below in specifying the transition.
+-Rule ChileAQ 2008 only - Mar 30 3:00u 0 -
+-Rule ChileAQ 2009 only - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 2010 only - Apr Sun>=1 3:00u 0 -
+-Rule ChileAQ 2011 only - May Sun>=2 3:00u 0 -
+-Rule ChileAQ 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule ChileAQ 2012 max - Apr Sun>=23 3:00u 0 -
+-Rule ChileAQ 2012 max - Sep Sun>=2 4:00u 1:00 S
++# FORMAT is '-00' and GMTOFF is 0 for locations while uninhabited.
+
+ # Argentina - year-round bases
+ # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+@@ -63,8 +26,8 @@
+ # Heard Island, McDonald Islands (uninhabited)
+ # previously sealers and scientific personnel wintered
+ # Margaret Turner reports
+-# <http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html>
+-# (1999-09-30) that they're UTC+5, with no DST;
++# http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html
++# (1999-09-30) that they're UT +05, with no DST;
+ # presumably this is when they have visitors.
+ #
+ # year-round bases
+@@ -101,34 +64,36 @@
+ # Background:
+ # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
+
++# From Steffen Thorsen (2016-10-28):
++# Australian Antarctica Division informed us that Casey changed time
++# zone to UTC+11 in "the morning of 22nd October 2016".
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Casey 0 - zzz 1969
+- 8:00 - AWST 2009 Oct 18 2:00
+- # Australian Western Std Time
+- 11:00 - CAST 2010 Mar 5 2:00
+- # Casey Time
+- 8:00 - AWST 2011 Oct 28 2:00
+- 11:00 - CAST 2012 Feb 21 17:00u
+- 8:00 - AWST
+-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+- 7:00 - DAVT 1964 Nov # Davis Time
+- 0 - zzz 1969 Feb
+- 7:00 - DAVT 2009 Oct 18 2:00
+- 5:00 - DAVT 2010 Mar 10 20:00u
+- 7:00 - DAVT 2011 Oct 28 2:00
+- 5:00 - DAVT 2012 Feb 21 20:00u
+- 7:00 - DAVT
+-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+- 6:00 - MAWT 2009 Oct 18 2:00
+- # Mawson Time
+- 5:00 - MAWT
++Zone Antarctica/Casey 0 - -00 1969
++ 8:00 - +08 2009 Oct 18 2:00
++ 11:00 - +11 2010 Mar 5 2:00
++ 8:00 - +08 2011 Oct 28 2:00
++ 11:00 - +11 2012 Feb 21 17:00u
++ 8:00 - +08 2016 Oct 22
++ 11:00 - +11
++Zone Antarctica/Davis 0 - -00 1957 Jan 13
++ 7:00 - +07 1964 Nov
++ 0 - -00 1969 Feb
++ 7:00 - +07 2009 Oct 18 2:00
++ 5:00 - +05 2010 Mar 10 20:00u
++ 7:00 - +07 2011 Oct 28 2:00
++ 5:00 - +05 2012 Feb 21 20:00u
++ 7:00 - +07
++Zone Antarctica/Mawson 0 - -00 1954 Feb 13
++ 6:00 - +06 2009 Oct 18 2:00
++ 5:00 - +05
+ # References:
+ # Casey Weather (1998-02-26)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html
+ # Davis Station, Antarctica (1998-02-26)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html
+ # Mawson Station, Antarctica (1998-02-25)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html
+
+ # Belgium - year-round base
+ # Princess Elisabeth, Queen Maud Land, -713412+0231200, since 2007
+@@ -154,7 +119,7 @@
+ # France - year-round bases (also see "France & Italy")
+ #
+ # From Antoine Leca (1997-01-20):
+-# Time data are from Nicole Pailleau at the IFRTP
++# Time data entries are from Nicole Pailleau at the IFRTP
+ # (French Institute for Polar Research and Technology).
+ # She confirms that French Southern Territories and Terre Adélie bases
+ # don't observe daylight saving time, even if Terre Adélie supplies came
+@@ -174,8 +139,8 @@
+ # fishing stations operated variously 1819/1931
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
+- 5:00 - TFT # ISO code TF Time
++Zone Indian/Kerguelen 0 - -00 1950 # Port-aux-Français
++ 5:00 - +05
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+@@ -185,10 +150,10 @@
+ # It was destroyed by fire on 1952-01-14.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/DumontDUrville 0 - zzz 1947
+- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+- 0 - zzz 1956 Nov
+- 10:00 - DDUT # Dumont-d'Urville Time
++Zone Antarctica/DumontDUrville 0 - -00 1947
++ 10:00 - +10 1952 Jan 14
++ 0 - -00 1956 Nov
++ 10:00 - +10
+
+ # France & Italy - year-round base
+ # Concordia, -750600+1232000, since 2005
+@@ -213,11 +178,11 @@
+ # was established on 1957-01-29. Since Syowa station is still the main
+ # station of Japan, it's appropriate for the principal location.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+- 3:00 - SYOT # Syowa Time
++Zone Antarctica/Syowa 0 - -00 1957 Jan 29
++ 3:00 - +03
+ # See:
+ # NIPR Antarctic Research Activities (1999-08-17)
+-# <http://www.nipr.ac.jp/english/ara01.html>
++# http://www.nipr.ac.jp/english/ara01.html
+
+ # S Korea - year-round base
+ # Jang Bogo, Terra Nova Bay, -743700+1641205 since 2014
+@@ -251,20 +216,20 @@
+ # correct, but they should be quite close to the actual dates.
+ #
+ # From Paul Eggert (2014-03-21):
+-# The CET-switching Troll rules require zic from tzcode 2014b or later, so as
++# The CET-switching Troll rules require zic from tz 2014b or later, so as
+ # suggested by Bengt-Inge Larsson comment them out for now, and approximate
+ # with only UTC and CEST. Uncomment them when 2014b is more prevalent.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET
+-Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST
+-#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET
+-#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC
++#Rule Troll 2005 max - Mar 1 1:00u 1:00 +01
++Rule Troll 2005 max - Mar lastSun 1:00u 2:00 +02
++#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 +01
++#Rule Troll 2004 max - Nov 7 1:00u 0:00 +00
+ # Remove the following line when uncommenting the above '#Rule' lines.
+-Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC
++Rule Troll 2004 max - Oct lastSun 1:00u 0:00 +00
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Troll 0 - zzz 2005 Feb 12
+- 0:00 Troll %s
++Zone Antarctica/Troll 0 - -00 2005 Feb 12
++ 0:00 Troll %s
+
+ # Poland - year-round base
+ # Arctowski, King George Island, -620945-0582745, since 1977
+@@ -281,8 +246,8 @@
+ # year-round from 1960/61 to 1992
+
+ # Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
+-# From Craig Mundell (1994-12-15)
+-# <http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP>:
++# From Craig Mundell (1994-12-15):
++# http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP
+ # Vostok, which is one of the Russian stations, is set on the same
+ # time as Moscow, Russia.
+ #
+@@ -302,10 +267,10 @@
+ # changes during the year and does not necessarily correspond to mean
+ # solar noon. So the Vostok time might have been whatever the clocks
+ # happened to be during their visit. So we still don't really know what time
+-# it is at Vostok. But we'll guess UTC+6.
++# it is at Vostok. But we'll guess +06.
+ #
+-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+- 6:00 - VOST # Vostok time
++Zone Antarctica/Vostok 0 - -00 1957 Dec 16
++ 6:00 - +06
+
+ # S Africa - year-round bases
+ # Marion Island, -4653+03752
+@@ -337,8 +302,8 @@
+ # <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+- -3:00 - ROTT # Rothera time
++Zone Antarctica/Rothera 0 - -00 1976 Dec 1
++ -3:00 - -03
+
+ # Uruguay - year round base
+ # Artigas, King George Island, -621104-0585107
+@@ -346,20 +311,7 @@
+ # USA - year-round bases
+ #
+ # Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+-#
+-# From Ethan Dicks (1996-10-06):
+-# It keeps the same time as Punta Arenas, Chile, because, just like us
+-# and the South Pole, that's the other end of their supply line....
+-# I verified with someone who was there that since 1980,
+-# Palmer has followed Chile. Prior to that, before the Falklands War,
+-# Palmer used to be supplied from Argentina.
+-#
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Palmer 0 - zzz 1965
+- -4:00 ArgAQ AR%sT 1969 Oct 5
+- -3:00 ArgAQ AR%sT 1982 May
+- -4:00 ChileAQ CL%sT
+-#
++# See 'southamerica' for Antarctica/Palmer, since it uses South American DST.
+ #
+ # McMurdo Station, Ross Island, since 1955-12
+ # Amundsen-Scott South Pole Station, continuously occupied since 1956-11-20
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -1,32 +1,36 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-08-11):
++# From Paul Eggert (2015-08-08):
+ #
+-# A good source for time zone historical data outside the U.S. is
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
++#
++# For Russian data circa 1919, a source is:
++# Byalokoz EL. New Counting of Time in Russia since July 1, 1919.
++# (See the 'europe' file for a fuller citation.)
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -39,18 +43,20 @@
+ # 2:00 EET EEST Eastern European Time
+ # 2:00 IST IDT Israel
+ # 3:00 AST ADT Arabia*
+-# 3:30 IRST IRDT Iran
++# 3:30 IRST IRDT Iran*
+ # 4:00 GST Gulf*
+ # 5:30 IST India
+-# 7:00 ICT Indochina*
++# 7:00 ICT Indochina, most times and locations*
+ # 7:00 WIB west Indonesia (Waktu Indonesia Barat)
+ # 8:00 WITA central Indonesia (Waktu Indonesia Tengah)
+ # 8:00 CST China
++# 8:00 IDT Indochina, 1943-45, 1947-55, 1960-75 (some locations)*
+ # 8:00 JWST Western Standard Time (Japan, 1896/1937)*
++# 8:30 KST KDT Korea when at +0830*
+ # 9:00 JCST Central Standard Time (Japan, 1896/1937)
+ # 9:00 WIT east Indonesia (Waktu Indonesia Timur)
+ # 9:00 JST JDT Japan
+-# 9:00 KST KDT Korea
++# 9:00 KST KDT Korea when at +09
+ # 9:30 ACST Australian Central Standard Time
+ #
+ # See the 'europe' file for Russia and Turkey in Asia.
+@@ -73,13 +79,9 @@
+ Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
++Rule RussiaAsia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule RussiaAsia 1985 2011 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2011 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -114,36 +116,40 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+- 3:00 - YERT 1957 Mar # Yerevan Time
+- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+- 3:00 1:00 YERST 1991 Sep 23 # independence
+- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+- 4:00 - AMT 1997
+- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s
+- 4:00 - AMT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
++ 4:00 - +04 1997
++ 4:00 RussiaAsia +04/+05
+
+ # Azerbaijan
++
+ # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+ # According to the resolution of Cabinet of Ministers, 1997
+-# Resolution available at: http://aif.az/docs/daylight_res.pdf
++# From Paul Eggert (2015-09-17): It was Resolution No. 21 (1997-03-17).
++# http://code.az/files/daylight_res.pdf
++
++# From Steffen Thorsen (2016-03-17):
++# ... the Azerbaijani Cabinet of Ministers has cancelled switching to
++# daylight saving time....
++# http://www.azernews.az/azerbaijan/94137.html
++# http://vestnikkavkaza.net/news/Azerbaijani-Cabinet-of-Ministers-cancels-daylight-saving-time.html
++# http://en.apa.az/xeber_azerbaijan_abolishes_daylight_savings_ti_240862.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+-Rule Azer 1997 max - Oct lastSun 5:00 0 -
++Rule Azer 1997 2015 - Mar lastSun 4:00 1:00 S
++Rule Azer 1997 2015 - Oct lastSun 5:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+- 3:00 - BAKT 1957 Mar # Baku Time
+- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+- 3:00 1:00 BAKST 1991 Aug 30 # independence
+- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+- 4:00 - AZT 1996 # Azerbaijan time
+- 4:00 EUAsia AZ%sT 1997
+- 4:00 Azer AZ%sT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
++ 4:00 - +04 1996
++ 4:00 EUAsia +04/+05 1997
++ 4:00 Azer +04/+05
+
+ # Bahrain
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++# See Asia/Qatar.
+
+ # Bangladesh
+ # From Alexander Krivenyshev (2009-05-13):
+@@ -219,7 +225,7 @@
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Dhaka 2009 only - Jun 19 23:00 1:00 S
+-Rule Dhaka 2009 only - Dec 31 23:59 0 -
++Rule Dhaka 2009 only - Dec 31 24:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dhaka 6:01:40 - LMT 1890
+@@ -250,7 +256,7 @@
+
+ # Brunei
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
++Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
+ 7:30 - BNT 1933
+ 8:00 - BNT
+
+@@ -259,19 +265,15 @@
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
+- 6:24:40 - RMT 1920 # Rangoon Mean Time?
+- 6:30 - BURT 1942 May # Burma Time
+- 9:00 - JST 1945 May 3
+- 6:30 - MMT # Myanmar Time
++Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
++ 6:24:40 - RMT 1920 # Rangoon Mean Time?
++ 6:30 - BURT 1942 May # Burma Time
++ 9:00 - JST 1945 May 3
++ 6:30 - MMT # Myanmar Time
+
+ # Cambodia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
+- 7:00 - ICT
++# See Asia/Bangkok.
++
+
+ # China
+
+@@ -356,8 +358,8 @@
+ # * The Republic of China instituted Beijing mean solar time effective
+ # the official calendar book of 1914.
+ # * The French Concession in Shanghai set up signal stations in
+-# French docks in the 1890s, controled by Xujiahui (Zikawei)
+-# Obervatory and set to local mean time.
++# French docks in the 1890s, controlled by Xujiahui (Zikawei)
++# Observatory and set to local mean time.
+ # * "From the end of the 19th century" it changed to UT+8.
+ # * Chinese Customs (by then reduced to a tool of foreign powers)
+ # eventually standardized on this time for all ports, and it
+@@ -378,35 +380,35 @@
+ # Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is
+ # different - the occupied districts going by Tokyo time, an hour
+ # ahead of that prevailing in the rest of Shanghai." Guess that the
+-# Xujiahui Observatory was under French control and stuck with UT+8.
++# Xujiahui Observatory was under French control and stuck with UT +08.
+ #
+ # In earlier versions of this file, China had many separate Zone entries, but
+-# this was based on what was apparently incorrect data in Shanks & Pottenger.
++# this was based on what were apparently incorrect data in Shanks & Pottenger.
+ # This has now been simplified to the two entries Asia/Shanghai and
+ # Asia/Urumqi, with the others being links for backward compatibility.
+ # Proposed in 1918 and theoretically in effect until 1949 (although in practice
+ # mainly observed in coastal areas), the five zones were:
+ #
+-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+ # Asia/Harbin (currently a link to Asia/Shanghai)
+ # Heilongjiang (except Mohe county), Jilin
+ #
+-# Zhongyuan Time ("Central plain Time") UT+8
++# Zhongyuan Time ("Central plain Time") UT +08
+ # Asia/Shanghai
+ # most of China
+ # This currently represents most other zones as well,
+ # as apparently these regions have been the same since 1970.
+ # Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest.
+-# Guo says Shanghai switched to UT+8 "from the end of the 19th century".
++# Guo says Shanghai switched to UT +08 "from the end of the 19th century".
+ #
+-# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7
++# Long-shu Time (probably due to Long and Shu being two names of the area) UT +07
+ # Asia/Chongqing (currently a link to Asia/Shanghai)
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+ # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+-# Xin-zang Time ("Xinjiang-Tibet Time") UT+6
++# Xin-zang Time ("Xinjiang-Tibet Time") UT +06
+ # Asia/Urumqi
+ # This currently represents Kunlun Time as well,
+ # as apparently the two regions have been the same since 1970.
+@@ -419,7 +421,7 @@
+ # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+-# Kunlun Time UT+5.5
++# Kunlun Time UT +05:30
+ # Asia/Kashgar (currently a link to Asia/Urumqi)
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+@@ -435,7 +437,7 @@
+ #
+ # On the other hand, ethnic Uyghurs, who make up about half the
+ # population of Xinjiang, typically use "Xinjiang time" which is two
+-# hours behind Beijing time, or UTC +0600. The government of the Xinjiang
++# hours behind Beijing time, or UT +06. The government of the Xinjiang
+ # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as
+ # local governments such as the Ürümqi city government use both times in
+ # publications, referring to what is popularly called Xinjiang time as
+@@ -491,8 +493,8 @@
+ # having the same time as Beijing.
+
+ # From Paul Eggert (2014-06-30):
+-# In the early days of the PRC, Tibet was given its own time zone (UT+6) but
+-# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
++# In the early days of the PRC, Tibet was given its own time zone (UT +06)
++# but this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
+ # Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN
+ # 978-0231142861 (2008), translator's introduction by Matthew Akester, p x.
+ # As this is before our 1970 cutoff, Tibet doesn't need a separate zone.
+@@ -501,17 +503,17 @@
+ # "The Working-Calendar for The Xinjiang Uygur Autonomous Region Government"
+ # <http://www.sinkiang.gov.cn/service/ourworking/> (2014-04-22).
+ # Unfortunately, we have no good records of time in Xinjiang before 1986.
+-# During the 20th century parts of Xinjiang were ruled by the Qing dyansty,
++# During the 20th century parts of Xinjiang were ruled by the Qing dynasty,
+ # the Republic of China, various warlords, the First and Second East Turkestan
+ # Republics, the Soviet Union, the Kuomintang, and the People's Republic of
+ # China, and tracking down all these organizations' timekeeping rules would be
+ # quite a trick. Approximate this lost history by a transition from LMT to
+-# XJT at the start of 1928, the year of accession of the warlord Jin Shuren,
++# UT +06 at the start of 1928, the year of accession of the warlord Jin Shuren,
+ # which happens to be the date given by Shanks & Pottenger (no doubt as a
+-# guess) as the transition from LMT. Ignore the usage of UT+8 before
+-# 1986-02-01 under the theory that the transition date to UT+8 is unknown and
++# guess) as the transition from LMT. Ignore the usage of +08 before
++# 1986-02-01 under the theory that the transition date to +08 is unknown and
+ # that the sort of users who prefer Asia/Urumqi now typically ignored the
+-# UT+8 mandate back then.
++# +08 mandate back then.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Beijing time, used throughout China; represented by Shanghai.
+@@ -698,25 +700,25 @@
+ # Central Weather Bureau website was not correct.
+ #
+ # Original Bulletin:
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF>
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0> (cont.)
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0 (cont.)
+ #
+ # In 1947, DST in Taiwan was expanded to Oct 31. There is a backup of that
+ # telegram announcement from Taiwan Province Government:
+ #
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431>
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431
+ #
+ # Here is a brief translation:
+ #
+ # The Summer Time this year is adopted from midnight Apr 15 until Sep 20
+ # midnight. To save (energy?) consumption, we're expanding Summer Time
+-# adption till Oct 31 midnight.
++# adoption till Oct 31 midnight.
+ #
+ # The Central Weather Bureau website didn't mention that, however it can
+ # be found from historical government announcement database.
+
+ # From Paul Eggert (2014-07-03):
+-# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01
++# As per Yu-Cheng Chuang, say that Taiwan was at UT +09 from 1937-10-01
+ # until 1945-09-21 at 01:00, overriding Shanks & Pottenger.
+ # Likewise, use Yu-Cheng Chuang's data for DST in Taiwan.
+
+@@ -741,7 +743,7 @@
+ # Taipei or Taibei or T'ai-pei
+ Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1
+ 8:00 - JWST 1937 Oct 1
+- 9:00 - JST 1945 Sep 21 01:00
++ 9:00 - JST 1945 Sep 21 1:00
+ 8:00 Taiwan C%sT
+
+ # Macau (Macao, Aomen)
+@@ -761,7 +763,7 @@
+ Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
+ Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Macau 7:34:20 - LMT 1912
++Zone Asia/Macau 7:34:20 - LMT 1912 Jan 1
+ 8:00 Macau MO%sT 1999 Dec 20 # return to China
+ 8:00 PRC C%sT
+
+@@ -769,9 +771,19 @@
+ ###############################################################################
+
+ # Cyprus
+-#
++
+ # Milne says the Eastern Telegraph Company used 2:14:00. Stick with LMT.
+-#
++# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++
++# From Paul Eggert (2016-09-09):
++# Yesterday's Cyprus Mail reports that Northern Cyprus followed Turkey's
++# lead and switched from +02/+03 to +03 year-round.
++# http://cyprus-mail.com/2016/09/08/two-time-zones-cyprus-turkey-will-not-turn-clocks-back-next-month/
++#
++# From Even Scharning (2016-10-31):
++# Looks like the time zone split in Cyprus went through last night.
++# http://cyprus-mail.com/2016/10/30/cyprus-new-division-two-time-zones-now-reality/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+ Rule Cyprus 1975 only - Oct 12 0:00 0 -
+@@ -786,7 +798,10 @@
+ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14
++ 2:00 Cyprus EE%sT 1998 Sep
++ 2:00 EUAsia EE%sT 2016 Sep 8
++ 3:00 - +03
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -823,21 +838,22 @@
+ # I don't know what can be done, especially knowing that some years ago our
+ # DST rules where changed THREE TIMES during one month.
+
+-# Milne says Tbilisi (Tiflis) time was 2:59:05.7; round to nearest.)
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Tbilisi 2:59:06 - LMT 1880
+- 2:59:06 - TBMT 1924 May 2 # Tbilisi Mean Time
+- 3:00 - TBIT 1957 Mar # Tbilisi Time
+- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+- 3:00 1:00 TBIST 1991 Apr 9 # independence
+- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+- 4:00 1:00 GEST 1997 Mar lastSun
+- 4:00 E-EurAsia GE%sT 2004 Jun 27
+- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+- 4:00 - GET
++# Milne 1899 says Tbilisi (Tiflis) time was 2:59:05.7.
++# Byalokoz 1919 says Georgia was 2:59:11.
++# Go with Byalokoz.
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Asia/Tbilisi 2:59:11 - LMT 1880
++ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992
++ 3:00 E-EurAsia +03/+04 1994 Sep lastSun
++ 4:00 E-EurAsia +04/+05 1996 Oct lastSun
++ 4:00 1:00 +05 1997 Mar lastSun
++ 4:00 E-EurAsia +04/+05 2004 Jun 27
++ 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
++ 4:00 - +04
+
+ # East Timor
+
+@@ -864,16 +880,25 @@
+ # midnight on Saturday, September 16.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Dili 8:22:20 - LMT 1912
++Zone Asia/Dili 8:22:20 - LMT 1912 Jan 1
+ 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time
+ 9:00 - JST 1945 Sep 23
+ 9:00 - TLT 1976 May 3
+- 8:00 - WITA 2000 Sep 17 00:00
++ 8:00 - WITA 2000 Sep 17 0:00
+ 9:00 - TLT
+
+ # India
++
++# From Ian P. Beacock, in "A brief history of (modern) time", The Atlantic
++# http://www.theatlantic.com/technology/archive/2015/12/the-creation-of-modern-time/421419/
++# (2015-12-22):
++# In January 1906, several thousand cotton-mill workers rioted on the
++# outskirts of Bombay.... They were protesting the proposed abolition of
++# local time in favor of Indian Standard Time.... Journalists called this
++# dispute the "Battle of the Clocks." It lasted nearly half a century.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
++Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+ 6:30 - BURT 1942 May 15 # Burma Time
+ 5:30 - IST 1942 Sep
+@@ -886,8 +911,12 @@
+
+ # Indonesia
+ #
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 306 says that Batavia
++# civil time was 7:07:12.5; round to even for Jakarta.
++#
+ # From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
+-# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
++# http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime
+ # says that Indonesia's time zones changed on 1988-01-01. Looking at some
+ # time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
+ # and Kalimantan Tengah) switching from UTC+8 to UTC+7.
+@@ -901,7 +930,7 @@
+ # These would be the earliest possible times for a change.
+ # Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions
+ # Traditionnelles, 1987, Paris) says that Java and Madura switched
+-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
++# from UT +09 to +07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+ # (Hollandia). For now, assume all Indonesian locations other than Jayapura
+ # switched on 1945-09-23.
+ #
+@@ -912,11 +941,11 @@
+ # summary published by the Time and Frequency Laboratory of the
+ # Research Center for Calibration, Instrumentation and Metrology,
+ # Indonesia, <http://time.kim.lipi.go.id/time-eng.php> (2006-09-29).
+-# The abbreviations are:
++# The time zone abbreviations and UT offsets are:
+ #
+-# WIB - UTC+7 - Waktu Indonesia Barat (Indonesia western time)
+-# WITA - UTC+8 - Waktu Indonesia Tengah (Indonesia central time)
+-# WIT - UTC+9 - Waktu Indonesia Timur (Indonesia eastern time)
++# WIB - +07 - Waktu Indonesia Barat (Indonesia western time)
++# WITA - +08 - Waktu Indonesia Tengah (Indonesia central time)
++# WIT - +09 - Waktu Indonesia Timur (Indonesia eastern time)
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Java, Sumatra
+@@ -924,7 +953,7 @@
+ # Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
+ # but this must be a typo.
+ 7:07:12 - BMT 1923 Dec 31 23:47:12 # Batavia
+- 7:20 - JAVT 1932 Nov # Java Time
++ 7:20 - JAVT 1932 Nov # Java Time
+ 7:30 - WIB 1942 Mar 23
+ 9:00 - JST 1945 Sep 23
+ 7:30 - WIB 1948 May
+@@ -1023,7 +1052,7 @@
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+-# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
++# Iran, Volume 63, No. 18242, dated Tuesday 1386/6/24
+ # [2007-10-16]. I am doing the best translation I can:...
+ # The official time of the country will be moved forward for one hour
+ # on the 24 hours of the first day of the month of Farvardin and will
+@@ -1078,11 +1107,18 @@
+ Rule Iran 2032 2033 - Sep 21 0:00 0 S
+ Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+ Rule Iran 2034 2035 - Sep 22 0:00 0 S
+-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+-Rule Iran 2036 2037 - Sep 21 0:00 0 S
++#
++# The following rules are approximations starting in the year 2038.
++# These are the best post-2037 approximations available, given the
++# restrictions of a single rule using a Gregorian-based data format.
++# At some point this table will need to be extended, though quite
++# possibly Iran will change the rules first.
++Rule Iran 2036 max - Mar 21 0:00 1:00 D
++Rule Iran 2036 max - Sep 21 0:00 0 S
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+- 3:25:44 - TMT 1946 # Tehran Mean Time
++ 3:25:44 - TMT 1946 # Tehran Mean Time
+ 3:30 - IRST 1977 Nov
+ 4:00 Iran IR%sT 1979
+ 3:30 Iran IR%sT
+@@ -1127,7 +1163,7 @@
+ Rule Iraq 1991 2007 - Oct 1 3:00s 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baghdad 2:57:40 - LMT 1890
+- 2:57:36 - BMT 1918 # Baghdad Mean Time?
++ 2:57:36 - BMT 1918 # Baghdad Mean Time?
+ 3:00 - AST 1982 May
+ 3:00 Iraq A%sT
+
+@@ -1355,7 +1391,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Jerusalem 2:20:54 - LMT 1880
+- 2:20:40 - JMT 1918 # Jerusalem Mean Time?
++ 2:20:40 - JMT 1918 # Jerusalem Mean Time?
+ 2:00 Zion I%sT
+
+
+@@ -1371,8 +1407,8 @@
+ # daylight saving between 1948 and 1951, but "the system was discontinued
+ # because the public believed it would lead to longer working hours."
+
+-# From Mayumi Negishi in the 2005-08-10 Japan Times
+-# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
++# From Mayumi Negishi in the 2005-08-10 Japan Times:
++# http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm
+ # Occupation authorities imposed daylight-saving time on Japan on
+ # [1948-05-01].... But lack of prior debate and the execution of
+ # daylight-saving time just three days after the bill was passed generated
+@@ -1396,7 +1432,8 @@
+
+ # From Hideyuki Suzuki (1998-11-09):
+ # 'Tokyo' usually stands for the former location of Tokyo Astronomical
+-# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s), 35 degrees 39' 16.0" N.
++# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s),
++# 35 degrees 39' 16.0" N.
+ # This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
+ # edited by National Astronomical Observatory of Japan....
+ # JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
+@@ -1535,24 +1572,7 @@
+
+ # Kazakhstan
+
+-# From Paul Eggert (1996-11-22):
+-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+-# IATA SSIM mentions a third time zone in Kazakhstan.
+-
+-# From Paul Eggert (2006-03-22):
+-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+-# Also go with the following claims of Shanks & Pottenger:
+-#
+-# - Kazakhstan did not observe DST in 1991.
+-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+-# - Oral switched from +5:00 to +4:00 in spring 1989.
+-
+-# From Kazakhstan Embassy's News Bulletin #11
++# From Kazakhstan Embassy's News Bulletin No. 11
+ # <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21):
+ # The Government of Kazakhstan passed a resolution March 15 abolishing
+ # daylight saving time citing lack of economic benefits and health
+@@ -1568,68 +1588,239 @@
+ # everything else.... I guess that would make Kazakhstan time zones
+ # de jure UTC+5 and UTC+6 respectively.
+
++# From Stepan Golosunov (2016-03-27) ([*] means see later comments below):
++# Review of the linked documents from http://adilet.zan.kz/
++# produced the following data for post-1991 Kazakhstan:
++#
++# 0. Act of the Cabinet of Ministers of the USSR
++# from 1991-02-04 No. 20
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102010545
++# removed the extra hour ("decree time") on the territory of the USSR
++# starting with the last Sunday of March 1991.
++# It also allowed (but not mandated) Kazakh SSR, Kirghiz SSR, Tajik SSR,
++# Turkmen SSR and Uzbek SSR to not have "summer" time.
++#
++# The 1992-01-13 act also refers to the act of the Cabinet of Ministers
++# of the Kazakh SSR from 1991-03-20 No. 170 "About the act of the Cabinet
++# of Ministers of the USSR from 1991-02-04 No. 20" but I didn't found its
++# text.
++#
++# According to Izvestia newspaper No. 68 (23334) from 1991-03-20
++# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# transition to "summer" time:
++# Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
++# Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
++# were to move clocks 1 hour forward.
++# Kazakh SSR (excluding Uralsk oblast); Republic of Kyrgyzstan, Tajik
++# SSR; Andijan, Jizzakh, Namangan, Sirdarya, Tashkent, Fergana oblasts
++# of the Uzbek SSR were to move clocks 1 hour backwards.
++# Other territories were to not move clocks.
++# When the "summer" time would end on 1991-09-29, clocks were to be
++# moved 1 hour backwards on the territory of the USSR excluding
++# Kazakhstan, Kirghizia, Uzbekistan, Turkmenia, Tajikistan.
++#
++# Apparently there were last minute changes. Apparently Kazakh act No. 170
++# was one of such changes.
++#
++# https://ru.wikipedia.org/wiki/Декретное время
++# claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
++# Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
++# were to not move clocks and Uralsk oblast was to move clocks
++# forward; on 1991-09-29 Kazakhstan was to move clocks backwards.
++# (Probably there were changes even after that publication. There is an
++# article claiming that Kaliningrad oblast decided on 1991-03-29 to not
++# move clocks.)
++#
++# This implies that on 1991-03-31 Asia/Oral remained on +04/+05 while
++# the rest of Kazakhstan switched from +06/+07 to +05/06 or from +05/06
++# to +04/+05. It's unclear how Kzyl-Orda oblast moved into the fifth
++# time belt. (By switching from +04/+05 to +05/+06 on 1991-09-29?) ...
++#
++# 1. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-01-13 No. 28
++# http://adilet.zan.kz/rus/docs/P920000028_
++# (text includes modification from the 1996 act)
++# introduced new rules for calculation of time, mirroring Russian
++# 1992-01-08 act. It specified that time would be calculated
++# according to time belts plus extra hour ("decree time"), moved clocks
++# on the whole territory of Kazakhstan 1 hour forward on 1992-01-19 at
++# 2:00, specified DST rules. It acknowledged that Kazakhstan was
++# located in the fourth and the fifth time belts and specified the
++# border between them to be located east of Kustanay and Aktyubinsk
++# oblasts (notably including Turgai and Kzyl-Orda oblasts into the fifth
++# time belt).
++#
++# This means switch on 1992-01-19 at 2:00 from +04/+05 to +05/+06 for
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyrau and Kustanay oblasts; from
++# +05/+06 to +06/+07 for Asia/Almaty and Asia/Qyzylorda (and Arkalyk) [*]....
++#
++# 2. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-03-27 No. 284
++# http://adilet.zan.kz/rus/docs/P920000284_
++# cancels extra hour ("decree time") for Uralsk and Kzyl-Orda oblasts
++# since the last Sunday of March 1992, while keeping them in the fourth
++# and the fifth time belts respectively.
++#
++# 3. Order of the Prime Minister of the Republic of Kazakhstan
++# from 1994-09-23 No. 384
++# http://adilet.zan.kz/rus/docs/R940000384_
++# cancels the extra hour ("decree time") on the territory of Mangystau
++# oblast since the last Sunday of September 1994 (saying that time on
++# the territory would correspond to the third time belt as a
++# result)....
++#
++# 4. Act of the Government of the Republic of Kazakhstan
++# from 1996-05-08 No. 575
++# http://adilet.zan.kz/rus/docs/P960000575_
++# amends the 1992-01-13 act to end summer time in October instead
++# of September, mirroring identical Russian change from 1996-04-23 act.
++#
++# 5. Act of the Government of the Republic of Kazakhstan
++# from 1999-03-26 No. 305
++# http://adilet.zan.kz/rus/docs/P990000305_
++# cancels the extra hour ("decree time") for Atyrau oblast since the
++# last Sunday of March 1999 while retaining the oblast in the fourth
++# time belt.
++#
++# This means change from +05/+06 to +04/+05.
++#
++# There is no zone for Atyrau currently (listed under Asia/Aqtau in
++# zone1970.tab).[*]
++#
++# 6. Act of the Government of the Republic of Kazakhstan
++# from 2000-11-23 No. 1749
++# http://adilet.zan.kz/rus/archive/docs/P000001749_/23.11.2000
++# replaces the previous five documents.
++#
++# The only changes I noticed are in definition of the border between the
++# fourth and the fifth time belts. They account for changes in spelling
++# and administrative division (splitting of Turgai oblast in 1997
++# probably changed time in territories incorporated into Kostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Kyzylorda oblast
++# from being in the fifth time belt and not using decree time into the
++# fourth time belt (no change in practice).[*]
++#
++# 7. Act of the Government of the Republic of Kazakhstan
++# from 2003-12-29 No. 1342
++# http://adilet.zan.kz/rus/docs/P030001342_
++# modified the 2000-11-23 act. No relevant changes, apparently.
++#
++# 8. Act of the Government of the Republic of Kazakhstan
++# from 2004-07-20 No. 775
++# http://adilet.zan.kz/rus/archive/docs/P040000775_/20.07.2004
++# modified the 2000-11-23 act to move Kostanay and Kyzylorda oblasts into
++# the fifth time belt and add Aktobe oblast to the list of regions not
++# using extra hour ("decree time"), leaving Kazakhstan with only 2 time
++# zones (+04/+05 and +06/+07). The changes were to be implemented
++# during DST transitions in 2004 and 2005 but the acts got radically
++# amended before implementation happened.
++#
++# 9. Act of the Government of the Republic of Kazakhstan
++# from 2004-09-15 No. 1059
++# http://adilet.zan.kz/rus/docs/P040001059_
++# modified the 2000-11-23 act to remove exceptions from the "decree time"
++# (leaving Kazakhstan in +05/+06 and +06/+07 zones), amended the
++# 2004-07-20 act to implement changes for Atyrau, West Kazakhstan,
++# Kostanay, Kyzylorda and Mangystau oblasts by not moving clocks
++# during the 2014 transition to "winter" time.
++#
++# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# zone currently), Asia/Oral, Asia/Aqtau and transition from +05/+06 to
++# +06/+07 for Kostanay oblast (Kostanay and Arkalyk, no zones currently)
++# and Asia/Qyzylorda on 2004-10-31 at 3:00....[*]
++#
++# 10. Act of the Government of the Republic of Kazakhstan
++# from 2005-03-15 No. 231
++# http://adilet.zan.kz/rus/docs/P050000231_
++# removes DST provisions from the 2000-11-23 act, removes most of the
++# (already implemented) provisions from the 2004-07-20 and 2004-09-15
++# acts, comes into effect 10 days after official publication.
++# The only practical effect seems to be the abolition of the summer
++# time.
++#
++# Unamended version of the act of the Government of the Russian Federation
++# No. 23 from 1992-01-08 [See 'europe' file for details].
++# Kazakh 1992-01-13 act appears to provide the same rules and 1992-03-27
++# act was to be enacted on the last Sunday of March 1992.
++
++# From Paul Eggert (2016-04-15):
++# The tables below should reflect Stepan Golosunov's remarks above,
++# except for the items marked "[*]" which I haven't gotten to yet.
++# It looks like we will need new zones Asia/Atyrau and Asia/Qostanay
++# to handle changes from 1992 through 2004 that we did not previously
++# know about.
++
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
++# This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
++# KZ-KAR, KZ-SEV, KZ-PAV, and KZ-YUZ.
+ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+- 6:00 RussiaAsia ALM%sT 1991
+- 6:00 - ALMT 1992
+- 6:00 RussiaAsia ALM%sT 2005 Mar 15
+- 6:00 - ALMT
+-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
++ 6:00 - +06
++# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+- 5:00 - KIZT 1981 Apr 1
+- 5:00 1:00 KIZST 1981 Oct 1
+- 6:00 - KIZT 1982 Apr 1
+- 5:00 RussiaAsia KIZ%sT 1991
+- 5:00 - KIZT 1991 Dec 16 # independence
+- 5:00 - QYZT 1992 Jan 19 2:00
+- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+- 6:00 - QYZT
+-# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 6:00 - +06
++# Aqtobe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+- 5:00 - AKTT 1981 Apr 1
+- 5:00 1:00 AKTST 1981 Oct 1
+- 6:00 - AKTT 1982 Apr 1
+- 5:00 RussiaAsia AKT%sT 1991
+- 5:00 - AKTT 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+- 5:00 - AQTT
+-# Mangghystau
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 5:00 - +05
++# Qostanay (KZ-KUS)
++
++# Mangghystau (KZ-MAN)
+ # Aqtau was not founded until 1963, but it represents an inhabited region,
+ # so include time stamps before 1963.
+ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+- 5:00 - FORT 1963
+- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+- 6:00 - SHET 1982 Apr 1
+- 5:00 RussiaAsia SHE%sT 1991
+- 5:00 - SHET 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+- 4:00 RussiaAsia AQT%sT 2005 Mar 15
+- 5:00 - AQTT
+-# West Kazakhstan
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1963
++ 5:00 - +05 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
++
++# West Kazakhstan (KZ-ZAP)
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+- 4:00 - URAT 1930 Jun 21 # Ural'sk time
+- 5:00 - URAT 1981 Apr 1
+- 5:00 1:00 URAST 1981 Oct 1
+- 6:00 - URAT 1982 Apr 1
+- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+- 4:00 RussiaAsia URA%sT 1991
+- 4:00 - URAT 1991 Dec 16 # independence
+- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+- 5:00 - ORAT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
+
+ # Kyrgyzstan (Kirgizstan)
+ # Transitions through 1991 are from Shanks & Pottenger.
+
+ # From Paul Eggert (2005-08-15):
+ # According to an article dated today in the Kyrgyzstan Development Gateway
+-# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
++# http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml
+ # Kyrgyzstan is canceling the daylight saving time system. I take the article
+ # to mean that they will leave their clocks at 6 hours ahead of UTC.
+ # From Malik Abdugaliev (2005-09-21):
+@@ -1643,71 +1834,103 @@
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+- 5:00 - FRUT 1930 Jun 21 # Frunze Time
+- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+- 6:00 - KGT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
++ 5:00 Kyrgyz +05/+06 2005 Aug 12
++ 6:00 - +06
+
+ ###############################################################################
+
+ # Korea (North and South)
+
+-# From Annie I. Bang (2006-07-10) in
+-# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
+-# The Ministry of Commerce, Industry and Energy has already
+-# commissioned a research project [to reintroduce DST] and has said
+-# the system may begin as early as 2008.... Korea ran a daylight
+-# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
+-
+-# From Shanks & Pottenger:
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule ROK 1960 only - May 15 0:00 1:00 D
+-Rule ROK 1960 only - Sep 13 0:00 0 S
+-Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D
+-Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S
+-
+-# From Paul Eggert (2014-07-01):
+-# The following entries are from Shanks & Pottenger, except that I
+-# guessed that time zone abbreviations through 1945 followed the same
++# From Annie I. Bang (2006-07-10):
++# http://www.koreaherald.com/view.php?ud=200607100012
++# Korea ran a daylight saving program from 1949-61 but stopped it
++# during the 1950-53 Korean War. The system was temporarily enforced
++# between 1987 and 1988 ...
++
++# From Sanghyuk Jung (2014-10-29):
++# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# According to the Korean Wikipedia
++# http://ko.wikipedia.org/wiki/한국_표준시
++# [oldid=12896437 2014-09-04 08:03 UTC]
++# DST in Republic of Korea was as follows.... And I checked old
++# newspapers in Korean, all articles correspond with data in Wikipedia.
++# For example, the article in 1948 (Korean Language) proved that DST
++# started at June 1 in that year. For another example, the article in
++# 1988 said that DST started at 2:00 AM in that year.
++
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule ROK 1948 only - Jun 1 0:00 1:00 D
++Rule ROK 1948 only - Sep 13 0:00 0 S
++Rule ROK 1949 only - Apr 3 0:00 1:00 D
++Rule ROK 1949 1951 - Sep Sun>=8 0:00 0 S
++Rule ROK 1950 only - Apr 1 0:00 1:00 D
++Rule ROK 1951 only - May 6 0:00 1:00 D
++Rule ROK 1955 only - May 5 0:00 1:00 D
++Rule ROK 1955 only - Sep 9 0:00 0 S
++Rule ROK 1956 only - May 20 0:00 1:00 D
++Rule ROK 1956 only - Sep 30 0:00 0 S
++Rule ROK 1957 1960 - May Sun>=1 0:00 1:00 D
++Rule ROK 1957 1960 - Sep Sun>=18 0:00 0 S
++Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D
++Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
++
++# From Paul Eggert (2016-08-23):
++# The Korean Wikipedia entry gives the following sources for UT offsets:
++#
++# 1908: Official Journal Article No. 3994 (decree No. 5)
++# 1912: Governor-General of Korea Official Gazette Issue No. 367
++# (Announcement No. 338)
++# 1954: Presidential Decree No. 876 (1954-03-17)
++# 1961: Law No. 676 (1961-08-07)
++#
++# (Another source "1987: Law No. 3919 (1986-12-31)" was in the 2014-10-30
++# edition of the Korean Wikipedia entry.)
++#
++# I guessed that time zone abbreviations through 1945 followed the same
+ # rules as discussed under Taiwan, with nominal switches from JST to KST
+ # when the respective cities were taken over by the Allies after WWII.
++#
++# For Pyongyang, guess no changes from World War II until 2015, as we
++# have no information otherwise.
++
++# From Steffen Thorsen (2015-08-07):
++# According to many news sources, North Korea is going to change to
++# the 8:30 time zone on August 15, one example:
++# http://www.bbc.com/news/world-asia-33815049
++#
++# From Paul Eggert (2015-08-15):
++# Bells rang out midnight (00:00) Friday as part of the celebrations. See:
++# Talmadge E. North Korea celebrates new time zone, 'Pyongyang Time'
++# http://news.yahoo.com/north-korea-celebrates-time-zone-pyongyang-time-164038128.html
++# There is no common English-language abbreviation for this time zone.
++# Use KST, as that's what we already use for 1954-1961 in ROK.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Seoul 8:27:52 - LMT 1890
+- 8:30 - KST 1904 Dec
+- 9:00 - JCST 1928
+- 8:30 - KST 1932
++Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1
++ 8:30 - KST 1912 Jan 1
+ 9:00 - JCST 1937 Oct 1
+ 9:00 - JST 1945 Sep 8
+ 9:00 - KST 1954 Mar 21
+- 8:00 ROK K%sT 1961 Aug 10
+- 8:30 - KST 1968 Oct
++ 8:30 ROK K%sT 1961 Aug 10
+ 9:00 ROK K%sT
+-Zone Asia/Pyongyang 8:23:00 - LMT 1890
+- 8:30 - KST 1904 Dec
+- 9:00 - JCST 1928
+- 8:30 - KST 1932
++Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1
++ 8:30 - KST 1912 Jan 1
+ 9:00 - JCST 1937 Oct 1
+ 9:00 - JST 1945 Aug 24
+- 9:00 - KST 1954 Mar 21
+- 8:00 - KST 1961 Aug 10
+- 9:00 - KST
++ 9:00 - KST 2015 Aug 15 00:00
++ 8:30 - KST
+
+ ###############################################################################
+
+ # Kuwait
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kuwait 3:11:56 - LMT 1950
+- 3:00 - AST
++# See Asia/Riyadh.
+
+ # Laos
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
+- 7:00 - ICT
++# See Asia/Bangkok.
++
+
+ # Lebanon
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1745,8 +1968,8 @@
+ Rule NBorneo 1935 1941 - Dec 14 0:00 0 -
+ #
+ # peninsular Malaysia
+-# The data here are taken from Mok Ly Yng (2003-10-30)
+-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
++# taken from Mok Ly Yng (2003-10-30)
++# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+@@ -1758,12 +1981,12 @@
+ 7:30 - MALT 1982 Jan 1
+ 8:00 - MYT # Malaysia Time
+ # Sabah & Sarawak
+-# From Paul Eggert (2006-03-22):
+-# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
+-# transition dates are from Mok Ly Yng.
++# From Paul Eggert (2014-08-12):
++# The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945
++# and 1982 transition dates are from Mok Ly Yng.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuching 7:21:20 - LMT 1926 Mar
+- 7:30 - BORT 1933 # Borneo Time
++ 7:30 - BORT 1933 # Borneo Time
+ 8:00 NBorneo BOR%sT 1942 Feb 16
+ 9:00 - JST 1945 Sep 12
+ 8:00 - BORT 1982 Jan 1
+@@ -1771,9 +1994,9 @@
+
+ # Maldives
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
+- 4:54:00 - MMT 1960 # Male Mean Time
+- 5:00 - MVT # Maldives Time
++Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
++ 4:54:00 - MMT 1960 # Male Mean Time
++ 5:00 - MVT # Maldives Time
+
+ # Mongolia
+
+@@ -1831,11 +2054,11 @@
+ # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+ # there is only one time zone and that DST is observed, citing Microsoft
+ # Windows XP as the source. Risto Nykänen (2005-05-16) reports that
+-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
++# travelmongolia.org says there are two time zones (UT +07, +08) with no DST.
+ # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+ # Washington, DC says there are two time zones, with DST observed.
+ # He also found
+-# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
++# http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&
+ # which also says that there is DST, and which has a comment by "Toddius"
+ # (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
+ # The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
+@@ -1879,6 +2102,13 @@
+ # was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
+ # this is almost surely wrong.
+
++# From Ganbold Tsagaankhuu (2015-03-10):
++# It seems like yesterday Mongolian Government meeting has concluded to use
++# daylight saving time in Mongolia.... Starting at 2:00AM of last Saturday of
++# March 2015, daylight saving time starts. And 00:00AM of last Saturday of
++# September daylight saving time ends. Source:
++# http://zasag.mn/news/view/8969
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Mongol 1983 1984 - Apr 1 0:00 1:00 S
+ Rule Mongol 1983 only - Oct 1 0:00 0 -
+@@ -1899,17 +2129,19 @@
+ Rule Mongol 2001 only - Apr lastSat 2:00 1:00 S
+ Rule Mongol 2001 2006 - Sep lastSat 2:00 0 -
+ Rule Mongol 2002 2006 - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 max - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 max - Sep lastSat 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
+ Zone Asia/Hovd 6:06:36 - LMT 1905 Aug
+- 6:00 - HOVT 1978 # Hovd Time
++ 6:00 - HOVT 1978 # Hovd Time
+ 7:00 Mongol HOV%sT
+ # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+ Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
+- 7:00 - ULAT 1978 # Ulaanbaatar Time
++ 7:00 - ULAT 1978 # Ulaanbaatar Time
+ 8:00 Mongol ULA%sT
+-# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
++# Choibalsan, a.k.a. Bajan Tümen, Bajan Tumen, Chojbalsan,
+ # Choybalsan, Sanbejse, Tchoibalsan
+ Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug
+ 7:00 - ULAT 1978
+@@ -1924,12 +2156,7 @@
+ 5:45 - NPT # Nepal Time
+
+ # Oman
+-
+-# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Muscat 3:54:24 - LMT 1920
+- 4:00 - GST
++# See Asia/Dubai.
+
+ # Pakistan
+
+@@ -1973,10 +2200,9 @@
+ # Here is an article that Pakistan plan to introduce Daylight Saving Time
+ # on June 1, 2008 for 3 months.
+ #
+-# "... The federal cabinet on Wednesday announced a new conservation plan to help
+-# reduce load shedding by approving the closure of commercial centres at 9pm and
+-# moving clocks forward by one hour for the next three months.
+-# ...."
++# "... The federal cabinet on Wednesday announced a new conservation plan to
++# help reduce load shedding by approving the closure of commercial centres at
++# 9pm and moving clocks forward by one hour for the next three months. ...."
+ #
+ # http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+@@ -2023,19 +2249,14 @@
+
+ # From Alexander Krivenyshev (2009-09-28):
+ # According to Associated Press Of Pakistan, it is confirmed that
+-# Pakistan clocks across the country would be turned back by an hour from October
+-# 1, 2009.
++# Pakistan clocks across the country would be turned back by an hour from
++# October 1, 2009.
+ #
+ # "Clocks to go back one hour from 1 Oct"
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2
+ # http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm
+-
+-# From Steffen Thorsen (2009-09-29):
+-# Alexander Krivenyshev wrote:
+-# > According to Associated Press Of Pakistan, it is confirmed that
+-# > Pakistan clocks across the country would be turned back by an hour from October
+-# > 1, 2009.
+ #
++# From Steffen Thorsen (2009-09-29):
+ # Now they seem to have changed their mind, November 1 is the new date:
+ # http://www.thenews.com.pk/top_story_detail.asp?Id=24742
+ # "The country's clocks will be reversed by one hour on November 1.
+@@ -2073,12 +2294,11 @@
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
++Rule Pakistan 2002 only - Apr Sun>=2 0:00 1:00 S
++Rule Pakistan 2002 only - Oct Sun>=2 0:00 0 -
+ Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+-Rule Pakistan 2008 only - Nov 1 0:00 0 -
++Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+-Rule Pakistan 2009 only - Nov 1 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Karachi 4:28:12 - LMT 1907
+@@ -2153,7 +2373,7 @@
+
+ # From Paul Eggert (1999-09-20):
+ # Daoud Kuttab writes in Holiday havoc
+-# <http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html>
++# http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html
+ # (Jerusalem Post, 1999-04-22) that
+ # the Palestinian National Authority changed to DST on 1999-04-15.
+ # I vaguely recall that they switch back in October (sorry, forgot the source).
+@@ -2329,13 +2549,38 @@
+ # official source...:
+ # http://www.palestinecabinet.gov.ps/ar/Views/ViewDetails.aspx?pid=1252
+
+-# From Paul Eggert (2013-09-24):
+-# For future dates, guess the last Thursday in March at 24:00 through
+-# the first Friday on or after September 21 at 00:00. This is consistent with
+-# the predictions in today's editions of the following URLs,
+-# which are for Gaza and Hebron respectively:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=702
+-# http://www.timeanddate.com/worldclock/timezone.html?n=2364
++# From Steffen Thorsen (2015-03-03):
++# Sources such as http://www.alquds.com/news/article/view/id/548257
++# and http://www.raya.ps/ar/news/890705.html say Palestine areas will
++# start DST on 2015-03-28 00:00 which is one day later than expected.
++#
++# From Paul Eggert (2015-03-03):
++# http://www.timeanddate.com/time/change/west-bank/ramallah?year=2014
++# says that the fall 2014 transition was Oct 23 at 24:00.
++
++# From Hannah Kreitem (2016-03-09):
++# http://www.palestinecabinet.gov.ps/WebSite/ar/ViewDetails?ID=31728
++# [Google translation]: "The Council also decided to start daylight
++# saving in Palestine as of one o'clock on Saturday morning,
++# 2016-03-26, to provide the clock 60 minutes ahead."
++#
++# From Paul Eggert (2016-03-12):
++# Predict spring transitions on March's last Saturday at 01:00 from now on.
++
++# From Sharef Mustafa (2016-10-19):
++# [T]he Palestinian cabinet decision (Mar 8th 2016) published on
++# http://www.palestinecabinet.gov.ps/WebSite/Upload/Decree/GOV_17/16032016134830.pdf
++# states that summer time will end on Oct 29th at 01:00.
++#
++# From Tim Parenti (2016-10-19):
++# Predict fall transitions on October's last Saturday at 01:00 from now on.
++# This is consistent with the 2016 transition as well as our spring
++# predictions.
++#
++# From Paul Eggert (2016-10-19):
++# It's also consistent with predictions in the following URLs today:
++# http://www.timeanddate.com/time/change/gaza-strip/gaza
++# http://www.timeanddate.com/time/change/west-bank/hebron
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
+@@ -2361,9 +2606,13 @@
+ Rule Palestine 2011 only - Aug 1 0:00 0 -
+ Rule Palestine 2011 only - Aug 30 0:00 1:00 S
+ Rule Palestine 2011 only - Sep 30 0:00 0 -
+-Rule Palestine 2012 max - Mar lastThu 24:00 1:00 S
++Rule Palestine 2012 2014 - Mar lastThu 24:00 1:00 S
+ Rule Palestine 2012 only - Sep 21 1:00 0 -
+-Rule Palestine 2013 max - Sep Fri>=21 0:00 0 -
++Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
++Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
++Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
++Rule Palestine 2016 max - Mar lastSat 1:00 1:00 S
++Rule Palestine 2016 max - Oct lastSat 1:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+@@ -2371,10 +2620,10 @@
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+- 2:00 Palestine EE%sT 2008 Aug 29 0:00
++ 2:00 Palestine EE%sT 2008 Aug 29 0:00
+ 2:00 - EET 2008 Sep
+ 2:00 Palestine EE%sT 2010
+- 2:00 - EET 2010 Mar 27 0:01
++ 2:00 - EET 2010 Mar 27 0:01
+ 2:00 Palestine EE%sT 2011 Aug 1
+ 2:00 - EET 2012
+ 2:00 Palestine EE%sT
+@@ -2394,22 +2643,23 @@
+ # Philippines, issued a proclamation announcing that 1844-12-30 was to
+ # be immediately followed by 1845-01-01; see R.H. van Gent's
+ # History of the International Date Line
+-# <http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm>.
+-# The rest of the data are from Shanks & Pottenger.
++# http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
++# The rest of the data entries are from Shanks & Pottenger.
+
+-# From Paul Eggert (2006-04-25):
+-# Tomorrow's Manila Standard reports that the Philippines Department of
+-# Trade and Industry is considering adopting DST this June when the
+-# rainy season begins. See
+-# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
+-# For now, we'll ignore this, since it's not definite and we lack details.
+-#
+ # From Jesper Nørgaard Welen (2006-04-26):
+ # ... claims that Philippines had DST last time in 1990:
+ # http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
+ # [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
+ # but no details]
+
++# From Paul Eggert (2014-08-14):
++# The following source says DST may be instituted November-January and again
++# March-June, but this is not definite. It also says DST was last proclaimed
++# during the Ramos administration (1992-1998); but again, no details.
++# Carcamo D. PNoy urged to declare use of daylight saving time.
++# Philippine Star 2014-08-05
++# http://www.philstar.com/headlines/2014/08/05/1354152/pnoy-urged-declare-use-daylight-saving-time
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Phil 1936 only - Nov 1 0:00 1:00 S
+ Rule Phil 1937 only - Feb 1 0:00 0 -
+@@ -2426,9 +2676,10 @@
+
+ # Qatar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
++Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+ 4:00 - GST 1972 Jun
+ 3:00 - AST
++Link Asia/Qatar Asia/Bahrain
+
+ # Saudi Arabia
+ #
+@@ -2449,16 +2700,18 @@
+ # earlier date.
+ #
+ # Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two
+-# time zones; the other zone, at UTC+4, was in the far eastern part of
++# time zones; the other zone, at UT +04, was in the far eastern part of
+ # the country. Ignore this, as it's before our 1970 cutoff.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14
+ 3:00 - AST
++Link Asia/Riyadh Asia/Aden # Yemen
++Link Asia/Riyadh Asia/Kuwait
+
+ # Singapore
+-# The data here are taken from Mok Ly Yng (2003-10-30)
+-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
++# taken from Mok Ly Yng (2003-10-30)
++# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+@@ -2501,7 +2754,7 @@
+ # at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
+
+ # From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
+-# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
++# http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML
+ # [The Tamil Tigers] never accepted the original 1996 time change and simply
+ # kept their clocks set five and a half hours ahead of Greenwich Mean
+ # Time (GMT), in line with neighbor India.
+@@ -2509,45 +2762,31 @@
+ # People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+ # as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+-# From K Sethu (2006-04-25):
+-# I think the abbreviation LKT originated from the world of computers at
+-# the time of or subsequent to the time zone changes by SL Government
+-# twice in 1996 and probably SL Government or its standardization
+-# agencies never declared an abbreviation as a national standard.
+-#
+-# I recollect before the recent change the government announcements
+-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+-# Time and no mention was made about the abbreviation.
+-#
+-# If we look at Sri Lanka Department of Government's "Official News
+-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+-# use SLT as abbreviation in time stamp at the beginning of each news
+-# item....
+-#
+-# Within Sri Lanka I think LKT is well known among computer users and
+-# administrators. In my opinion SLT may not be a good choice because the
+-# nation's largest telcom / internet operator Sri Lanka Telcom is well
+-# known by that abbreviation - simply as SLT (there IP domains are
+-# slt.lk and sltnet.lk).
+-#
+-# But if indeed our government has adopted SLT as standard abbreviation
+-# (that we have not known so far) then it is better that it be used for
+-# all computers.
+-
+-# From Paul Eggert (2006-04-25):
+-# One possibility is that we wait for a bit for the dust to settle down
+-# and then see what people actually say in practice.
++# From Sadika Sumanapala (2016-10-19):
++# According to http://www.sltime.org (maintained by Measurement Units,
++# Standards & Services Department, Sri Lanka) abbreviation for Sri Lanka
++# standard time is SLST.
++#
++# From Paul Eggert (2016-10-18):
++# "SLST" seems to be reasonably recent and rarely-used outside time
++# zone nerd sources. I searched Google News and found three uses of
++# it in the International Business Times of India in February and
++# March of this year when discussing cricket match times, but nothing
++# since then (though there has been a lot of cricket) and nothing in
++# other English-language news sources. Our old abbreviation "LKT" is
++# even worse. For now, let's use a numeric abbreviation; we can
++# switch to "SLST" if it catches on.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+- 5:19:32 - MMT 1906 # Moratuwa Mean Time
+- 5:30 - IST 1942 Jan 5
+- 5:30 0:30 IHST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 16 2:00
+- 5:30 - IST 1996 May 25 0:00
+- 6:30 - LKT 1996 Oct 26 0:30
+- 6:00 - LKT 2006 Apr 15 0:30
+- 5:30 - IST
++ 5:19:32 - MMT 1906 # Moratuwa Mean Time
++ 5:30 - +0530 1942 Jan 5
++ 5:30 0:30 +0530/+06 1942 Sep
++ 5:30 1:00 +0530/+0630 1945 Oct 16 2:00
++ 5:30 - +0530 1996 May 25 0:00
++ 6:30 - +0630 1996 Oct 26 0:30
++ 6:00 - +06 2006 Apr 15 0:30
++ 5:30 - +0530
+
+ # Syria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -2622,8 +2861,7 @@
+
+ # From Stephen Colebourne (2008-03-17):
+ # For everyone's info, I saw an IATA time zone change for [Syria] for
+-# this month (March 2008) in the last day or so...This is the data IATA
+-# are now using:
++# this month (March 2008) in the last day or so....
+ # Country Time Standard --- DST Start --- --- DST End --- DST
+ # Name Zone Variation Time Date Time Date
+ # Variation
+@@ -2710,82 +2948,120 @@
+ Rule Syria 2009 max - Oct lastFri 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
++Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
+ 2:00 Syria EE%sT
+
+ # Tajikistan
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+- 5:00 1:00 DUSST 1991 Sep 9 2:00s
+- 5:00 - TJT # Tajikistan Time
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 1:00 +05/+06 1991 Sep 9 2:00s
++ 5:00 - +05
+
+ # Thailand
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bangkok 6:42:04 - LMT 1880
+ 6:42:04 - BMT 1920 Apr # Bangkok Mean Time
+ 7:00 - ICT
++Link Asia/Bangkok Asia/Phnom_Penh # Cambodia
++Link Asia/Bangkok Asia/Vientiane # Laos
+
+ # Turkmenistan
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+- 5:00 - TMT
++ 4:00 - +04 1930 Jun 21
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
++ 5:00 - +05
+
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dubai 3:41:12 - LMT 1920
+ 4:00 - GST
++Link Asia/Dubai Asia/Muscat # Oman
+
+ # Uzbekistan
++# Byalokoz 1919 says Uzbekistan was 4:27:53.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2
+- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+- 5:00 - SAMT 1981 Apr 1
+- 5:00 1:00 SAMST 1981 Oct 1
+- 6:00 - TAST 1982 Apr 1 # Tashkent Time
+- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+ # Milne says Tashkent was 4:37:10.8; round to nearest.
+ Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2
+- 5:00 - TAST 1930 Jun 21 # Tashkent Time
+- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+
+ # Vietnam
+
+-# From Paul Eggert (2013-02-21):
++# From Paul Eggert (2014-10-04):
+ # Milne gives 7:16:56 for the meridian of Saigon in 1899, as being
+ # used in Lower Laos, Cambodia, and Annam. But this is quite a ways
+ # from Saigon's location. For now, ignore this and stick with Shanks
+-# and Pottenger.
++# and Pottenger for LMT before 1906.
+
+ # From Arthur David Olson (2008-03-18):
+ # The English-language name of Vietnam's most populous city is "Ho Chi Minh
+ # City"; use Ho_Chi_Minh below to avoid a name of more than 14 characters.
+
+-# From Shanks & Pottenger:
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
++# From Paul Eggert (2014-10-21) after a heads-up from Trần Ngọc Quân:
++# Trần Tiến Bình's authoritative book "Lịch Việt Nam: thế kỷ XX-XXI (1901-2100)"
++# (Nhà xuất bản Văn Hoá - Thông Tin, Hanoi, 2005), pp 49-50,
++# is quoted verbatim in:
++# http://www.thoigian.com.vn/?mPage=P80D01
++# is translated by Brian Inglis in:
++# http://mm.icann.org/pipermail/tz/2014-October/021654.html
++# and is the basis for the information below.
++#
++# The 1906 transition was effective July 1 and standardized Indochina to
++# Phù Liễn Observatory, legally 104 deg. 17'17" east of Paris.
++# It's unclear whether this meant legal Paris Mean Time (00:09:21) or
++# the Paris Meridian (2 deg. 20'14.03" E); the former yields 07:06:30.1333...
++# and the latter 07:06:29.333... so either way it rounds to 07:06:30,
++# which is used below even though the modern-day Phù Liễn Observatory
++# is closer to 07:06:31. Abbreviate Phù Liễn Mean Time as PLMT.
++#
++# The following transitions occurred in Indochina in general (before 1954)
++# and in South Vietnam in particular (after 1954):
++# To 07:00 on 1911-05-01.
++# To 08:00 on 1942-12-31 at 23:00.
++# To 09:00 in 1945-03-14 at 23:00.
++# To 07:00 on 1945-09-02 in Vietnam.
++# To 08:00 on 1947-04-01 in French-controlled Indochina.
++# To 07:00 on 1955-07-01 in South Vietnam.
++# To 08:00 on 1959-12-31 at 23:00 in South Vietnam.
++# To 07:00 on 1975-06-13 in South Vietnam.
++#
++# Trần cites the following sources; it's unclear which supplied the info above.
++#
++# Hoàng Xuân Hãn: "Lịch và lịch Việt Nam". Tập san Khoa học Xã hội,
++# No. 9, Paris, February 1982.
++#
++# Lê Thành Lân: "Lịch và niên biểu lịch sử hai mươi thế kỷ (0001-2010)",
++# NXB Thống kê, Hanoi, 2000.
++#
++# Lê Thành Lân: "Lịch hai thế kỷ (1802-2010) và các lịch vĩnh cửu",
++# NXB Thuận Hoá, Huế, 1995.
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Jul 1
++ 7:00 - ICT 1959 Dec 31 23:00
++ 8:00 - IDT 1975 Jun 13
+ 7:00 - ICT
+
+ # Yemen
+-
+-# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
+-# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Aden 2:59:54 - LMT 1950
+- 3:00 - AST
++# See Asia/Riyadh.
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -60,6 +60,14 @@
+ # Hamilton is the largest, but there is also a Hamilton in Victoria,
+ # so use Lindeman.
+ #
++# From J William Piggott (2016-02-20):
++# There is no location named Holiday Islands in Queensland Australia; holiday
++# islands is a colloquial term used globally. Hayman and Lindeman are at the
++# north and south extremes of the Whitsunday Islands archipelago, and
++# Hamilton is in between; it is reasonable to believe that this time zone
++# applies to all of the Whitsundays.
++# http://www.australia.gov.au/about-australia/australian-story/austn-islands
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D
+ Rule AQ 1972 only - Feb lastSun 2:00s 0 S
+@@ -101,7 +109,7 @@
+ # Tasmania
+ #
+ # From Paul Eggert (2005-08-16):
+-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
++# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml
+ # says King Island didn't observe DST from WWII until late 1971.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -126,12 +134,12 @@
+ Rule AT 2008 max - Apr Sun>=1 2:00s 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Australia/Hobart 9:49:16 - LMT 1895 Sep
+- 10:00 - AEST 1916 Oct 1 2:00
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1967
+ 10:00 AT AE%sT
+ Zone Australia/Currie 9:35:28 - LMT 1895 Sep
+- 10:00 - AEST 1916 Oct 1 2:00
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1971 Jul
+ 10:00 AT AE%sT
+@@ -220,8 +228,8 @@
+ # Permanent occupation (scientific station) 1911-1915 and since 25 March 1948;
+ # sealing and penguin oil station operated Nov 1899 to Apr 1919. See the
+ # Tasmania Parks & Wildlife Service history of sealing at Macquarie Island
+-# <http://www.parks.tas.gov.au/index.aspx?base=1828>
+-# <http://www.parks.tas.gov.au/index.aspx?base=1831>.
++# http://www.parks.tas.gov.au/index.aspx?base=1828
++# http://www.parks.tas.gov.au/index.aspx?base=1831
+ # Guess that it was like Australia/Hobart while inhabited before 2010.
+ #
+ # From Steffen Thorsen (2010-03-10):
+@@ -235,13 +243,13 @@
+ # will produce a binary file with an [A]EST-type as the first 32-bit type;
+ # this is required for correct handling of times before 1916 by
+ # pre-2013 versions of localtime.
+-Zone Antarctica/Macquarie 0 - zzz 1899 Nov
+- 10:00 - AEST 1916 Oct 1 2:00
++Zone Antarctica/Macquarie 0 - -00 1899 Nov
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+- 10:00 Aus AE%sT 1919 Apr 1 0:00s
+- 0 - zzz 1948 Mar 25
++ 10:00 Aus AE%sT 1919 Apr 1 0:00s
++ 0 - -00 1948 Mar 25
+ 10:00 Aus AE%sT 1967
+- 10:00 AT AE%sT 2010 Apr 4 3:00
++ 10:00 AT AE%sT 2010 Apr 4 3:00
+ 11:00 - MIST # Macquarie I Standard Time
+
+ # Christmas
+@@ -331,31 +339,51 @@
+ # Fiji will end DST on 2014-01-19 02:00:
+ # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVINGS-TO-END-THIS-MONTH-%281%29.aspx
+
+-# From Paul Eggert (2014-01-10):
+-# For now, guess that Fiji springs forward the Sunday before the fourth
+-# Monday in October, and springs back the penultimate Sunday in January.
+-# This is ad hoc, but matches recent practice.
++# From Ken Rylander (2014-10-20):
++# DST will start Nov. 2 this year.
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-NOVEMBER-2ND.aspx
++
++# From a government order dated 2015-08-26 and published as Legal Notice No. 77
++# in the Government of Fiji Gazette Supplement No. 24 (2015-08-28),
++# via Ken Rylander (2015-09-02):
++# the daylight saving period is 1 hour in advance of the standard time
++# commencing at 2.00 am on Sunday 1st November, 2015 and ending at
++# 3.00 am on Sunday 17th January, 2016.
++
++# From Raymond Kumar (2016-10-04):
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-6th-NOVEMBER,-2016.aspx
++# "Fiji's daylight savings will begin on Sunday, 6 November 2016, when
++# clocks go forward an hour at 2am to 3am.... Daylight Saving will
++# end at 3.00am on Sunday 15th January 2017."
++
++# From Paul Eggert (2016-10-03):
++# For now, guess DST from 02:00 the first Sunday in November to
++# 03:00 the third Sunday in January. Although ad hoc, it matches
++# transitions since late 2014 and seems more likely to match future
++# practice than guessing no DST.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S
+ Rule Fiji 1999 2000 - Feb lastSun 3:00 0 -
+ Rule Fiji 2009 only - Nov 29 2:00 1:00 S
+ Rule Fiji 2010 only - Mar lastSun 3:00 0 -
+-Rule Fiji 2010 max - Oct Sun>=21 2:00 1:00 S
++Rule Fiji 2010 2013 - Oct Sun>=21 2:00 1:00 S
+ Rule Fiji 2011 only - Mar Sun>=1 3:00 0 -
+ Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 -
+-Rule Fiji 2014 max - Jan Sun>=18 2:00 0 -
++Rule Fiji 2014 only - Jan Sun>=18 2:00 0 -
++Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S
++Rule Fiji 2015 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
++Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji FJ%sT # Fiji Time
+
+ # French Polynesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
++Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+ -9:00 - GAMT # Gambier Time
+ Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+ -9:30 - MART # Marquesas Time
+-Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
++Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
+ -10:00 - TAHT # Tahiti Time
+ # Clipperton (near North America) is administered from French Polynesia;
+ # it is uninhabited.
+@@ -363,14 +391,15 @@
+ # Guam
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31
+- 9:39:00 - LMT 1901 # Agana
+- 10:00 - GST 2000 Dec 23 # Guam
++ 9:39:00 - LMT 1901 # Agana
++ 10:00 - GST 2000 Dec 23 # Guam
+ 10:00 - ChST # Chamorro Standard Time
++Link Pacific/Guam Pacific/Saipan # N Mariana Is
+
+ # Kiribati
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+- 12:00 - GILT # Gilbert Is Time
++Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
++ 12:00 - GILT # Gilbert Is Time
+ Zone Pacific/Enderbury -11:24:20 - LMT 1901
+ -12:00 - PHOT 1979 Oct # Phoenix Is Time
+ -11:00 - PHOT 1995
+@@ -381,12 +410,7 @@
+ 14:00 - LINT
+
+ # N Mariana Is
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
+- 9:43:00 - LMT 1901
+- 9:00 - MPT 1969 Oct # N Mariana Is Time
+- 10:00 - MPT 2000 Dec 23
+- 10:00 - ChST # Chamorro Standard Time
++# See Pacific/Guam.
+
+ # Marshall Is
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -395,24 +419,24 @@
+ 12:00 - MHT
+ Zone Pacific/Kwajalein 11:09:20 - LMT 1901
+ 11:00 - MHT 1969 Oct
+- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
++ -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
+ 12:00 - MHT
+
+ # Micronesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Chuuk 10:07:08 - LMT 1901
+- 10:00 - CHUT # Chuuk Time
+-Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
+- 11:00 - PONT # Pohnpei Time
++ 10:00 - CHUT # Chuuk Time
++Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
++ 11:00 - PONT # Pohnpei Time
+ Zone Pacific/Kosrae 10:51:56 - LMT 1901
+- 11:00 - KOST 1969 Oct # Kosrae Time
++ 11:00 - KOST 1969 Oct # Kosrae Time
+ 12:00 - KOST 1999
+ 11:00 - KOST
+
+ # Nauru
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
+- 11:30 - NRT 1942 Mar 15 # Nauru Time
++Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
++ 11:30 - NRT 1942 Mar 15 # Nauru Time
+ 9:00 - JST 1944 Aug 15
+ 11:30 - NRT 1979 May
+ 12:00 - NRT
+@@ -489,8 +513,8 @@
+ Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
+ Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
+- -10:30 - CKT 1978 Nov 12 # Cook Is Time
++Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
++ -10:30 - CKT 1978 Nov 12 # Cook Is Time
+ -10:00 Cook CK%sT
+
+ ###############################################################################
+@@ -498,40 +522,68 @@
+
+ # Niue
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
+- -11:20 - NUT 1951 # Niue Time
+- -11:30 - NUT 1978 Oct 1
++Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
++ -11:20 - NUT 1951 # Niue Time
++ -11:30 - NUT 1978 Oct 1
+ -11:00 - NUT
+
+ # Norfolk
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
+- 11:12 - NMT 1951 # Norfolk Mean Time
+- 11:30 - NFT # Norfolk Time
++Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
++ 11:12 - NMT 1951 # Norfolk Mean Time
++ 11:30 - NFT 1974 Oct 27 02:00 # Norfolk T.
++ 11:30 1:00 NFST 1975 Mar 2 02:00
++ 11:30 - NFT 2015 Oct 4 02:00
++ 11:00 - NFT
+
+ # Palau (Belau)
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
++Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
+ 9:00 - PWT # Palau Time
+
+ # Papua New Guinea
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+- 9:48:32 - PMMT 1895 # Port Moresby Mean Time
+- 10:00 - PGT # Papua New Guinea Time
++ 9:48:32 - PMMT 1895 # Port Moresby Mean Time
++ 10:00 - PGT # Papua New Guinea Time
++#
++# From Paul Eggert (2014-10-13):
++# Base the Bougainville entry on the Arawa-Kieta region, which appears to have
++# the most people even though it was devastated in the Bougainville Civil War.
++#
++# Although Shanks gives 1942-03-15 / 1943-11-01 for UT +09, these dates
++# are apparently rough guesswork from the starts of military campaigns.
++# The World War II entries below are instead based on Arawa-Kieta.
++# The Japanese occupied Kieta in July 1942,
++# according to the Pacific War Online Encyclopedia
++# http://pwencycl.kgbudge.com/B/o/Bougainville.htm
++# and seem to have controlled it until their 1945-08-21 surrender.
++#
++# The Autonomous Region of Bougainville switched from UT +10 to +11
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
++# abbreviate this as BST. See:
++# http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
++#
++Zone Pacific/Bougainville 10:22:16 - LMT 1880
++ 9:48:32 - PMMT 1895
++ 10:00 - PGT 1942 Jul
++ 9:00 - JST 1945 Aug 21
++ 10:00 - PGT 2014 Dec 28 2:00
++ 11:00 - BST
+
+ # Pitcairn
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+- -8:30 - PNT 1998 Apr 27 00:00
++Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
++ -8:30 - PNT 1998 Apr 27 0:00
+ -8:00 - PST # Pitcairn Standard Time
+
+ # American Samoa
+ Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
+ -11:22:48 - LMT 1911
+- -11:00 - NST 1967 Apr # N=Nome
+- -11:00 - BST 1983 Nov 30 # B=Bering
+- -11:00 - SST # S=Samoa
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+
+ # Samoa (formerly and also known as Western Samoa)
+
+@@ -574,7 +626,7 @@
+ # From Paul Eggert (2014-06-27):
+ # The International Date Line Act 2011
+ # http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf
+-# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on
++# changed Samoa from UT -11 to +13, effective "12 o'clock midnight, on
+ # Thursday 29th December 2011". The International Date Line was adjusted
+ # accordingly.
+
+@@ -617,7 +669,7 @@
+ # Solomon Is
+ # excludes Bougainville, for which see Papua New Guinea
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
++Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
+ 11:00 - SBT # Solomon Is Time
+
+ # Tokelau Is
+@@ -641,7 +693,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+- -11:00 - TKT 2011 Dec 30 # Tokelau Time
++ -11:00 - TKT 2011 Dec 30 # Tokelau Time
+ 13:00 - TKT
+
+ # Tonga
+@@ -650,11 +702,13 @@
+ Rule Tonga 2000 only - Mar 19 2:00s 0 -
+ Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
++Rule Tonga 2016 max - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+- 12:20 - TOT 1941 # Tonga Time
+- 13:00 - TOT 1999
+- 13:00 Tonga TO%sT
++ 12:20 - +1220 1941
++ 13:00 - +13 1999
++ 13:00 Tonga +13/+14
+
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -669,7 +723,7 @@
+ # 1886-1891; Baker was similar but exact dates are not known.
+ # Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+ # uninhabited thereafter.
+-# Howland observed Hawaii Standard Time (UT-10:30) in 1937;
++# Howland observed Hawaii Standard Time (UT -10:30) in 1937;
+ # see page 206 of Elgen M. Long and Marie K. Long,
+ # Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+ # So most likely Howland and Baker observed Hawaii Time from 1935
+@@ -701,8 +755,8 @@
+ # time from Operation Newsreel (Hardtack I/Teak shot, 1958-08-01) to the last
+ # Operation Fishbowl shot (Tightrope, 1962-11-04).... [See] Herman Hoerlin,
+ # "The United States High-Altitude Test Experience: A Review Emphasizing the
+-# Impact on the Environment", Los Alamos LA-6405, Oct 1976
+-# <http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf>.
++# Impact on the Environment", Los Alamos LA-6405, Oct 1976.
++# http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf
+ # See the table on page 4 where he lists GMT and local times for the tests; a
+ # footnote for the JI tests reads that local time is "JI time = Hawaii Time
+ # Minus One Hour".
+@@ -713,23 +767,7 @@
+ # uninhabited
+
+ # Midway
+-#
+-# From Mark Brader (2005-01-23):
+-# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
+-# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
+-# reproduced a Pan American Airways timeables from 1936, for their weekly
+-# "Orient Express" flights between San Francisco and Manila, and connecting
+-# flights to Chicago and the US East Coast. As it uses some time zone
+-# designations that I've never seen before:....
+-# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
+-# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
+-#
+-Zone Pacific/Midway -11:49:28 - LMT 1901
+- -11:00 - NST 1956 Jun 3
+- -11:00 1:00 NDT 1956 Sep 2
+- -11:00 - NST 1967 Apr # N=Nome
+- -11:00 - BST 1983 Nov 30 # B=Bering
+- -11:00 - SST # S=Samoa
++# See Pacific/Pago_Pago.
+
+ # Palmyra
+ # uninhabited since World War II; was probably like Pacific/Kiritimati
+@@ -749,7 +787,7 @@
+ Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
+ Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
++Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
+ 11:00 Vanuatu VU%sT # Vanuatu Time
+
+ # Wallis and Futuna
+@@ -761,31 +799,32 @@
+
+ # NOTES
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-02-21):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -802,6 +841,7 @@
+ # 10:00 AEST AEDT Eastern Australia
+ # 10:00 ChST Chamorro
+ # 10:30 LHST LHDT Lord Howe*
++# 11:00 BST Bougainville*
+ # 11:30 NZMT NZST New Zealand through 1945
+ # 12:00 NZST NZDT New Zealand 1946-present
+ # 12:15 CHAST Chatham through 1945*
+@@ -834,12 +874,12 @@
+
+ # From Paul Eggert (2005-12-08):
+ # Implementation Dates of Daylight Saving Time within Australia
+-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
++# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml
+ # summarizes daylight saving issues in Australia.
+
+ # From Arthur David Olson (2005-12-12):
+ # Lawlink NSW:Daylight Saving in New South Wales
+-# <http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving>
++# http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving
+ # covers New South Wales in particular.
+
+ # From John Mackin (1991-03-06):
+@@ -976,13 +1016,13 @@
+ #
+ # NSW (including LHI and Broken Hill):
+ # Standard Time Act 1987 (updated 1995-04-04)
+-# <http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html>
++# http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html
+ # ACT
+ # Standard Time and Summer Time Act 1972
+-# <http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html>
++# http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html
+ # SA
+ # Standard Time Act, 1898
+-# <http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html>
++# http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html
+
+ # From David Grosz (2005-06-13):
+ # It was announced last week that Daylight Saving would be extended by
+@@ -1048,7 +1088,7 @@
+ # it matches what was used in the past.
+
+ # The Australian Bureau of Meteorology FAQ
+-# <http://www.bom.gov.au/faq/faqgen.htm>
++# http://www.bom.gov.au/faq/faqgen.htm
+ # (1999-09-27) writes that Giles Meteorological Station uses
+ # South Australian time even though it's located in Western Australia.
+
+@@ -1092,7 +1132,7 @@
+ # From Christopher Hunt (2006-11-21), after an advance warning
+ # from Jesper Nørgaard Welen (2006-11-01):
+ # WA are trialing DST for three years.
+-# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
++# http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf
+
+ # From Rives McDow (2002-04-09):
+ # The most interesting region I have found consists of three towns on the
+@@ -1106,7 +1146,7 @@
+ # From Paul Eggert (2002-04-09):
+ # This is confirmed by the section entitled
+ # "What's the deal with time zones???" in
+-# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
++# http://www.earthsci.unimelb.edu.au/~awatkins/null.html
+ #
+ # From Alex Livingston (2006-12-07):
+ # ... it was just on four years ago that I drove along the Eyre Highway,
+@@ -1262,33 +1302,32 @@
+
+ # From Eric Ulevik (1999-05-26):
+ # DST will start in NSW on the last Sunday of August, rather than the usual
+-# October in 2000. [See: Matthew Moore,
+-# Two months more daylight saving
+-# Sydney Morning Herald (1999-05-26)
+-# <http://www.smh.com.au/news/9905/26/pageone/pageone4.html>]
++# October in 2000. See: Matthew Moore,
++# Two months more daylight saving, Sydney Morning Herald (1999-05-26).
++# http://www.smh.com.au/news/9905/26/pageone/pageone4.html
+
+ # From Paul Eggert (1999-09-27):
+ # See the following official NSW source:
+ # Daylight Saving in New South Wales.
+-# <http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ>
++# http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ
+ #
+ # Narrabri Shire (NSW) council has announced it will ignore the extension of
+ # daylight saving next year. See:
+ # Narrabri Council to ignore daylight saving
+-# <http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm>
++# http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm
+ # (1999-07-22). For now, we'll wait to see if this really happens.
+ #
+ # Victoria will following NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+-# <http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm>
++# http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+ # However, South Australia rejected the DST request. See:
+ # South Australia rejects Olympics daylight savings request (1999-07-19)
+-# <http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm>
++# http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm
+ #
+ # Queensland also will not observe DST for the Olympics. See:
+ # Qld says no to daylight savings for Olympics
+-# <http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm>
++# http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm
+ # (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
+ # "Look you've got to remember in my family when this came up last time
+ # I voted for it, my wife voted against it and she said to me it's all very
+@@ -1298,7 +1337,7 @@
+ #
+ # Broken Hill will stick with South Australian time in 2000. See:
+ # Broken Hill to be behind the times (1999-07-21)
+-# <http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm>
++# http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm
+
+ # IATA SSIM (1998-09) says that the spring 2000 change for Australian
+ # Capital Territory, New South Wales except Lord Howe Island and Broken
+@@ -1434,15 +1473,15 @@
+
+ # From Paul Eggert (2014-07-14):
+ # Chatham Island time was formally standardized on 1957-01-01 by
+-# New Zealand's Standard Time Amendment Act 1956 (1956-10-26)
+-# <http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf>.
++# New Zealand's Standard Time Amendment Act 1956 (1956-10-26).
++# http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf
+ # According to Google Books snippet view, a speaker in the New Zealand
+ # parliamentary debates in 1956 said "Clause 78 makes provision for standard
+ # time in the Chatham Islands. The time there is 45 minutes in advance of New
+ # Zealand time. I understand that is the time they keep locally, anyhow."
+ # For now, assume this practice goes back to the introduction of standard time
+ # in New Zealand, as this would make Chatham Islands time almost exactly match
+-# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did
++# LMT back when New Zealand was at UT +11:30; also, assume Chatham Islands did
+ # not observe New Zealand's prewar DST.
+
+ ###############################################################################
+@@ -1498,7 +1537,7 @@
+ # For now, we assume the Ladrones switched at the same time as the Philippines;
+ # see Asia/Manila.
+
+-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
++# US Public Law 106-564 (2000-12-23) made UT +10 the official standard time,
+ # under the name "Chamorro Standard Time". There is no official abbreviation,
+ # but Congressman Robert A. Underwood, author of the bill that became law,
+ # wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+@@ -1510,15 +1549,15 @@
+ # "I am certain, having lived there for the past decade, that 'Truk'
+ # (now properly known as Chuuk) ... is in the time zone GMT+10."
+ #
+-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
++# Shanks & Pottenger write that Truk switched from UT +10 to +11
+ # on 1978-10-01; ignore this for now.
+
+ # From Paul Eggert (1999-10-29):
+ # The Federated States of Micronesia Visitors Board writes in
+ # The Federated States of Micronesia - Visitor Information (1999-01-26)
+-# <http://www.fsmgov.org/info/clocks.html>
+-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
++# http://www.fsmgov.org/info/clocks.html
++# that Truk and Yap are UT +10, and Ponape and Kosrae are +11.
++# We don't know when Kosrae switched from +12; assume January 1 for now.
+
+
+ # Midway
+@@ -1537,6 +1576,20 @@
+ # started DST on June 3. Possibly DST was observed other years
+ # in Midway, but we have no record of it.
+
++# Norfolk
++
++# From Alexander Krivenyshev (2015-09-23):
++# Norfolk Island will change ... from +1130 to +1100:
++# https://www.comlaw.gov.au/Details/F2015L01483/Explanatory%20Statement/Text
++# ... at 12.30 am (by legal time in New South Wales) on 4 October 2015.
++# http://www.norfolkisland.gov.nf/nia/MediaRelease/Media%20Release%20Norfolk%20Island%20Standard%20Time%20Change.pdf
++
++# From Paul Eggert (2015-09-23):
++# Transitions before 2015 are from timeanddate.com, which consulted
++# the Norfolk Island Museum and the Australian Bureau of Meteorology's
++# Norfolk Island station, and found no record of Norfolk observing DST
++# other than in 1974/5. See:
++# http://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1570,11 +1623,11 @@
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
+
+-# Although Shanks & Pottenger says they both switched to UTC-11:30
+-# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11
++# Although Shanks & Pottenger says they both switched to UT -11:30
++# in 1911, and to -11 in 1950. many earlier sources give -11
+ # for American Samoa, e.g., the US National Bureau of Standards
+ # circular "Standard Time Throughout the World", 1932.
+-# Assume American Samoa switched to UTC-11 in 1911, not 1950,
++# Assume American Samoa switched to -11 in 1911, not 1950,
+ # and that after 1950 they agreed until (western) Samoa skipped a
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+@@ -1587,9 +1640,9 @@
+ # Since Kiribati has moved the Date Line it's not clear what Tonga will do.
+
+ # Don Mundell writes in the 1997-02-20 Tonga Chronicle
+-# How Tonga became 'The Land where Time Begins'
+-# <http://www.tongatapu.net.to/tonga/homeland/timebegins.htm>:
+-
++# How Tonga became 'The Land where Time Begins':
++# http://www.tongatapu.net.to/tonga/homeland/timebegins.htm
++#
+ # Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
+ # 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its
+ # standard time in 1940s, Tonga had the choice of subtracting from its
+@@ -1661,9 +1714,17 @@
+ # of January the standard time in the Kingdom shall be moved backward by one
+ # hour to 1:00am.
+
+-# From Pulu 'Anau (2002-11-05):
++# From Pulu ʻAnau (2002-11-05):
+ # The law was for 3 years, supposedly to get renewed. It wasn't.
+
++# From Pulu ʻAnau (2016-10-27):
++# http://mic.gov.to/news-today/press-releases/6375-daylight-saving-set-to-run-from-6-november-2016-to-15-january-2017
++# Cannot find anyone who knows the rules, has seen the duration or has seen
++# the cabinet decision, but it appears we are following Fiji's rule set.
++#
++# From Tim Parenti (2016-10-26):
++# Assume Tonga will observe DST from the first Sunday in November at 02:00
++# through the third Sunday in January at 03:00, like Fiji, for now.
+
+ # Wake
+
+@@ -1723,6 +1784,6 @@
+ # (2005-03-20):
+ #
+ # The American Practical Navigator (2002)
+-# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
++# http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187
+ # talks only about the 180-degree meridian with respect to ships in
+ # international waters; it ignores the international date line.
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -4,7 +4,8 @@
+ # This file provides links between current names for time zones
+ # and their old names. Many names changed in late 1993.
+
+-Link Africa/Asmara Africa/Asmera
++# Link TARGET LINK-NAME
++Link Africa/Nairobi Africa/Asmera
+ Link Africa/Abidjan Africa/Timbuktu
+ Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
+ Link America/Adak America/Atka
+@@ -19,8 +20,10 @@
+ Link America/Indiana/Knox America/Knox_IN
+ Link America/Kentucky/Louisville America/Louisville
+ Link America/Argentina/Mendoza America/Mendoza
++Link America/Toronto America/Montreal
+ Link America/Rio_Branco America/Porto_Acre
+ Link America/Argentina/Cordoba America/Rosario
++Link America/Tijuana America/Santa_Isabel
+ Link America/Denver America/Shiprock
+ Link America/Port_of_Spain America/Virgin
+ Link Pacific/Auckland Antarctica/South_Pole
+@@ -33,6 +36,7 @@
+ Link Asia/Urumqi Asia/Kashgar
+ Link Asia/Kathmandu Asia/Katmandu
+ Link Asia/Macau Asia/Macao
++Link Asia/Yangon Asia/Rangoon
+ Link Asia/Ho_Chi_Minh Asia/Saigon
+ Link Asia/Jerusalem Asia/Tel_Aviv
+ Link Asia/Thimphu Asia/Thimbu
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -0,0 +1,677 @@
++# Zones that go back beyond the scope of the tz database
++
++# This file is in the public domain.
++
++# This file is by no means authoritative; if you think you know
++# better, go ahead and edit it (and please send any changes to
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
++
++
++# From Paul Eggert (2014-10-31):
++
++# This file contains data outside the normal scope of the tz database,
++# in that its zones do not differ from normal tz zones after 1970.
++# Links in this file point to zones in this file, superseding links in
++# the file 'backward'.
++
++# Although zones in this file may be of some use for analyzing
++# pre-1970 time stamps, they are less reliable, cover only a tiny
++# sliver of the pre-1970 era, and cannot feasibly be improved to cover
++# most of the era. Because the zones are out of normal scope for the
++# database, less effort is put into maintaining this file. Many of
++# the zones were formerly in other source files, but were removed or
++# replaced by links as their data entries were questionable and/or they
++# differed from other zones only in pre-1970 time stamps.
++
++# Unless otherwise specified, the source for data through 1990 is:
++# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
++# San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
++
++# This file is not intended to be compiled standalone, as it
++# assumes rules from other files. In the tz distribution, use
++# 'make PACKRATDATA=backzone zones' to compile and install this file.
++
++# Zones are sorted by zone name. Each zone is preceded by the
++# name of the country that the zone is in, along with any other
++# commentary and rules associated with the entry.
++#
++# As explained in the zic man page, the zone columns are:
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++
++# Ethiopia
++# From Paul Eggert (2014-07-31):
++# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
++# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
++# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
++#
++# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
++# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
++# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
++# was for Adis Dera. Quite likely the Shanks data entries are wrong
++# anyway.
++Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++
++# Eritrea
++Zone Africa/Asmara 2:35:32 - LMT 1870
++ 2:35:32 - AMT 1890 # Asmara Mean Time
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++Link Africa/Asmara Africa/Asmera
++
++# Mali (southern)
++Zone Africa/Bamako -0:32:00 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Jun 20
++ 0:00 - GMT
++
++# Central African Republic
++Zone Africa/Bangui 1:14:20 - LMT 1912
++ 1:00 - WAT
++
++# Gambia
++Zone Africa/Banjul -1:06:36 - LMT 1912
++ -1:06:36 - BMT 1935 # Banjul Mean Time
++ -1:00 - WAT 1964
++ 0:00 - GMT
++
++# Malawi
++Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Republic of the Congo
++Zone Africa/Brazzaville 1:01:08 - LMT 1912
++ 1:00 - WAT
++
++# Burundi
++Zone Africa/Bujumbura 1:57:28 - LMT 1890
++ 2:00 - CAT
++
++# Guinea
++Zone Africa/Conakry -0:54:52 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960
++ 0:00 - GMT
++
++# Senegal
++Zone Africa/Dakar -1:09:44 - LMT 1912
++ -1:00 - WAT 1941 Jun
++ 0:00 - GMT
++
++# Tanzania
++Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
++ 3:00 - EAT 1948
++ 2:45 - BEAUT 1961
++ 3:00 - EAT
++
++# Djibouti
++Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
++ 3:00 - EAT
++
++# Cameroon
++# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
++Zone Africa/Douala 0:38:48 - LMT 1912
++ 1:00 - WAT
++# Sierra Leone
++# From Paul Eggert (2014-08-12):
++# The following table is from Shanks & Pottenger, but it can't be right.
++# Whitman gives Mar 31 - Aug 31 for 1931 on.
++# The International Hydrographic Bulletin, 1932-33, p 63 says that
++# Sierra Leone would advance its clocks by 20 minutes on 1933-10-01.
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
++Rule SL 1935 1942 - Oct 1 0:00 0 WAT
++Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
++Rule SL 1957 1962 - Sep 1 0:00 0 GMT
++Zone Africa/Freetown -0:53:00 - LMT 1882
++ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
++ -1:00 SL %s 1957
++ 0:00 SL %s
++
++# Botswana
++# From Paul Eggert (2013-02-21):
++# Milne says they were regulated by the Cape Town Signal in 1899;
++# assume they switched to 2:00 when Cape Town did.
++Zone Africa/Gaborone 1:43:40 - LMT 1885
++ 1:30 - SAST 1903 Mar
++ 2:00 - CAT 1943 Sep 19 2:00
++ 2:00 1:00 CAST 1944 Mar 19 2:00
++ 2:00 - CAT
++
++# Zimbabwe
++Zone Africa/Harare 2:04:12 - LMT 1903 Mar
++ 2:00 - CAT
++
++# South Sudan
++Zone Africa/Juba 2:06:24 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
++
++# Uganda
++Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
++ 3:00 - EAT 1930
++ 2:30 - BEAT 1948
++ 2:45 - BEAUT 1957
++ 3:00 - EAT
++
++# Rwanda
++Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
++ 2:00 - CAT
++
++# Democratic Republic of the Congo (west)
++Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
++ 1:00 - WAT
++
++# Gabon
++Zone Africa/Libreville 0:37:48 - LMT 1912
++ 1:00 - WAT
++
++# Togo
++Zone Africa/Lome 0:04:52 - LMT 1893
++ 0:00 - GMT
++
++# Angola
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
++Zone Africa/Luanda 0:52:56 - LMT 1892
++ 0:52:04 - AOT 1912 Jan 1 # Angola Time
++ 1:00 - WAT
++
++# Democratic Republic of the Congo (east)
++Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
++ 2:00 - CAT
++
++# Zambia
++Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Equatorial Guinea
++#
++# Although Shanks says that Malabo switched from UT +00 to +01 on 1963-12-15,
++# a Google Books search says that London Calling, Issues 432-465 (1948), p 19,
++# says that Spanish Guinea was at +01 back then. The Shanks data entries
++# are most likely wrong, but we have nothing better; use them here for now.
++#
++Zone Africa/Malabo 0:35:08 - LMT 1912
++ 0:00 - GMT 1963 Dec 15
++ 1:00 - WAT
++
++# Lesotho
++Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
++ 2:00 - SAST 1943 Sep 19 2:00
++ 2:00 1:00 SAST 1944 Mar 19 2:00
++ 2:00 - SAST
++
++# Swaziland
++Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
++ 2:00 - SAST
++
++# Somalia
++Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
++ 3:00 - EAT 1931
++ 2:30 - BEAT 1957
++ 3:00 - EAT
++
++# Niger
++Zone Africa/Niamey 0:08:28 - LMT 1912
++ -1:00 - WAT 1934 Feb 26
++ 0:00 - GMT 1960
++ 1:00 - WAT
++
++# Mauritania
++Zone Africa/Nouakchott -1:03:48 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Nov 28
++ 0:00 - GMT
++
++# Burkina Faso
++Zone Africa/Ouagadougou -0:06:04 - LMT 1912
++ 0:00 - GMT
++
++# Benin
++# Whitman says they switched to 1:00 in 1946, not 1934;
++# go with Shanks & Pottenger.
++Zone Africa/Porto-Novo 0:10:28 - LMT 1912 Jan 1
++ 0:00 - GMT 1934 Feb 26
++ 1:00 - WAT
++
++# São Tomé and Príncipe
++Zone Africa/Sao_Tome 0:26:56 - LMT 1884
++ -0:36:32 - LMT 1912 # Lisbon Mean Time
++ 0:00 - GMT
++
++# Mali (northern)
++Zone Africa/Timbuktu -0:12:04 - LMT 1912
++ 0:00 - GMT
++
++# Anguilla
++Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
++ -4:00 - AST
++
++# Antigua and Barbuda
++Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
++ -5:00 - EST 1951
++ -4:00 - AST
++
++# Chubut, Argentina
++# The name "Comodoro Rivadavia" exceeds the 14-byte POSIX limit.
++Zone America/Argentina/ComodRivadavia -4:30:00 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Mar 3
++ -4:00 - WART 1991 Oct 20
++ -3:00 Arg AR%sT 1999 Oct 3
++ -4:00 Arg AR%sT 2000 Mar 3
++ -3:00 - ART 2004 Jun 1
++ -4:00 - WART 2004 Jun 20
++ -3:00 - ART
++
++# Aruba
++Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
++ -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:00 - AST
++
++# Cayman Is
++Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST
++
++# Canada
++Zone America/Coral_Harbour -5:32:40 - LMT 1884
++ -5:00 NT_YK E%sT 1946
++ -5:00 - EST
++
++# Dominica
++Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
++ -4:00 - AST
++
++# Baja California
++# See 'northamerica' for why this entry is here rather than there.
++Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32
++ -8:00 - PST 1927 Jun 10 23:00
++ -7:00 - MST 1930 Nov 16
++ -8:00 - PST 1942 Apr
++ -7:00 - MST 1949 Jan 14
++ -8:00 - PST 1996
++ -8:00 Mexico P%sT
++
++# Grenada
++Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
++ -4:00 - AST
++
++# Guadeloupe
++Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe-à-Pitre
++ -4:00 - AST
++
++# Canada
++#
++# From Paul Eggert (2015-03-24):
++# Since 1970 most of Quebec has been like Toronto; see
++# America/Toronto. However, earlier versions of the tz database
++# mistakenly relied on data from Shanks & Pottenger saying that Quebec
++# differed from Ontario after 1970, and the following rules and zone
++# were created for most of Quebec from the incorrect Shanks &
++# Pottenger data. The post-1970 entries have been corrected, but the
++# pre-1970 entries are unchecked and probably have errors.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Mont 1917 only - Mar 25 2:00 1:00 D
++Rule Mont 1917 only - Apr 24 0:00 0 S
++Rule Mont 1919 only - Mar 31 2:30 1:00 D
++Rule Mont 1919 only - Oct 25 2:30 0 S
++Rule Mont 1920 only - May 2 2:30 1:00 D
++Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
++Rule Mont 1921 only - May 1 2:00 1:00 D
++Rule Mont 1922 only - Apr 30 2:00 1:00 D
++Rule Mont 1924 only - May 17 2:00 1:00 D
++Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
++Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
++Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
++Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
++Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
++Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
++Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
++Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
++Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
++Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
++Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
++Zone America/Montreal -4:54:16 - LMT 1884
++ -5:00 Mont E%sT 1918
++ -5:00 Canada E%sT 1919
++ -5:00 Mont E%sT 1942 Feb 9 2:00s
++ -5:00 Canada E%sT 1946
++ -5:00 Mont E%sT 1974
++ -5:00 Canada E%sT
++
++# Montserrat
++# From Paul Eggert (2006-03-22):
++# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
++# world.gazetteer.com says Cork Hill is the most populous location now.
++Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
++ -4:00 - AST
++
++# Argentina
++# This entry was intended for the following areas, but has been superseded by
++# more detailed zones.
++# Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
++# Formosa (FM), La Pampa (LP), Chubut (CH)
++Zone America/Rosario -4:02:40 - LMT 1894 Nov
++ -4:16:44 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Jul
++ -3:00 - ART 1999 Oct 3 0:00
++ -4:00 Arg AR%sT 2000 Mar 3 0:00
++ -3:00 - ART
++
++# St Kitts-Nevis
++Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
++ -4:00 - AST
++
++# St Lucia
++Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
++ -4:04:00 - CMT 1912 # Castries Mean Time
++ -4:00 - AST
++
++# Virgin Is
++Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
++ -4:00 - AST
++
++# St Vincent and the Grenadines
++Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
++ -4:04:56 - KMT 1912 # Kingstown Mean Time
++ -4:00 - AST
++
++# British Virgin Is
++Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
++ -4:00 - AST
++
++# McMurdo, Ross Island, since 1955-12
++Zone Antarctica/McMurdo 0 - -00 1956
++ 12:00 NZ NZ%sT
++Link Antarctica/McMurdo Antarctica/South_Pole
++
++# Yemen
++# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
++# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
++Zone Asia/Aden 2:59:54 - LMT 1950
++ 3:00 - AST
++
++# Bahrain
++Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
++ 4:00 - GST 1972 Jun
++ 3:00 - AST
++
++# India
++#
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 305 says that Madras
++# civil time was 5:20:57.3.
++#
++# From Paul Eggert (2014-08-21):
++# In tomorrow's The Hindu, Nitya Menon reports that India had two civil time
++# zones starting in 1884, one in Bombay and one in Calcutta, and that railways
++# used a third time zone based on Madras time (80 deg. 18'30" E). Also,
++# in 1881 Bombay briefly switched to Madras time, but switched back. See:
++# http://www.thehindu.com/news/cities/chennai/madras-375-when-madras-clocked-the-time/article6339393.ece
++#Zone Asia/Chennai [not enough info to complete]
++
++# China
++# Long-shu Time (probably due to Long and Shu being two names of that area)
++# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
++# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
++# Yangchun, Yangjiang, Yu'nan, and Yunfu.
++Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
++ 7:00 - LONT 1980 May # Long-shu Time
++ 8:00 PRC C%sT
++Link Asia/Chongqing Asia/Chungking
++
++# Vietnam
++# From Paul Eggert (2014-10-13):
++# See Asia/Ho_Chi_Minh for the source for this data.
++# Trần's book says the 1954-55 transition to 07:00 in Hanoi was in
++# October 1954, with exact date and time unspecified.
++Zone Asia/Hanoi 7:03:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1954 Oct
++ 7:00 - ICT
++
++# China
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
++# Heilongjiang (except Mohe county), Jilin
++Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
++ 8:30 - CHAT 1932 Mar # Changbai Time
++ 8:00 - CST 1940
++ 9:00 - CHAT 1966 May
++ 8:30 - CHAT 1980 May
++ 8:00 PRC C%sT
++
++# far west China
++Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
++ 5:30 - KAST 1940 # Kashgar Time
++ 5:00 - KAST 1980 May
++ 8:00 PRC C%sT
++
++# Kuwait
++Zone Asia/Kuwait 3:11:56 - LMT 1950
++ 3:00 - AST
++
++
++# Oman
++# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
++Zone Asia/Muscat 3:54:24 - LMT 1920
++ 4:00 - GST
++
++# India
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Portuguese India switched to UT +05 on 1912-01-01.
++#Zone Asia/Panaji [not enough info to complete]
++
++# Cambodia
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data. Also, guess
++# (1) Cambodia reverted to UT +07 on 1945-09-02, when Vietnam did, and
++# (2) they also reverted to +07 on 1953-11-09, the date of independence.
++# These guesses are probably wrong but they're better than guessing no
++# transitions there.
++Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1953 Nov 9
++ 7:00 - ICT
++
++# Israel
++Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
++ 2:21 - JMT 1918
++ 2:00 Zion I%sT
++
++# Laos
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data.
++# Trần's book says that Laos reverted to UT +07 on 1955-04-15.
++# Also, guess that Laos reverted to +07 on 1945-09-02, when Vietnam did;
++# this is probably wrong but it's better than guessing no transition.
++Zone Asia/Vientiane 6:50:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Apr 15
++ 7:00 - ICT
++
++# Jan Mayen
++# From Whitman:
++Zone Atlantic/Jan_Mayen -1:00 - EGT
++
++# St Helena
++Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
++ -0:22:48 - JMT 1951 # Jamestown Mean Time
++ 0:00 - GMT
++
++# Northern Ireland
++Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
++ -0:25:21 - DMT 1916 May 21 2:00
++ # DMT = Dublin/Dunsink MT
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ # IST = Irish Summer Time
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Guernsey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.27N -2.33E - St.Peter Port
++Zone Europe/Guernsey -0:09:19 - LMT 1913 Jun 18
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Isle of Man
++#
++# From Lester Caine (2013-09-04):
++# The Isle of Man legislation is now on-line at
++# <http://www.legislation.gov.im>, starting with the original Statutory
++# Time Act in 1883 and including additional confirmation of some of
++# the dates of the 'Summer Time' orders originating at
++# Westminster. There is a little uncertainty as to the starting date
++# of the first summer time in 1916 which may have be announced a
++# couple of days late. There is still a substantial number of
++# documents to work through, but it is thought that every GB change
++# was also implemented on the island.
++#
++# AT4 of 1883 - The Statutory Time et cetera Act 1883 -
++# LMT Location - 54.1508N -4.4814E - Tynwald Hill ( Manx parliament )
++Zone Europe/Isle_of_Man -0:17:55 - LMT 1883 Mar 30 0:00s
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Jersey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.187N -2.107E - St. Helier
++Zone Europe/Jersey -0:08:25 - LMT 1898 Jun 11 16:00u
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Slovenia
++Zone Europe/Ljubljana 0:58:04 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Bosnia and Herzegovina
++Zone Europe/Sarajevo 1:13:40 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Macedonia
++Zone Europe/Skopje 1:25:44 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Moldova / Transnistria
++Zone Europe/Tiraspol 1:58:32 - LMT 1880
++ 1:55 - CMT 1918 Feb 15 # Chisinau MT
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1940 Aug 15
++ 2:00 1:00 EEST 1941 Jul 17
++ 1:00 C-Eur CE%sT 1944 Aug 24
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 2:00 Russia EE%sT 1992 Jan 19 2:00
++ 3:00 Russia MSK/MSD
++
++# Liechtenstein
++Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
++ 1:00 - CET 1981
++ 1:00 EU CE%sT
++
++# Croatia
++Zone Europe/Zagreb 1:03:52 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Madagascar
++Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
++ 3:00 - EAT 1954 Feb 27 23:00s
++ 3:00 1:00 EAST 1954 May 29 23:00s
++ 3:00 - EAT
++
++# Comoros
++Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
++ 3:00 - EAT
++
++# Mayotte
++Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
++ 3:00 - EAT
++
++# US minor outlying islands
++Zone Pacific/Johnston -10:00 - HST
++
++# US minor outlying islands
++#
++# From Mark Brader (2005-01-23):
++# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
++# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
++# reproduced a Pan American Airways timetable from 1936, for their weekly
++# "Orient Express" flights between San Francisco and Manila, and connecting
++# flights to Chicago and the US East Coast. As it uses some time zone
++# designations that I've never seen before:....
++# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
++# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
++#
++Zone Pacific/Midway -11:49:28 - LMT 1901
++ -11:00 - NST 1956 Jun 3
++ -11:00 1:00 NDT 1956 Sep 2
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++
++# N Mariana Is
++Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
++ 9:43:00 - LMT 1901
++ 9:00 - MPT 1969 Oct # N Mariana Is Time
++ 10:00 - MPT 2000 Dec 23
++ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -0,0 +1,48 @@
++# Check links in tz tables.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ # Special marker indicating that the name is defined as a Zone.
++ # It is a newline so that it cannot match a valid name.
++ # It is not null so that its slot does not appear unset.
++ Zone = "\n"
++}
++
++/^Zone/ {
++ if (defined[$2]) {
++ if (defined[$2] == Zone) {
++ printf "%s: Zone has duplicate definition\n", $2
++ } else {
++ printf "%s: Link with same name as Zone\n", $2
++ }
++ status = 1
++ }
++ defined[$2] = Zone
++}
++
++/^Link/ {
++ if (defined[$3]) {
++ if (defined[$3] == Zone) {
++ printf "%s: Link with same name as Zone\n", $3
++ } else if (defined[$3] == $2) {
++ printf "%s: Link has duplicate definition\n", $3
++ } else {
++ printf "%s: Link to both %s and %s\n", $3, defined[$3], $2
++ }
++ status = 1
++ }
++ used[$2] = 1
++ defined[$3] = $2
++}
++
++END {
++ for (tz in used) {
++ if (defined[tz] != Zone) {
++ printf "%s: Link to non-zone\n", tz
++ status = 1
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/checktab.awk.orig
++++ contrib/tzdata/checktab.awk
+@@ -0,0 +1,177 @@
++# Check tz tables for consistency.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ FS = "\t"
++
++ if (!iso_table) iso_table = "iso3166.tab"
++ if (!zone_table) zone_table = "zone1970.tab"
++ if (!want_warnings) want_warnings = -1
++
++ while (getline <iso_table) {
++ iso_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 2) {
++ printf "%s:%d: wrong number of columns\n", \
++ iso_table, iso_NR >>"/dev/stderr"
++ status = 1
++ }
++ cc = $1
++ name = $2
++ if (cc !~ /^[A-Z][A-Z]$/) {
++ printf "%s:%d: invalid country code '%s'\n", \
++ iso_table, iso_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ if (cc <= cc0) {
++ if (cc == cc0) {
++ s = "duplicate";
++ } else {
++ s = "out of order";
++ }
++
++ printf "%s:%d: country code '%s' is %s\n", \
++ iso_table, iso_NR, cc, s \
++ >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ if (name2cc[name]) {
++ printf "%s:%d: '%s' and '%s' have the same name\n", \
++ iso_table, iso_NR, name2cc[name], cc \
++ >>"/dev/stderr"
++ status = 1
++ }
++ name2cc[name] = cc
++ cc2name[cc] = name
++ cc2NR[cc] = iso_NR
++ }
++
++ cc0 = ""
++
++ while (getline <zone_table) {
++ zone_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 3 && NF != 4) {
++ printf "%s:%d: wrong number of columns\n", \
++ zone_table, zone_NR >>"/dev/stderr"
++ status = 1
++ }
++ split($1, cca, /,/)
++ cc = cca[1]
++ coordinates = $2
++ tz = $3
++ comments = $4
++ if (cc < cc0) {
++ printf "%s:%d: country code '%s' is out of order\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ tztab[tz] = 1
++ tz2comments[tz] = comments
++ tz2NR[tz] = zone_NR
++ for (i in cca) {
++ cc = cca[i]
++ cctz = cc tz
++ cctztab[cctz] = 1
++ if (cc2name[cc]) {
++ cc_used[cc]++
++ } else {
++ printf "%s:%d: %s: unknown country code\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (coordinates !~ /^[-+][0-9][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9]$/ \
++ && coordinates !~ /^[-+][0-9][0-9][0-5][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9][0-5][0-9]$/) {
++ printf "%s:%d: %s: invalid coordinates\n", \
++ zone_table, zone_NR, coordinates >>"/dev/stderr"
++ status = 1
++ }
++ }
++
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (1 < cc_used[cc]) {
++ comments_needed[tz] = cc
++ }
++ }
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (!comments_needed[tz] && tz2comments[tz]) {
++ printf "%s:%d: unnecessary comment '%s'\n", \
++ zone_table, tz2NR[tz], tz2comments[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 0
++ status = 1
++ } else if (comments_needed[tz] && !tz2comments[tz]) {
++ printf "%s:%d: missing comment for %s\n", \
++ zone_table, tz2NR[tz], comments_needed[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 1
++ status = 1
++ }
++ }
++ FS = " "
++}
++
++$1 ~ /^#/ { next }
++
++{
++ tz = rules = ""
++ if ($1 == "Zone") {
++ tz = $2
++ ruleUsed[$4] = 1
++ } else if ($1 == "Link" && zone_table == "zone.tab") {
++ # Ignore Link commands if source and destination basenames
++ # are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
++ src = $2
++ dst = $3
++ while ((i = index(src, "/"))) src = substr(src, i+1)
++ while ((i = index(dst, "/"))) dst = substr(dst, i+1)
++ if (src != dst) tz = $3
++ } else if ($1 == "Rule") {
++ ruleDefined[$2] = 1
++ } else {
++ ruleUsed[$2] = 1
++ }
++ if (tz && tz ~ /\//) {
++ if (!tztab[tz]) {
++ printf "%s: no data for '%s'\n", zone_table, tz \
++ >>"/dev/stderr"
++ status = 1
++ }
++ zoneSeen[tz] = 1
++ }
++}
++
++END {
++ for (tz in ruleDefined) {
++ if (!ruleUsed[tz]) {
++ printf "%s: Rule never used\n", tz
++ status = 1
++ }
++ }
++ for (tz in tztab) {
++ if (!zoneSeen[tz]) {
++ printf "%s:%d: no Zone table for '%s'\n", \
++ zone_table, tz2NR[tz], tz >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (0 < want_warnings) {
++ for (cc in cc2name) {
++ if (!cc_used[cc]) {
++ printf "%s:%d: warning: " \
++ "no Zone entries for %s (%s)\n", \
++ iso_table, cc2NR[cc], cc, cc2name[cc]
++ }
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/etcetera.orig
++++ contrib/tzdata/etcetera
+@@ -8,6 +8,13 @@
+ # need now for the entries that are not on UTC are for ships at sea
+ # that cannot use POSIX TZ settings.
+
++# Starting with POSIX 1003.1-2001, the entries below are all
++# unnecessary as settings for the TZ environment variable. E.g.,
++# instead of TZ='Etc/GMT+4' one can use the POSIX setting TZ='<-04>+4'.
++#
++# Do not use a POSIX TZ setting like TZ='GMT+4', which is four hours
++# behind GMT but uses the completely misleading abbreviation "GMT".
++
+ Zone Etc/GMT 0 - GMT
+ Zone Etc/UTC 0 - UTC
+ Zone Etc/UCT 0 - UCT
+@@ -26,23 +33,13 @@
+ Link Etc/GMT Etc/GMT+0
+ Link Etc/GMT Etc/GMT0
+
+-# We use POSIX-style signs in the Zone names and the output abbreviations,
++# Be consistent with POSIX TZ settings in the Zone names,
+ # even though this is the opposite of what many people expect.
+ # POSIX has positive signs west of Greenwich, but many people expect
+ # positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+-# the abbreviation "GMT+4" and corresponds to 4 hours behind UT
++# the abbreviation "-04" and corresponds to 4 hours behind UT
+ # (i.e. west of Greenwich) even though many people would expect it to
+ # mean 4 hours ahead of UT (i.e. east of Greenwich).
+-#
+-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
+-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+-# offset is kept within the angle bracket (and is used for display)
+-# while the POSIX sign is kept outside the angle bracket (and is used
+-# for calculation).
+-#
+-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+-# GMT but uses the completely misleading abbreviation "GMT".
+
+ # Earlier incarnations of this package were not POSIX-compliant,
+ # and had lines such as
+@@ -51,30 +48,31 @@
+ # way does a
+ # zic -l GMT-12
+ # so we moved the names into the Etc subdirectory.
++# Also, the time zone abbreviations are now compatible with %z.
+
+-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+-Zone Etc/GMT-13 13 - GMT-13
+-Zone Etc/GMT-12 12 - GMT-12
+-Zone Etc/GMT-11 11 - GMT-11
+-Zone Etc/GMT-10 10 - GMT-10
+-Zone Etc/GMT-9 9 - GMT-9
+-Zone Etc/GMT-8 8 - GMT-8
+-Zone Etc/GMT-7 7 - GMT-7
+-Zone Etc/GMT-6 6 - GMT-6
+-Zone Etc/GMT-5 5 - GMT-5
+-Zone Etc/GMT-4 4 - GMT-4
+-Zone Etc/GMT-3 3 - GMT-3
+-Zone Etc/GMT-2 2 - GMT-2
+-Zone Etc/GMT-1 1 - GMT-1
+-Zone Etc/GMT+1 -1 - GMT+1
+-Zone Etc/GMT+2 -2 - GMT+2
+-Zone Etc/GMT+3 -3 - GMT+3
+-Zone Etc/GMT+4 -4 - GMT+4
+-Zone Etc/GMT+5 -5 - GMT+5
+-Zone Etc/GMT+6 -6 - GMT+6
+-Zone Etc/GMT+7 -7 - GMT+7
+-Zone Etc/GMT+8 -8 - GMT+8
+-Zone Etc/GMT+9 -9 - GMT+9
+-Zone Etc/GMT+10 -10 - GMT+10
+-Zone Etc/GMT+11 -11 - GMT+11
+-Zone Etc/GMT+12 -12 - GMT+12
++Zone Etc/GMT-14 14 - +14
++Zone Etc/GMT-13 13 - +13
++Zone Etc/GMT-12 12 - +12
++Zone Etc/GMT-11 11 - +11
++Zone Etc/GMT-10 10 - +10
++Zone Etc/GMT-9 9 - +09
++Zone Etc/GMT-8 8 - +08
++Zone Etc/GMT-7 7 - +07
++Zone Etc/GMT-6 6 - +06
++Zone Etc/GMT-5 5 - +05
++Zone Etc/GMT-4 4 - +04
++Zone Etc/GMT-3 3 - +03
++Zone Etc/GMT-2 2 - +02
++Zone Etc/GMT-1 1 - +01
++Zone Etc/GMT+1 -1 - -01
++Zone Etc/GMT+2 -2 - -02
++Zone Etc/GMT+3 -3 - -03
++Zone Etc/GMT+4 -4 - -04
++Zone Etc/GMT+5 -5 - -05
++Zone Etc/GMT+6 -6 - -06
++Zone Etc/GMT+7 -7 - -07
++Zone Etc/GMT+8 -8 - -08
++Zone Etc/GMT+9 -9 - -09
++Zone Etc/GMT+10 -10 - -10
++Zone Etc/GMT+11 -11 - -11
++Zone Etc/GMT+12 -12 - -12
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -1,20 +1,24 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2014-05-31):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -38,6 +42,16 @@
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+ #
++# Byalokoz EL. New Counting of Time in Russia since July 1, 1919.
++# This Russian-language source was consulted by Vladimir Karpinsky; see
++# http://mm.icann.org/pipermail/tz/2014-August/021320.html
++# The full Russian citation is:
++# Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
++# введенный декретом Совета народных комиссаров для всей России с 1-го
++# июля 1919 г. / Изд. 2-е Междуведомственной комиссии. - Петроград:
++# Десятая гос. тип., 1919.
++# http://resolver.gpntb.ru/purl?docushare/dsweb/Get/Resource-2011/Byalokoz__E.L.__Novyy__schet__vremeni__v__techenie__sutok__izd__2(1).pdf
++#
+ # Brazil's Divisão Serviço da Hora (DSHO),
+ # History of Summer Time
+ # <http://pcdsh01.on.br/HISTHV.htm>
+@@ -57,11 +71,11 @@
+ # 0:00 WET WEST WEMT Western Europe
+ # 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
+ # 0:20 NET NEST Netherlands (1937-1940)*
++# 1:00 BST British Standard (1968-1971)
+ # 1:00 CET CEST CEMT Central Europe
+ # 1:00:14 SET Swedish (1879-1899)*
+ # 2:00 EET EEST Eastern Europe
+-# 3:00 FET Further-eastern Europe*
+-# 3:00 MSK MSD MSM* Moscow
++# 3:00 MSK MSD Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -174,14 +188,18 @@
+ # between 160 and 170 hours more daylight leisure, to a war which
+ # plunged Europe into darkness for four years, and shook the
+ # foundations of civilization throughout the world.
+-# <http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf>
+-# "A Silent Toast to William Willett", Pictorial Weekly
++# -- "A Silent Toast to William Willett", Pictorial Weekly;
++# republished in Finest Hour (Spring 2002) 1(114):26
++# http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf
+
+-# From Paul Eggert (1996-09-03):
++# From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+ # when they were debating the adoption of DST in 1908; but by 1916 this
+ # term appears only in quotes taken from DST's opponents, whereas the
+ # proponents (who eventually won the argument) are quoted as using "Summer".
++# The term "Summer Time" was introduced by Herbert Samuel, Home Secretary; see:
++# Viscount Samuel. Leisure in a Democracy. Cambridge University Press
++# ISBN 978-1-107-49471-8 (1949, reissued 2015), p 8.
+
+ # From Arthur David Olson (1989-01-19):
+ # A source at the British Information Office in New York avers that it's
+@@ -210,8 +228,8 @@
+ # official designation; the reply of the 21st was that there wasn't
+ # but he couldn't think of anything better than the "Double British
+ # Summer Time" that the BBC had been using informally.
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
++# http://www.polyomino.org.uk/british-time/bbc-19410418.png
++# http://www.polyomino.org.uk/british-time/ho-19410421.png
+
+ # From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
+ # [N]o official designation has as far as I know been adopted for the time
+@@ -228,15 +246,13 @@
+ # the history of summer time legislation in the United Kingdom.
+ # Since 1998 Joseph S. Myers has been updating
+ # and extending this list, which can be found in
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/
+-# History of legal time in Britain
+ # http://www.polyomino.org.uk/british-time/
+
+ # From Joseph S. Myers (1998-01-06):
+ #
+ # The legal time in the UK outside of summer time is definitely GMT, not UTC;
+ # see Lord Tanlaw's speech
+-# <http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0>
++# http://www.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
+ # (Lords Hansard 11 June 1997 columns 964 to 976).
+
+ # From Paul Eggert (2006-03-22):
+@@ -276,6 +292,14 @@
+ # "Timeball on the ballast office is down. Dunsink time."
+ # -- James Joyce, Ulysses
+
++# "Countess Markievicz ... claimed that the [1916] abolition of Dublin Mean Time
++# was among various actions undertaken by the 'English' government that
++# would 'put the whole country into the SF (Sinn Féin) camp'. She claimed
++# Irish 'public feeling (was) outraged by forcing of English time on us'."
++# -- Parsons M. Dublin lost its time zone - and 25 minutes - after 1916 Rising.
++# Irish Times 2014-10-27.
++# http://www.irishtimes.com/news/politics/dublin-lost-its-time-zone-and-25-minutes-after-1916-rising-1.1977411
++
+ # From Joseph S. Myers (2005-01-26):
+ # Irish laws are available online at <http://www.irishstatutebook.ie>.
+ # These include various relating to legal time, for example:
+@@ -321,7 +345,7 @@
+
+ # From an anonymous contributor (1996-06-02):
+ # The law governing time in Ireland is under Statutory Instrument SI 395/94,
+-# which gives force to European Union 7th Council Directive # 94/21/EC.
++# which gives force to European Union 7th Council Directive No. 94/21/EC.
+ # Under this directive, the Minister for Justice in Ireland makes appropriate
+ # regulations. I spoke this morning with the Secretary of the Department of
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+@@ -440,25 +464,27 @@
+ # Use Europe/London for Jersey, Guernsey, and the Isle of Man.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
++Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
+ 0:00 GB-Eire %s 1968 Oct 27
+- 1:00 - BST 1971 Oct 31 2:00u
++ 1:00 - BST 1971 Oct 31 2:00u
+ 0:00 GB-Eire %s 1996
+ 0:00 EU GMT/BST
+ Link Europe/London Europe/Jersey
+ Link Europe/London Europe/Guernsey
+ Link Europe/London Europe/Isle_of_Man
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
+- -0:25:21 - DMT 1916 May 21 2:00
+- -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ -0:25:21 - DMT 1916 May 21 2:00
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
+ 0:00 GB-Eire %s 1921 Dec 6 # independence
+- 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
+- 0:00 1:00 IST 1946 Oct 6 2:00
+- 0:00 - GMT 1947 Mar 16 2:00
+- 0:00 1:00 IST 1947 Nov 2 2:00
+- 0:00 - GMT 1948 Apr 18 2:00
++ 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
++ 0:00 1:00 IST 1946 Oct 6 2:00
++ 0:00 - GMT 1947 Mar 16 2:00
++ 0:00 1:00 IST 1947 Nov 2 2:00
++ 0:00 - GMT 1948 Apr 18 2:00
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+- 1:00 - IST 1971 Oct 31 2:00u
++ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+ 0:00 EU GMT/IST
+
+@@ -479,7 +505,7 @@
+ # The most recent directive covers the years starting in 2002. See:
+ # Directive 2000/84/EC of the European Parliament and of the Council
+ # of 19 January 2001 on summer-time arrangements.
+-# <http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT>
++# http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT
+
+ # W-Eur differs from EU only in that W-Eur uses standard time.
+ Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S
+@@ -513,7 +539,7 @@
+ # 0:00 France WE%sT 1945 Sep 16 3:00
+ #
+ # Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+-# 0:00 France WE%sT 1945 Sep 16 3:00
++# 0:00 France WE%sT 1945 Sep 16 3:00
+ #
+ # Zone Europe/Belgrade 1:22:00 - LMT 1884
+ # 1:00 1:00 CEST 1945 Sep 16 2:00s
+@@ -556,31 +582,73 @@
+ Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+ Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
++
++# Daylight saving time for Russia and the Soviet Union
++#
++# The 1917-1921 decree URLs are from Alexander Belopolsky (2016-08-23).
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
+-Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
+-Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
++Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
++#
++# Decree No. 142 (1917-12-22) http://istmat.info/node/28137
++Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
++#
++# Decree No. 497 (1918-05-30) http://istmat.info/node/30001
++Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+ Rule Russia 1918 only - Sep 16 1:00 1:00 MST
++#
++# Decree No. 258 (1919-05-29) http://istmat.info/node/37949
+ Rule Russia 1919 only - May 31 23:00 2:00 MDST
+-Rule Russia 1919 only - Jul 1 2:00 1:00 MSD
++#
++Rule Russia 1919 only - Jul 1 0:00u 1:00 MSD
+ Rule Russia 1919 only - Aug 16 0:00 0 MSK
++#
++# Decree No. 63 (1921-02-03) http://istmat.info/node/45840
+ Rule Russia 1921 only - Feb 14 23:00 1:00 MSD
+-Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer
++#
++# Decree No. 121 (1921-03-07) http://istmat.info/node/45949
++Rule Russia 1921 only - Mar 20 23:00 2:00 +05
++#
+ Rule Russia 1921 only - Sep 1 0:00 1:00 MSD
+ Rule Russia 1921 only - Oct 1 0:00 0 -
+-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
++# Act No. 925 of the Council of Ministers of the USSR (1980-10-24):
+ Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule Russia 1981 1983 - Oct 1 0:00 0 -
+-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
+-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-#
+-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule Russia 1992 only - Sep lastSat 23:00 0 -
+-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
+-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
++# Act No. 967 of the Council of Ministers of the USSR (1984-09-13), repeated in
++# Act No. 227 of the Council of Ministers of the USSR (1989-03-14):
++Rule Russia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule Russia 1985 2010 - Mar lastSun 2:00s 1:00 S
++#
+ Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
++# As described below, Russia's 2014 change affects Zone data, not Rule data.
++
++# From Stepan Golosunov (2016-03-07):
++# Wikipedia and other sources refer to the Act of the Council of
++# Ministers of the USSR from 1988-01-04 No. 5 and the Act of the
++# Council of Ministers of the USSR from 1989-03-14 No. 227.
++#
++# I did not find full texts of these acts. For the 1989 one we have
++# title at http://base.garant.ru/70754136/ :
++# "About change in calculation of time on the territories of
++# Lithuanian SSR, Latvian SSR and Estonian SSR, Astrakhan,
++# Kaliningrad, Kirov, Kuybyshev, Ulyanovsk and Uralsk oblasts".
++# And http://astrozet.net/files/Zones/DOC/RU/1980-925.txt appears to
++# contain quotes from both acts: Since last Sunday of March 1988 rules
++# of the second time belt are installed in Volgograd and Saratov
++# oblasts. Since last Sunday of March 1989:
++# a) Lithuanian SSR, Latvian SSR, Estonian SSR, Kaliningrad oblast:
++# second time belt rules without extra hour (Moscow-1);
++# b) Astrakhan, Kirov, Kuybyshev, Ulyanovsk oblasts: second time belt
++# rules (Moscow time)
++# c) Uralsk oblast: third time belt rules (Moscow+1).
++
++# From Stepan Golosunov (2016-03-27):
++# Unamended version of the act of the
++# Government of the Russian Federation No. 23 from 08.01.1992
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102014034&rdk=0
++# says that every year clocks were to be moved forward on last Sunday
++# of March at 2 hours and moved backwards on last Sunday of September
++# at 3 hours. It was amended in 1996 to replace September with October.
+
+ # From Alexander Krivenyshev (2011-06-14):
+ # According to Kremlin press service, Russian President Dmitry Medvedev
+@@ -669,7 +737,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Andorra 0:06:04 - LMT 1901
+ 0:00 - WET 1946 Sep 30
+- 1:00 - CET 1985 Mar 31 2:00
++ 1:00 - CET 1985 Mar 31 2:00
+ 1:00 EU CE%sT
+
+ # Austria
+@@ -695,14 +763,22 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vienna 1:05:21 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1920
+- 1:00 Austria CE%sT 1940 Apr 1 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+- 1:00 1:00 CEST 1945 Apr 12 2:00s
++ 1:00 Austria CE%sT 1940 Apr 1 2:00s
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
++ 1:00 1:00 CEST 1945 Apr 12 2:00s
+ 1:00 - CET 1946
+ 1:00 Austria CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Belarus
++#
++# From Stepan Golosunov (2016-07-02):
++# http://www.lawbelarus.com/repub/sub30/texf9611.htm
++# (Act of the Cabinet of Ministers of the Republic of Belarus from
++# 1992-03-25 No. 157) ... says clocks were to be moved forward at 2:00
++# on last Sunday of March and backward at 3:00 on last Sunday of September
++# (the same as previous USSR and contemporary Russian regulations).
++#
+ # From Yauhen Kharuzhy (2011-09-16):
+ # By latest Belarus government act Europe/Minsk timezone was changed to
+ # GMT+3 without DST (was GMT+2 with DST).
+@@ -711,19 +787,21 @@
+ # http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html
+ # http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/
+ # http://news.tut.by/society/250578.html
++#
++# From Alexander Bokovoy (2014-10-09):
++# Belarussian government decided against changing to winter time....
++# http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+- 1:50 - MMT 1924 May 2 # Minsk Mean Time
++ 1:50 - MMT 1924 May 2 # Minsk Mean Time
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Jun 28
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
+- 2:00 - EET 1992 Mar 29 0:00s
+- 2:00 1:00 EEST 1992 Sep 27 0:00s
+- 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET
++ 3:00 - MSK 1991 Mar 31 2:00s
++ 2:00 Russia EE%sT 2011 Mar 27 2:00s
++ 3:00 - +03
+
+ # Belgium
+ #
+@@ -780,7 +858,7 @@
+ Rule Belgium 1946 only - Oct 7 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Brussels 0:17:30 - LMT 1880
+- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
++ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
+ 0:00 - WET 1914 Nov 8
+ 1:00 - CET 1916 May 1 0:00
+ 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
+@@ -795,7 +873,7 @@
+ # Bulgaria
+ #
+ # From Plamen Simenov via Steffen Thorsen (1999-09-09):
+-# A document of Government of Bulgaria (No.94/1997) says:
++# A document of Government of Bulgaria (No. 94/1997) says:
+ # EET -> EETDST is in 03:00 Local time in last Sunday of March ...
+ # EETDST -> EET is in 04:00 Local time in last Sunday of October
+ #
+@@ -810,9 +888,9 @@
+ 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
+ 2:00 - EET 1942 Nov 2 3:00
+ 1:00 C-Eur CE%sT 1945
+- 1:00 - CET 1945 Apr 2 3:00
++ 1:00 - CET 1945 Apr 2 3:00
+ 2:00 - EET 1979 Mar 31 23:00
+- 2:00 Bulg EE%sT 1982 Sep 26 2:00
++ 2:00 Bulg EE%sT 1982 Sep 26 3:00
+ 2:00 C-Eur EE%sT 1991
+ 2:00 E-Eur EE%sT 1997
+ 2:00 EU EE%sT
+@@ -834,8 +912,8 @@
+ Rule Czech 1949 only - Apr 9 2:00s 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Prague 0:57:44 - LMT 1850
+- 0:57:44 - PMT 1891 Oct # Prague Mean Time
+- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
++ 0:57:44 - PMT 1891 Oct # Prague Mean Time
++ 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
+ 1:00 Czech CE%sT 1979
+ 1:00 EU CE%sT
+ # Use Europe/Prague also for Slovakia.
+@@ -891,11 +969,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Copenhagen 0:50:20 - LMT 1890
+ 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
+- 1:00 Denmark CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
++ 1:00 Denmark CE%sT 1942 Nov 2 2:00s
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Denmark CE%sT 1980
+ 1:00 EU CE%sT
+-Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn
++Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn
+ 0:00 - WET 1981
+ 0:00 EU WE%sT
+ #
+@@ -969,6 +1047,12 @@
+ # startkart.no says Thule does not observe DST, but this is clearly an error,
+ # so go with Shanks & Pottenger for Thule transitions until this year.
+ # For 2007 on assume Thule will stay in sync with US DST rules.
++
++# From J William Piggott (2016-02-20):
++# "Greenland north of the community of Scoresbysund" is officially named
++# "National Park" by Executive Order:
++# http://naalakkersuisut.gl/~/media/Nanoq/Files/Attached%20Files/Engelske-tekster/Legislation/Executive%20Order%20National%20Park.rtf
++# It is their only National Park.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+@@ -980,20 +1064,24 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
+- -3:00 - WGT 1980 Apr 6 2:00
++ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT 1996
+ 0:00 - GMT
+ Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
+- -2:00 - CGT 1980 Apr 6 2:00
++ -2:00 - CGT 1980 Apr 6 2:00
+ -2:00 C-Eur CG%sT 1981 Mar 29
+ -1:00 EU EG%sT
+ Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
+- -3:00 - WGT 1980 Apr 6 2:00
++ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT
+ Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
+ -4:00 Thule A%sT
+
+ # Estonia
++#
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
+ # From Peter Ilieve (1994-10-15):
+ # A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+ # [through 1994] and gives the legal authority for it,
+@@ -1011,7 +1099,7 @@
+
+ # From Peter Ilieve (1998-11-04), heavily edited:
+ # The 1998-09-22 Estonian time law
+-# <http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390>
++# http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390
+ # refers to the Eighth Directive and cites the association agreement between
+ # the EU and Estonia, ratified by the Estonian law (RT II 1995, 22-27, 120).
+ #
+@@ -1029,8 +1117,8 @@
+ # after that.
+
+ # From Mart Oruaas (2000-01-29):
+-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
+-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
++# Regulation No. 301 (1999-10-12) obsoletes previous regulation
++# No. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
+ # the year round. The regulation is effective 1999-11-01.
+
+ # From Toomas Soome (2002-02-21):
+@@ -1042,16 +1130,16 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Tallinn 1:39:00 - LMT 1880
+- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
++ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
+ 1:00 C-Eur CE%sT 1919 Jul
+ 1:39:00 - TMT 1921 May
+ 2:00 - EET 1940 Aug 6
+ 3:00 - MSK 1941 Sep 15
+ 1:00 C-Eur CE%sT 1944 Sep 22
+- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+- 2:00 1:00 EEST 1989 Sep 24 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 1:00 EEST 1989 Sep 24 2:00s
+ 2:00 C-Eur EE%sT 1998 Sep 22
+- 2:00 EU EE%sT 1999 Nov 1
++ 2:00 EU EE%sT 1999 Oct 31 4:00
+ 2:00 - EET 2002 Feb 21
+ 2:00 EU EE%sT
+
+@@ -1195,7 +1283,7 @@
+ # on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
++ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
+ # Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
+ 0:00 France WE%sT 1940 Jun 14 23:00
+ # Le Corre says Paris stuck with occupied-France time after the liberation;
+@@ -1214,14 +1302,14 @@
+
+ # From Jörg Schilling (2002-10-23):
+ # In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
+-# <http://www.dhm.de/lemo/html/biografien/BersarinNikolai/>
++# http://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+ # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+ # says that Bersarin issued an order to use Moscow time on May 20.
+ # However, Moscow did not observe daylight saving in 1945, so
+-# this was equivalent to CEMT (GMT+3), not GMT+4.
++# this was equivalent to UT +03, not +04.
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1243,7 +1331,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
+- 1:00 C-Eur CE%sT 1945 May 24 2:00
++ 1:00 C-Eur CE%sT 1945 May 24 2:00
+ 1:00 SovietZone CE%sT 1946
+ 1:00 Germany CE%sT 1980
+ 1:00 EU CE%sT
+@@ -1259,7 +1347,7 @@
+ # http://www.srf.ch/player/video?id=c012c029-03b7-4c2b-9164-aa5902cd58d3
+
+ # From Arthur David Olson (2012-03-03):
+-# Busingen and Zurich have shared clocks since 1970.
++# Büsingen and Zurich have shared clocks since 1970.
+
+ Link Europe/Zurich Europe/Busingen
+
+@@ -1270,8 +1358,8 @@
+
+ # Gibraltar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
+- 0:00 GB-Eire %s 1957 Apr 14 2:00
++Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
++ 0:00 GB-Eire %s 1957 Apr 14 2:00
+ 1:00 - CET 1982
+ 1:00 EU CE%sT
+
+@@ -1302,7 +1390,7 @@
+ Rule Greece 1980 only - Sep 28 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
+- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
++ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
+ 2:00 Greece EE%sT 1941 Apr 30
+ 1:00 Greece CE%sT 1944 Apr 4
+ 2:00 Greece EE%sT 1981
+@@ -1374,36 +1462,33 @@
+ # might be a reference to the Julian calendar as opposed to Gregorian, or it
+ # might mean something else (???).
+ #
+-# From Paul Eggert (2006-03-22):
+-# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
+-# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
+-# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
++# From Paul Eggert (2014-11-22):
++# The information below is taken from the 1988 Almanak; see
++# http://www.almanak.hi.is/klukkan.html
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Iceland 1917 1918 - Feb 19 23:00 1:00 S
++Rule Iceland 1917 1919 - Feb 19 23:00 1:00 S
+ Rule Iceland 1917 only - Oct 21 1:00 0 -
+-Rule Iceland 1918 only - Nov 16 1:00 0 -
++Rule Iceland 1918 1919 - Nov 16 1:00 0 -
++Rule Iceland 1921 only - Mar 19 23:00 1:00 S
++Rule Iceland 1921 only - Jun 23 1:00 0 -
+ Rule Iceland 1939 only - Apr 29 23:00 1:00 S
+-Rule Iceland 1939 only - Nov 29 2:00 0 -
++Rule Iceland 1939 only - Oct 29 2:00 0 -
+ Rule Iceland 1940 only - Feb 25 2:00 1:00 S
+-Rule Iceland 1940 only - Nov 3 2:00 0 -
+-Rule Iceland 1941 only - Mar 2 1:00s 1:00 S
+-Rule Iceland 1941 only - Nov 2 1:00s 0 -
+-Rule Iceland 1942 only - Mar 8 1:00s 1:00 S
+-Rule Iceland 1942 only - Oct 25 1:00s 0 -
++Rule Iceland 1940 1941 - Nov Sun>=2 1:00s 0 -
++Rule Iceland 1941 1942 - Mar Sun>=2 1:00s 1:00 S
+ # 1943-1946 - first Sunday in March until first Sunday in winter
+ Rule Iceland 1943 1946 - Mar Sun>=1 1:00s 1:00 S
+-Rule Iceland 1943 1948 - Oct Sun>=22 1:00s 0 -
++Rule Iceland 1942 1948 - Oct Sun>=22 1:00s 0 -
+ # 1947-1967 - first Sunday in April until first Sunday in winter
+ Rule Iceland 1947 1967 - Apr Sun>=1 1:00s 1:00 S
+-# 1949 Oct transition delayed by 1 week
++# 1949 and 1967 Oct transitions delayed by 1 week
+ Rule Iceland 1949 only - Oct 30 1:00s 0 -
+ Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
+ Rule Iceland 1967 only - Oct 29 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
+- -1:27:48 - RMT 1908 # Reykjavik Mean Time?
+- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
++Zone Atlantic/Reykjavik -1:28 - LMT 1908
++ -1:00 Iceland IS%sT 1968 Apr 7 1:00s
+ 0:00 - GMT
+
+ # Italy
+@@ -1415,73 +1500,84 @@
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
+-# From Paul Eggert (2006-03-22):
+-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+-# F. Pollastri
+-# Day-light Saving Time in Italy (2006-02-03)
+-# <http://toi.iriti.cnr.it/uk/ienitlt.html>
+-# ('FP' below), taken from an Italian National Electrotechnical Institute
+-# publication. When the three sources disagree, guess who's right, as follows:
+-#
+-# year FP Shanks&P. (S) Whitman (W) Go with:
+-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+-# 09-30 09-29 24:00 09-30 01:00 FP & W
+-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+-# 10-06 10-05 24:00 10-06 01:00 FP & W
+-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+-# 1944 04-02 04-03 02:00 S (see C-Eur)
+-# 09-16 10-02 03:00 FP; guess 24:00s
+-# 1945 09-14 09-16 24:00 FP; guess 24:00s
+-# 1970 05-21 05-31 00:00 S
+-# 09-20 09-27 00:00 S
+-#
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+-Rule Italy 1916 only - Oct 1 0:00s 0 -
+-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+-Rule Italy 1917 only - Sep 30 0:00s 0 -
+-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+-Rule Italy 1920 only - Sep 19 0:00s 0 -
+-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+-Rule Italy 1944 only - Sep 17 0:00s 0 -
+-Rule Italy 1945 only - Apr 2 2:00 1:00 S
+-Rule Italy 1945 only - Sep 15 0:00s 0 -
+-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+-Rule Italy 1946 only - Oct 6 2:00s 0 -
+-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+-Rule Italy 1947 only - Oct 5 0:00s 0 -
+-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+-Rule Italy 1948 only - Oct 3 2:00s 0 -
+-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+-Rule Italy 1969 only - Jun 1 0:00 1:00 S
+-Rule Italy 1970 only - May 31 0:00 1:00 S
+-Rule Italy 1970 only - Sep lastSun 0:00 0 -
+-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1971 only - Sep lastSun 1:00 0 -
+-Rule Italy 1972 only - Oct 1 0:00 0 -
+-Rule Italy 1973 only - Jun 3 0:00 1:00 S
+-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+-Rule Italy 1974 only - May 26 0:00 1:00 S
+-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+-Rule Italy 1976 only - May 30 0:00s 1:00 S
+-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+-Rule Italy 1978 only - Oct 1 0:00s 0 -
+-Rule Italy 1979 only - Sep 30 0:00s 0 -
++# From Michael Deckers (2016-10-24):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
++# ... [translated as] "The preceding dispositions will enter into
++# force at the instant at which, according to the time specified in
++# the 1st article, the 1st of November 1893 will begin...."
++#
++# From Pierpaolo Bernardi (2016-10-20):
++# The authoritative source for time in Italy is the national metrological
++# institute, which has a summary page of historical DST data at
++# http://www.inrim.it/res/tf/ora_legale_i.shtml
++# (2016-10-24):
++# http://www.renzobaldini.it/le-ore-legali-in-italia/
++# has still different data for 1944. It divides Italy in two, as
++# there were effectively two governments at the time, north of Gothic
++# Line German controlled territory, official government RSI, and south
++# of the Gothic Line, controlled by allied armies.
++#
++# From Brian Inglis (2016-10-23):
++# Viceregal LEGISLATIVE DECREE. 14 September 1944, no. 219.
++# Restoration of Standard Time. (044U0219) (OJ 62 of 30.9.1944) ...
++# Given the R. law decreed on 1944-03-29, no. 92, by which standard time is
++# advanced to sixty minutes later starting at hour two on 1944-04-02; ...
++# Starting at hour three on the date 1944-09-17 standard time will be resumed.
++#
++# From Paul Eggert (2016-10-27):
++# Go with INRiM for DST rules, except as corrected by Inglis for 1944
++# for the Kingdom of Italy. This is consistent with Renzo Baldini.
++# Model Rome's occupation by using using C-Eur rules from 1943-09-10
++# to 1944-06-04; although Rome was an open city during this period, it
++# was effectively controlled by Germany.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Italy 1916 only - Jun 3 24:00 1:00 S
++Rule Italy 1916 1917 - Sep 30 24:00 0 -
++Rule Italy 1917 only - Mar 31 24:00 1:00 S
++Rule Italy 1918 only - Mar 9 24:00 1:00 S
++Rule Italy 1918 only - Oct 6 24:00 0 -
++Rule Italy 1919 only - Mar 1 24:00 1:00 S
++Rule Italy 1919 only - Oct 4 24:00 0 -
++Rule Italy 1920 only - Mar 20 24:00 1:00 S
++Rule Italy 1920 only - Sep 18 24:00 0 -
++Rule Italy 1940 only - Jun 14 24:00 1:00 S
++Rule Italy 1942 only - Nov 2 2:00s 0 -
++Rule Italy 1943 only - Mar 29 2:00s 1:00 S
++Rule Italy 1943 only - Oct 4 2:00s 0 -
++Rule Italy 1944 only - Apr 2 2:00s 1:00 S
++Rule Italy 1944 only - Sep 17 2:00s 0 -
++Rule Italy 1945 only - Apr 2 2:00 1:00 S
++Rule Italy 1945 only - Sep 15 1:00 0 -
++Rule Italy 1946 only - Mar 17 2:00s 1:00 S
++Rule Italy 1946 only - Oct 6 2:00s 0 -
++Rule Italy 1947 only - Mar 16 0:00s 1:00 S
++Rule Italy 1947 only - Oct 5 0:00s 0 -
++Rule Italy 1948 only - Feb 29 2:00s 1:00 S
++Rule Italy 1948 only - Oct 3 2:00s 0 -
++Rule Italy 1966 1968 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1966 only - Sep 24 24:00 0 -
++Rule Italy 1967 1969 - Sep Sun>=22 0:00s 0 -
++Rule Italy 1969 only - Jun 1 0:00s 1:00 S
++Rule Italy 1970 only - May 31 0:00s 1:00 S
++Rule Italy 1970 only - Sep lastSun 0:00s 0 -
++Rule Italy 1971 1972 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1971 only - Sep lastSun 0:00s 0 -
++Rule Italy 1972 only - Oct 1 0:00s 0 -
++Rule Italy 1973 only - Jun 3 0:00s 1:00 S
++Rule Italy 1973 1974 - Sep lastSun 0:00s 0 -
++Rule Italy 1974 only - May 26 0:00s 1:00 S
++Rule Italy 1975 only - Jun 1 0:00s 1:00 S
++Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
++Rule Italy 1976 only - May 30 0:00s 1:00 S
++Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1978 only - Oct 1 0:00s 0 -
++Rule Italy 1979 only - Sep 30 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1944 Jul
++ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
++ 1:00 Italy CE%sT 1943 Sep 10
++ 1:00 C-Eur CE%sT 1944 Jun 4
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+@@ -1497,21 +1593,21 @@
+ # correct data in juridical acts and I found some juridical documents about
+ # changes in the counting of time in Latvia from 1981....
+ #
+-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
+-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
++# Act No. 35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
++# according to the Act No. 925 of the Council of Ministers of USSR of 1980-10-24
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
+ # and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
+ #
+-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
+-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
++# Act No. 592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
++# according to the Act No. 967 of the Council of Ministers of USSR of 1984-09-13
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on the last Sunday of March at 02:00
+ # (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
+ # September at 03:00 (GMT 23:00 on the previous day).
+ #
+-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
+-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
++# Act No. 81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
++# according to the Act No. 227 of the Council of Ministers of USSR of 1989-03-14
+ # ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
+ # Estonian SSR and Kaliningrad region of Russian Federation all year round the
+ # time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
+@@ -1528,17 +1624,17 @@
+ # From Andrei Ivanov (2000-03-06):
+ # This year Latvia will not switch to Daylight Savings Time (as specified in
+ # The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
+-# 29-Feb-2000 (#79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
++# 29-Feb-2000 (No. 79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
+ # in Latvian for subscribers only).
+
+ # From RFE/RL Newsline
+-# <http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html>
++# http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html
+ # (2001-01-03), noted after a heads-up by Rives McDow:
+ # The Latvian government on 2 January decided that the country will
+ # institute daylight-saving time this spring, LETA reported.
+ # Last February the three Baltic states decided not to turn back their
+ # clocks one hour in the spring....
+-# Minister of Economy Aigars Kalvitis noted that Latvia had too few
++# Minister of Economy Aigars Kalvītis noted that Latvia had too few
+ # daylight hours and thus decided to comply with a draft European
+ # Commission directive that provides for instituting daylight-saving
+ # time in EU countries between 2002 and 2006. The Latvian government
+@@ -1549,20 +1645,22 @@
+ Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S
+ Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 -
+
+-# Milne says Riga time was 1:36:28 (Polytechnique House time).
++# Milne 1899 says Riga was 1:36:28 (Polytechnique House time).
++# Byalokoz 1919 says Latvia was 1:36:34.
++# Go with Byalokoz.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Riga 1:36:28 - LMT 1880
+- 1:36:28 - RMT 1918 Apr 15 2:00 #Riga Mean Time
+- 1:36:28 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
+- 1:36:28 - RMT 1919 Apr 1 2:00
+- 1:36:28 1:00 LST 1919 May 22 3:00
+- 1:36:28 - RMT 1926 May 11
++Zone Europe/Riga 1:36:34 - LMT 1880
++ 1:36:34 - RMT 1918 Apr 15 2:00 # Riga MT
++ 1:36:34 1:00 LST 1918 Sep 16 3:00 # Latvian ST
++ 1:36:34 - RMT 1919 Apr 1 2:00
++ 1:36:34 1:00 LST 1919 May 22 3:00
++ 1:36:34 - RMT 1926 May 11
+ 2:00 - EET 1940 Aug 5
+ 3:00 - MSK 1941 Jul
+ 1:00 C-Eur CE%sT 1944 Oct 13
+- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
+- 2:00 1:00 EEST 1989 Sep lastSun 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
++ 2:00 1:00 EEST 1989 Sep lastSun 2:00s
+ 2:00 Latvia EE%sT 1997 Jan 21
+ 2:00 EU EE%sT 2000 Feb 29
+ 2:00 - EET 2001 Jan 2
+@@ -1588,6 +1686,9 @@
+
+ # Lithuania
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
+ # From Paul Eggert (1996-11-22):
+ # IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+ # known to be wrong about Estonia and Latvia, assume it's wrong here too.
+@@ -1620,18 +1721,18 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vilnius 1:41:16 - LMT 1880
+- 1:24:00 - WMT 1917 # Warsaw Mean Time
++ 1:24:00 - WMT 1917 # Warsaw Mean Time
+ 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
+ 1:00 - CET 1920 Jul 12
+ 2:00 - EET 1920 Oct 9
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+- 2:00 - EET 1998 Mar 29 1:00u
+- 1:00 EU CE%sT 1999 Oct 31 1:00u
++ 2:00 - EET 1998 Mar 29 1:00u
++ 1:00 EU CE%sT 1999 Oct 31 1:00u
+ 2:00 - EET 2003 Jan 1
+ 2:00 EU EE%sT
+
+@@ -1665,9 +1766,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
+ 1:00 Lux CE%sT 1918 Nov 25
+- 0:00 Lux WE%sT 1929 Oct 6 2:00s
+- 0:00 Belgium WE%sT 1940 May 14 3:00
+- 1:00 C-Eur WE%sT 1944 Sep 18 3:00
++ 0:00 Lux WE%sT 1929 Oct 6 2:00s
++ 0:00 Belgium WE%sT 1940 May 14 3:00
++ 1:00 C-Eur WE%sT 1944 Sep 18 3:00
+ 1:00 Belgium CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1675,6 +1776,10 @@
+ # See Europe/Belgrade.
+
+ # Malta
++#
++# From Paul Eggert (2016-10-21):
++# Assume 1900-1972 was like Rome, overriding Shanks.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+ Rule Malta 1973 only - Sep 29 0:00s 0 -
+@@ -1684,15 +1789,23 @@
+ Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
++Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Moldova
+
++# From Stepan Golosunov (2016-03-07):
++# the act of the government of the Republic of Moldova Nr. 132 from 1990-05-04
++# http://lex.justice.md/viewdoc.php?action=view&view=doc&id=298782&lang=2
++# ... says that since 1990-05-06 on the territory of the Moldavian SSR
++# time would be calculated as the standard time of the second time belt
++# plus one hour of the "summer" time. To implement that clocks would be
++# adjusted one hour backwards at 1990-05-06 2:00. After that "summer"
++# time would be cancelled last Sunday of September at 3:00 and
++# reintroduced last Sunday of March at 2:00.
++
+ # From Paul Eggert (2006-03-22):
+ # A previous version of this database followed Shanks & Pottenger, who write
+ # that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+@@ -1731,6 +1844,18 @@
+ # News from Moldova (in russian):
+ # http://ru.publika.md/link_317061.html
+
++# From Roman Tudos (2015-07-02):
++# http://lex.justice.md/index.php?action=view&view=doc&lang=1&id=355077
++# From Paul Eggert (2015-07-01):
++# The abovementioned official link to IGO1445-868/2014 states that
++# 2014-10-26's fallback transition occurred at 03:00 local time. Also,
++# http://www.trm.md/en/social/la-30-martie-vom-trece-la-ora-de-vara
++# says the 2014-03-30 spring-forward transition was at 02:00 local time.
++# Guess that since 1997 Moldova has switched one hour before the EU.
++
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Moldova 1997 max - Mar lastSun 2:00 1:00 S
++Rule Moldova 1997 max - Oct lastSun 3:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Chisinau 1:55:20 - LMT 1880
+@@ -1739,21 +1864,19 @@
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+- 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 May 6
+- 2:00 - EET 1991
++ 3:00 Russia MSK/MSD 1990 May 6 2:00
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+ # See Romania commentary for the guessed 1997 transition to EU rules.
+- 2:00 EU EE%sT
++ 2:00 Moldova EE%sT
+
+ # Monaco
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+ # more precise 0:09:21.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+- 0:00 France WE%sT 1945 Sep 16 3:00
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:00 France WE%sT 1945 Sep 16 3:00
+ 1:00 France CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1797,8 +1920,8 @@
+ # was not until 1866 when they were all required by law to observe
+ # Amsterdam mean time.
+
+-# The data before 1945 are taken from
+-# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
++# The data entries before 1945 are taken from
++# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+@@ -1829,8 +1952,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Amsterdam 0:19:32 - LMT 1835
+ 0:19:32 Neth %s 1937 Jul 1
+- 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
++ 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Neth CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1893,7 +2016,7 @@
+ # <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
+ # expelled on 1942-05-14. However, small parties of Germans did return,
+ # and according to Wilhelm Dege's book "War North of 80" (1954)
+-# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
++# http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html
+ # the German armed forces at the Svalbard weather station code-named
+ # Haudegen did not surrender to the Allies until September 1945.
+ #
+@@ -1917,7 +2040,7 @@
+ Rule Poland 1945 only - Nov 1 0:00 0 -
+ # For 1946 on the source is Kazimierz Borkowski,
+ # Toruń Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
+-# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
++# http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1
+ # Thanks to Przemysław Augustyniak (2005-05-28) for this reference.
+ # He also gives these further references:
+ # Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
+@@ -1938,10 +2061,10 @@
+ Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Warsaw 1:24:00 - LMT 1880
+- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
+- 1:00 C-Eur CE%sT 1918 Sep 16 3:00
++ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
++ 1:00 C-Eur CE%sT 1918 Sep 16 3:00
+ 2:00 Poland EE%sT 1922 Jun
+- 1:00 Poland CE%sT 1940 Jun 23 2:00
++ 1:00 Poland CE%sT 1940 Jun 23 2:00
+ 1:00 C-Eur CE%sT 1944 Oct
+ 1:00 Poland CE%sT 1977
+ 1:00 W-Eur CE%sT 1988
+@@ -1949,6 +2072,14 @@
+
+ # Portugal
+ #
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Lisbon was at -0:36:44.68, but switched to GMT on 1912-01-01 at 00:00.
++# Round the old offset to -0:36:45. This agrees with Willett but disagrees
++# with Shanks, who says the transition occurred on 1911-05-24 at 00:00 for
++# Europe/Lisbon, Atlantic/Azores, and Atlantic/Madeira.
++#
+ # From Rui Pedro Salgueiro (1992-11-12):
+ # Portugal has recently (September, 27) changed timezone
+ # (from WET to MET or CET) to harmonize with EEC.
+@@ -2028,28 +2159,27 @@
+ Rule Port 1980 only - Mar lastSun 0:00s 1:00 S
+ Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
+ Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
+-# Willett says 1912-01-01. Go with Willett.
+-Zone Europe/Lisbon -0:36:32 - LMT 1884
+- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time
+- 0:00 Port WE%sT 1966 Apr 3 2:00
+- 1:00 - CET 1976 Sep 26 1:00
+- 0:00 Port WE%sT 1983 Sep 25 1:00s
+- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
+- 1:00 EU CE%sT 1996 Mar 31 1:00u
++Zone Europe/Lisbon -0:36:45 - LMT 1884
++ -0:36:45 - LMT 1912 Jan 1 # Lisbon Mean Time
++ 0:00 Port WE%sT 1966 Apr 3 2:00
++ 1:00 - CET 1976 Sep 26 1:00
++ 0:00 Port WE%sT 1983 Sep 25 1:00s
++ 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
++ 1:00 EU CE%sT 1996 Mar 31 1:00u
+ 0:00 EU WE%sT
+-Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
+- -1:54:32 - HMT 1911 May 24 # Horta Mean Time
+- -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
+- -1:00 Port AZO%sT 1983 Sep 25 1:00s
+- -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
+- 0:00 EU WE%sT 1993 Mar 28 1:00u
++Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
++ -1:54:32 - HMT 1912 Jan 1 # Horta Mean Time
++ -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
++ -1:00 Port AZO%sT 1983 Sep 25 1:00s
++ -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
++ 0:00 EU WE%sT 1993 Mar 28 1:00u
+ -1:00 EU AZO%sT
+-Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
+- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time
+- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
+- 0:00 Port WE%sT 1983 Sep 25 1:00s
++Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
++ -1:07:36 - FMT 1912 Jan 1 # Funchal Mean Time
++ -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
++ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 EU WE%sT
+
+ # Romania
+@@ -2073,8 +2203,8 @@
+ Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+- 2:00 Romania EE%sT 1981 Mar 29 2:00s
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1981 Mar 29 2:00s
+ 2:00 C-Eur EE%sT 1991
+ 2:00 Romania EE%sT 1994
+ 2:00 E-Eur EE%sT 1997
+@@ -2084,7 +2214,7 @@
+ # Russia
+
+ # From Alexander Krivenyshev (2011-09-15):
+-# Based on last Russian Government Decree # 725 on August 31, 2011
++# Based on last Russian Government Decree No. 725 on August 31, 2011
+ # (Government document
+ # http://www.government.ru/gov/results/16355/print/
+ # in Russian)
+@@ -2094,7 +2224,7 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia36.htm
+
+ # From Sanjeev Gupta (2011-09-27):
+-# Scans of [Decree #23 of January 8, 1992] are available at:
++# Scans of [Decree No. 23 of January 8, 1992] are available at:
+ # http://government.consultant.ru/page.aspx?1223966
+ # They are in Cyrillic letters (presumably Russian).
+
+@@ -2105,19 +2235,19 @@
+ # One source is
+ # http://government.ru/gov/results/16355/
+ # which, according to translate.google.com, begins "Decree of August 31,
+-# 2011 No 725" and contains no other dates or "effective date" information.
++# 2011 No. 725" and contains no other dates or "effective date" information.
+ #
+ # Another source is
+ # http://www.rg.ru/2011/09/06/chas-zona-dok.html
+ # which, according to translate.google.com, begins "Resolution of the
+ # Government of the Russian Federation on August 31, 2011 N 725" and also
+ # contains "Date first official publication: September 6, 2011 Posted on:
+-# in the 'RG' - Federal Issue number 5573 September 6, 2011" but which
++# in the 'RG' - Federal Issue No. 5573 September 6, 2011" but which
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+ # http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+-# which, in note 8, contains "Resolution #725 of August 31, 2011...
++# which, in note 8, contains "Resolution No. 725 of August 31, 2011...
+ # Effective as of after 7 days following the day of the official publication"
+ # but which does not contain any reference to September 6, 2011.
+ #
+@@ -2156,7 +2286,6 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+ # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+ # are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+ # except we follow Chernov's report that 1992 DST transitions were Sat
+@@ -2210,73 +2339,179 @@
+
+ # From Tim Parenti (2014-07-03):
+ # Europe/Kaliningrad covers...
+-# 39 RU-KGD Kaliningrad Oblast
++# 39 RU-KGD Kaliningrad Oblast
++
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Stepan Golosunov (2016-03-07):
++# http://www.rgo.ru/ru/kaliningradskoe-oblastnoe-otdelenie/ob-otdelenii/publikacii/kak-nam-zhilos-bez-letnego-vremeni
++# confirms that the 1989 change to Moscow-1 was implemented.
++# (The article, though, is misattributed to 1990 while saying that
++# summer->winter transition would be done on the 24 of September. But
++# 1990-09-24 was Monday, while 1989-09-24 was Sunday as expected.)
++# ...
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad switched to Moscow-1 on 1989-03-26, avoided
++# at the last moment switch to Moscow-1 on 1991-03-31, switched to
++# Moscow on 1991-11-03, switched to Moscow-1 on 1992-01-19.
+
+ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 2011 Mar 27 2:00s
++ 3:00 - +03 2014 Oct 26 2:00s
+ 2:00 - EET
+
+
+-# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
++# From Paul Eggert (2016-02-21), per Tim Parenti (2014-07-03) and
++# Oscar van Vlijmen (2001-08-25):
+ # Europe/Moscow covers...
+-# 01 RU-AD Adygea, Republic of
+-# 05 RU-DA Dagestan, Republic of
+-# 06 RU-IN Ingushetia, Republic of
+-# 07 RU-KB Kabardino-Balkar Republic
+-# 08 RU-KL Kalmykia, Republic of
+-# 09 RU-KC Karachay-Cherkess Republic
+-# 10 RU-KR Karelia, Republic of
+-# 11 RU-KO Komi Republic
+-# 12 RU-ME Mari El Republic
+-# 13 RU-MO Mordovia, Republic of
+-# 15 RU-SE North Ossetia-Alania, Republic of
+-# 16 RU-TA Tatarstan, Republic of
+-# 20 RU-CE Chechen Republic
+-# 21 RU-CU Chuvash Republic
+-# 23 RU-KDA Krasnodar Krai
+-# 26 RU-STA Stavropol Krai
+-# 29 RU-ARK Arkhangelsk Oblast
+-# 31 RU-BEL Belgorod Oblast
+-# 32 RU-BRY Bryansk Oblast
+-# 33 RU-VLA Vladimir Oblast
+-# 35 RU-VLG Vologda Oblast
+-# 36 RU-VOR Voronezh Oblast
+-# 37 RU-IVA Ivanovo Oblast
+-# 40 RU-KLU Kaluga Oblast
+-# 44 RU-KOS Kostroma Oblast
+-# 46 RU-KRS Kursk Oblast
+-# 47 RU-LEN Leningrad Oblast
+-# 48 RU-LIP Lipetsk Oblast
+-# 50 RU-MOS Moscow Oblast
+-# 51 RU-MUR Murmansk Oblast
+-# 52 RU-NIZ Nizhny Novgorod Oblast
+-# 53 RU-NGR Novgorod Oblast
+-# 57 RU-ORL Oryol Oblast
+-# 58 RU-PNZ Penza Oblast
+-# 60 RU-PSK Pskov Oblast
+-# 61 RU-ROS Rostov Oblast
+-# 62 RU-RYA Ryazan Oblast
+-# 67 RU-SMO Smolensk Oblast
+-# 68 RU-TAM Tambov Oblast
+-# 69 RU-TVE Tver Oblast
+-# 71 RU-TUL Tula Oblast
+-# 73 RU-ULY Ulyanovsk Oblast
+-# 76 RU-YAR Yaroslavl Oblast
+-# 77 RU-MOW Moscow
+-# 78 RU-SPE Saint Petersburg
+-# 83 RU-NEN Nenets Autonomous Okrug
++# 01 RU-AD Adygea, Republic of
++# 05 RU-DA Dagestan, Republic of
++# 06 RU-IN Ingushetia, Republic of
++# 07 RU-KB Kabardino-Balkar Republic
++# 08 RU-KL Kalmykia, Republic of
++# 09 RU-KC Karachay-Cherkess Republic
++# 10 RU-KR Karelia, Republic of
++# 11 RU-KO Komi Republic
++# 12 RU-ME Mari El Republic
++# 13 RU-MO Mordovia, Republic of
++# 15 RU-SE North Ossetia-Alania, Republic of
++# 16 RU-TA Tatarstan, Republic of
++# 20 RU-CE Chechen Republic
++# 21 RU-CU Chuvash Republic
++# 23 RU-KDA Krasnodar Krai
++# 26 RU-STA Stavropol Krai
++# 29 RU-ARK Arkhangelsk Oblast
++# 31 RU-BEL Belgorod Oblast
++# 32 RU-BRY Bryansk Oblast
++# 33 RU-VLA Vladimir Oblast
++# 35 RU-VLG Vologda Oblast
++# 36 RU-VOR Voronezh Oblast
++# 37 RU-IVA Ivanovo Oblast
++# 40 RU-KLU Kaluga Oblast
++# 44 RU-KOS Kostroma Oblast
++# 46 RU-KRS Kursk Oblast
++# 47 RU-LEN Leningrad Oblast
++# 48 RU-LIP Lipetsk Oblast
++# 50 RU-MOS Moscow Oblast
++# 51 RU-MUR Murmansk Oblast
++# 52 RU-NIZ Nizhny Novgorod Oblast
++# 53 RU-NGR Novgorod Oblast
++# 57 RU-ORL Oryol Oblast
++# 58 RU-PNZ Penza Oblast
++# 60 RU-PSK Pskov Oblast
++# 61 RU-ROS Rostov Oblast
++# 62 RU-RYA Ryazan Oblast
++# 67 RU-SMO Smolensk Oblast
++# 68 RU-TAM Tambov Oblast
++# 69 RU-TVE Tver Oblast
++# 71 RU-TUL Tula Oblast
++# 76 RU-YAR Yaroslavl Oblast
++# 77 RU-MOW Moscow
++# 78 RU-SPE Saint Petersburg
++# 83 RU-NEN Nenets Autonomous Okrug
++
++# From Paul Eggert (2016-08-23):
++# The Soviets switched to UT-based time in 1919. Decree No. 59
++# (1919-02-08) http://istmat.info/node/35567 established UT-based time
++# zones, and Decree No. 147 (1919-03-29) http://istmat.info/node/35854
++# specified a transition date of 1919-07-01, apparently at 00:00 UT.
++# No doubt only the Soviet-controlled regions switched on that date;
++# later transitions to UT-based time in other parts of Russia are
++# taken from what appear to be guesses by Shanks.
++# (Thanks to Alexander Belopolsky for pointers to the decrees.)
++
++# From Stepan Golosunov (2016-03-07):
++# 11. Regions-violators, 1981-1982.
++# Wikipedia refers to
++# http://maps.monetonos.ru/maps/raznoe/Old_Maps/Old_Maps/Articles/022/3_1981.html
++# http://besp.narod.ru/nauka_1981_3.htm
++#
++# The second link provides two articles scanned from the Nauka i Zhizn
++# magazine No. 3, 1981 and a scan of the short article attributed to
++# the Trud newspaper from February 1982. The first link provides the
++# same Nauka i Zhizn articles converted to the text form (but misses
++# time belt changes map).
++#
++# The second Nauka i Zhizn article says that in addition to
++# introduction of summer time on 1981-04-01 there are some time belt
++# border changes on 1981-10-01, mostly affecting Nenets Autonomous
++# Okrug, Krasnoyarsk Krai, Yakutia, Magadan Oblast and Chukotka
++# according to the provided map (colored one). In addition to that
++# "time violators" (regions which were not using rules of the time
++# belts in which they were located) would not be moving off the DST on
++# 1981-10-01 to restore the decree time usage. (Komi ASSR was
++# supposed to repeat that move in October 1982 to account for the 2
++# hour difference.) Map depicting "time violators" before 1981-10-01
++# is also provided.
++#
++# The article from Trud says that 1981-10-01 changes caused problems
++# and some territories would be moved to pre-1981-10-01 time by not
++# moving to summer time on 1982-04-01. Namely: Dagestan,
++# Kabardino-Balkar, Kalmyk, Komi, Mari, Mordovian, North Ossetian,
++# Tatar, Chechen-Ingush and Chuvash ASSR, Krasnodar and Stavropol
++# krais, Arkhangelsk, Vladimir, Vologda, Voronezh, Gorky, Ivanovo,
++# Kostroma, Lipetsk, Penza, Rostov, Ryazan, Tambov, Tyumen and
++# Yaroslavl oblasts, Nenets and Evenk autonomous okrugs, Khatangsky
++# district of Taymyr Autonomous Okrug. As a result Evenk Autonomous
++# Okrug and Khatangsky district of Taymyr Autonomous Okrug would end
++# up on Moscow+4, Tyumen Oblast on Moscow+2 and the rest on Moscow
++# time.
++#
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# attributes the 1982 changes to the Act of the Council of Ministers
++# of the USSR No. 126 from 18.02.1982. 1980-925.txt also adds
++# Udmurtia to the list of affected territories and lists Khatangsky
++# district separately from Taymyr Autonomous Okrug. Probably erroneously.
++#
++# The affected territories are currently listed under Europe/Moscow,
++# Asia/Yekaterinburg and Asia/Krasnoyarsk.
++#
++# 12. Udmurtia
++# The fact that Udmurtia is depicted as a violator in the Nauka i
++# Zhizn article hints at Izhevsk being on different time from
++# Kuybyshev before 1981-10-01. Udmurtia is not mentioned in the 1989 act.
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# implies Udmurtia was on Moscow time after 1982-04-01.
++# Wikipedia implies Udmurtia being on Moscow+1 until 1991.
++#
++# ...
++#
++# All Russian zones are supposed to have by default a -1 change at
++# 1991-03-31 2:00 (cancellation of the decree time in the USSR) and a +1
++# change at 1992-01-19 2:00 (restoration of the decree time in Russia).
++#
++# There were some exceptions, though.
++# Wikipedia says newspapers listed Astrakhan, Saratov, Kirov, Volgograd,
++# Izhevsk, Grozny, Kazan and Samara as such exceptions for the 1992
++# change. (Different newspapers providing different lists. And some
++# lists found in the internet are quite wild.)
++#
++# And apparently some exceptions were reverted in the last moment.
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad decided not to be an exception 2 days before the
++# 1991-03-31 switch and one person at
++# http://izhevsk.ru/forum_light_message/50/682597-m8369040.html
++# says he remembers that Samara opted out of the 1992-01-19 exception
++# 2 days before the switch.
++#
++#
++# From Paul Eggert (2016-03-18):
++# Given the above, we appear to be missing some Zone entries for the
++# chaotic early 1980s in Russia. It's not clear what these entries
++# should be. For now, sweep this under the rug and just document the
++# time in Moscow.
+
+ # From Vladimir Karpinsky (2014-07-08):
+ # LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow
+ # Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30")....
+ # LMT in Moscow since Jul 3, 1916 is 2:31:01 as a result of new standard.
+-# (The info is from the book by Byalokoz E.L. New Counting of Time in Russia
+-# since July 1, 1919, p. 18.) The time in St. Petersburg as capital of Russia
+-# was defined by Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow
++# (The info is from the book by Byalokoz ... p. 18.)
++# The time in St. Petersburg as capital of Russia was defined by
++# Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow
+ # was synchronized with LMT St. Petersburg (+30 minutes), (Pulkov observatory
+ # coordinates: 59 deg. 46'18.70", 30 deg. 19'40.70") so 30 deg. 19'40.70" >
+ # 2h01m18.7s = 2:01:19. LMT Moscow = LMT St.Petersburg + 30m 2:01:19 + 0:30 =
+@@ -2290,14 +2525,14 @@
+
+ Zone Europe/Moscow 2:30:17 - LMT 1880
+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
+- 2:31:19 Russia %s 1919 Jul 1 2:00
++ 2:31:19 Russia %s 1919 Jul 1 0:00u
+ 3:00 Russia %s 1921 Oct
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1992 Jan 19 2:00s
+- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
++ 2:00 Russia EE%sT 1992 Jan 19 2:00s
++ 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
++ 4:00 - MSK 2014 Oct 26 2:00s
+ 3:00 - MSK
+
+
+@@ -2312,7 +2547,7 @@
+ 3:00 - MSK 1941 Nov
+ 1:00 C-Eur CE%sT 1944 Apr 13
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 Jul 1 2:00
++ 3:00 - MSK 1990 Jul 1 2:00
+ 2:00 - EET 1992
+ # Central Crimea used Moscow time 1994/1997.
+ #
+@@ -2325,12 +2560,12 @@
+ # changed in May.
+ 2:00 E-Eur EE%sT 1994 May
+ # From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
+- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
+- 3:00 1:00 MSD 1996 Oct 27 3:00s
++ 3:00 E-Eur MSK/MSD 1996 Mar 31 0:00s
++ 3:00 1:00 MSD 1996 Oct 27 3:00s
+ # IATA SSIM (1997-09) says Crimea switched to EET/EEST.
+ # Assume it happened in March by not changing the clocks.
+ 3:00 Russia MSK/MSD 1997
+- 3:00 - MSK 1997 Mar lastSun 1:00u
++ 3:00 - MSK 1997 Mar lastSun 1:00u
+ # From Alexander Krivenyshev (2014-03-17):
+ # time change at 2:00 (2am) on March 30, 2014
+ # http://vz.ru/news/2014/3/17/677464.html
+@@ -2338,113 +2573,268 @@
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+ # and the discrepancies are small enough to not worry about.
+- 2:00 EU EE%sT 2014 Mar 30 2:00
+- 4:00 - MSK 2014 Oct 26 2:00s
++ 2:00 EU EE%sT 2014 Mar 30 2:00
++ 4:00 - MSK 2014 Oct 26 2:00s
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Volgograd covers...
+-# 30 RU-AST Astrakhan Oblast
+-# 34 RU-VGG Volgograd Oblast
+-# 43 RU-KIR Kirov Oblast
+-# 64 RU-SAR Saratov Oblast
+-
+-# From Paul Eggert (2006-05-09):
+-# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300.
+-# Perhaps it switched after the others? But we have no data.
++# From Paul Eggert (2016-03-18):
++# Europe/Astrakhan covers:
++# 30 RU-AST Astrakhan Oblast
++#
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-01-12):
++# On February 10, 2016 Astrakhan Oblast got approval by the Federation
++# Council to change its time zone to UTC+4 (from current UTC+3 Moscow time)....
++# This Federal Law shall enter into force on 27 March 2016 at 02:00.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201602150056
++
++Zone Europe/Astrakhan 3:12:12 - LMT 1924 May
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Volgograd covers:
++# 34 RU-VGG Volgograd Oblast
++# 64 RU-SAR Saratov Oblast
++# The 1988 transition is from USSR act No. 5 (1988-01-04).
+
+ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+- 4:00 - STAT 1961 Nov 11
+- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+- 4:00 - VOLT 1992 Mar 29 2:00s
+- 3:00 Russia MSK 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
+- 3:00 - MSK
+-
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1961 Nov 11
++ 4:00 Russia +04/+05 1988 Mar 27 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
++
++# From Paul Eggert (2016-03-18):
++# Europe/Kirov covers:
++# 43 RU-KIR Kirov Oblast
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
++Zone Europe/Kirov 3:18:48 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Europe/Samara covers...
+-# 18 RU-UD Udmurt Republic
+-# 63 RU-SAM Samara Oblast
+-
+-Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
+- 3:00 - SAMT 1930 Jun 21
+- 4:00 - SAMT 1935 Jan 27
+- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1991 Sep 29 2:00s
+- 3:00 - KUYT 1991 Oct 20 3:00
+- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
+- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
+- 4:00 - SAMT
++# 18 RU-UD Udmurt Republic
++# 63 RU-SAM Samara Oblast
+
++# From Paul Eggert (2016-03-18):
++# Byalokoz 1919 says Samara was 3:20:20.
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1935 Jan 27
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1991 Sep 29 2:00s
++ 3:00 - +03 1991 Oct 20 3:00
++ 4:00 Russia +04/+05 2010 Mar 28 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Ulyanovsk covers:
++# 73 RU-ULY Ulyanovsk Oblast
++
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-02-17):
++# Ulyanovsk ... on their way to change time zones by March 27, 2016 at 2am.
++# Ulyanovsk Oblast ... from MSK to MSK+1 (UTC+3 to UTC+4) ...
++# 920582-6 ... 02/17/2016 The State Duma passed the bill in the first reading.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090051
++
++Zone Europe/Ulyanovsk 3:13:36 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1992 Jan 19 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Yekaterinburg covers...
+-# 02 RU-BA Bashkortostan, Republic of
+-# 90 RU-PER Perm Krai
+-# 45 RU-KGN Kurgan Oblast
+-# 56 RU-ORE Orenburg Oblast
+-# 66 RU-SVE Sverdlovsk Oblast
+-# 72 RU-TYU Tyumen Oblast
+-# 74 RU-CHE Chelyabinsk Oblast
+-# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra
+-# 89 RU-YAN Yamalo-Nenets Autonomous Okrug
++# 02 RU-BA Bashkortostan, Republic of
++# 90 RU-PER Perm Krai
++# 45 RU-KGN Kurgan Oblast
++# 56 RU-ORE Orenburg Oblast
++# 66 RU-SVE Sverdlovsk Oblast
++# 72 RU-TYU Tyumen Oblast
++# 74 RU-CHE Chelyabinsk Oblast
++# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra
++# 89 RU-YAN Yamalo-Nenets Autonomous Okrug
+ #
+ # Note: Effective 2005-12-01, (59) Perm Oblast and (81) Komi-Permyak
+ # Autonomous Okrug merged to form (90, RU-PER) Perm Krai.
+
+-# Milne says Yekaterinburg time was 4:02:32.9; round to nearest.
+-
+-Zone Asia/Yekaterinburg 4:02:33 - LMT 1919 Jul 15 4:00
+- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
+- 6:00 - YEKT 2014 Oct 26 2:00s
+- 5:00 - YEKT
++# Milne says Yekaterinburg was 4:02:32.9; round to nearest.
++# Byalokoz 1919 says its provincial time was based on Perm, at 3:45:05.
++# Assume it switched on 1916-07-03, the time of the new standard.
++# The 1919 and 1930 transitions are from Shanks.
++
++Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3
++ 3:45:05 - PMT 1919 Jul 15 4:00
++ 4:00 - +04 1930 Jun 21
++ 5:00 Russia +05/+06 1991 Mar 31 2:00s
++ 4:00 Russia +04/+05 1992 Jan 19 2:00s
++ 5:00 Russia +05/+06 2011 Mar 27 2:00s
++ 6:00 - +06 2014 Oct 26 2:00s
++ 5:00 - +05
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Omsk covers...
+-# 04 RU-AL Altai Republic
+-# 22 RU-ALT Altai Krai
+-# 55 RU-OMS Omsk Oblast
+-
+-Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
+- 5:00 - OMST 1930 Jun 21 # Omsk Time
+- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
+- 7:00 - OMST 2014 Oct 26 2:00s
+- 6:00 - OMST
++# 55 RU-OMS Omsk Oblast
+
++# Byalokoz 1919 says Omsk was 4:53:30.
+
+-# From Tim Parenti (2014-07-03):
+-# Asia/Novosibirsk covers...
+-# 54 RU-NVS Novosibirsk Oblast
+-# 70 RU-TOM Tomsk Oblast
+-
+-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+-# not clear when it switched from +7 to +6.
+-
+-Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 6:00 - NOVT
++Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14
++ 5:00 - +05 1930 Jun 21
++ 6:00 Russia +06/+07 1991 Mar 31 2:00s
++ 5:00 Russia +05/+06 1992 Jan 19 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06
++
++# From Paul Eggert (2016-02-22):
++# Asia/Barnaul covers:
++# 04 RU-AL Altai Republic
++# 22 RU-ALT Altai Krai
++
++# Data before 1991 are from Shanks & Pottenger.
++
++# From Stepan Golosunov (2016-03-07):
++# Letter of Bank of Russia from 1995-05-25
++# http://www.bestpravo.ru/rossijskoje/lj-akty/y3a.htm
++# suggests that Altai Republic transitioned to Moscow+3 on
++# 1995-05-28.
++#
++# http://regnum.ru/news/society/1957270.html
++# has some historical data for Altai Krai:
++# before 1957: west part on UTC+6, east on UTC+7
++# after 1957: UTC+7
++# since 1995: UTC+6
++# http://barnaul.rusplt.ru/index/pochemu_altajskij_kraj_okazalsja_v_neprivychnom_chasovom_pojase-17648.html
++# confirms that and provides more details including 1995-05-28 transition date.
++
++# From Alexander Krivenyshev (2016-02-17):
++# Altai Krai and Altai Republic on their way to change time zones
++# by March 27, 2016 at 2am....
++# Altai Republic / Gorno-Altaysk MSK+3 to MSK+4 (UTC+6 to UTC+7) ...
++# Altai Krai / Barnaul MSK+3 to MSK+4 (UTC+6 to UTC+7)
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090043
++# http://publication.pravo.gov.ru/Document/View/0001201603090038
++
++Zone Asia/Barnaul 5:35:00 - LMT 1919 Dec 10
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1995 May 28
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Mar 27 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Novosibirsk covers:
++# 54 RU-NVS Novosibirsk Oblast
++
++# From Stepan Golosunov (2016-05-30):
++# http://asozd2.duma.gov.ru/main.nsf/(Spravka)?OpenAgent&RN=1085784-6
++# moves Novosibirsk oblast from UTC+6 to UTC+7.
++# From Stepan Golosunov (2016-07-04):
++# The law was signed yesterday and published today on
++# http://publication.pravo.gov.ru/Document/View/0001201607040064
++
++Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1993 May 23 # say Shanks & P.
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Jul 24 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Tomsk covers:
++# 70 RU-TOM Tomsk Oblast
++
++# From Stepan Golosunov (2016-03-24):
++# Byalokoz listed Tomsk at 5:39:51.
++
++# From Stanislaw A. Kuzikowski (1994-06-29):
++# Tomsk is still 4 hours ahead of Moscow.
++
++# From Stepan Golosunov (2016-03-19):
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102075743
++# (fifth time belt being UTC+5+1(decree time)
++# / UTC+5+1(decree time)+1(summer time)) ...
++# Note that time belts (numbered from 2 (Moscow) to 12 according to their
++# GMT/UTC offset and having too many exceptions like regions formally
++# belonging to one belt but using time from another) were replaced
++# with time zones in 2011 with different numbering (there was a
++# 2-hour gap between second and third zones in 2011-2014).
++
++# From Stepan Golosunov (2016-04-12):
++# http://asozd2.duma.gov.ru/main.nsf/(SpravkaNew)?OpenAgent&RN=1006865-6
++# This bill was approved in the first reading today. It moves Tomsk oblast
++# from UTC+6 to UTC+7 and is supposed to come into effect on 2016-05-29 at
++# 2:00. The bill needs to be approved in the second and the third readings by
++# the State Duma, approved by the Federation Council, signed by the President
++# and published to become a law. Minor changes in the text are to be expected
++# before the second reading (references need to be updated to account for the
++# recent changes).
++#
++# Judging by the ultra-short one-day amendments period, recent similar laws,
++# the State Duma schedule and the Federation Council schedule
++# http://www.duma.gov.ru/legislative/planning/day-shedule/por_vesna_2016/
++# http://council.gov.ru/activity/meetings/schedule/63303
++# I speculate that the final text of the bill will be proposed tomorrow, the
++# bill will be approved in the second and the third readings on Friday,
++# approved by the Federation Council on 2016-04-20, signed by the President and
++# published as a law around 2016-04-26.
++
++# From Matt Johnson (2016-04-26):
++# http://publication.pravo.gov.ru/Document/View/0001201604260048
++
++Zone Asia/Tomsk 5:39:51 - LMT 1919 Dec 22
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2002 May 1 3:00
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 May 29 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Novokuznetsk covers...
+-# 42 RU-KEM Kemerovo Oblast
++# 42 RU-KEM Kemerovo Oblast
+
+ # From Alexander Krivenyshev (2009-10-13):
+ # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
+@@ -2452,7 +2842,7 @@
+ # from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
+ # to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
+ #
+-# This is according to Government of Russia decree # 740, on September
++# This is according to Government of Russia decree No. 740, on September
+ # 14, 2009 "Application in the territory of the Kemerovo region the Fifth
+ # time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
+ #
+@@ -2464,81 +2854,87 @@
+ #
+ # Thus, when Russia will switch to DST on the night of March 28, 2010
+ # Kemerovo region (Kemerovo oblast') will not change the clock.
+-#
+-# As a result, Kemerovo oblast' will be in the same time zone as
+-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+ # From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02):
+ # The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus
+ # realigning itself with KRAT.
+
+-Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk T
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 7:00 - KRAT # Krasnoyarsk Time
+-
++Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2010 Mar 28 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Krasnoyarsk covers...
+-# 17 RU-TY Tuva Republic
+-# 19 RU-KK Khakassia, Republic of
+-# 24 RU-KYA Krasnoyarsk Krai
++# 17 RU-TY Tuva Republic
++# 19 RU-KK Khakassia, Republic of
++# 24 RU-KYA Krasnoyarsk Krai
+ #
+ # Note: Effective 2007-01-01, (88) Evenk Autonomous Okrug and (84) Taymyr
+ # Autonomous Okrug were merged into (24, RU-KYA) Krasnoyarsk Krai.
+
+-Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
+- 8:00 - KRAT 2014 Oct 26 2:00s
+- 7:00 - KRAT
++# Byalokoz 1919 says Krasnoyarsk was 6:11:26.
++
++Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2011 Mar 27 2:00s
++ 8:00 - +08 2014 Oct 26 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Irkutsk covers...
+-# 03 RU-BU Buryatia, Republic of
+-# 38 RU-IRK Irkutsk Oblast
++# 03 RU-BU Buryatia, Republic of
++# 38 RU-IRK Irkutsk Oblast
+ #
+ # Note: Effective 2008-01-01, (85) Ust-Orda Buryat Autonomous Okrug was
+ # merged into (38, RU-IRK) Irkutsk Oblast.
+
+-# Milne says Irkutsk time was 6:57:15.
+-
+-Zone Asia/Irkutsk 6:57:15 - LMT 1880
+- 6:57:15 - IMT 1920 Jan 25 # Irkutsk Mean Time
+- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
+- 9:00 - IRKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++# Milne 1899 says Irkutsk was 6:57:15.
++# Byalokoz 1919 says Irkutsk was 6:57:05.
++# Go with Byalokoz.
++
++Zone Asia/Irkutsk 6:57:05 - LMT 1880
++ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time
++ 7:00 - +07 1930 Jun 21
++ 8:00 Russia +08/+09 1991 Mar 31 2:00s
++ 7:00 Russia +07/+08 1992 Jan 19 2:00s
++ 8:00 Russia +08/+09 2011 Mar 27 2:00s
++ 9:00 - +09 2014 Oct 26 2:00s
++ 8:00 - +08
+
+
+ # From Tim Parenti (2014-07-06):
+ # Asia/Chita covers...
+-# 92 RU-ZAB Zabaykalsky Krai
++# 92 RU-ZAB Zabaykalsky Krai
+ #
+ # Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat
+ # Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai.
+
++# From Alexander Krivenyshev (2016-01-02):
++# [The] time zone in the Trans-Baikal Territory (Zabaykalsky Krai) -
++# Asia/Chita [is changing] from UTC+8 to UTC+9. Effective date will
++# be March 27, 2016 at 2:00am....
++# http://publication.pravo.gov.ru/Document/View/0001201512300107
++
+ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 8:00 - +08 2016 Mar 27 2:00
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Yakutsk covers...
+-# 28 RU-AMU Amur Oblast
++# 28 RU-AMU Amur Oblast
+ #
+ # ...and parts of (14, RU-SA) Sakha (Yakutia) Republic:
+ # 14-02 **** Aldansky District
+@@ -2570,34 +2966,38 @@
+ # Since the surrounding districts of Sakha are all YAKT, assume this is, too.
+ # Also assume its history has been the same as the rest of Asia/Yakutsk.
+
+-Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++# Byalokoz 1919 says Yakutsk was 8:38:58.
++
++Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Vladivostok covers...
+-# 25 RU-PRI Primorsky Krai
+-# 27 RU-KHA Khabarovsk Krai
+-# 79 RU-YEV Jewish Autonomous Oblast
++# 25 RU-PRI Primorsky Krai
++# 27 RU-KHA Khabarovsk Krai
++# 79 RU-YEV Jewish Autonomous Oblast
+ #
+ # ...and parts of (14, RU-SA) Sakha (Yakutia) Republic:
+ # 14-09 **** Verkhoyansky District
+ # 14-31 **** Ust-Yansky District
+
+-# Milne says Vladivostok time was 8:47:33.5; round to nearest.
+-
+-Zone Asia/Vladivostok 8:47:34 - LMT 1922 Nov 15
+- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+- 9:00 Russia VLA%sT 1992 Jan 19 2:00s
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++# Milne 1899 says Vladivostok was 8:47:33.5.
++# Byalokoz 1919 says Vladivostok was 8:47:31.
++# Go with Byalokoz.
++
++Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
++ 9:00 - +09 1930 Jun 21
++ 10:00 Russia +10/+11 1991 Mar 31 2:00s
++ 9:00 Russia +09/+10 1992 Jan 19 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2615,37 +3015,42 @@
+ # This transition is no doubt wrong, but we have no better info.
+
+ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2004
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725?
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2004
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2011 Sep 13 0:00s # Decree 725?
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Sakhalin covers...
+-# 65 RU-SAK Sakhalin Oblast
++# 65 RU-SAK Sakhalin Oblast
+ # ...with the exception of:
+ # 65-11 **** Severo-Kurilsky District (North Kuril Islands)
+
++# From Matt Johnson (2016-02-22):
++# Asia/Sakhalin is moving (in entirety) from UTC+10 to UTC+11 ...
++# (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090044
++
+ # The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long.
+ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+- 9:00 - JCST 1937 Oct 1
+- 9:00 - JST 1945 Aug 25
+- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T.
+- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
+- 11:00 - SAKT 2014 Oct 26 2:00s
+- 10:00 - SAKT
++ 9:00 - +09 1945 Aug 25
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s # Sakhalin T
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Mar 27 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Magadan covers...
+-# 49 RU-MAG Magadan Oblast
++# 49 RU-MAG Magadan Oblast
+
+ # From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02):
+ # Magadan Oblast is moving from UTC+12 to UTC+10 on 2014-10-26; however,
+@@ -2654,13 +3059,22 @@
+ # until now by Asia/Magadan, will instead move to UTC+11. These regions will
+ # need their own zone.
+
++# From Alexander Krivenyshev (2016-03-27):
++# ... draft bill 948300-6 to change its time zone from UTC+10 to UTC+11 ...
++# will take ... effect ... on April 24, 2016 at 2 o'clock
++#
++# From Matt Johnson (2016-04-05):
++# ... signed by the President today ...
++# http://publication.pravo.gov.ru/Document/View/0001201604050038
++
+ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 10:00 - MAGT
++ 10:00 - +10 1930 Jun 21 # Magadan Time
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Apr 24 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2703,17 +3117,14 @@
+ # in Russian.) In addition, Srednekolymsk appears to be a much older
+ # settlement and the population of Zyryanka seems to be declining.
+ # Go with Srednekolymsk.
+-#
+-# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT
+-# as the abbreviation. Use SRET instead.
+
+ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 11:00 - SRET # Srednekolymsk Time
++ 10:00 - +10 1930 Jun 21
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2731,19 +3142,19 @@
+ # UTC+12 since at least then, too.
+
+ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAKT 1981 Apr 1
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725?
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1981 Apr 1
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2011 Sep 13 0:00s # Decree 725?
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Kamchatka covers...
+-# 91 RU-KAM Kamchatka Krai
++# 91 RU-KAM Kamchatka Krai
+ #
+ # Note: Effective 2007-07-01, (41) Kamchatka Oblast and (82) Koryak
+ # Autonomous Okrug merged to form (91, RU-KAM) Kamchatka Krai.
+@@ -2751,26 +3162,26 @@
+ # The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps
+ # Asia/Petropavlovsk-Kamchatsky, but these are too long.
+ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+- 11:00 - PETT 1930 Jun 21 # P-K Time
+- 12:00 Russia PET%sT 1991 Mar 31 2:00s
+- 11:00 Russia PET%sT 1992 Jan 19 2:00s
+- 12:00 Russia PET%sT 2010 Mar 28 2:00s
+- 11:00 Russia PET%sT 2011 Mar 27 2:00s
+- 12:00 - PETT
++ 11:00 - +11 1930 Jun 21
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Anadyr covers...
+-# 87 RU-CHU Chukotka Autonomous Okrug
++# 87 RU-CHU Chukotka Autonomous Okrug
+
+ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
+- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
+- 12:00 - ANAT
++ 12:00 - +12 1930 Jun 21
++ 13:00 Russia +13/+14 1982 Apr 1 0:00s
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # San Marino
+@@ -2781,7 +3192,7 @@
+ Zone Europe/Belgrade 1:22:00 - LMT 1884
+ 1:00 - CET 1941 Apr 18 23:00
+ 1:00 C-Eur CE%sT 1945
+- 1:00 - CET 1945 May 8 2:00s
++ 1:00 - CET 1945 May 8 2:00s
+ 1:00 1:00 CEST 1945 Sep 16 2:00s
+ # Metod Koželj reports that the legal date of
+ # transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
+@@ -2861,13 +3272,13 @@
+ 0:00 1:00 WEST 1918 Oct 7 23:00
+ 0:00 - WET 1924
+ 0:00 Spain WE%sT 1929
+- 0:00 SpainAfrica WE%sT 1984 Mar 16
++ 0:00 SpainAfrica WE%sT 1984 Mar 16
+ 1:00 - CET 1986
+ 1:00 EU CE%sT
+ Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
+- -1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
+- 0:00 - WET 1980 Apr 6 0:00s
+- 0:00 1:00 WEST 1980 Sep 28 0:00s
++ -1:00 - CANT 1946 Sep 30 1:00 # Canaries T
++ 0:00 - WET 1980 Apr 6 0:00s
++ 0:00 1:00 WEST 1980 Sep 28 1:00u
+ 0:00 EU WE%sT
+ # IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
+ # Ignore this for now, as the Canaries are part of the EU.
+@@ -2920,9 +3331,9 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
+- 1:00:14 - SET 1900 Jan 1 # Swedish Time
++ 1:00:14 - SET 1900 Jan 1 # Swedish Time
+ 1:00 - CET 1916 May 14 23:00
+- 1:00 1:00 CEST 1916 Oct 1 01:00
++ 1:00 1:00 CEST 1916 Oct 1 1:00
+ 1:00 - CET 1980
+ 1:00 EU CE%sT
+
+@@ -2991,7 +3402,7 @@
+
+ # From Pierre-Yves Berger (2013-09-11):
+ # the "Circulaire du conseil fédéral" (December 11 1893)
+-# <http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353> ...
++# http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353
+ # clearly states that the [1894-06-01] change should be done at midnight
+ # but if no one is present after 11 at night, could be postponed until one
+ # hour before the beginning of service.
+@@ -3023,28 +3434,30 @@
+ Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See above comment.
+- 0:29:46 - BMT 1894 Jun # Bern Mean Time
++ 0:29:46 - BMT 1894 Jun # Bern Mean Time
+ 1:00 Swiss CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Turkey
+
+-# From Amar Devegowda (2007-01-03):
+-# The time zone rules for Istanbul, Turkey have not been changed for years now.
+-# ... The latest rules are available at:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=107
+-# From Steffen Thorsen (2007-01-03):
+-# I have been able to find press records back to 1996 which all say that
+-# DST started 01:00 local time and end at 02:00 local time. I am not sure
+-# what happened before that. One example for each year from 1996 to 2001:
+-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+-# From Paul Eggert (2007-01-03):
+-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
++# From Kıvanç Yazan (2016-09-25):
++# 1) For 1986-2006, DST started at 01:00 local and ended at 02:00 local, with
++# no exceptions.
++# 2) 1994's lastSun was overridden with Mar 20 ...
++# Here are official papers:
++# http://www.resmigazete.gov.tr/arsiv/19032.pdf - page 2 for 1986
++# http://www.resmigazete.gov.tr/arsiv/19400.pdf - page 4 for 1987
++# http://www.resmigazete.gov.tr/arsiv/19752.pdf - page 15 for 1988
++# http://www.resmigazete.gov.tr/arsiv/20102.pdf - page 6 for 1989
++# http://www.resmigazete.gov.tr/arsiv/20464.pdf - page 1 for 1990 - 1992
++# http://www.resmigazete.gov.tr/arsiv/21531.pdf - page 15 for 1993 - 1995
++# http://www.resmigazete.gov.tr/arsiv/21879.pdf - page 1 for overriding 1994
++# http://www.resmigazete.gov.tr/arsiv/22588.pdf - page 1 for 1996, 1997
++# http://www.resmigazete.gov.tr/arsiv/23286.pdf - page 10 for 1998 - 2000
++# http://www.resmigazete.gov.tr/eskiler/2001/03/20010324.htm#2 - for 2001
++# http://www.resmigazete.gov.tr/eskiler/2002/03/20020316.htm#2 - for 2002-2006
++# From Paul Eggert (2016-09-25):
++# Prefer the above sources to Shanks & Pottenger for time stamps after 1985.
+
+ # From Steffen Thorsen (2007-03-09):
+ # Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+@@ -3080,6 +3493,25 @@
+ # http://www.balkaneu.com/eventful-elections-turkey/ 2014-03-30.
+ # I guess the best we can do is document the official time.
+
++# From Fatih (2015-09-29):
++# It's officially announced now by the Ministry of Energy.
++# Turkey delays winter time to 8th of November 04:00
++# http://www.aa.com.tr/tr/turkiye/yaz-saati-uygulamasi-8-kasimda-sona-erecek/362217
++#
++# From BBC News (2015-10-25):
++# Confused Turks are asking "what's the time?" after automatic clocks defied a
++# government decision ... "For the next two weeks #Turkey is on EEST... Erdogan
++# Engineered Standard Time," said Twitter user @aysekarahasan.
++# http://www.bbc.com/news/world-europe-34631326
++
++# From Burak AYDIN (2016-09-08):
++# Turkey will stay in Daylight Saving Time even in winter....
++# http://www.resmigazete.gov.tr/eskiler/2016/09/20160908-2.pdf
++#
++# From Paul Eggert (2016-09-07):
++# The change is permanent, so this is the new standard time in Turkey.
++# It takes effect today, which is not much notice.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Turkey 1916 only - May 1 0:00 1:00 S
+ Rule Turkey 1916 only - Oct 1 0:00 0 -
+@@ -3134,22 +3566,25 @@
+ Rule Turkey 1983 only - Oct 2 0:00 0 -
+ Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+ Rule Turkey 1985 only - Sep 28 0:00 0 -
+-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1986 1993 - Mar lastSun 1:00s 1:00 S
++Rule Turkey 1986 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
++Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
++ 3:00 Turkey +03/+04 1985 Apr 20
+ 2:00 Turkey EE%sT 2007
+- 2:00 EU EE%sT 2011 Mar 27 1:00u
+- 2:00 - EET 2011 Mar 28 1:00u
+- 2:00 EU EE%sT 2014 Mar 30 1:00u
+- 2:00 - EET 2014 Mar 31 1:00u
+- 2:00 EU EE%sT
++ 2:00 EU EE%sT 2011 Mar 27 1:00u
++ 2:00 - EET 2011 Mar 28 1:00u
++ 2:00 EU EE%sT 2014 Mar 30 1:00u
++ 2:00 - EET 2014 Mar 31 1:00u
++ 2:00 EU EE%sT 2015 Oct 25 1:00u
++ 2:00 1:00 EEST 2015 Nov 8 1:00u
++ 2:00 EU EE%sT 2016 Sep 7
++ 3:00 - +03
+ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+ # Ukraine
+@@ -3157,7 +3592,7 @@
+ # From Igor Karpov, who works for the Ukrainian Ministry of Justice,
+ # via Garrett Wollman (2003-01-27):
+ # BTW, I've found the official document on this matter. It's government
+-# regulations number 509, May 13, 1996. In my poor translation it says:
++# regulations No. 509, May 13, 1996. In my poor translation it says:
+ # "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
+ # of March at 3am the time is changing to 4am and each last Sunday of
+ # October the time at 4am is changing to 3am"
+@@ -3166,7 +3601,7 @@
+ # On September 20, 2011 the deputies of the Verkhovna Rada agreed to
+ # abolish the transfer clock to winter time.
+ #
+-# Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got
++# Bill No. 8330 of MP from the Party of Regions Oleg Nadoshi got
+ # approval from 266 deputies.
+ #
+ # Ukraine abolishes transfer back to the winter time (in Russian)
+@@ -3230,8 +3665,8 @@
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Sep 20
+ 1:00 C-Eur CE%sT 1943 Nov 6
+- 3:00 Russia MSK/MSD 1990 Jul 1 2:00
+- 2:00 1:00 EEST 1991 Sep 29 3:00
++ 3:00 Russia MSK/MSD 1990 Jul 1 2:00
++ 2:00 1:00 EEST 1991 Sep 29 3:00
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+ # Ruthenia used CET 1990/1991.
+@@ -3243,8 +3678,8 @@
+ 1:00 1:00 CEST 1944 Oct 26
+ 1:00 - CET 1945 Jun 29
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 Jul 1 2:00
+- 1:00 - CET 1991 Mar 31 3:00
++ 3:00 - MSK 1990 Jul 1 2:00
++ 1:00 - CET 1991 Mar 31 3:00
+ 2:00 - EET 1992
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+@@ -3258,7 +3693,7 @@
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Aug 25
+ 1:00 C-Eur CE%sT 1943 Oct 25
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+
+@@ -3284,7 +3719,7 @@
+ # ...
+ #
+ # ...the European time rules are...standardized since 1981, when
+-# most European coun[tr]ies started DST. Before that year, only
++# most European countries started DST. Before that year, only
+ # a few countries (UK, France, Italy) had DST, each according
+ # to own national rules. In 1981, however, DST started on
+ # 'Apr firstSun', and not on 'Mar lastSun' as in the following
+--- contrib/tzdata/factory.orig
++++ contrib/tzdata/factory
+@@ -1,9 +1,10 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# For companies who don't want to put time zone specification in
+-# their installation procedures. When users run date, they'll get the message.
+-# Also useful for the "comp.sources" version.
++# For distributors who don't want to put time zone specification in
++# their installation procedures. Users that run 'date' will get the
++# time zone abbreviation "-00", indicating that the actual time zone
++# is unknown.
+
+ # Zone NAME GMTOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -47,7 +47,7 @@
+ # and can be ignored for many purposes. These differences
+ # are tabulated in Circular T, which is published monthly
+ # by the International Bureau of Weights and Measures
+-# (BIPM). See www.bipm.fr for more information.
++# (BIPM). See www.bipm.org for more information.
+ #
+ # 3. The current definition of the relationship between UTC
+ # and TAI dates from 1 January 1972. A number of different
+@@ -127,6 +127,15 @@
+ # with, since the difficulty of unambiguously representing the epoch
+ # during the leap second does not arise.
+ #
++# Some systems implement leap seconds by amortizing the leap second
++# over the last few minutes of the day. The frequency of the local
++# clock is decreased (or increased) to realize the positive (or
++# negative) leap second. This method removes the time step described
++# above. Although the long-term behavior of the time scale is correct
++# in this case, this method introduces an error during the adjustment
++# period both in time and in frequency with respect to the official
++# definition of UTC.
++#
+ # Questions or comments to:
+ # Judah Levine
+ # Time and Frequency Division
+@@ -134,7 +143,7 @@
+ # Boulder, Colorado
+ # Judah.Levine@nist.gov
+ #
+-# Last Update of leap second values: 11 January 2012
++# Last Update of leap second values: 8 July 2016
+ #
+ # The following line shows this last update date in NTP timestamp
+ # format. This is the date on which the most recent change to
+@@ -142,7 +151,7 @@
+ # be identified by the unique pair of characters in the first two
+ # columns as shown below.
+ #
+-#$ 3535228800
++#$ 3676924800
+ #
+ # The NTP timestamps are in units of seconds since the NTP epoch,
+ # which is 1 January 1900, 00:00:00. The Modified Julian Day number
+@@ -190,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C48
+-# File expires on: 28 June 2015
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+ #
+-#@ 3644438400
++#@ 3707596800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -221,6 +230,8 @@
+ 3345062400 33 # 1 Jan 2006
+ 3439756800 34 # 1 Jan 2009
+ 3550089600 35 # 1 Jul 2012
++3644697600 36 # 1 Jul 2015
++3692217600 37 # 1 Jan 2017
+ #
+ # the following special comment contains the
+ # hash value of the data in this file computed
+@@ -236,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h a4862ccd c6f43c6 964f3604 85944a26 b5cfad4e
++#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -1,14 +1,21 @@
+-# <pre>
+-# This file is in the public domain, so clarified as of
+-# 2009-05-17 by Arthur David Olson.
++# Allowance for leap seconds added to each time zone file.
+
+-# Allowance for leapseconds added to each timezone file.
++# This file is in the public domain.
+
+-# The International Earth Rotation Service periodically uses leap seconds
+-# to keep UTC to within 0.9 s of UT1
++# This file is generated automatically from the data in the public-domain
++# leap-seconds.list file available from most NIST time servers.
++# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,
++# you should be able to pick up leap-seconds.list from a secondary NIST server.
++# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers.
++# For more about leap-seconds.list, please see
++# The NTP Timescale and Leap Seconds
++# http://www.eecis.udel.edu/~mills/leap.html
++
++# The International Earth Rotation and Reference Systems Service
++# periodically uses leap seconds to keep UTC to within 0.9 s of UT1
+ # (which measures the true angular orientation of the earth in space); see
+ # Terry J Quinn, The BIPM and the accurate measure of time,
+-# Proc IEEE 79, 7 (July 1991), 894-905.
++# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>.
+ # There were no leap seconds before 1972, because the official mechanism
+ # accounting for the discrepancy between atomic time and the earth's rotation
+ # did not exist until the early 1970s.
+@@ -19,8 +26,8 @@
+ # or
+ # Leap YEAR MON DAY 23:59:59 - R/S
+
+-# If the leapsecond is Rolling (R) the given time is local time
+-# If the leapsecond is Stationary (S) the given time is UTC
++# If the leapsecond is Rolling (R) the given time is local time.
++# If the leapsecond is Stationary (S) the given time is UTC.
+
+ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
+ Leap 1972 Jun 30 23:59:60 + S
+@@ -48,53 +55,8 @@
+ Leap 2005 Dec 31 23:59:60 + S
+ Leap 2008 Dec 31 23:59:60 + S
+ Leap 2012 Jun 30 23:59:60 + S
++Leap 2015 Jun 30 23:59:60 + S
++Leap 2016 Dec 31 23:59:60 + S
+
+-# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
+-#
+-# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
+-#
+-#
+-# SERVICE DE LA ROTATION TERRESTRE
+-# OBSERVATOIRE DE PARIS
+-# 61, Av. de l'Observatoire 75014 PARIS (France)
+-# Tel. : 33 (0) 1 40 51 22 26
+-# FAX : 33 (0) 1 40 51 22 91
+-# e-mail : (E-Mail Removed)
+-# http://hpiers.obspm.fr/eop-pc
+-#
+-# Paris, 5 January 2012
+-#
+-#
+-# Bulletin C 43
+-#
+-# To authorities responsible
+-# for the measurement and
+-# distribution of time
+-#
+-#
+-# UTC TIME STEP
+-# on the 1st of July 2012
+-#
+-#
+-# A positive leap second will be introduced at the end of June 2012.
+-# The sequence of dates of the UTC second markers will be:
+-#
+-# 2012 June 30, 23h 59m 59s
+-# 2012 June 30, 23h 59m 60s
+-# 2012 July 1, 0h 0m 0s
+-#
+-# The difference between UTC and the International Atomic Time TAI is:
+-#
+-# from 2009 January 1, 0h UTC, to 2012 July 1 0h UTC : UTC-TAI = - 34s
+-# from 2012 July 1, 0h UTC, until further notice : UTC-TAI = - 35s
+-#
+-# Leap seconds can be introduced in UTC at the end of the months of December
+-# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
+-# six months, either to announce a time step in UTC or to confirm that there
+-# will be no time step at the next possible date.
+-#
+-#
+-# Daniel GAMBIS
+-# Head
+-# Earth Orientation Center of IERS
+-# Observatoire de Paris, France
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -0,0 +1,76 @@
++# Generate the 'leapseconds' file from 'leap-seconds.list'.
++
++# This file is in the public domain.
++
++BEGIN {
++ print "# Allowance for leap seconds added to each time zone file."
++ print ""
++ print "# This file is in the public domain."
++ print ""
++ print "# This file is generated automatically from the data in the public-domain"
++ print "# leap-seconds.list file available from most NIST time servers."
++ print "# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,"
++ print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
++ print "# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers."
++ print "# For more about leap-seconds.list, please see"
++ print "# The NTP Timescale and Leap Seconds"
++ print "# http://www.eecis.udel.edu/~mills/leap.html"
++ print ""
++ print "# The International Earth Rotation and Reference Systems Service"
++ print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1"
++ print "# (which measures the true angular orientation of the earth in space); see"
++ print "# Terry J Quinn, The BIPM and the accurate measure of time,"
++ print "# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>."
++ print "# There were no leap seconds before 1972, because the official mechanism"
++ print "# accounting for the discrepancy between atomic time and the earth's rotation"
++ print "# did not exist until the early 1970s."
++ print ""
++ print "# The correction (+ or -) is made at the given time, so lines"
++ print "# will typically look like:"
++ print "# Leap YEAR MON DAY 23:59:60 + R/S"
++ print "# or"
++ print "# Leap YEAR MON DAY 23:59:59 - R/S"
++ print ""
++ print "# If the leapsecond is Rolling (R) the given time is local time."
++ print "# If the leapsecond is Stationary (S) the given time is UTC."
++ print ""
++ print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
++}
++
++/^ *$/ { next }
++
++/^#\tUpdated through/ || /^#\tFile expires on:/ {
++ last_lines = last_lines $0 "\n"
++}
++
++/^#/ { next }
++
++{
++ NTP_timestamp = $1
++ TAI_minus_UTC = $2
++ hash_mark = $3
++ one = $4
++ month = $5
++ year = $6
++ if (old_TAI_minus_UTC) {
++ if (old_TAI_minus_UTC < TAI_minus_UTC) {
++ sign = "23:59:60\t+"
++ } else {
++ sign = "23:59:59\t-"
++ }
++ if (month == "Jan") {
++ year--;
++ month = "Dec";
++ day = 31
++ } else if (month == "Jul") {
++ month = "Jun";
++ day = 30
++ }
++ printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign
++ }
++ old_TAI_minus_UTC = TAI_minus_UTC
++}
++
++END {
++ printf "\n%s", last_lines
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -3,9 +3,10 @@
+
+ # also includes Central America and the Caribbean
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+ # From Paul Eggert (1999-03-22):
+ # A reliable and entertaining source about time zones is
+@@ -23,8 +24,32 @@
+ # was the result of his proposals at the Convention of Railroad Trunk Lines
+ # in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+ # but in 1872-05 he moved the proposed origin to Greenwich.
+-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+-# and the most of the country soon followed suit.
++
++# From Paul Eggert (2016-09-21):
++# Dowd's proposal left many details unresolved, such as where to draw
++# lines between time zones. The key individual who made time zones
++# work in the US was William Frederick Allen - railway engineer,
++# managing editor of the Travelers' Guide, and secretary of the
++# General Time Convention, a railway standardization group. Allen
++# spent months in dialogs with scientific and railway leaders,
++# developed a workable plan to institute time zones, and presented it
++# to the General Time Convention on 1883-04-11, saying that his plan
++# meant "local time would be practically abolished" - a plus for
++# railway scheduling. By the next convention on 1883-10-11 nearly all
++# railroads had agreed and it took effect on 1883-11-18 at 12:00.
++# That Sunday was called the "day of two noons", as the eastern parts
++# of the new zones observed noon twice. Allen witnessed the
++# transition in New York City, writing:
++#
++# I heard the bells of St. Paul's strike on the old time. Four
++# minutes later, obedient to the electrical signal from the Naval
++# Observatory ... the time-ball made its rapid descent, the chimes
++# of old Trinity rang twelve measured strokes, and local time was
++# abandoned, probably forever.
++#
++# Most of the US soon followed suit. See:
++# Bartky IR. The adoption of standard time. Technol Cult 1989 Jan;30(1):25-56.
++# http://dx.doi.org/10.2307/3105430
+
+ # From Paul Eggert (2005-04-16):
+ # That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+@@ -59,8 +84,8 @@
+ #
+ # For more about the first ten years of DST in the United States, see
+ # Robert Garland, Ten years of daylight saving from the Pittsburgh standpoint
+-# (Carnegie Library of Pittsburgh, 1927)
+-# <http://www.clpgh.org/exhibit/dst.html>.
++# (Carnegie Library of Pittsburgh, 1927).
++# http://www.clpgh.org/exhibit/dst.html
+ #
+ # Shanks says that DST was called "War Time" in the US in 1918 and 1919.
+ # However, DST was imposed by the Standard Time Act of 1918, which
+@@ -79,8 +104,8 @@
+ # From Arthur David Olson (2000-09-25):
+ # Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
+ # In the introduction, Oboler spoke of "Eastern Peace Time."
+-# An AltaVista search turned up
+-# <http://rowayton.org/rhs/hstaug45.html>:
++# An AltaVista search turned up:
++# http://rowayton.org/rhs/hstaug45.html
+ # "When the time is announced over the radio now, it is 'Eastern Peace
+ # Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
+ # (August 1945) by way of confirmation.
+@@ -123,7 +148,7 @@
+ Rule US 1918 1919 - Oct lastSun 2:00 0 S
+ Rule US 1942 only - Feb 9 2:00 1:00 W # War
+ Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
+-Rule US 1945 only - Sep 30 2:00 0 S
++Rule US 1945 only - Sep lastSun 2:00 0 S
+ Rule US 1967 2006 - Oct lastSun 2:00 0 S
+ Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
+ Rule US 1974 only - Jan 6 2:00 1:00 D
+@@ -226,9 +251,14 @@
+ # The law doesn't give abbreviations.
+ #
+ # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+-# Public law 106-564 (2000-12-23) introduced the abbreviation
+-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
+-# See the file "australasia".
++# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
++# for time in Guam and the Northern Marianas. See the file "australasia".
++#
++# From Paul Eggert (2015-04-17):
++# HST and HDT are standardized abbreviations for Hawaii-Aleutian
++# standard and daylight times. See section 9.47 (p 234) of the
++# U.S. Government Printing Office Style Manual (2008)
++# http://www.gpo.gov/fdsys/pkg/GPO-STYLEMANUAL-2008/pdf/GPO-STYLEMANUAL-2008.pdf
+
+ # From Arthur David Olson, 2005-08-09
+ # The following was signed into law on 2005-08-08.
+@@ -268,7 +298,7 @@
+
+ # From Paul Eggert (2005-08-26):
+ # According to today's Huntsville Times
+-# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
++# http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1
+ # a few towns on Alabama's "eastern border with Georgia, such as Phenix City
+ # in Russell County, Lanett in Chambers County and some towns in Lee County,
+ # set their watches and clocks on Eastern time." It quotes H.H. "Bubba"
+@@ -276,6 +306,12 @@
+ # time zone, but we do go by the Eastern time zone because so many people work
+ # in Columbus."
+
++# From Paul Eggert (2014-09-06):
++# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
++# says that New York City Hall time was 3 minutes 58.4 seconds fast of
++# Eastern time (i.e., -4:56:01.6) just before the 1883 switch. Round to the
++# nearest second.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule NYC 1920 only - Mar lastSun 2:00 1:00 D
+ Rule NYC 1920 only - Oct lastSun 2:00 0 S
+@@ -313,6 +349,16 @@
+ # Statue 175 closer in synch with the US Congress' intent....
+ # http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
++# From an email administrator of the City of Fort Pierre, SD (2015-12-21):
++# Fort Pierre is technically located in the Mountain time zone as is
++# the rest of Stanley County. Most of Stanley County and Fort Pierre
++# uses the Central time zone due to doing most of their business in
++# Pierre so it simplifies schedules. I have lived in Stanley County
++# all my life and it has been that way since I can remember. (43 years!)
++#
++# From Paul Eggert (2015-12-25):
++# Assume this practice predates 1970, so Fort Pierre can use America/Chicago.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+ Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+@@ -323,15 +369,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
+ -6:00 US C%sT 1920
+- -6:00 Chicago C%sT 1936 Mar 1 2:00
+- -5:00 - EST 1936 Nov 15 2:00
++ -6:00 Chicago C%sT 1936 Mar 1 2:00
++ -5:00 - EST 1936 Nov 15 2:00
+ -6:00 Chicago C%sT 1942
+ -6:00 US C%sT 1946
+ -6:00 Chicago C%sT 1967
+ -6:00 US C%sT
+ # Oliver County, ND switched from mountain to central time on 1992-10-25.
+ Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
+- -7:00 US M%sT 1992 Oct 25 02:00
++ -7:00 US M%sT 1992 Oct 25 2:00
+ -6:00 US C%sT
+ # Morton County, ND, switched from mountain to central time on
+ # 2003-10-26, except for the area around Mandan which was already central time.
+@@ -340,8 +386,8 @@
+ # Jones, Mellette, and Todd Counties in South Dakota;
+ # but in practice these other counties were already observing central time.
+ # See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
+-Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
+- -7:00 US M%sT 2003 Oct 26 02:00
++Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
++ -7:00 US M%sT 2003 Oct 26 2:00
+ -6:00 US C%sT
+
+ # From Josh Findley (2011-01-21):
+@@ -358,8 +404,8 @@
+ # at 47 degrees 15' 51" N, 101 degrees 46' 40" W, which yields an offset
+ # of 6h47'07".
+
+-Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
+- -7:00 US M%sT 2010 Nov 7 2:00
++Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
++ -7:00 US M%sT 2010 Nov 7 2:00
+ -6:00 US C%sT
+
+ # US mountain time, represented by Denver
+@@ -391,11 +437,42 @@
+ # north of the Salmon River, and the towns of Burgdorf and Warren),
+ # Nevada (except West Wendover), Oregon (except the northern 3/4 of
+ # Malheur county), and Washington
++
++# From Paul Eggert (2016-08-20):
++# In early February 1948, in response to California's electricity shortage,
++# PG&E changed power frequency from 60 to 59.5 Hz during daylight hours,
++# causing electric clocks to lose six minutes per day. (This did not change
++# legal time, and is not part of the data here.) See:
++# Ross SA. An energy crisis from the past: Northern California in 1948.
++# Working Paper No. 8, Institute of Governmental Studies, UC Berkeley,
++# 1973-11. http://escholarship.org/uc/item/8x22k30c
++#
++# In another measure to save electricity, DST was instituted from 1948-03-14
++# at 02:01 to 1949-01-16 at 02:00, with the governor having the option to move
++# the fallback transition earlier. See pages 3-4 of:
++# http://clerk.assembly.ca.gov/sites/clerk.assembly.ca.gov/files/archive/Statutes/1948/48Vol1_Chapters.pdf
++#
++# In response:
++#
++# Governor Warren received a torrent of objecting mail, and it is not too much
++# to speculate that the objections to Daylight Saving Time were one important
++# factor in the defeat of the Dewey-Warren Presidential ticket in California.
++# -- Ross, p 25
++#
++# On December 8 the governor exercised the option, setting the date to January 1
++# (LA Times 1948-12-09). The transition time was 02:00 (LA Times 1949-01-01).
++#
++# Despite the controversy, in 1949 California voters approved Proposition 12,
++# which established DST from April's last Sunday at 01:00 until September's
++# last Sunday at 02:00. This was amended by 1962's Proposition 6, which changed
++# the fall-back date to October's last Sunday. See:
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1636&context=ca_ballot_props
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+-Rule CA 1948 only - Mar 14 2:00 1:00 D
++Rule CA 1948 only - Mar 14 2:01 1:00 D
+ Rule CA 1949 only - Jan 1 2:00 0 S
+-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
++Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -469,15 +546,21 @@
+ # For lack of better information, assume that Metlakatla's
+ # abandonment of use of daylight saving resulted from the 1983 vote.
+
++# From Steffen Thorsen (2015-11-09):
++# It seems Metlakatla did go off PST on Sunday, November 1, changing
++# their time to AKST and are going to follow Alaska's DST, switching
++# between AKST and AKDT from now on....
++# http://www.krbd.org/2015/10/30/annette-island-times-they-are-a-changing/
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1980 Apr 27 2:00
+- -9:00 US Y%sT 1980 Oct 26 2:00
+- -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 US P%sT 1980 Apr 27 2:00
++ -9:00 US Y%sT 1980 Oct 26 2:00
++ -8:00 US P%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Sitka 14:58:47 - LMT 1867 Oct 18
+@@ -485,7 +568,7 @@
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 US P%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18
+@@ -493,8 +576,9 @@
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1983 Oct 30 2:00
+- -8:00 - PST
++ -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 - PST 2015 Nov 1 2:00
++ -9:00 US AK%sT
+ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+@@ -509,7 +593,7 @@
+ -10:00 US CAT/CAPT 1946 # Peace
+ -10:00 - CAT 1967 Apr
+ -10:00 - AHST 1969
+- -10:00 US AH%sT 1983 Oct 30 2:00
++ -10:00 US AH%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Nome 12:58:21 - LMT 1867 Oct 18
+@@ -518,7 +602,7 @@
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+- -11:00 US B%sT 1983 Oct 30 2:00
++ -11:00 US B%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Adak 12:13:21 - LMT 1867 Oct 18
+@@ -527,9 +611,9 @@
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+- -11:00 US B%sT 1983 Oct 30 2:00
++ -11:00 US B%sT 1983 Oct 30 2:00
+ -10:00 US AH%sT 1983 Nov 30
+- -10:00 US HA%sT
++ -10:00 US H%sT
+ # The following switches don't quite make our 1970 cutoff.
+ #
+ # Shanks writes that part of southwest Alaska (e.g. Aniak)
+@@ -545,7 +629,7 @@
+ # Minutes of the Unalaska City Council Meeting, January 10, 1967:
+ # "Except for St. Paul and Akutan, Unalaska is the only important
+ # location not on Alaska Standard Time. The following resolution was
+-# made by William Robinson and seconded by Henry Swanson: Be it
++# made by William Robinson and seconded by Henry Swanson: Be it
+ # resolved that the City of Unalaska hereby goes to Alaska Standard
+ # Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
+ # January 14, Alaska Standard Time.) This resolution was passed with
+@@ -578,7 +662,7 @@
+ # year, the standard time of this Territory shall be advanced one
+ # hour...This Act shall take effect upon its approval. Approved this 26th
+ # day of April, A. D. 1933. LAWRENCE M JUDD, Governor of the Territory of
+-# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is
++# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is
+ # hereby repealed...This Act shall take effect upon its approval, upon
+ # which date the standard time of this Territory shall be restored to
+ # that existing immediately prior to the taking effect of said Act 90.
+@@ -588,14 +672,14 @@
+ # Note that 1933-05-21 was a Sunday.
+ # We're left to guess the time of day when Act 163 was approved; guess noon.
+
+-Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 #Schmitt&Cox
+- -10:30 - HST 1933 Apr 30 2:00 #Laws 1933
+- -10:30 1:00 HDT 1933 May 21 12:00 #Laws 1933+12
+- -10:30 - HST 1942 Feb 09 2:00 #Schmitt&Cox+2
+- -10:30 1:00 HDT 1945 Sep 30 2:00 #Schmitt&Cox+2
+- -10:30 - HST 1947 Jun 8 2:00 #Schmitt&Cox+2
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
++ -10:30 - HST 1933 Apr 30 2:00
++ -10:30 1:00 HDT 1933 May 21 12:00
++ -10:30 - HST 1942 Feb 9 2:00
++ -10:30 1:00 HDT 1945 Sep 30 2:00
++ -10:30 - HST 1947 Jun 8 2:00
+ -10:00 - HST
+-
+ Link Pacific/Honolulu Pacific/Johnston
+
+ # Now we turn to US areas that have diverged from the consensus since 1970.
+@@ -621,10 +705,11 @@
+ # Shanks says the 1944 experiment came to an end on 1944-03-17.
+ # Go with the Arizona State Library instead.
+
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
+- -7:00 US M%sT 1944 Jan 1 00:01
+- -7:00 - MST 1944 Apr 1 00:01
+- -7:00 US M%sT 1944 Oct 1 00:01
++ -7:00 US M%sT 1944 Jan 1 0:01
++ -7:00 - MST 1944 Apr 1 0:01
++ -7:00 US M%sT 1944 Oct 1 0:01
+ -7:00 - MST 1967
+ -7:00 US M%sT 1968 Mar 21
+ -7:00 - MST
+@@ -648,16 +733,15 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
+- -8:00 US P%sT 1923 May 13 2:00
++ -8:00 US P%sT 1923 May 13 2:00
+ -7:00 US M%sT 1974
+- -7:00 - MST 1974 Feb 3 2:00
++ -7:00 - MST 1974 Feb 3 2:00
+ -7:00 US M%sT
+
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# What time is it in Indiana? (2006-03-01)
+-# <http://www.mccsc.edu/time.html>
++# http://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -683,9 +767,6 @@
+ # that they would be ambiguous if we left them at the 'America' level.
+ # So we reluctantly put them all in a subdirectory 'America/Indiana'.
+
+-# From Paul Eggert (2005-08-16):
+-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
+-
+ # From Paul Eggert (2014-06-26):
+ # https://www.federalregister.gov/articles/2006/01/20/06-563/standard-time-zone-boundary-in-the-state-of-indiana
+ # says "DOT is relocating the time zone boundary in Indiana to move Starke,
+@@ -707,13 +788,13 @@
+ Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
+ Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
++Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
+ -6:00 US C%sT 1920
+ -6:00 Indianapolis C%sT 1942
+ -6:00 US C%sT 1946
+- -6:00 Indianapolis C%sT 1955 Apr 24 2:00
+- -5:00 - EST 1957 Sep 29 2:00
+- -6:00 - CST 1958 Apr 27 2:00
++ -6:00 Indianapolis C%sT 1955 Apr 24 2:00
++ -5:00 - EST 1957 Sep 29 2:00
++ -6:00 - CST 1958 Apr 27 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006
+@@ -729,10 +810,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
+ -6:00 US C%sT 1951
+- -6:00 Marengo C%sT 1961 Apr 30 2:00
++ -6:00 Marengo C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+- -5:00 US E%sT 1974 Jan 6 2:00
+- -6:00 1:00 CDT 1974 Oct 27 2:00
++ -5:00 US E%sT 1974 Jan 6 2:00
++ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT 1976
+ -5:00 - EST 2006
+ -5:00 US E%sT
+@@ -753,11 +834,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
+ -6:00 US C%sT 1946
+- -6:00 Vincennes C%sT 1964 Apr 26 2:00
++ -6:00 Vincennes C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Nov 4 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+ #
+ # Perry County, Indiana, switched from eastern to central time in April 2006.
+@@ -774,10 +855,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
+ -6:00 US C%sT 1946
+- -6:00 Perry C%sT 1964 Apr 26 2:00
++ -6:00 Perry C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
++ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+ #
+ # Pike County, Indiana moved from central to eastern time in 1977,
+@@ -790,11 +871,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
+ -6:00 US C%sT 1955
+- -6:00 Pike C%sT 1965 Apr 25 2:00
+- -5:00 - EST 1966 Oct 30 2:00
+- -6:00 US C%sT 1977 Oct 30 2:00
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Nov 4 2:00
++ -6:00 Pike C%sT 1965 Apr 25 2:00
++ -5:00 - EST 1966 Oct 30 2:00
++ -6:00 US C%sT 1977 Oct 30 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+ #
+ # Starke County, Indiana moved from central to eastern time in 1991,
+@@ -812,10 +893,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
+ -6:00 US C%sT 1947
+- -6:00 Starke C%sT 1962 Apr 29 2:00
+- -5:00 - EST 1963 Oct 27 2:00
+- -6:00 US C%sT 1991 Oct 27 2:00
+- -5:00 - EST 2006 Apr 2 2:00
++ -6:00 Starke C%sT 1962 Apr 29 2:00
++ -5:00 - EST 1963 Oct 27 2:00
++ -6:00 US C%sT 1991 Oct 27 2:00
++ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+ #
+ # Pulaski County, Indiana, switched from eastern to central time in
+@@ -828,17 +909,17 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
+ -6:00 US C%sT 1946
+- -6:00 Pulaski C%sT 1961 Apr 30 2:00
++ -6:00 Pulaski C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Mar 11 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Mar 11 2:00
+ -5:00 US E%sT
+ #
+ # Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
+- -6:00 US C%sT 1954 Apr 25 2:00
++ -6:00 US C%sT 1954 Apr 25 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1973
+ -5:00 - EST 2006
+@@ -859,16 +940,16 @@
+ -6:00 US C%sT 1921
+ -6:00 Louisville C%sT 1942
+ -6:00 US C%sT 1946
+- -6:00 Louisville C%sT 1961 Jul 23 2:00
++ -6:00 Louisville C%sT 1961 Jul 23 2:00
+ -5:00 - EST 1968
+- -5:00 US E%sT 1974 Jan 6 2:00
+- -6:00 1:00 CDT 1974 Oct 27 2:00
++ -5:00 US E%sT 1974 Jan 6 2:00
++ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT
+ #
+ # Wayne County, Kentucky
+ #
+ # From Lake Cumberland LIFE
+-# <http://www.lake-cumberland.com/life/archive/news990129time.shtml>
++# http://www.lake-cumberland.com/life/archive/news990129time.shtml
+ # (1999-01-29) via WKYM-101.7:
+ # Clinton County has joined Wayne County in asking the DoT to change from
+ # the Central to the Eastern time zone.... The Wayne County government made
+@@ -887,7 +968,7 @@
+ # From Paul Eggert (2001-07-16):
+ # The final rule was published in the
+ # Federal Register 65, 160 (2000-08-17), pp 50154-50158.
+-# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22>
++# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -913,7 +994,7 @@
+ # West Wendover, NV officially switched from Pacific to mountain time on
+ # 1999-10-31. See the
+ # Federal Register 64, 203 (1999-10-21), pp 56705-56707.
+-# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15>
++# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15
+ # However, the Federal Register says that West Wendover already operated
+ # on mountain time, and the rule merely made this official;
+ # hence a separate tz entry is not needed.
+@@ -951,12 +1032,12 @@
+ Rule Detroit 1967 only - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Detroit -5:32:11 - LMT 1905
+- -6:00 - CST 1915 May 15 2:00
++ -6:00 - CST 1915 May 15 2:00
+ -5:00 - EST 1942
+ -5:00 US E%sT 1946
+ -5:00 Detroit E%sT 1973
+ -5:00 US E%sT 1975
+- -5:00 - EST 1975 Apr 27 2:00
++ -5:00 - EST 1975 Apr 27 2:00
+ -5:00 US E%sT
+ #
+ # Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
+@@ -969,8 +1050,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
+ -6:00 US C%sT 1946
+- -6:00 Menominee C%sT 1969 Apr 27 2:00
+- -5:00 - EST 1973 Apr 29 2:00
++ -6:00 Menominee C%sT 1969 Apr 27 2:00
++ -5:00 - EST 1973 Apr 29 2:00
+ -6:00 US C%sT
+
+ # Navassa
+@@ -987,19 +1068,19 @@
+ ################################################################################
+
+
+-# From Paul Eggert (2006-03-22):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Other sources occasionally used include:
+ #
+@@ -1050,7 +1131,7 @@
+ # From Paul Eggert (1994-11-22):
+ # Alas, this sort of thing must be handled by localization software.
+
+-# Unless otherwise specified, the data for Canada are all from Shanks
++# Unless otherwise specified, the data entries for Canada are all from Shanks
+ # & Pottenger.
+
+ # From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
+@@ -1097,17 +1178,16 @@
+ # An amendment to the Interpretation Act was registered on February 19/2007....
+ # http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
+
+-# From Paul Eggert (2006-04-25):
++# From Paul Eggert (2014-10-18):
+ # H. David Matthews and Mary Vincent's map
+ # "It's about TIME", _Canadian Geographic_ (September-October 1998)
+-# <http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp>
++# http://www.canadiangeographic.ca/Magazine/SO98/alacarte.asp
+ # contains detailed boundaries for regions observing nonstandard
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+-# INMS, the Institute for National Measurement Standards in Ottawa, has
+-# information about standard and daylight saving time zones in Canada.
+-# <http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php>
+-# (updated periodically).
++# National Research Council Canada maintains info about time zones and DST.
++# http://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# http://www.nrc-cnrc.gc.ca/eng/services/time/faq/index.html#Q5
+ # Its unofficial information is often taken from Matthews and Vincent.
+
+ # From Paul Eggert (2006-06-27):
+@@ -1220,17 +1300,26 @@
+ -3:30 - NST 1936
+ -3:30 StJohns N%sT 1942 May 11
+ -3:30 Canada N%sT 1946
+- -3:30 StJohns N%sT 1966 Mar 15 2:00
++ -3:30 StJohns N%sT 1966 Mar 15 2:00
+ -4:00 StJohns A%sT 2011 Nov
+ -4:00 Canada A%sT
+
+
+ # west Labrador, Nova Scotia, Prince Edward I
+
+-# From Paul Eggert (2006-03-22):
++# From Brian Inglis (2015-07-20):
++# From the historical weather station records available at:
++# https://weatherspark.com/history/28351/1971/Sydney-Nova-Scotia-Canada
++# Sydney shares the same time history as Glace Bay, so was
++# likely to be the same across the island....
++# Sydney, as the capital and most populous location, or Cape Breton, would
++# have been better names for the zone had we known this in 1996.
++
++# From Paul Eggert (2015-07-20):
+ # Shanks & Pottenger write that since 1970 most of this region has been like
+ # Halifax. Many locales did not observe peacetime DST until 1972;
+-# Glace Bay, NS is the largest that we know of.
++# the Cape Breton area, represented by Glace Bay, is the largest we know of
++# (Glace Bay was perhaps not the best name choice but no point changing now).
+ # Shanks & Pottenger also write that Liverpool, NS was the only town
+ # in Canada to observe DST in 1971 but not 1970; for now we'll assume
+ # this is a typo.
+@@ -1281,7 +1370,7 @@
+ Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
+ -4:00 Halifax A%sT 1918
+ -4:00 Canada A%sT 1919
+- -4:00 Halifax A%sT 1942 Feb 9 2:00s
++ -4:00 Halifax A%sT 1942 Feb 9 2:00s
+ -4:00 Canada A%sT 1946
+ -4:00 Halifax A%sT 1974
+ -4:00 Canada A%sT
+@@ -1328,14 +1417,9 @@
+
+ # Quebec
+
+-# From Paul Eggert (2013-08-30):
+-# Since 1970 most of Quebec has been like Toronto.
+-# However, because earlier versions of the tz database mistakenly relied on data
+-# from Shanks & Pottenger saying that Quebec differed from Ontario after 1970,
+-# a separate entry was created for most of Quebec. We're loath to lose
+-# its pre-1970 info, even though the tz database is normally limited to
+-# zones that differ after 1970, so keep this otherwise out-of-scope entry.
+-
++# From Paul Eggert (2015-03-24):
++# See America/Toronto for most of Quebec, including Montreal.
++#
+ # Matthews and Vincent (1998) also write that Quebec east of the -63
+ # meridian is supposed to observe AST, but residents as far east as
+ # Natashquan use EST/EDT, and residents east of Natashquan use AST.
+@@ -1349,47 +1433,10 @@
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Mont 1917 only - Mar 25 2:00 1:00 D
+-Rule Mont 1917 only - Apr 24 0:00 0 S
+-Rule Mont 1919 only - Mar 31 2:30 1:00 D
+-Rule Mont 1919 only - Oct 25 2:30 0 S
+-Rule Mont 1920 only - May 2 2:30 1:00 D
+-Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
+-Rule Mont 1921 only - May 1 2:00 1:00 D
+-Rule Mont 1922 only - Apr 30 2:00 1:00 D
+-Rule Mont 1924 only - May 17 2:00 1:00 D
+-Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
+-Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
+-# The 1927-to-1937 rules can be expressed more simply as
+-# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
+-# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
+-# The rules below avoid use of 24:00
+-# (which pre-1998 versions of zic cannot handle).
+-Rule Mont 1927 only - May 1 0:00 1:00 D
+-Rule Mont 1927 1932 - Sep lastSun 0:00 0 S
+-Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D
+-Rule Mont 1932 only - May 1 0:00 1:00 D
+-Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D
+-Rule Mont 1933 only - Oct 1 0:00 0 S
+-Rule Mont 1934 1939 - Sep lastSun 0:00 0 S
+-Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
+-Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
+-Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
+-Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
+-Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
+-
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Blanc-Sablon -3:48:28 - LMT 1884
+ -4:00 Canada A%sT 1970
+ -4:00 - AST
+-Zone America/Montreal -4:54:16 - LMT 1884
+- -5:00 Mont E%sT 1918
+- -5:00 Canada E%sT 1919
+- -5:00 Mont E%sT 1942 Feb 9 2:00s
+- -5:00 Canada E%sT 1946
+- -5:00 Mont E%sT 1974
+- -5:00 Canada E%sT
+
+ # Ontario
+
+@@ -1419,7 +1466,7 @@
+ # says that Atikokan, Ontario currently does not observe DST,
+ # but will vote on 11-10 whether to use EST/EDT.
+ # He also writes that the Ontario Time Act (1990, Chapter T.9)
+-# <http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html>
++# http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html
+ # says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
+ # Officially Atikokan is therefore on CST/CDT, and most likely this report
+ # concerns a non-official time observed as a matter of local practice.
+@@ -1509,26 +1556,26 @@
+ # ing in 1930. The information for the province of Quebec is definite,
+ # for the other provinces only approximate:
+ #
+-# Province Daylight saving time used
++# Province Daylight saving time used
+ # Prince Edward Island Not used.
+ # Nova Scotia In Halifax only.
+ # New Brunswick In St. John only.
+ # Quebec In the following places:
+-# Montreal Lachine
+-# Quebec Mont-Royal
+-# Lévis Iberville
+-# St. Lambert Cap de la Madelèine
+-# Verdun Loretteville
+-# Westmount Richmond
+-# Outremont St. Jérôme
+-# Longueuil Greenfield Park
+-# Arvida Waterloo
+-# Chambly-Canton Beaulieu
+-# Melbourne La Tuque
+-# St. Théophile Buckingham
++# Montreal Lachine
++# Quebec Mont-Royal
++# Lévis Iberville
++# St. Lambert Cap de la Madelèine
++# Verdun Loretteville
++# Westmount Richmond
++# Outremont St. Jérôme
++# Longueuil Greenfield Park
++# Arvida Waterloo
++# Chambly-Canton Beaulieu
++# Melbourne La Tuque
++# St. Théophile Buckingham
+ # Ontario Used generally in the cities and towns along
+-# the southerly part of the province. Not
+-# used in the northwesterly part.
++# the southerly part of the province. Not
++# used in the northwesterly part.
+ # Manitoba Not used.
+ # Saskatchewan In Regina only.
+ # Alberta Not used.
+@@ -1597,7 +1644,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Toronto -5:17:32 - LMT 1895
+ -5:00 Canada E%sT 1919
+- -5:00 Toronto E%sT 1942 Feb 9 2:00s
++ -5:00 Toronto E%sT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT 1946
+ -5:00 Toronto E%sT 1974
+ -5:00 Canada E%sT
+@@ -1610,16 +1657,16 @@
+ -5:00 Canada E%sT
+ Zone America/Nipigon -5:53:04 - LMT 1895
+ -5:00 Canada E%sT 1940 Sep 29
+- -5:00 1:00 EDT 1942 Feb 9 2:00s
++ -5:00 1:00 EDT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT
+ Zone America/Rainy_River -6:18:16 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+- -6:00 1:00 CDT 1942 Feb 9 2:00s
++ -6:00 1:00 CDT 1942 Feb 9 2:00s
+ -6:00 Canada C%sT
+ Zone America/Atikokan -6:06:28 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+- -6:00 1:00 CDT 1942 Feb 9 2:00s
+- -6:00 Canada C%sT 1945 Sep 30 2:00
++ -6:00 1:00 CDT 1942 Feb 9 2:00s
++ -6:00 Canada C%sT 1945 Sep 30 2:00
+ -5:00 - EST
+
+
+@@ -1755,12 +1802,12 @@
+ Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Regina -6:58:36 - LMT 1905 Sep
+- -7:00 Regina M%sT 1960 Apr lastSun 2:00
++ -7:00 Regina M%sT 1960 Apr lastSun 2:00
+ -6:00 - CST
+ Zone America/Swift_Current -7:11:20 - LMT 1905 Sep
+- -7:00 Canada M%sT 1946 Apr lastSun 2:00
++ -7:00 Canada M%sT 1946 Apr lastSun 2:00
+ -7:00 Regina M%sT 1950
+- -7:00 Swift M%sT 1972 Apr lastSun 2:00
++ -7:00 Swift M%sT 1972 Apr lastSun 2:00
+ -6:00 - CST
+
+
+@@ -1818,25 +1865,25 @@
+ # Unfortunately the exact date for the time change in June 1918 remains
+ # unknown and will be difficult to ascertain. I e-mailed Tammy a few months
+ # ago to ask if Sunday June 2 was a reasonable guess. She said it was just
+-# as plausible as any other date (in June). She also said that after writing the
+-# article she had discovered another time change in 1916; this is the subject
+-# of another article which she wrote in October 2010.
++# as plausible as any other date (in June). She also said that after writing
++# the article she had discovered another time change in 1916; this is the
++# subject of another article which she wrote in October 2010.
+ # http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56
+
+ # Here is a summary of the three clock change events in Creston's history:
+ # 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7)
+ # Exact date unknown
+ # 2. Oct 1916: switch to Pacific Standard Time (GMT-8)
+-# Exact date in October unknown; Sunday October 1 is a reasonable guess.
++# Exact date in October unknown; Sunday October 1 is a reasonable guess.
+ # 3. June 1918: switch to Pacific Daylight Time (GMT-7)
+ # Exact date in June unknown; Sunday June 2 is a reasonable guess.
+-# note#1:
++# note 1:
+ # On Oct 27/1918 when daylight saving ended in the rest of Canada,
+ # Creston did not change its clocks.
+-# note#2:
++# note 2:
+ # During WWII when the Federal Government legislated a mandatory clock change,
+ # Creston did not oblige.
+-# note#3:
++# note 3:
+ # There is no guarantee that Creston will remain on Mountain Standard Time
+ # (UTC-7) forever.
+ # The subject was debated at least once this year by the town Council.
+@@ -1851,6 +1898,22 @@
+
+ # The transition dates (and times) are guesses.
+
++# From Matt Johnson (2015-09-21):
++# Fort Nelson, BC, Canada will cancel DST this year. So while previously they
++# were aligned with America/Vancouver, they're now aligned with
++# America/Dawson_Creek.
++# http://www.northernrockies.ca/EN/meta/news/archives/2015/northern-rockies-time-change.html
++#
++# From Tim Parenti (2015-09-23):
++# This requires a new zone for the Northern Rockies Regional Municipality,
++# America/Fort_Nelson. The resolution of 2014-12-08 was reached following a
++# 2014-11-15 poll with nearly 75% support. Effectively, the municipality has
++# been on MST (-0700) like Dawson Creek since it advanced its clocks on
++# 2015-03-08.
++#
++# From Paul Eggert (2015-09-23):
++# Shanks says Fort Nelson did not observe DST in 1946, unlike Vancouver.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Vanc 1918 only - Apr 14 2:00 1:00 D
+ Rule Vanc 1918 only - Oct 27 2:00 0 S
+@@ -1867,7 +1930,13 @@
+ -8:00 Canada P%sT
+ Zone America/Dawson_Creek -8:00:56 - LMT 1884
+ -8:00 Canada P%sT 1947
+- -8:00 Vanc P%sT 1972 Aug 30 2:00
++ -8:00 Vanc P%sT 1972 Aug 30 2:00
++ -7:00 - MST
++Zone America/Fort_Nelson -8:10:47 - LMT 1884
++ -8:00 Vanc P%sT 1946
++ -8:00 - PST 1947
++ -8:00 Vanc P%sT 1987
++ -8:00 Canada P%sT 2015 Mar 8 2:00
+ -7:00 - MST
+ Zone America/Creston -7:46:04 - LMT 1884
+ -7:00 - MST 1916 Oct 1
+@@ -1880,22 +1949,120 @@
+ # Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
+ # Mathew Englander (1996-10-07) gives the following refs:
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+-# c. 7 defines Yukon standard time as UTC-9. This is still valid;
++# c. 7 defines Yukon standard time as UTC-9....
+ # see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
++# [http://canlii.ca/t/7vhg]
+ # * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
+ # * O.I.C. 1980/02 established DST.
+ # * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
+-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
+-# with Englander.
+-# From Chris Walton (2006-06-26):
+-# Here is a link to the old daylight saving portion of the interpretation
+-# act which was last updated in 1987:
+-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
++
++# From Brian Inglis (2015-04-14):
++#
++# I tried to trace the history of Yukon time and found the following
++# regulations, giving the reference title and URL if found, regulation name,
++# and relevant quote if available. Each regulation specifically revokes its
++# predecessor. The final reference is to the current Interpretation Act
++# authorizing and resulting from these regulatory changes.
++#
++# Only recent regulations were retrievable via Yukon government site search or
++# index, and only some via Canadian legal sources. Other sources used include
++# articles titled "Standard Time and Time Zones in Canada" from JRASC via ADS
++# Abstracts, cited by ADO for 1932 ..., and updated versions from 1958 and
++# 1970 quoted below; each article includes current extracts from provincial
++# and territorial ST and DST regulations at the end, summaries and details of
++# standard times and daylight saving time at many locations across Canada,
++# with time zone maps, tables and calculations for Canadian Sunrise, Sunset,
++# and LMST; they also cover many countries and global locations, with a chart
++# and table showing current Universal Time offsets, and may be useful as
++# another source of information for 1970 and earlier.
++#
++# * Standard Time and Time Zones in Canada; Smith, C.C.; JRASC, Vol. 26,
++# pp.49-77; February 1932; SAO/NASA Astrophysics Data System (ADS)
++# http://adsabs.harvard.edu/abs/1932JRASC..26...49S from p.75:
++# Yukon Interpretation Ordinance
++# Yukon standard time is the local mean time at the one hundred and
++# thirty-fifth meridian.
++#
++# * Standard Time and Time Zones in Canada; Smith, C.C.; Thomson, Malcolm M.;
++# JRASC, Vol. 52, pp.193-223; October 1958; SAO/NASA Astrophysics Data System
++# (ADS) http://adsabs.harvard.edu/abs/1958JRASC..52..193S from pp.220-1:
++# Yukon Interpretation Ordinance, 1955, Chap. 16.
++#
++# (1) Subject to this section, standard time shall be reckoned as nine
++# hours behind Greenwich Time and called Yukon Standard Time.
++#
++# (2) Notwithstanding subsection (1), the Commissioner may make regulations
++# varying the manner of reckoning standard time.
++#
++# * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
++# http://? - no online source found
++#
++# * Standard Time and Time Zones in Canada; Thomson, Malcolm M.; JRASC,
++# Vol. 64, pp.129-162; June 1970; SAO/NASA Astrophysics Data System (ADS)
++# http://adsabs.harvard.edu/abs/1970JRASC..64..129T from p.156: Yukon
++# Territory Commissioner's Order 1967-59 Interpretation Ordinance ...
++#
++# 1. Commissioner's Order 1966-20 dated at Whitehorse in the Yukon
++# Territory on 27th January, 1966, is hereby revoked.
++#
++# 2. Yukon (East) Standard Time as defined by section 36 of the
++# Interpretation Ordinance from and after mid-night on the 28th day of May,
++# 1967 shall be reckoned in the same manner as Pacific Standard Time, that
++# is to say, eight hours behind Greenwich Time in the area of the Yukon
++# Territory lying east of the 138th degree longitude west.
++#
++# 3. In the remainder of the Territory, lying west of the 138th degree
++# longitude west, Yukon (West) Standard Time shall be reckoned as nine
++# hours behind Greenwich Time.
++#
++# * Yukon Standard Time defined as Pacific Standard Time, YCO 1973/214
++# http://www.canlii.org/en/yk/laws/regu/yco-1973-214/latest/yco-1973-214.html
++# C.O. 1973/214 INTERPRETATION ACT ...
++#
++# 1. Effective October 28, 1973 Commissioner's Order 1967/59 is hereby
++# revoked.
++#
++# 2. Yukon Standard Time as defined by section 36 of the Interpretation
++# Act from and after midnight on the twenty-eighth day of October, 1973
++# shall be reckoned in the same manner as Pacific Standard Time, that is
++# to say eight hours behind Greenwich Time.
++#
++# * O.I.C. 1980/02 INTERPRETATION ACT
++# http://? - no online source found
++#
++# * Yukon Daylight Saving Time, YOIC 1987/56
++# http://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
++# O.I.C. 1987/056 INTERPRETATION ACT ...
++#
++# In every year between
++# (a) two o'clock in the morning in the first Sunday in April, and
++# (b) two o'clock in the morning in the last Sunday in October,
++# Standard Time shall be reckoned as seven hours behind Greenwich Time and
++# called Yukon Daylight Saving Time.
++# ...
++# Dated ... 9th day of March, A.D., 1987.
++#
++# * Yukon Daylight Saving Time 2006, YOIC 2006/127
++# http://www.canlii.org/en/yk/laws/regu/yoic-2006-127/latest/yoic-2006-127.html
++# O.I.C. 2006/127 INTERPRETATION ACT ...
++#
++# 1. In Yukon each year the time for general purposes shall be 7 hours
++# behind Greenwich mean time during the period commencing at two o'clock
++# in the forenoon on the second Sunday of March and ending at two o'clock
++# in the forenoon on the first Sunday of November and shall be called
++# Yukon Daylight Saving Time.
++#
++# 2. Order-in-Council 1987/56 is revoked.
++#
++# 3. This order comes into force January 1, 2007.
++#
++# * Interpretation Act, RSY 2002, c 125
++# http://www.canlii.org/en/yk/laws/stat/rsy-2002-c-125/latest/rsy-2002-c-125.html
+
+ # From Rives McDow (1999-09-04):
+ # Nunavut ... moved ... to incorporate the whole territory into one time zone.
+ # Nunavut moves to single time zone Oct. 31
+-# <http://www.nunatsiaq.com/nunavut/nvt90903_13.html>
++# http://www.nunatsiaq.com/nunavut/nvt90903_13.html
+ #
+ # From Antoine Leca (1999-09-06):
+ # We then need to create a new timezone for the Kitikmeot region of Nunavut
+@@ -1903,7 +2070,7 @@
+
+ # From Paul Eggert (1999-09-20):
+ # Basic Facts: The New Territory
+-# <http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html>
++# http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html
+ # (1999) reports that Pangnirtung operates on eastern time,
+ # and that Coral Harbour does not observe DST. We don't know when
+ # Pangnirtung switched to eastern time; we'll guess 1995.
+@@ -1932,8 +2099,8 @@
+ # the current state of affairs.
+
+ # From Michaela Rodrigue, writing in the
+-# Nunatsiaq News (1999-11-19)
+-# <http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html>:
++# Nunatsiaq News (1999-11-19):
++# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
+ # Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
+ # central - or Nunavut time - for government offices, and eastern time
+ # for municipal offices and schools.... Igloolik [was similar but then]
+@@ -1980,10 +2147,7 @@
+ # [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
+
+ # From Gwillim Law (2005-05-21):
+-# According to maps at
+-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
+-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
+-# (both dated 2003), and
++# According to ...
+ # http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
+ # (from a 1998 Canadian Geographic article), the de facto and de jure time
+ # for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
+@@ -1992,9 +2156,11 @@
+ # predates the creation of Nunavut, it probably goes back many years....
+ # The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
+ #
+-# From Paul Eggert (2005-07-26):
++# From Paul Eggert (2014-10-17):
+ # For lack of better information, assume that Southampton Island observed
+-# daylight saving only during wartime.
++# daylight saving only during wartime. Gwillim Law's email also
++# mentioned maps now maintained by National Research Council Canada;
++# see above for an up-to-date link.
+
+ # From Chris Walton (2007-03-01):
+ # ... the community of Resolute (located on Cornwallis Island in
+@@ -2080,48 +2246,48 @@
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
+- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+- -5:00 Canada E%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
++Zone America/Pangnirtung 0 - -00 1921 # trading post est.
++ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
++ -5:00 Canada E%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # formerly Frobisher Bay
+-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
+- -5:00 NT_YK E%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
++Zone America/Iqaluit 0 - -00 1942 Aug # Frobisher Bay est.
++ -5:00 NT_YK E%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # aka Qausuittuq
+-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
+- -6:00 NT_YK C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2001 Apr 1 3:00
+- -6:00 Canada C%sT 2006 Oct 29 2:00
+- -5:00 - EST 2007 Mar 11 3:00
++Zone America/Resolute 0 - -00 1947 Aug 31 # Resolute founded
++ -6:00 NT_YK C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2001 Apr 1 3:00
++ -6:00 Canada C%sT 2006 Oct 29 2:00
++ -5:00 - EST 2007 Mar 11 3:00
+ -6:00 Canada C%sT
+ # aka Kangiqiniq
+-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
+- -6:00 NT_YK C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2001 Apr 1 3:00
++Zone America/Rankin_Inlet 0 - -00 1957 # Rankin Inlet founded
++ -6:00 NT_YK C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+ # aka Iqaluktuuttiaq
+-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
+- -7:00 NT_YK M%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2000 Nov 5 0:00
+- -6:00 - CST 2001 Apr 1 3:00
++Zone America/Cambridge_Bay 0 - -00 1920 # trading post est.?
++ -7:00 NT_YK M%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2000 Nov 5 0:00
++ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
++Zone America/Yellowknife 0 - -00 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
+- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
++Zone America/Inuvik 0 - -00 1953 # Inuvik founded
++ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+ Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
+- -9:00 NT_YK Y%sT 1966 Jul 1 2:00
++ -9:00 NT_YK Y%sT 1967 May 28 0:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
+- -9:00 NT_YK Y%sT 1973 Oct 28 0:00
++ -9:00 NT_YK Y%sT 1973 Oct 28 0:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+
+@@ -2130,11 +2296,11 @@
+
+ # Mexico
+
+-# From Paul Eggert (2001-03-05):
++# From Paul Eggert (2014-12-07):
+ # The Investigation and Analysis Service of the
+ # Mexican Library of Congress (MLoC) has published a
+ # history of Mexican local time (in Spanish)
+-# <http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/>.
++# http://www.diputados.gob.mx/bibliot/publica/inveyana/polisoc/horver/index.htm
+ #
+ # Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
+ # (In all cases we go with the MLoC.)
+@@ -2179,8 +2345,8 @@
+ # -------------- End Forwarded Message --------------
+ # From Paul Eggert (1996-06-12):
+ # For an English translation of the decree, see
+-# "Diario Oficial: Time Zone Changeover" (1996-01-04)
+-# <http://mexico-travel.com/extra/timezone_eng.html>.
++# "Diario Oficial: Time Zone Changeover" (1996-01-04).
++# http://mexico-travel.com/extra/timezone_eng.html
+
+ # From Rives McDow (1998-10-08):
+ # The State of Quintana Roo has reverted back to central STD and DST times
+@@ -2205,7 +2371,7 @@
+ # January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
+ # that Summer Time will be reduced from seven to five months, starting
+ # this year....
+-# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
++# http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001
+ # [translated], says "summer time will ... take effect on the first Sunday
+ # in May, and end on the last Sunday of September.
+
+@@ -2219,13 +2385,13 @@
+ # observation of Daylight Saving Time.
+
+ # Official statute published by the Energy Department
+-# <http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre>
++# http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre
+ # (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
+ # and Sonora with no DST. This was reported by Jesper Nørgaard (2001-02-03).
+
+ # From Paul Eggert (2001-03-03):
+ #
+-# <http://www.latimes.com/news/nation/20010303/t000018766.html>
++# http://www.latimes.com/news/nation/20010303/t000018766.html
+ # James F. Smith writes in today's LA Times
+ # * Sonora will continue to observe standard time.
+ # * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that
+@@ -2303,6 +2469,40 @@
+ # efecto desde las dos horas del segundo domingo de marzo y concluirá a
+ # las dos horas del primer domingo de noviembre.
+
++# From Steffen Thorsen (2014-12-08), translated by Gwillim Law:
++# The Mexican state of Quintana Roo will likely change to EST in 2015.
++#
++# http://www.unioncancun.mx/articulo/2014/12/04/medio-ambiente/congreso-aprueba-una-hora-mas-de-sol-en-qroo
++# "With this change, the time conflict that has existed between the municipios
++# of Quintana Roo and the municipio of Felipe Carrillo Puerto may come to an
++# end. The latter declared itself in rebellion 15 years ago when a time change
++# was initiated in Mexico, and since then it has refused to change its time
++# zone along with the rest of the country."
++#
++# From Steffen Thorsen (2015-01-14), translated by Gwillim Law:
++# http://sipse.com/novedades/confirman-aplicacion-de-nueva-zona-horaria-para-quintana-roo-132331.html
++# "...the new time zone will come into effect at two o'clock on the first Sunday
++# of February, when we will have to advance the clock one hour from its current
++# time..."
++# Also, the new zone will not use DST.
++#
++# From Carlos Raúl Perasso (2015-02-02):
++# The decree that modifies the Mexican Hour System Law has finally
++# been published at the Diario Oficial de la Federación
++# http://www.dof.gob.mx/nota_detalle.php?codigo=5380123&fecha=31/01/2015
++# It establishes 5 zones for Mexico:
++# 1- Zona Centro (Central Zone): Corresponds to longitude 90 W,
++# includes most of Mexico, excluding what's mentioned below.
++# 2- Zona Pacífico (Pacific Zone): Longitude 105 W, includes the
++# states of Baja California Sur; Chihuahua; Nayarit (excluding Bahía
++# de Banderas which lies in Central Zone); Sinaloa and Sonora.
++# 3- Zona Noroeste (Northwest Zone): Longitude 120 W, includes the
++# state of Baja California.
++# 4- Zona Sureste (Southeast Zone): Longitude 75 W, includes the state
++# of Quintana Roo.
++# 5- The islands, reefs and keys shall take their timezone from the
++# longitude they are located at.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Mexico 1939 only - Feb 5 0:00 1:00 D
+ Rule Mexico 1939 only - Jun 25 0:00 0 S
+@@ -2323,35 +2523,48 @@
+ Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
+ -6:00 - CST 1981 Dec 23
+ -5:00 Mexico E%sT 1998 Aug 2 2:00
+- -6:00 Mexico C%sT
++ -6:00 Mexico C%sT 2015 Feb 1 2:00
++ -5:00 - EST
+ # Campeche, Yucatán; represented by Mérida
+ Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
++# Coahuila, Nuevo León, Tamaulipas (near US border)
++# This includes the following municipalities:
++# in Coahuila: Ocampo, Acuña, Zaragoza, Jiménez, Piedras Negras, Nava,
++# Guerrero, Hidalgo.
++# in Nuevo León: Anáhuac, Los Aldama.
++# in Tamaulipas: Nuevo Laredo, Guerrero, Mier, Miguel Alemán, Camargo,
++# Gustavo Díaz Ordaz, Reynosa, Río Bravo, Valle Hermoso, Matamoros.
++# See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
++# 2016-03-12
++# http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+ Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT 2010
+ -6:00 US C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
++# Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+ Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT
+ # Central Mexico
+-Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
++Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+- -6:00 Mexico C%sT 2001 Sep 30 02:00
++ -6:00 Mexico C%sT 2001 Sep 30 2:00
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+ # Chihuahua (near US border)
+-Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
++# This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
++# Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
++# (See the 2016-03-12 El Universal source mentioned above.)
++Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+@@ -2359,7 +2572,7 @@
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1996
+ -6:00 Mexico C%sT 1998
+- -6:00 - CST 1998 Apr Sun>=1 3:00
++ -6:00 - CST 1998 Apr Sun>=1 3:00
+ -7:00 Mexico M%sT 2010
+ -7:00 US M%sT
+ # Chihuahua (away from US border)
+@@ -2371,7 +2584,7 @@
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1996
+ -6:00 Mexico C%sT 1998
+- -6:00 - CST 1998 Apr Sun>=1 3:00
++ -6:00 - CST 1998 Apr Sun>=1 3:00
+ -7:00 Mexico M%sT
+ # Sonora
+ Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
+@@ -2435,10 +2648,10 @@
+ -6:00 - CST 1942 Apr 24
+ -7:00 - MST 1949 Jan 14
+ -8:00 - PST 1970
+- -7:00 Mexico M%sT 2010 Apr 4 2:00
++ -7:00 Mexico M%sT 2010 Apr 4 2:00
+ -6:00 Mexico C%sT
+
+-# Baja California (near US border)
++# Baja California
+ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+@@ -2458,25 +2671,6 @@
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT 2010
+ -8:00 US P%sT
+-# Baja California (away from US border)
+-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
+- -7:00 - MST 1924
+- -8:00 - PST 1927 Jun 10 23:00
+- -7:00 - MST 1930 Nov 15
+- -8:00 - PST 1931 Apr 1
+- -8:00 1:00 PDT 1931 Sep 30
+- -8:00 - PST 1942 Apr 24
+- -8:00 1:00 PWT 1945 Aug 14 23:00u
+- -8:00 1:00 PPT 1945 Nov 12 # Peace
+- -8:00 - PST 1948 Apr 5
+- -8:00 1:00 PDT 1949 Jan 14
+- -8:00 - PST 1954
+- -8:00 CA P%sT 1961
+- -8:00 - PST 1976
+- -8:00 US P%sT 1996
+- -8:00 Mexico P%sT 2001
+- -8:00 US P%sT 2002 Feb 20
+- -8:00 Mexico P%sT
+ # From Paul Eggert (2006-03-22):
+ # Formerly there was an America/Ensenada zone, which differed from
+ # America/Tijuana only in that it did not observe DST from 1976
+@@ -2489,19 +2683,21 @@
+ # other than America/Tijuana for Baja, but it's not clear yet what its
+ # name or contents should be.
+ #
++# From Paul Eggert (2015-10-08):
++# Formerly there was an America/Santa_Isabel zone, but this appears to
++# have come from a misreading of
++# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
++# It has been moved to the 'backward' file.
++#
++#
+ # Revillagigedo Is
+ # no information
+
+ ###############################################################################
+
+ # Anguilla
+-# See America/Port_of_Spain.
+-
+ # Antigua and Barbuda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
+- -5:00 - EST 1951
+- -4:00 - AST
++# See America/Port_of_Spain.
+
+ # Bahamas
+ #
+@@ -2531,8 +2727,8 @@
+ Rule Barb 1979 only - Sep 30 2:00 0 S
+ Rule Barb 1980 only - Sep 25 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
+- -3:58:29 - BMT 1932 # Bridgetown Mean Time
++Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
++ -3:58:29 - BMT 1932 # Bridgetown Mean Time
+ -4:00 Barb A%sT
+
+ # Belize
+@@ -2562,16 +2758,13 @@
+ # http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton
+- -4:00 - AST 1974 Apr 28 2:00
++Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton
++ -4:00 - AST 1974 Apr 28 2:00
+ -4:00 Canada A%sT 1976
+ -4:00 US A%sT
+
+ # Cayman Is
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST
++# See America/Panama.
+
+ # Costa Rica
+
+@@ -2587,7 +2780,7 @@
+ Rule CR 1992 only - Mar 15 0:00 0 S
+ # There are too many San Josés elsewhere, so we'll use 'Costa Rica'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
++Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
+ -5:36:13 - SJMT 1921 Jan 15 # San José Mean Time
+ -6:00 CR C%sT
+ # Coco
+@@ -2831,8 +3024,8 @@
+ Zone America/Santo_Domingo -4:39:36 - LMT 1890
+ -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
+ -5:00 DR E%sT 1974 Oct 27
+- -4:00 - AST 2000 Oct 29 02:00
+- -5:00 US E%sT 2000 Dec 3 01:00
++ -4:00 - AST 2000 Oct 29 2:00
++ -5:00 US E%sT 2000 Dec 3 1:00
+ -4:00 - AST
+
+ # El Salvador
+@@ -2843,7 +3036,7 @@
+ # There are too many San Salvadors elsewhere, so use America/El_Salvador
+ # instead of America/San_Salvador.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
++Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
+ -6:00 Salv C%sT
+
+ # Grenada
+@@ -2864,7 +3057,7 @@
+ # From Paul Eggert (2006-06-22):
+ # The Ministry of Energy and Mines, press release CP-15/2006
+ # (2006-04-19), says DST ends at 24:00. See
+-# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
++# http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Guat 1973 only - Nov 25 0:00 1:00 D
+@@ -2934,6 +3127,13 @@
+ # http://radiovision2000haiti.net/public/haiti-avis-changement-dheure-dimanche/
+ # http://www.canalplushaiti.net/?p=6714
+
++# From Steffen Thorsen (2016-03-12):
++# Jean Antoine, editor of www.haiti-reference.com informed us that Haiti
++# are not going on DST this year. Several other resources confirm this: ...
++# http://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# http://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
++# http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Haiti 1983 only - May 8 0:00 1:00 D
+ Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+@@ -2944,8 +3144,8 @@
+ Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+ Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+ Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+-Rule Haiti 2012 max - Mar Sun>=8 2:00 1:00 D
+-Rule Haiti 2012 max - Nov Sun>=1 2:00 0 S
++Rule Haiti 2012 2015 - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+@@ -2967,8 +3167,8 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
+
+ # From Paul Eggert (2006-08-08):
+-# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
+-# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
++# Also see Diario El Heraldo, The country returns to standard time (2006-08-08).
++# http://www.elheraldo.hn/nota.php?nid=54941&sec=12
+ # It mentions executive decree 18-2006.
+
+ # From Steffen Thorsen (2006-08-17):
+@@ -2995,17 +3195,28 @@
+ # Shanks & Pottenger give -5:07:12, but Milne records -5:07:10.41 from an
+ # unspecified official document, and says "This time is used throughout the
+ # island". Go with Milne. Round to the nearest second as required by zic.
++#
++# Shanks & Pottenger give April 28 for the 1974 spring-forward transition, but
++# Lance Neita writes that Prime Minister Michael Manley decreed it January 5.
++# Assume Neita meant Jan 6 02:00, the same as the US. Neita also writes that
++# Manley's supporters associated this act with Manley's nickname "Joshua"
++# (recall that in the Bible the sun stood still at Joshua's request),
++# and with the Rod of Correction which Manley said he had received from
++# Haile Selassie, Emperor of Ethiopia. See:
++# Neita L. The politician in all of us. Jamaica Observer 2014-09-20
++# http://www.jamaicaobserver.com/columns/The-politician-in-all-of-us_17573647
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston
++Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston
+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST 1974 Apr 28 2:00
++ -5:00 - EST 1974
+ -5:00 US E%sT 1984
+ -5:00 - EST
+
+ # Martinique
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
+- -4:04:20 - FFMT 1911 May # Fort-de-France MT
++Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
++ -4:04:20 - FFMT 1911 May # Fort-de-France MT
+ -4:00 - AST 1980 Apr 6
+ -4:00 1:00 ADT 1980 Sep 28
+ -4:00 - AST
+@@ -3034,7 +3245,7 @@
+ # From Gwillim Law (2005-04-21):
+ # The Associated Press story on the time change, which can be found at
+ # http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
+-# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
++# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
+ # time that a change of clocks was applied to save energy was in the year 2000
+ # during the Arnoldo Alemán administration."...
+ # The northamerica file says that Nicaragua has been on UTC-6 continuously
+@@ -3072,7 +3283,7 @@
+ -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
+ -6:00 - CST 1973 May
+ -5:00 - EST 1975 Feb 16
+- -6:00 Nic C%sT 1992 Jan 1 4:00
++ -6:00 Nic C%sT 1992 Jan 1 4:00
+ -5:00 - EST 1992 Sep 24
+ -6:00 - CST 1993
+ -5:00 - EST 1997
+@@ -3081,13 +3292,14 @@
+ # Panama
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Panama -5:18:08 - LMT 1890
+- -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
++ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
++Link America/Panama America/Cayman
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
++Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
+ -4:00 - AST 1942 May 3
+ -4:00 US A%sT 1946
+ -4:00 - AST
+@@ -3099,7 +3311,7 @@
+ # St Pierre and Miquelon
+ # There are too many St Pierres elsewhere, so we'll use 'Miquelon'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
++Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
+ -4:00 - AST 1980 May
+ -3:00 - PMST 1987 # Pierre & Miquelon Time
+ -3:00 Canada PM%sT
+@@ -3110,7 +3322,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
++# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
+ # (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
+ # daylight saving dates for time changes have been adjusted to match
+ # the recent U.S. change of dates.
+@@ -3123,20 +3335,21 @@
+ # Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
+ # indicating that the normal ET rules are followed.
+ #
+-# From Paul Eggert (2006-05-01):
+-# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
+-# says they switch at midnight. Go with Shanks & Pottenger.
++# From Paul Eggert (2014-08-19):
++# The 2014-08-13 Cabinet meeting decided to stay on UT -04 year-round. See:
++# http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm
++# Model this as a switch from EST/EDT to AST ...
++# From Chris Walton (2014-11-04):
++# ... the TCI government appears to have delayed the switch to
++# "permanent daylight saving time" by one year....
++# http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D
+-Rule TC 1979 2006 - Oct lastSun 2:00 0 S
+-Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D
+-Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D
+-Rule TC 2007 max - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Grand_Turk -4:44:32 - LMT 1890
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 TC E%sT
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST 1979
++ -5:00 US E%sT 2015 Nov Sun>=1 2:00
++ -4:00 - AST
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -1,27 +1,28 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2006-03-22):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
+-#
+-# For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# For data circa 1899, a common source is:
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # Earlier editions of these tables used the North American style (e.g. ARST and
+ # ARDT for Argentine Standard and Daylight Time), but the following quote
+@@ -29,7 +30,7 @@
+ # I suggest the use of _Summer time_ instead of the more cumbersome
+ # _daylight-saving time_. _Summer time_ seems to be in general use
+ # in Europe and South America.
+-# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
++# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
+ # H L Mencken, _The American Language: Supplement I_ (1960), p 466
+ #
+ # Earlier editions of these tables also used the North American style
+@@ -130,7 +131,7 @@
+ # Timezone Law (which never was effectively applied) will (would?) be
+ # in effect.... The article is at
+ # http://ar.clarin.com/diario/2001-06-06/e-01701.htm
+-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
++# ... The Law itself is "Ley No. 25155", sanctioned on 1999-08-25, enacted
+ # 1999-09-17, and published 1999-09-21. The official publication is at:
+ # http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
+ # Regretfully, you have to subscribe (and pay) for the on-line version....
+@@ -174,21 +175,17 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
+ # http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
+
+-# From Rodrigo Severo (2008-10-06):
+-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
+-# ...
+-# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
+-# Hi, there is a problem with timezone-data-2008e and maybe with
+-# timezone-data-2008f
+-# Argentinian law [Number] 25.155 is no longer valid.
++# From Juan Manuel Docile in https://bugs.gentoo.org/240339 (2008-10-07)
++# via Rodrigo Severo:
++# Argentinian law No. 25.155 is no longer valid.
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
+-# The new one is law [Number] 26.350
++# The new one is law No. 26.350
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
+ # So there is no summer time in Argentina for now.
+
+ # From Mariano Absatz (2008-10-20):
+-# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
+-# From 2008-10-19 until 2009-03-15
++# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST
++# in Argentina from 2008-10-19 until 2009-03-15.
+ # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
+ #
+
+@@ -197,14 +194,16 @@
+ # Pampa, Neuquén, Rio Negro, Chubut, Santa Cruz and Tierra del Fuego
+ # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
+ #
+-# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
+-# it will not apply DST either (even when it was not included in Decree 1705/2008)
++# Press release 235 dated Saturday October 18th, from the Government of the
++# Province of Jujuy saying it will not apply DST either (even when it was not
++# included in Decree 1705/2008).
+ # http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
+
+ # From fullinet (2009-10-18):
+ # As announced in
+ # http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
+-# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
++# (an official .gob.ar) under title: "Sin Cambio de Hora"
++# (English: "No hour change").
+ #
+ # "Por el momento, el Gobierno Nacional resolvió no modificar la hora
+ # oficial, decisión que estaba en estudio para su implementación el
+@@ -225,9 +224,9 @@
+ # It's Law No. 7,210. This change is due to a public power emergency, so for
+ # now we'll assume it's for this year only.
+ #
+-# From Paul Eggert (2006-03-22):
+-# Hora de verano para la Republica Argentina (2003-06-08)
+-# <http://www.spicasc.net/horvera.html>
++# From Paul Eggert (2014-08-09):
++# Hora de verano para la República Argentina
++# http://buenasiembra.com.ar/esoterismo/astrologia/hora-de-verano-de-la-republica-argentina-27.html
+ # says that standard time in Argentina from 1894-10-31
+ # to 1920-05-01 was -4:16:48.25. Go with this more-precise value
+ # over Shanks & Pottenger.
+@@ -300,7 +299,7 @@
+ # confirms that upon request the provinces San Juan and Mendoza
+ # refused to follow San Luis in this change.
+ #
+-# The change is supposed to take place Monday the 21.st at 0:00
++# The change is supposed to take place Monday the 21st at 0:00
+ # hours. As far as I understand it if this goes ahead, we need
+ # a new timezone for San Luis (although there are also documented
+ # independent changes in the southamerica file of San Luis in
+@@ -332,9 +331,9 @@
+ # back in 2004, when these provinces changed to UTC-4 for a few days, I
+ # mailed them personally and never got an answer).
+
+-# From Paul Eggert (2008-06-30):
+-# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
+-# from the IATA otherwise. As noted below, Shanks & Pottenger say that
++# From Paul Eggert (2014-08-12):
++# Unless otherwise specified, data entries are from Shanks & Pottenger through
++# 1992, from the IATA otherwise. As noted below, Shanks & Pottenger say that
+ # America/Cordoba split into 6 subregions during 1991/1992, one of which
+ # was America/San_Luis, but we haven't verified this yet so for now we'll
+ # keep America/Cordoba a single region rather than splitting it into the
+@@ -394,7 +393,7 @@
+ # ...
+
+ # From Alexander Krivenyshev (2010-04-09):
+-# According to news reports from El Diario de la Republica Province San
++# According to news reports from El Diario de la República Province San
+ # Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time
+ # after April 11, 2010 - will continue to have same time as rest of
+ # Argentina (UTC-3) (no DST).
+@@ -411,10 +410,10 @@
+ # stuck on Summer daylight savings time even though the summer is over.
+
+ # From Paul Eggert (2013-09-05):
+-# Perhaps San Luis operates on the legal fiction that it is at UTC-4
++# Perhaps San Luis operates on the legal fiction that it is at -04
+ # with perpetual summer time, but ordinary usage typically seems to
+-# just say it's at UTC-3; see, for example,
+-# <http://es.wikipedia.org/wiki/Hora_oficial_argentina>.
++# just say it's at -03; see, for example,
++# http://es.wikipedia.org/wiki/Hora_oficial_argentina
+ # We've documented similar situations as being plain changes to
+ # standard time, so let's do that here too. This does not change UTC
+ # offsets, only tm_isdst and the time zone abbreviations. One minor
+@@ -427,8 +426,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Buenos Aires (BA), Capital Federal (CF),
+-Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -578,8 +577,8 @@
+ -3:00 - ART
+ #
+ # Santa Cruz (SC)
+-Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -590,8 +589,8 @@
+ -3:00 - ART
+ #
+ # Tierra del Fuego, Antártida e Islas del Atlántico Sur (TF)
+-Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -685,7 +684,7 @@
+ # Oficial da União"...) in Brazil there are changes in the timezones,
+ # effective today (00:00am at June 24, 2008) as follows:
+ #
+-# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
++# a) The timezone UTC+5 is extinguished, with all the Acre state and the
+ # part of the Amazonas state that had this timezone now being put to the
+ # timezone UTC+4
+ # b) The whole Pará state now is put at timezone UTC+3, instead of just
+@@ -722,8 +721,8 @@
+
+ # From Paul Eggert (2002-10-10):
+ # The official decrees referenced below are mostly taken from
+-# Decretos sobre o Horário de Verão no Brasil
+-# <http://pcdsh01.on.br/DecHV.html>.
++# Decretos sobre o Horário de Verão no Brasil.
++# http://pcdsh01.on.br/DecHV.html
+
+ # From Steffen Thorsen (2008-08-29):
+ # As announced by the government and many newspapers in Brazil late
+@@ -768,7 +767,7 @@
+ # [ and in a second message (same day): ]
+ # I found the decree.
+ #
+-# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
++# DECRETO No. 7.584, DE 13 DE OUTUBRO DE 2011
+ # Link :
+ # http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
+
+@@ -986,7 +985,7 @@
+ # West Pará includes Altamira, Óbidos, Prainha, Oriximiná, and Santarém.
+ Zone America/Santarem -3:38:48 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 2008 Jun 24 00:00
++ -4:00 - AMT 2008 Jun 24 0:00
+ -3:00 - BRT
+ #
+ # Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN),
+@@ -1041,7 +1040,7 @@
+ # Espírito Santo (ES), Rio de Janeiro (RJ), São Paulo (SP), Paraná (PR),
+ # Santa Catarina (SC), Rio Grande do Sul (RS)
+ Zone America/Sao_Paulo -3:06:28 - LMT 1914
+- -3:00 Brazil BR%sT 1963 Oct 23 00:00
++ -3:00 Brazil BR%sT 1963 Oct 23 0:00
+ -3:00 1:00 BRST 1964
+ -3:00 Brazil BR%sT
+ #
+@@ -1082,19 +1081,73 @@
+ -5:00 Brazil AC%sT 1988 Sep 12
+ -5:00 - ACT 1993 Sep 28
+ -5:00 Brazil AC%sT 1994 Sep 22
+- -5:00 - ACT 2008 Jun 24 00:00
++ -5:00 - ACT 2008 Jun 24 0:00
+ -4:00 - AMT 2013 Nov 10
+ -5:00 - ACT
+ #
+ # Acre (AC)
+ Zone America/Rio_Branco -4:31:12 - LMT 1914
+ -5:00 Brazil AC%sT 1988 Sep 12
+- -5:00 - ACT 2008 Jun 24 00:00
++ -5:00 - ACT 2008 Jun 24 0:00
+ -4:00 - AMT 2013 Nov 10
+ -5:00 - ACT
+
+ # Chile
+
++# From Paul Eggert (2015-04-03):
++# Shanks & Pottenger says America/Santiago introduced standard time in
++# 1890 and rounds its UTC offset to 70W40; guess that in practice this
++# was the same offset as in 1916-1919. It also says Pacific/Easter
++# standardized on 109W22 in 1890; assume this didn't change the clocks.
++#
++# Dates for America/Santiago from 1910 to 2004 are primarily from
++# the following source, cited by Oscar van Vlijmen (2006-10-08):
++# [1] Chile Law
++# http://www.webexhibits.org/daylightsaving/chile.html
++# This contains a copy of a this official table:
++# Cambios en la hora oficial de Chile desde 1900 (retrieved 2008-03-30)
++# http://web.archive.org/web/20080330200901/http://www.horaoficial.cl/cambio.htm
++# [1] needs several corrections, though.
++#
++# The first set of corrections is from:
++# [2] History of the Official Time of Chile
++# http://www.horaoficial.cl/ing/horaof_ing.html (retrieved 2012-03-06). See:
++# http://web.archive.org/web/20120306042032/http://www.horaoficial.cl/ing/horaof_ing.html
++# This is an English translation of:
++# Historia de la hora oficial de Chile (retrieved 2012-10-24). See:
++# http://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
++# A fancier Spanish version (requiring mouse-clicking) is at:
++# http://www.horaoficial.cl/historia_hora.html
++# Conflicts between [1] and [2] were resolved as follows:
++#
++# - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
++# Boletín No. 1, Aviso No. 1 (1910). Go with [2].
++#
++# - [1] says SMT was -4:42:45, [2] says Chile's official time from
++# 1916 to 1919 was -4:42:46.3, the meridian of Chile's National
++# Astronomical Observatory (OAN), then located in what is now
++# Quinta Normal in Santiago. Go with [2], rounding it to -4:42:46.
++#
++# - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
++# Boletín No. 22, Aviso No. 129/1918 (1918-08-23). Go with [2].
++#
++# - [1] does not give times for transitions; assume they occur
++# at midnight mainland time, the current common practice. However,
++# go with [2]'s specification of 23:00 for the 1947-05-21 transition.
++#
++# Another correction to [1] is from Jesper Nørgaard Welen, who
++# wrote (2006-10-08), "I think that there are some obvious mistakes in
++# the suggested link from Oscar van Vlijmen,... for instance entry 66
++# says that GMT-4 ended 1990-09-12 while entry 67 only begins GMT-3 at
++# 1990-09-15 (they should have been 1990-09-15 and 1990-09-16
++# respectively), but anyhow it clears up some doubts too."
++#
++# Data for Pacific/Easter from 1910 through 1967 come from Shanks &
++# Pottenger. After that, for lack of better info assume
++# Pacific/Easter is always two hours behind America/Santiago;
++# this is known to work for DST transitions starting in 2008 and
++# may well be true for earlier transitions.
++
+ # From Eduardo Krell (1995-10-19):
+ # The law says to switch to DST at midnight [24:00] on the second SATURDAY
+ # of October.... The law is the same for March and October.
+@@ -1107,78 +1160,35 @@
+ # Because of the same drought, the government decided to end DST later,
+ # on April 3, (one-time change).
+
+-# From Oscar van Vlijmen (2006-10-08):
+-# http://www.horaoficial.cl/cambio.htm
+-
+-# From Jesper Nørgaard Welen (2006-10-08):
+-# I think that there are some obvious mistakes in the suggested link
+-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
+-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
+-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
+-# anyhow it clears up some doubts too.
+-
+-# From Paul Eggert (2006-12-27):
+-# The following data for Chile and America/Santiago are from
+-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
+-# Jesper Nørgaard Welen. The data for Pacific/Easter are from Shanks
+-# & Pottenger, except with DST transitions after 1932 cloned from
+-# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
+-# but we have no other source.
+-
+ # From Germán Poo-Caamaño (2008-03-03):
+ # Due to drought, Chile extends Daylight Time in three weeks. This
+ # is one-time change (Saturday 3/29 at 24:00 for America/Santiago
+ # and Saturday 3/29 at 22:00 for Pacific/Easter)
+ # The Supreme Decree is located at
+ # http://www.shoa.cl/servicios/supremo316.pdf
+-# and the instructions for 2008 are located in:
+-# http://www.horaoficial.cl/cambio.htm
+-
++#
+ # From José Miguel Garrido (2008-03-05):
+-# ...
+-# You could see the announces of the change on
+ # http://www.shoa.cl/noticias/2008/04hora/hora.htm
+
+ # From Angel Chiang (2010-03-04):
+ # Subject: DST in Chile exceptionally extended to 3 April due to earthquake
+ # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
+-# (in Spanish, last paragraph).
+ #
+-# This is breaking news. There should be more information available later.
+-
+-# From Arthur Daivd Olson (2010-03-06):
++# From Arthur David Olson (2010-03-06):
+ # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
+
+-# From Glenn Eychaner (2011-03-02): [geychaner@mac.com]
+-# It appears that the Chilean government has decided to postpone the
+-# change from summer time to winter time again, by three weeks to April
+-# 2nd:
+-# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
+-#
+-# This is not yet reflected in the official "cambio de hora" site, but
+-# probably will be soon:
+-# http://www.horaoficial.cl/cambio.htm
+-
+-# From Arthur David Olson (2011-03-02):
+-# The emol.com article mentions a water shortage as the cause of the
+-# postponement, which may mean that it's not a permanent change.
+-
+ # From Glenn Eychaner (2011-03-28):
+-# The article:
+ # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
+-#
+ # In English:
+ # Chile's clocks will go back an hour this year on the 7th of May instead
+ # of this Saturday. They will go forward again the 3rd Saturday in
+-# August, not in October as they have since 1968. This is a pilot plan
+-# which will be reevaluated in 2012.
++# August, not in October as they have since 1968.
+
+ # From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
+ # As stated in the website of the Chilean Energy Ministry
+ # http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
+ # The Chilean Government has decided to postpone the entrance into winter time
+-# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
+-# been yet formalized but it will within the next days.
++# (to leave DST) from March 11 2012 to April 28th 2012....
+ # Quote from the website communication:
+ #
+ # 6. For the year 2012, the dates of entry into winter time will be as follows:
+@@ -1203,17 +1213,31 @@
+ # DST Start: first Saturday of September 2014 (Sun 07 Sep 2014 04:00 UTC)
+ # http://www.diariooficial.interior.gob.cl//media/2014/02/19/do-20140219.pdf
+
+-# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
+-# 'antarctica' file.
++# From Eduardo Romero Urra (2015-03-03):
++# Today has been published officially that Chile will use the DST time
++# permanently until March 25 of 2017
++# http://www.diariooficial.interior.gob.cl/media/2015/03/03/1-large.jpg
++#
++# From Paul Eggert (2015-03-03):
++# For now, assume that the extension will persist indefinitely.
++
++# From Juan Correa (2016-03-18):
++# The decree regarding DST has been published in today's Official Gazette:
++# http://www.diariooficial.interior.gob.cl/versiones-anteriores/do/20160318/
++# http://www.leychile.cl/Navegar?idNorma=1088502
++# It does consider the second Saturday of May and August as the dates
++# for the transition; and it lists DST dates until 2019, but I think
++# this scheme will stick.
++#
++# From Paul Eggert (2016-03-18):
++# For now, assume the pattern holds for the indefinite future.
++# The decree says transitions occur at 24:00; in practice this appears
++# to mean 24:00 mainland time, not 24:00 local time, so that Easter
++# Island is always two hours behind the mainland.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
++Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
+ Rule Chile 1928 1932 - Apr 1 0:00 0 -
+-Rule Chile 1942 only - Jun 1 4:00u 0 -
+-Rule Chile 1942 only - Aug 1 5:00u 1:00 S
+-Rule Chile 1946 only - Jul 15 4:00u 1:00 S
+-Rule Chile 1946 only - Sep 1 3:00u 0:00 -
+-Rule Chile 1947 only - Apr 1 4:00u 0 -
+ Rule Chile 1968 only - Nov 3 4:00u 1:00 S
+ Rule Chile 1969 only - Mar 30 3:00u 0 -
+ Rule Chile 1969 only - Nov 23 4:00u 1:00 S
+@@ -1224,10 +1248,8 @@
+ Rule Chile 1973 only - Sep 30 4:00u 1:00 S
+ Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+ Rule Chile 1987 only - Apr 12 3:00u 0 -
+-Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
+-Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
+-Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
+-Rule Chile 1990 only - Mar 18 3:00u 0 -
++Rule Chile 1988 1990 - Mar Sun>=9 3:00u 0 -
++Rule Chile 1988 1989 - Oct Sun>=9 4:00u 1:00 S
+ Rule Chile 1990 only - Sep 16 4:00u 1:00 S
+ Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
+ Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+@@ -1244,28 +1266,54 @@
+ Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
+ Rule Chile 2011 only - May Sun>=2 3:00u 0 -
+ Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule Chile 2012 max - Apr Sun>=23 3:00u 0 -
+-Rule Chile 2012 max - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2012 2014 - Apr Sun>=23 3:00u 0 -
++Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2016 max - May Sun>=9 3:00u 0 -
++Rule Chile 2016 max - Aug Sun>=9 4:00u 1:00 S
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Santiago -4:42:46 - LMT 1890
+- -4:42:46 - SMT 1910 # Santiago Mean Time
++ -4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
+ -5:00 - CLT 1916 Jul 1 # Chile Time
+- -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
+- -4:00 - CLT 1919 Jul 1 # Chile Time
+- -4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
+- -5:00 Chile CL%sT 1947 May 22 # Chile Time
++ -4:42:46 - SMT 1918 Sep 10
++ -4:00 - CLT 1919 Jul 1
++ -4:42:46 - SMT 1927 Sep 1
++ -5:00 Chile CL%sT 1932 Sep 1
++ -4:00 - CLT 1942 Jun 1
++ -5:00 - CLT 1942 Aug 1
++ -4:00 - CLT 1946 Jul 15
++ -4:00 1:00 CLST 1946 Sep 1 # central Chile
++ -4:00 - CLT 1947 Apr 1
++ -5:00 - CLT 1947 May 21 23:00
+ -4:00 Chile CL%sT
+-Zone Pacific/Easter -7:17:44 - LMT 1890
++Zone Pacific/Easter -7:17:28 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
++ -7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
+ -6:00 Chile EAS%sT
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+ # and Antarctic bases, are like America/Santiago.
+
++# Antarctic base using South American rules
++# (See the file 'antarctica' for more.)
++#
++# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
++#
++# From Ethan Dicks (1996-10-06):
++# It keeps the same time as Punta Arenas, Chile, because, just like us
++# and the South Pole, that's the other end of their supply line....
++# I verified with someone who was there that since 1980,
++# Palmer has followed Chile. Prior to that, before the Falklands War,
++# Palmer used to be supplied from Argentina.
++#
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Antarctica/Palmer 0 - -00 1965
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1982 May
++ -4:00 Chile CL%sT
++
+ # Colombia
+
+ # Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes,
+@@ -1300,7 +1348,7 @@
+ # though, as far as we know.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
++Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
+ -4:30 - ANT 1965 # Netherlands Antilles Time
+ -4:00 - AST
+
+@@ -1325,10 +1373,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Guayaquil -5:19:20 - LMT 1890
+ -5:14:00 - QMT 1931 # Quito Mean Time
+- -5:00 - ECT # Ecuador Time
++ -5:00 - ECT # Ecuador Time
+ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
+ -5:00 - ECT 1986
+- -6:00 - GALT # Galápagos Time
++ -6:00 - GALT # Galápagos Time
+
+ # Falklands
+
+@@ -1427,10 +1475,10 @@
+ Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Stanley -3:51:24 - LMT 1890
+- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
+- -4:00 Falk FK%sT 1983 May # Falkland Is Time
++ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
++ -4:00 Falk FK%sT 1983 May # Falkland Is Time
+ -3:00 Falk FK%sT 1985 Sep 15
+- -4:00 Falk FK%sT 2010 Sep 5 02:00
++ -4:00 Falk FK%sT 2010 Sep 5 2:00
+ -3:00 - FKST
+
+ # French Guiana
+@@ -1441,7 +1489,7 @@
+
+ # Guyana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
++Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
+ -3:45 - GBGT 1966 May 26 # Br Guiana Time
+ -3:45 - GYT 1975 Jul 31 # Guyana Time
+ -3:00 - GYT 1991
+@@ -1478,8 +1526,8 @@
+ # (10-01).
+ #
+ # Translated by Gwillim Law (2001-02-27) from
+-# Noticias, a daily paper in Asunción, Paraguay (2000-10-01)
+-# <http://www.diarionoticias.com.py/011000/nacional/naciona1.htm>:
++# Noticias, a daily paper in Asunción, Paraguay (2000-10-01):
++# http://www.diarionoticias.com.py/011000/nacional/naciona1.htm
+ # Starting at 0:00 today, the clock will be set forward 60 minutes, in
+ # fulfillment of Decree No. 7,273 of the Executive Power.... The time change
+ # system has been operating for several years. Formerly there was a separate
+@@ -1494,7 +1542,7 @@
+ # (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
+ Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
+ # From Rives McDow (2002-02-28):
+-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
++# A decree was issued in Paraguay (No. 16350) on 2002-02-26 that changed the
+ # dst method to be from the first Sunday in September to the first Sunday in
+ # April.
+ Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
+@@ -1506,7 +1554,7 @@
+ # From Steffen Thorsen (2005-01-05):
+ # Decree 1,867 (2004-03-05)
+ # From Carlos Raúl Perasso via Jesper Nørgaard Welen (2006-10-13)
+-# <http://www.presidencia.gov.py/decretos/D1867.pdf>
++# http://www.presidencia.gov.py/decretos/D1867.pdf
+ Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S
+ Rule Para 2005 2009 - Mar Sun>=8 0:00 0 -
+ # From Carlos Raúl Perasso (2010-02-18):
+@@ -1538,7 +1586,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Asuncion -3:50:40 - LMT 1890
+ -3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time
+- -4:00 - PYT 1972 Oct # Paraguay Time
++ -4:00 - PYT 1972 Oct # Paraguay Time
+ -3:00 - PYT 1974 Apr
+ -4:00 Para PY%sT
+
+@@ -1571,7 +1619,7 @@
+
+ # South Georgia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
++Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+ -2:00 - GST # South Georgia Time
+
+ # South Sandwich Is
+@@ -1581,9 +1629,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Paramaribo -3:40:40 - LMT 1911
+ -3:40:52 - PMT 1935 # Paramaribo Mean Time
+- -3:40:36 - PMT 1945 Oct # The capital moved?
++ -3:40:36 - PMT 1945 Oct # The capital moved?
+ -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
+- -3:30 - SRT 1984 Oct # Suriname Time
++ -3:30 - SRT 1984 Oct # Suriname Time
+ -3:00 - SRT
+
+ # Trinidad and Tobago
+@@ -1593,6 +1641,7 @@
+
+ # These all agree with Trinidad and Tobago since 1970.
+ Link America/Port_of_Spain America/Anguilla
++Link America/Port_of_Spain America/Antigua
+ Link America/Port_of_Spain America/Dominica
+ Link America/Port_of_Spain America/Grenada
+ Link America/Port_of_Spain America/Guadeloupe
+@@ -1657,7 +1706,7 @@
+ Rule Uruguay 1992 only - Oct 18 0:00 1:00 S
+ Rule Uruguay 1993 only - Feb 28 0:00 0 -
+ # From Eduardo Cota (2004-09-20):
+-# The uruguayan government has decreed a change in the local time....
++# The Uruguayan government has decreed a change in the local time....
+ # http://www.presidencia.gub.uy/decretos/2004091502.htm
+ Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
+ # From Steffen Thorsen (2005-03-11):
+@@ -1673,16 +1722,31 @@
+ Rule Uruguay 2006 only - Mar 12 2:00 0 -
+ # From Jesper Nørgaard Welen (2006-09-06):
+ # http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
+-Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
+-Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
++#
++# From Steffen Thorsen (2015-06-30):
++# ... it looks like they will not be using DST the coming summer:
++# http://www.elobservador.com.uy/gobierno-resolvio-que-no-habra-cambio-horario-verano-n656787
++# http://www.republica.com.uy/este-ano-no-se-modificara-el-huso-horario-en-uruguay/523760/
++# From Paul Eggert (2015-06-30):
++# Apparently restaurateurs complained that DST caused people to go to the beach
++# instead of out to dinner.
++# From Pablo Camargo (2015-07-13):
++# http://archivo.presidencia.gub.uy/sci/decretos/2015/06/cons_min_201.pdf
++# [dated 2015-06-29; repeals Decree 311/006 dated 2006-09-04]
++Rule Uruguay 2006 2014 - Oct Sun>=1 2:00 1:00 S
++Rule Uruguay 2007 2015 - Mar Sun>=8 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
+- -3:44:44 - MMT 1920 May 1 # Montevideo MT
+- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
++ -3:44:44 - MMT 1920 May 1 # Montevideo MT
++ -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
+ -3:00 Uruguay UY%sT
+
+ # Venezuela
+ #
++# From Paul Eggert (2015-07-28):
++# For the 1965 transition see Gaceta Oficial No. 27.619 (1964-12-15), p 205.533
++# http://www.pgr.gob.ve/dmdocuments/1964/27619.pdf
++#
+ # From John Stainforth (2007-11-28):
+ # ... the change for Venezuela originally expected for 2007-12-31 has
+ # been brought forward to 2007-12-09. The official announcement was
+@@ -1691,9 +1755,25 @@
+ # resolution publication)
+ # http://www.globovision.com/news.php?nid=72208
+
++# From Alexander Krivenyshev (2016-04-15):
++# https://actualidad.rt.com/actualidad/204758-venezuela-modificar-huso-horario-sequia-elnino
++#
++# From Paul Eggert (2016-04-15):
++# Clocks advance 30 minutes on 2016-05-01 at 02:30....
++# "'Venezuela's new time-zone: hours without light, hours without water,
++# hours of presidential broadcasts, hours of lines,' quipped comedian
++# Jean Mary Curró ...". See: Cawthorne A, Kai D. Venezuela scraps
++# half-hour time difference set by Chavez. Reuters 2016-04-15 14:50 -0400
++# http://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
++#
++# From Matt Johnson (2016-04-20):
++# ... published in the official Gazette [2016-04-18], here:
++# http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+- -4:30 - VET 1965 # Venezuela Time
+- -4:00 - VET 2007 Dec 9 03:00
+- -4:30 - VET
++ -4:30 - VET 1965 Jan 1 0:00 # Venezuela T.
++ -4:00 - VET 2007 Dec 9 3:00
++ -4:30 - VET 2016 May 1 2:30
++ -4:00 - VET
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -0,0 +1 @@
++2016i
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -17,8 +17,8 @@
+ # that of zone1970.tab.
+ #
+ # This table is intended as an aid for users, to help them select time
+-# zone data appropriate for their practical needs. It is not intended
+-# to take or endorse any position on legal or territorial claims.
++# zone data entries appropriate for their practical needs. It is not
++# intended to take or endorse any position on legal or territorial claims.
+ #
+ #country-
+ #code coordinates TZ comments
+@@ -30,22 +30,22 @@
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+ AO -0848+01314 Africa/Luanda
+-AQ -7750+16636 Antarctica/McMurdo McMurdo, South Pole, Scott (New Zealand time)
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -7750+16636 Antarctica/McMurdo New Zealand time - McMurdo, South Pole
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -56,17 +56,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AW +1230-06958 America/Aruba
+ AX +6006+01957 Europe/Mariehamn
+ AZ +4023+04951 Asia/Baku
+@@ -85,62 +85,63 @@
+ BO -1630-06809 America/La_Paz
+ BQ +120903-0681636 America/Kralendijk
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapa, E Para
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Para (east); Amapa
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Para
++BR -0226-05452 America/Santarem Para (west)
+ BR -0846-06354 America/Porto_Velho Rondonia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BW -2439+02555 Africa/Gaborone
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
++CD -0418+01518 Africa/Kinshasa Dem. Rep. of Congo (west)
++CD -1140+02728 Africa/Lubumbashi Dem. Rep. of Congo (east)
+ CF +0422+01835 Africa/Bangui
+ CG -0416+01517 Africa/Brazzaville
+ CH +4723+00832 Europe/Zurich
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -151,30 +152,31 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin most locations
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DE +4742+00841 Europe/Busingen Busingen
+ DJ +1136+04309 Africa/Djibouti
+ DK +5540+01235 Europe/Copenhagen
+ DM +1518-06124 America/Dominica
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galapagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+ ER +1520+03853 Africa/Asmara
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ ET +0902+03842 Africa/Addis_Ababa
+ FI +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -186,10 +188,10 @@
+ GG +4927-00232 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GM +1328-01639 Africa/Banjul
+ GN +0931-01343 Africa/Conakry
+ GP +1614-06132 America/Guadeloupe
+@@ -205,10 +207,10 @@
+ HR +4548+01558 Europe/Zagreb
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IM +5409-00428 Europe/Isle_of_Man
+@@ -234,10 +236,10 @@
+ KR +3733+12658 Asia/Seoul
+ KW +2920+04759 Asia/Kuwait
+ KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -256,12 +258,12 @@
+ ME +4226+01916 Europe/Podgorica
+ MF +1804-06305 America/Marigot
+ MG -1855+04731 Indian/Antananarivo
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+ MK +4159+02126 Europe/Skopje
+ ML +1239-00800 Africa/Bamako
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -273,20 +275,19 @@
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+ MW -1547+03500 Africa/Blantyre
+-MX +1924-09909 America/Mexico_City Central Time - most locations
+-MX +2105-08646 America/Cancun Central Time - Quintana Roo
++MX +1924-09909 America/Mexico_City Central Time
++MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo Leon, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo Leon, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahia de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
+ MZ -2558+03235 Africa/Maputo
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+@@ -299,7 +300,7 @@
+ NP +2743+08519 Asia/Kathmandu
+ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+-NZ -3652+17446 Pacific/Auckland most locations
++NZ -3652+17446 Pacific/Auckland New Zealand (most areas)
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+ OM +2336+05835 Asia/Muscat
+ PA +0858-07932 America/Panama
+@@ -307,7 +308,8 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
++PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+ PL +5215+02100 Europe/Warsaw
+@@ -316,7 +318,7 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+@@ -325,27 +327,32 @@
+ RE -2052+05528 Indian/Reunion
+ RO +4426+02606 Europe/Bucharest
+ RS +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ RW -0157+03004 Africa/Kigali
+ SA +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+@@ -384,45 +391,45 @@
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+ TZ -0648+03917 Africa/Dar_es_Salaam
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UG +0019+03225 Africa/Kampala
+ UM +1645-16931 Pacific/Johnston Johnston Atoll
+ UM +2813-17722 Pacific/Midway Midway Islands
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+ US +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VA +415408+0122711 Europe/Vatican
+ VC +1309-06114 America/St_Vincent
+ VE +1030-06656 America/Caracas
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -29,8 +29,8 @@
+ # most populous zones first, where that does not contradict (1).
+ #
+ # This table is intended as an aid for users, to help them select time
+-# zone data appropriate for their practical needs. It is not intended
+-# to take or endorse any position on legal or territorial claims.
++# zone data entries appropriate for their practical needs. It is not
++# intended to take or endorse any position on legal or territorial claims.
+ #
+ #country-
+ #codes coordinates TZ comments
+@@ -39,21 +39,21 @@
+ AF +3431+06912 Asia/Kabul
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -64,17 +64,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AZ +4023+04951 Asia/Baku
+ BB +1306-05937 America/Barbados
+ BD +2343+09025 Asia/Dhaka
+@@ -84,57 +84,58 @@
+ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapá, E Pará
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Pará (east); Amapá
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Pará
++BR -0226-05452 America/Santarem Pará (west)
+ BR -0846-06354 America/Porto_Velho Rondônia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+ CH,DE,LI +4723+00832 Europe/Zurich Swiss time
+ CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -144,25 +145,26 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW,AW,BQ,SX +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ,SK +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin Berlin time
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DK +5540+01235 Europe/Copenhagen
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galápagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ FI,AX +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -171,10 +173,10 @@
+ GF +0456-05220 America/Cayenne
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GR +3758+02343 Europe/Athens
+ GS -5416-03632 Atlantic/South_Georgia
+ GT +1438-09031 America/Guatemala
+@@ -185,10 +187,10 @@
+ HN +1406-08713 America/Tegucigalpa
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IN +2232+08822 Asia/Kolkata
+@@ -207,10 +209,10 @@
+ KI +0152-15720 Pacific/Kiritimati Line Islands
+ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -222,10 +224,10 @@
+ MA +3339-00735 Africa/Casablanca
+ MC +4342+00723 Europe/Monaco
+ MD +4700+02850 Europe/Chisinau
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -233,25 +235,24 @@
+ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+-MX +1924-09909 America/Mexico_City Central Time - most locations
+-MX +2105-08646 America/Cancun Central Time - Quintana Roo
++MX +1924-09909 America/Mexico_City Central Time
++MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo León, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo León, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
+-MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahía de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
++MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+ NF -2903+16758 Pacific/Norfolk
+-NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
++NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time
+ NI +1209-08617 America/Managua
+ NL +5222+00454 Europe/Amsterdam
+ NO,SJ +5955+01045 Europe/Oslo
+@@ -265,7 +266,8 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
++PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+ PL +5215+02100 Europe/Warsaw
+@@ -274,36 +276,41 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+ PY -2516-05740 America/Asuncion
+ QA,BH +2517+05132 Asia/Qatar
+-RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
++RE,TF -2052+05528 Indian/Reunion Réunion, Crozet, Scattered Islands
+ RO +4426+02606 Europe/Bucharest
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+@@ -315,8 +322,8 @@
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
+ TD +1207+01503 Africa/Ndjamena
+-TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
+-TH,KH,LA,VN +1345+10031 Asia/Bangkok
++TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul Island, Amsterdam Island
++TH,KH,LA,VN +1345+10031 Asia/Bangkok Indochina (most areas)
+ TJ +3835+06848 Asia/Dushanbe
+ TK -0922-17114 Pacific/Fakaofo
+ TL -0833+12535 Asia/Dili
+@@ -324,46 +331,47 @@
+ TN +3648+01011 Africa/Tunis
+ TO -2110-17510 Pacific/Tongatapu
+ TR +4101+02858 Europe/Istanbul
+-TT,AG,AI,BL,DM,GD,GP,MF,LC,KN,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
++TT,AG,AI,BL,DM,GD,GP,KN,LC,MF,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+-US,UM +211825-1575130 Pacific/Honolulu Hawaii time
++US,UM +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VE +1030-06656 America/Caracas
++VN +1045+10640 Asia/Ho_Chi_Minh Vietnam (south)
+ VU -1740+16825 Pacific/Efate
+ WF -1318-17610 Pacific/Wallis
+ WS -1350-17144 Pacific/Apia
+--- contrib/tzdata/zoneinfo2tdf.pl.orig
++++ contrib/tzdata/zoneinfo2tdf.pl
+@@ -0,0 +1,52 @@
++#! /usr/bin/perl -w
++
++# Courtesy Ken Pizzini.
++
++use strict;
++
++#This file released to the public domain.
++
++# Note: error checking is poor; trust the output only if the input
++# has been checked by zic.
++
++my $contZone = '';
++while (<>) {
++ my $origline = $_;
++ my @fields = ();
++ while (s/^\s*((?:"[^"]*"|[^\s#])+)//) {
++ push @fields, $1;
++ }
++ next unless @fields;
++
++ my $type = lc($fields[0]);
++ if ($contZone) {
++ @fields >= 3 or warn "bad continuation line";
++ unshift @fields, '+', $contZone;
++ $type = 'zone';
++ }
++
++ $contZone = '';
++ if ($type eq 'zone') {
++ # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ my $nfields = @fields;
++ $nfields >= 5 or warn "bad zone line";
++ if ($nfields > 6) {
++ #this splice is optional, depending on one's preference
++ #(one big date-time field, or componentized date and time):
++ splice(@fields, 5, $nfields-5, "@fields[5..$nfields-1]");
++ }
++ $contZone = $fields[1] if @fields > 5;
++ } elsif ($type eq 'rule') {
++ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++ @fields == 10 or warn "bad rule line";
++ } elsif ($type eq 'link') {
++ # Link TARGET LINK-NAME
++ @fields == 3 or warn "bad link line";
++ } elsif ($type eq 'leap') {
++ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
++ @fields == 7 or warn "bad leap line";
++ } else {
++ warn "Fubar at input line $.: $origline";
++ }
++ print join("\t", @fields), "\n";
++}
++native
+\ No newline at end of property
++*
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
diff --git a/share/security/patches/EN-16:20/tzdata-10.1.patch.asc b/share/security/patches/EN-16:20/tzdata-10.1.patch.asc
new file mode 100644
index 0000000000..de0582057f
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.1.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1qAAoJEO1n7NZdz2rnhg4QAJQe6cfJHpcCUhAyhyAnYgU8
+Oqi67i8fw+kKfkP8mRxLrMdtUXSokR+pAWmHjl+vNLm3cUYyeu1DL1GrcOxGNfcb
+CbyNcABUM5B4q7i+ql/HAavjOYi1G9IzibRCS4Zk6En5aork/V2PovtUdVyz+gwk
+APzJ42Ff703hg/KsNnbrrgPx7Bqu5OHoK6rtHLPAgh5M/TnX1BmseSLCIjWQNnKO
+iPYKHsIBTfG3NlvaAohzWnd6j/n61IsAy748BrDMchOR9WZRB3QNTeAiuvEBczku
+qBKG0wwKac3z8BnsoBWGd0snkCa1367sNHBUL1+xiVjKEQF/mVToHcuROSi+ddcz
+Mxjt+hf/C0IWFppzStVHP9xl8toE5ZhmpQcHhvkdKRRvBUOuRZHsCuS7HmLxIl9V
+0g1qKOfQPqx3L6j/rQBmY4PbkLIkaXt9NuvJbyVGtug02/ZMqI92Tzpnj/Eht3QJ
+afGrnIkj4IBLZ/l438ua/ohkiZD9jfboys9z57XJPe+ktPkBiIX3OIbHSypehkDG
+1HE+KNtuaVqd1bvRYw5hPAK9oAVzaYtgJtP2wDmol92DuIsWu4ZgXWbSEAhasxYy
+ersY42kFnSTe22lw5QQyVy9bw99YwRccvxHAOjph/ox8XvNQkn4Lj7zqhujLhJbd
+J5V+rqKKn7f+rc6b5zhc
+=X0Hm
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:20/tzdata-10.2.patch b/share/security/patches/EN-16:20/tzdata-10.2.patch
new file mode 100644
index 0000000000..6f4389002b
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.2.patch
@@ -0,0 +1,11263 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -0,0 +1,73 @@
++Contributing to the tz code and data
++
++The time zone database is by no means authoritative: governments
++change timekeeping rules erratically and sometimes with little
++warning, the data entries do not cover all of civil time before
++1970, and undoubtedly errors remain in the code and data. Feel
++free to fill gaps or fix mistakes, and please email improvements
++to tz@iana.org for use in the future.
++
++To email small changes, please run a POSIX shell command like
++'diff -u old/europe new/europe >myfix.patch', and attach
++myfix.patch to the email.
++
++For more-elaborate changes, please read the Theory file and browse
++the mailing list archives <http://mm.icann.org/pipermail/tz/> for
++examples of patches that tend to work well. Ideally, additions to
++data should contain commentary citing reliable sources as
++justification.
++
++Please submit changes against either the latest release in
++<ftp://ftp.iana.org/tz/> or the master branch of the experimental
++Git repository. If you use Git the following workflow may be helpful:
++
++ * Copy the experimental repository.
++
++ git clone https://github.com/eggert/tz.git
++ cd tz
++
++ * Get current with the master branch.
++
++ git checkout master
++ git pull
++
++ * Switch to a new branch for the changes. Choose a different
++ branch name for each change set.
++
++ git checkout -b mybranch
++
++ * Edit source files. Include commentary that justifies the
++ changes by citing reliable sources.
++
++ * Debug the changes, e.g.:
++
++ make check
++ make install
++ ./zdump -v America/Los_Angeles
++
++ * For each separable change, commit it in the new branch, e.g.:
++
++ git add northamerica
++ git commit
++
++ See recent 'git log' output for the commit-message style.
++
++ * Create patch files 0001-*, 0002-*, ...
++
++ git format-patch master
++
++ * After reviewing the patch files, send the patches to tz@iana.org
++ for others to review.
++
++ git send-email master
++
++ * Start anew by getting current with the master branch again
++ (the second step above).
++
++Please do not create issues or pull requests on GitHub, as the
++proper procedure for proposing and distributing patches is via
++email as illustrated above.
++
++-----
++
++This file is in the public domain.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -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.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -0,0 +1,793 @@
++# This file is in the public domain, so clarified as of
++# 2009-05-17 by Arthur David Olson.
++
++# Package name for the code distribution.
++PACKAGE= tzcode
++
++# Version number for the distribution, overridden in the 'tarballs' rule below.
++VERSION= unknown
++
++# Email address for bug reports.
++BUGEMAIL= tz@iana.org
++
++# Change the line below for your time zone (after finding the zone you want in
++# the time zone files, or adding it to a time zone file).
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -l rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for LOCALTIME.
++
++LOCALTIME= GMT
++
++# If you want something other than Eastern United States time as a template
++# for handling POSIX-style time zone environment variables,
++# change the line below (after finding the zone you want in the
++# time zone files, or adding it to a time zone file).
++# (When a POSIX-style environment variable is handled, the rules in the
++# template file are used to determine "spring forward" and "fall back" days and
++# times; the environment variable itself specifies UT offsets of standard and
++# summer time.)
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -p rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for POSIXRULES.
++# If you want POSIX compatibility, use "America/New_York".
++
++POSIXRULES= America/New_York
++
++# Also see TZDEFRULESTRING below, which takes effect only
++# if the time zone files cannot be accessed.
++
++# Everything gets put in subdirectories of. . .
++
++TOPDIR= /usr/local
++
++# "Compiled" time zone information is placed in the "TZDIR" directory
++# (and subdirectories).
++# Use an absolute path name for TZDIR unless you're just testing the software.
++
++TZDIR_BASENAME= zoneinfo
++TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
++
++# Types to try, as an alternative to time_t. int64_t should be first.
++TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
++
++# The "tzselect", "zic", and "zdump" commands get installed in. . .
++
++ETCDIR= $(TOPDIR)/etc
++
++# If you "make INSTALL", the "date" command gets installed in. . .
++
++BINDIR= $(TOPDIR)/bin
++
++# Manual pages go in subdirectories of. . .
++
++MANDIR= $(TOPDIR)/man
++
++# Library functions are put in an archive in LIBDIR.
++
++LIBDIR= $(TOPDIR)/lib
++
++# If you always want time values interpreted as "seconds since the epoch
++# (not counting leap seconds)", use
++# REDO= posix_only
++# below. If you always want right time values interpreted as "seconds since
++# the epoch" (counting leap seconds)", use
++# REDO= right_only
++# below. If you want both sets of data available, with leap seconds not
++# counted normally, use
++# REDO= posix_right
++# below. If you want both sets of data available, with leap seconds counted
++# normally, use
++# REDO= right_posix
++# below. POSIX mandates that leap seconds not be counted; for compatibility
++# with it, use "posix_only" or "posix_right".
++
++REDO= posix_right
++
++# If you want out-of-scope and often-wrong data from the file 'backzone', use
++# PACKRATDATA= backzone
++# To omit this data, use
++# PACKRATDATA=
++
++PACKRATDATA=
++
++# Since "." may not be in PATH...
++
++YEARISTYPE= ./yearistype
++
++# Non-default libraries needed to link.
++LDLIBS=
++
++# Add the following to the end of the "CFLAGS=" line as needed.
++# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r
++# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
++# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS)
++# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares
++# ctime_r and asctime_r incompatibly with the POSIX standard
++# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
++# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h"
++# -DHAVE_LINK=0 if your system lacks a link function
++# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
++# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
++# This defaults to 1 if a working localtime_rz seems to be available.
++# localtime_rz can make zdump significantly faster, but is nonstandard.
++# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
++# functions like 'link' or variables like 'tzname' required by POSIX
++# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h"
++# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l
++# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_STRDUP=0 if your system lacks the strdup function
++# -DHAVE_SYMLINK=0 if your system lacks the symlink function
++# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h"
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h"
++# -DHAVE_TZSET=0 if your system lacks a tzset function
++# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?)
++# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT
++# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater
++# than what POSIX specifies, assuming local time is UT.
++# For example, N is 252460800 on AmigaOS.
++# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1
++# if you do not want run time warnings about formats that may cause
++# year 2000 grief
++# -Dssize_t=long on ancient hosts that lack ssize_t
++# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires;
++# not needed by the main-program tz code, which is single-threaded.
++# Append other compiler flags as needed, e.g., -pthread on GNU/Linux.
++# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t
++# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz"
++# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
++# the default is system-supplied, typically "/usr/lib/locale"
++# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
++# DST transitions if the time zone files cannot be accessed
++# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems
++# other than simply getting garbage data
++# -DUSE_LTZ=0 to build zdump with the system time zone library
++# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
++# -DZIC_MAX_ABBR_LEN_WO_WARN=3
++# (or some other number) to set the maximum time zone abbreviation length
++# that zic will accept without a warning (the default is 6)
++# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
++GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
++ -Wall -Wextra \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement \
++ -Wdouble-promotion \
++ -Wformat=2 -Winit-self -Wjump-misses-init \
++ -Wlogical-op -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \
++ -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \
++ -Wsuggest-attribute=pure -Wtrampolines \
++ -Wunused -Wwrite-strings \
++ -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
++ -Wno-type-limits -Wno-unused-parameter
++#
++# If you want to use System V compatibility code, add
++# -DUSG_COMPAT
++# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight"
++# variables to be kept up-to-date by the time conversion functions. Neither
++# "timezone" nor "daylight" is described in X3J11's work.
++#
++# If your system has a "GMT offset" field in its "struct tm"s
++# (or if you decide to add such a field in your system's "time.h" file),
++# add the name to a define such as
++# -DTM_GMTOFF=tm_gmtoff
++# to the end of the "CFLAGS=" line. If not defined, the code attempts to
++# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this.
++# Similarly, if your system has a "zone abbreviation" field, define
++# -DTM_ZONE=tm_zone
++# and define NO_TM_ZONE to suppress any guessing. These two fields are not
++# required by POSIX, but are widely available on GNU/Linux and BSD systems.
++#
++# If you want functions that were inspired by early versions of X3J11's work,
++# add
++# -DSTD_INSPIRED
++# to the end of the "CFLAGS=" line. This arranges for the functions
++# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
++# "posix2time", and "time2posix" to be added to the time conversion library.
++# "tzsetwall" is like "tzset" except that it arranges for local wall clock
++# time (rather than the time specified in the TZ environment variable)
++# to be used.
++# "offtime" is like "gmtime" except that it accepts a second (long) argument
++# that gives an offset to add to the time_t when converting it.
++# "timelocal" is equivalent to "mktime".
++# "timegm" is like "timelocal" except that it turns a struct tm into
++# a time_t using UT (rather than local time as "timelocal" does).
++# "timeoff" is like "timegm" except that it accepts a second (long) argument
++# that gives an offset to use when converting to a time_t.
++# "posix2time" and "time2posix" are described in an included manual page.
++# X3J11's work does not describe any of these functions.
++# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0.
++# These functions may well disappear in future releases of the time
++# conversion package.
++#
++# If you don't want functions that were inspired by NetBSD, add
++# -DNETBSD_INSPIRED=0
++# to the end of the "CFLAGS=" line. Otherwise, the functions
++# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
++# time library, and if STD_INSPIRED is also defined the functions
++# "posix2time_z" and "time2posix_z" are added as well.
++# The functions ending in "_z" (or "_rz") are like their unsuffixed
++# (or suffixed-by-"_r") counterparts, except with an extra first
++# argument of opaque type timezone_t that specifies the time zone.
++# "tzalloc" allocates a timezone_t value, and "tzfree" frees it.
++#
++# If you want to allocate state structures in localtime, add
++# -DALL_STATE
++# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc.
++#
++# If you want an "altzone" variable (a la System V Release 3.1), add
++# -DALTZONE
++# to the end of the "CFLAGS=" line.
++# This variable is not described in X3J11's work.
++#
++# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put
++# out by the National Institute of Standards and Technology
++# which claims to test C and Posix conformance. If you want to pass PCTS, add
++# -DPCTS
++# to the end of the "CFLAGS=" line.
++#
++# If you want strict compliance with XPG4 as of 1994-04-09, add
++# -DXPG4_1994_04_09
++# to the end of the "CFLAGS=" line. This causes "strftime" to always return
++# 53 as a week number (rather than 52 or 53) for those days in January that
++# before the first Monday in January when a "%V" format is used and January 1
++# falls on a Friday, Saturday, or Sunday.
++
++CFLAGS=
++
++# Linker flags. Default to $(LFLAGS) for backwards compatibility
++# to release 2012h and earlier.
++
++LDFLAGS= $(LFLAGS)
++
++# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in
++# submake command lines. The default is no leap seconds.
++
++LEAPSECONDS=
++
++# The zic command and its arguments.
++
++zic= ./zic
++ZIC= $(zic) $(ZFLAGS)
++
++ZFLAGS=
++
++# How to use zic to install tz binary files.
++
++ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++
++# The name of a Posix-compliant 'awk' on your system.
++AWK= awk
++
++# The full path name of a Posix-compliant shell, preferably one that supports
++# the Korn shell's 'select' statement as an extension.
++# These days, Bash is the most popular.
++# It should be OK to set this to /bin/sh, on platforms where /bin/sh
++# lacks 'select' or doesn't completely conform to Posix, but /bin/bash
++# is typically nicer if it works.
++KSHELL= /bin/bash
++
++# The path where SGML DTDs are kept and the catalog file(s) to use when
++# validating. The default should work on both Debian and Red Hat.
++SGML_TOPDIR= /usr
++SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
++SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
++SGML_CATALOG_FILES= \
++ $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
++
++# The name, arguments and environment of a program to validate your web pages.
++# See <http://openjade.sourceforge.net/doc/> for a validator, and
++# <https://validator.w3.org/source/> for a validation library.
++VALIDATE = nsgmls
++VALIDATE_FLAGS = -s -B -wall -wno-unused-param
++VALIDATE_ENV = \
++ SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \
++ SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \
++ SP_CHARSET_FIXED=YES \
++ SP_ENCODING=UTF-8
++
++# This expensive test requires USE_LTZ.
++# To suppress it, define this macro to be empty.
++CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
++
++# SAFE_CHAR is a regular expression that matches a safe character.
++# Some parts of this distribution are limited to safe characters;
++# others can use any UTF-8 character.
++# For now, the safe characters are a safe subset of ASCII.
++# The caller must set the shell variable 'sharp' to the character '#',
++# since Makefile macros cannot contain '#'.
++# TAB_CHAR is a single tab character, in single quotes.
++TAB_CHAR= ' '
++SAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@'
++SAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`'
++SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~'
++SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
++SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]'
++
++# OK_CHAR matches any character allowed in the distributed files.
++# This is the same as SAFE_CHAR, except that multibyte letters are
++# also allowed so that commentary can contain people's names and quote
++# non-English sources. For non-letters the sources are limited to
++# ASCII renderings for the convenience of maintainers whose text editors
++# mishandle UTF-8 by default (e.g., XEmacs 21.4.22).
++OK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]'
++
++# SAFE_LINE matches a line of safe characters.
++# SAFE_SHARP_LINE is similar, except any OK character can follow '#';
++# this is so that comments can contain non-ASCII characters.
++# OK_LINE matches a line of OK characters.
++SAFE_LINE= '^'$(SAFE_CHAR)'*$$'
++SAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$'
++OK_LINE= '^'$(OK_CHAR)'*$$'
++
++# Flags to give 'tar' when making a distribution.
++# Try to use flags appropriate for GNU tar.
++GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
++TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
++ then echo $(GNUTARFLAGS); \
++ else :; \
++ fi`
++
++# Flags to give 'gzip' when making a distribution.
++GZIPFLAGS= -9n
++
++###############################################################################
++
++#MAKE= make
++
++cc= cc
++CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++
++AR= ar
++
++# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib.
++RANLIB= :
++
++TZCOBJS= zic.o
++TZDOBJS= zdump.o localtime.o asctime.o
++DATEOBJS= date.o localtime.o strftime.o asctime.o
++LIBSRCS= localtime.c asctime.c difftime.c
++LIBOBJS= localtime.o asctime.o difftime.o
++HEADERS= tzfile.h private.h
++NONLIBSRCS= zic.c zdump.c
++NEWUCBSRCS= date.c strftime.c
++SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
++ tzselect.ksh workman.sh
++MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
++ tzfile.5 tzselect.8 zic.8 zdump.8
++MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
++ time2posix.3.txt \
++ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \
++ date.1.txt
++COMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version
++WEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm
++DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
++PRIMARY_YDATA= africa antarctica asia australasia \
++ europe northamerica southamerica
++YDATA= $(PRIMARY_YDATA) pacificnew etcetera backward
++NDATA= systemv factory
++TDATA= $(YDATA) $(NDATA)
++ZONETABLES= zone1970.tab zone.tab
++TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++LEAP_DEPS= leapseconds.awk leap-seconds.list
++DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
++ leap-seconds.list yearistype.sh
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
++MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
++TZS_YEAR= 2050
++TZS= to$(TZS_YEAR).tzs
++TZS_NEW= to$(TZS_YEAR)new.tzs
++TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
++ private.h tzfile.h zdump.c zic.c
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
++
++# Consult these files when deciding whether to rebuild the 'version' file.
++# This list is not the same as the output of 'git ls-files', since
++# .gitignore is not distributed.
++VERSION_DEPS= \
++ CONTRIBUTING LICENSE Makefile NEWS README Theory \
++ africa antarctica asctime.c asia australasia \
++ backward backzone \
++ checklinks.awk checktab.awk \
++ date.1 date.c difftime.c \
++ etcetera europe factory iso3166.tab \
++ leap-seconds.list leapseconds.awk localtime.c \
++ newctime.3 newstrftime.3 newtzset.3 northamerica \
++ pacificnew private.h \
++ southamerica strftime.c systemv \
++ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
++ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
++ workman.sh yearistype.sh \
++ zdump.8 zdump.c zic.8 zic.c \
++ zone.tab zone1970.tab zoneinfo2tdf.pl
++
++# And for the benefit of csh users on systems that assume the user
++# shell should be used to handle commands in Makefiles. . .
++
++SHELL= /bin/sh
++
++all: tzselect yearistype zic zdump libtz.a $(TABDATA)
++
++ALL: all date $(ENCHILADA)
++
++install: all $(DATA) $(REDO) $(MANS)
++ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
++ $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
++ $(DESTDIR)$(MANDIR)/man8
++ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
++ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp libtz.a $(DESTDIR)$(LIBDIR)/.
++ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
++ cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
++ cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
++ cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
++
++INSTALL: ALL install date.1
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp date $(DESTDIR)$(BINDIR)/.
++ cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
++
++version: $(VERSION_DEPS)
++ { (type git) >/dev/null 2>&1 && \
++ V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
++ --abbrev=7 --dirty` || \
++ V=$(VERSION); } && \
++ printf '%s\n' "$$V" >$@.out
++ mv $@.out $@
++
++version.h: version
++ VERSION=`cat version` && printf '%s\n' \
++ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
++ "static char const TZVERSION[]=\"$$VERSION\";" \
++ 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \
++ >$@.out
++ mv $@.out $@
++
++zdump: $(TZDOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
++
++zic: $(TZCOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
++
++yearistype: yearistype.sh
++ cp yearistype.sh yearistype
++ chmod +x yearistype
++
++leapseconds: $(LEAP_DEPS)
++ $(AWK) -f leapseconds.awk leap-seconds.list >$@.out
++ mv $@.out $@
++
++# Arguments to pass to submakes of install_data.
++# They can be overridden by later submake arguments.
++INSTALLARGS = \
++ DESTDIR=$(DESTDIR) \
++ LEAPSECONDS='$(LEAPSECONDS)' \
++ PACKRATDATA='$(PACKRATDATA)' \
++ TZDIR=$(TZDIR) \
++ YEARISTYPE=$(YEARISTYPE) \
++ ZIC='$(ZIC)'
++
++# 'make install_data' installs one set of tz binary files.
++# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc.
++install_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA)
++ $(ZIC_INSTALL) $(TDATA)
++ $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA)
++
++posix_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
++
++right_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \
++ install_data
++
++# In earlier versions of this makefile, the other two directories were
++# subdirectories of $(TZDIR). However, this led to configuration errors.
++# For example, with posix_right under the earlier scheme,
++# TZ='right/Australia/Adelaide' got you localtime with leap seconds,
++# but gmtime without leap seconds, which led to problems with applications
++# like sendmail that subtract gmtime from localtime.
++# Therefore, the other two directories are now siblings of $(TZDIR).
++# You must replace all of $(TZDIR) to switch from not using leap seconds
++# to using them, or vice versa.
++right_posix: right_only
++ rm -fr $(DESTDIR)$(TZDIR)-leaps
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++
++posix_right: posix_only
++ rm -fr $(DESTDIR)$(TZDIR)-posix
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++
++# This obsolescent rule is present for backwards compatibility with
++# tz releases 2014g through 2015g. It should go away eventually.
++posix_packrat:
++ $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only
++
++zones: $(REDO)
++
++$(TZS_NEW): $(TDATA) zdump zic
++ mkdir -p tzs.dir
++ $(zic) -d tzs.dir $(TDATA)
++ $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
++ $(TDATA) | LC_ALL=C sort >$@.out
++ wd=`pwd` && \
++ zones=`$(AWK) -v wd="$$wd" \
++ '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ | LC_ALL=C sort` && \
++ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
++ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
++ rm -fr tzs.dir $@.out
++ mv $@.sed.out $@
++
++# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
++# If it exists but 'make check_tzs' fails, a maintainer should inspect the
++# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
++$(TZS):
++ $(MAKE) force_tzs
++
++force_tzs: $(TZS_NEW)
++ cp $(TZS_NEW) $(TZS)
++
++libtz.a: $(LIBOBJS)
++ $(AR) ru $@ $(LIBOBJS)
++ $(RANLIB) $@
++
++date: $(DATEOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
++
++tzselect: tzselect.ksh version
++ VERSION=`cat version` && sed \
++ -e 's|#!/bin/bash|#!$(KSHELL)|g' \
++ -e 's|AWK=[^}]*|AWK=$(AWK)|g' \
++ -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
++ -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
++ -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
++ -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \
++ <$@.ksh >$@.out
++ chmod +x $@.out
++ mv $@.out $@
++
++check: check_character_set check_white_space check_links check_sorted \
++ check_tables check_tzs check_web
++
++check_character_set: $(ENCHILADA)
++ LC_ALL=en_US.utf8 && export LC_ALL && \
++ sharp='#' && \
++ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
++ $(MISC) $(SOURCES) $(WEB_PAGES) \
++ CONTRIBUTING LICENSE Makefile README version && \
++ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
++ leapseconds yearistype.sh zone.tab && \
++ ! grep -Env $(OK_LINE) $(ENCHILADA)
++
++check_white_space: $(ENCHILADA)
++ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
++ ! grep -En "$$pat" $(ENCHILADA)
++ ! grep -n '[[:space:]]$$' $(ENCHILADA)
++
++CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
++
++check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
++ $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
++ $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
++ LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
++ LC_ALL=C sort -cu
++
++check_links: checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk $(TDATA)
++
++check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
++ for tab in $(ZONETABLES); do \
++ $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \
++ || exit; \
++ done
++
++check_tzs: $(TZS) $(TZS_NEW)
++ diff -u $(TZS) $(TZS_NEW)
++
++check_web: $(WEB_PAGES)
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++
++clean_misc:
++ rm -f core *.o *.out \
++ date tzselect version.h zdump zic yearistype libtz.a
++clean: clean_misc
++ rm -fr *.dir tzdb-*/ $(TZS_NEW)
++
++maintainer-clean: clean
++ @echo 'This command is intended for maintainers to use; it'
++ @echo 'deletes files that may need special tools to rebuild.'
++ rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
++
++names:
++ @echo $(ENCHILADA)
++
++public: check check_public $(CHECK_TIME_T_ALTERNATIVES) \
++ tarballs signatures
++
++date.1.txt: date.1
++newctime.3.txt: newctime.3
++newstrftime.3.txt: newstrftime.3
++newtzset.3.txt: newtzset.3
++time2posix.3.txt: time2posix.3
++tzfile.5.txt: tzfile.5
++tzselect.8.txt: tzselect.8
++zdump.8.txt: zdump.8
++zic.8.txt: zic.8
++
++$(MANTXTS): workman.sh
++ LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out
++ mv $@.out $@
++
++# Set the time stamps to those of the git repository, if available,
++# and if the files have not changed since then.
++# This uses GNU 'touch' syntax 'touch -d@N FILE',
++# where N is the number of seconds since 1970.
++# If git or GNU 'touch' is absent, don't bother to sync with git timestamps.
++# Also, set the timestamp of each prebuilt file like 'leapseconds'
++# to be the maximum of the files it depends on.
++set-timestamps.out: $(ENCHILADA)
++ rm -f $@
++ if (type git) >/dev/null 2>&1 && \
++ files=`git ls-files $(ENCHILADA)` && \
++ touch -md @1 test.out; then \
++ rm -f test.out && \
++ for file in $$files; do \
++ if git diff --quiet $$file; then \
++ time=`git log -1 --format='tformat:%ct' $$file` && \
++ touch -cmd @$$time $$file; \
++ else \
++ echo >&2 "$$file: warning: does not match repository"; \
++ fi || exit; \
++ done; \
++ fi
++ touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds
++ for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \
++ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
++ exit; \
++ done
++ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
++ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
++ touch $@
++
++# The zics below ensure that each data file can stand on its own.
++# We also do an all-files run to catch links to links.
++
++check_public:
++ $(MAKE) maintainer-clean
++ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
++ mkdir -p public.dir
++ for i in $(TDATA) ; do \
++ $(zic) -v -d public.dir $$i 2>&1 || exit; \
++ done
++ $(zic) -v -d public.dir $(TDATA)
++ rm -fr public.dir
++
++# Check that the code works under various alternative
++# implementations of time_t.
++check_time_t_alternatives:
++ if diff -q Makefile Makefile 2>/dev/null; then \
++ quiet_option='-q'; \
++ else \
++ quiet_option=''; \
++ fi && \
++ wd=`pwd` && \
++ zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
++ for type in $(TIME_T_ALTERNATIVES); do \
++ mkdir -p time_t.dir/$$type && \
++ $(MAKE) clean_misc && \
++ $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \
++ CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
++ REDO='$(REDO)' \
++ install && \
++ diff $$quiet_option -r \
++ time_t.dir/int64_t/etc/zoneinfo \
++ time_t.dir/$$type/etc/zoneinfo && \
++ case $$type in \
++ int32_t) range=-2147483648,2147483647;; \
++ uint32_t) range=0,4294967296;; \
++ int64_t) continue;; \
++ *u*) range=0,10000000000;; \
++ *) range=-10000000000,10000000000;; \
++ esac && \
++ echo checking $$type zones ... && \
++ time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/int64_t.out && \
++ time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/$$type.out && \
++ diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
++ || exit; \
++ done
++ rm -fr time_t.dir
++
++tarballs traditional_tarballs signatures traditional_signatures: version
++ VERSION=`cat version` && \
++ $(MAKE) VERSION="$$VERSION" $@_version
++
++tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
++traditional_tarballs_version: \
++ tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
++signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
++traditional_signatures_version: \
++ tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
++
++tzcode$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - \
++ $(COMMON) $(DOCS) $(SOURCES) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdata$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdb-$(VERSION).tar.lz: set-timestamps.out
++ rm -fr tzdb-$(VERSION)
++ mkdir tzdb-$(VERSION)
++ ln $(ENCHILADA) tzdb-$(VERSION)
++ touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION)
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out
++ mv $@.out $@
++
++tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
++ gpg --armor --detach-sign $?
++
++typecheck:
++ $(MAKE) clean
++ for i in "long long" unsigned; \
++ do \
++ $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \
++ ./zdump -v Europe/Rome ; \
++ $(MAKE) clean ; \
++ done
++
++zonenames: $(TDATA)
++ @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++
++asctime.o: private.h tzfile.h
++date.o: private.h
++difftime.o: private.h
++localtime.o: private.h tzfile.h
++strftime.o: private.h tzfile.h
++zdump.o: version.h
++zic.o: private.h tzfile.h version.h
++
++.KEEP_STATE:
++
++.PHONY: ALL INSTALL all
++.PHONY: check check_character_set check_links
++.PHONY: check_public check_sorted check_tables
++.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
++.PHONY: clean clean_misc force_tzs
++.PHONY: install install_data maintainer-clean names
++.PHONY: posix_only posix_packrat posix_right
++.PHONY: public right_only right_posix signatures signatures_version
++.PHONY: tarballs tarballs_version typecheck
++.PHONY: zonenames zones
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -0,0 +1,3782 @@
++News for the tz database
++
++Release 2016i - 2016-11-01 23:19:52 -0700
++
++ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
++ reintroduces DST on 2016-11-06.
++
++ Changes to future time stamps
++
++ Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
++ 2017-01-15 at 03:00. Assume future observances in Tonga will be
++ from the first Sunday in November through the third Sunday in
++ January, like Fiji. (Thanks to Pulu ʻAnau.) Switch to numeric
++ time zone abbreviations for this zone.
++
++ Changes to past and future time stamps
++
++ Northern Cyprus is now +03 year round, causing a split in Cyprus
++ time zones starting 2016-10-30 at 04:00. This creates a zone
++ Asia/Famagusta. (Thanks to Even Scharning and Matt Johnson.)
++
++ Antarctica/Casey switched from +08 to +11 on 2016-10-22.
++ (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Several corrections were made for pre-1975 time stamps in Italy.
++ These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
++ Europe/Vatican.
++
++ First, the 1893-11-01 00:00 transition in Italy used the new UT
++ offset (+01), not the old (+00:49:56). (Thanks to Michael
++ Deckers.)
++
++ Second, rules for daylight saving in Italy were changed to agree
++ with Italy's National Institute of Metrological Research (INRiM)
++ except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
++ Inglis, and Michael Deckers):
++
++ The 1916-06-03 transition was at 24:00, not 00:00.
++
++ The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
++ 00:00, not 01:00.
++
++ The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
++ 01:00.
++
++ The 1944-09-17 transition was at 03:00, not 01:00. This
++ particular change is taken from Italian law as INRiM's table,
++ (which says 02:00) appears to have a typo here. Also, keep the
++ 1944-04-03 transition for Europe/Rome, as Rome was controlled by
++ Germany then.
++
++ The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
++ not 00:00.
++
++ Changes to code
++
++ The code should now be buildable on AmigaOS merely by setting the
++ appropriate Makefile variables. (From a patch by Carsten Larsen.)
++
++
++Release 2016h - 2016-10-19 23:17:57 -0700
++
++ Changes to future time stamps
++
++ Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
++ 2016-10-21 at 00:00. (Thanks to Sharef Mustafa.) Predict that
++ future fall transitions will be on the last Saturday of October
++ at 01:00, which is consistent with predicted spring transitions
++ on the last Saturday of March. (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ In Turkey, transitions in 1986-1990 were at 01:00 standard time
++ not at 02:00, and the spring 1994 transition was on March 20, not
++ March 27. (Thanks to Kıvanç Yazan.)
++
++ Changes to past and future time zone abbreviations
++
++ Asia/Colombo now uses numeric time zone abbreviations like "+0530"
++ instead of alphabetic ones like "IST" and "LKT". Various
++ English-language sources use "IST", "LKT" and "SLST", with no
++ working consensus. (Usage of "SLST" mentioned by Sadika
++ Sumanapala.)
++
++ Changes to code
++
++ zic no longer mishandles relativizing file names when creating
++ symbolic links like /etc/localtime, when these symbolic links
++ are outside the usual directory hierarchy. This fixes a bug
++ introduced in 2016g. (Problem reported by Andreas Stieger.)
++
++ Changes to build procedure
++
++ New rules 'traditional_tarballs' and 'traditional_signatures' for
++ building just the traditional-format distribution. (Requested by
++ Deborah Goldsmith.)
++
++ The file 'version' is now put into the tzdata tarball too.
++ (Requested by Howard Hinnant.)
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now has a section on interface stability.
++ (Requested by Paul Koning.) It also mentions features like
++ tm_zone and localtime_rz that have long been supported by the
++ reference code.
++
++ tz-link.htm has improved coverage of time zone boundaries suitable
++ for geolocation. (Thanks to heads-ups from Evan Siroky and Matt
++ Johnson.)
++
++ The US commentary now mentions Allen and the "day of two noons".
++
++ The Fiji commentary mentions the government's 2016-10-03 press
++ release. (Thanks to Raymond Kumar.)
++
++
++Release 2016g - 2016-09-13 08:56:38 -0700
++
++ Changes to future time stamps
++
++ Turkey switched from EET/EEST (+02/+03) to permanent +03,
++ effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather
++ than an invented abbreviation for the new time.
++
++ New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
++ (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ For America/Los_Angeles, spring-forward transition times have been
++ corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
++ 1950-1966.
++
++ For zones using Soviet time on 1919-07-01, transitions to UT-based
++ time were at 00:00 UT, not at 02:00 local time. The affected
++ zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
++ Europe/Ulyanovsk. (Thanks to Alexander Belopolsky.)
++
++ Changes to past and future time zone abbreviations
++
++ The Factory zone now uses the time zone abbreviation -00 instead
++ of a long English-language string, as -00 is now the normal way to
++ represent an undefined time zone.
++
++ Several zones in Antarctica and the former Soviet Union, along
++ with zones intended for ships at sea that cannot use POSIX TZ
++ strings, now use numeric time zone abbreviations instead of
++ invented or obsolete alphanumeric abbreviations. The affected
++ zones are Antarctica/Casey, Antarctica/Davis,
++ Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
++ Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
++ Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
++ Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
++ Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
++ Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
++ Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
++ Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
++ Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
++ Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
++ Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
++ Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
++ Europe/Minsk, Europe/Samara, Europe/Volgograd, and
++ Indian/Kerguelen. For Europe/Moscow the invented abbreviation MSM
++ was replaced by +05, whereas MSK and MSD were kept as they are not
++ our invention and are widely used.
++
++ Changes to zone names
++
++ Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
++ (Thanks to David Massoud.)
++
++ Changes to code
++
++ zic no longer generates binary files containing POSIX TZ-like
++ strings that disagree with the local time type after the last
++ explicit transition in the data. This fixes a bug with
++ Africa/Casablanca and Africa/El_Aaiun in some year-2037 time
++ stamps on the reference platform. (Thanks to Alexander Belopolsky
++ for reporting the bug and suggesting a way forward.)
++
++ If the installed localtime and/or posixrules files are symbolic
++ links, zic now keeps them symbolic links when updating them, for
++ compatibility with platforms like OpenSUSE where other programs
++ configure these files as symlinks.
++
++ zic now avoids hard linking to symbolic links, avoids some
++ unnecessary mkdir and stat system calls, and uses shorter file
++ names internally.
++
++ zdump has a new -i option to generate transitions in a
++ more-compact but still human-readable format. This option is
++ experimental, and the output format may change in future versions.
++ (Thanks to Jon Skeet for suggesting that an option was needed,
++ and thanks to Tim Parenti and Chris Rovick for further comments.)
++
++ Changes to build procedure
++
++ An experimental distribution format is available, in addition
++ to the traditional format which will continue to be distributed.
++ The new format is a tarball tzdb-VERSION.tar.lz with signature
++ file tzdb-VERSION.tar.lz.asc. It unpacks to a top-level directory
++ tzdb-VERSION containing the code and data of the traditional
++ two-tarball format, along with extra data that may be useful.
++ (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
++ for comments about the experimental format.)
++
++ The release version number is now more accurate in the usual case
++ where releases are built from a Git repository. For example, if
++ 23 commits and some working-file changes have been made since
++ release 2016g, the version number is now something like
++ '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
++ Official releases uses the same version number format as before,
++ e.g., '2016g'. To support the more-accurate version number, its
++ specification has moved from a line in the Makefile to a new
++ source file 'version'.
++
++ The experimental distribution contains a file to2050.tzs that
++ contains what should be the output of 'zdump -i -c 2050' on
++ primary zones. If this file is available, 'make check' now checks
++ that zdump generates this output.
++
++ 'make check_web' now works on Fedora-like distributions.
++
++ Changes to documentation and commentary
++
++ tzfile.5 now documents the new restriction on POSIX TZ-like
++ strings that is now implemented by zic.
++
++ Comments now cite URLs for some 1917-1921 Russian DST decrees.
++ (Thanks to Alexander Belopolsky.)
++
++ tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
++ (thanks to Meno Hochschild) and ThreeTen-Extra, and its
++ description of Java 8 has been brought up to date (thanks to
++ Stephen Colebourne). Its description of local time on Mars has
++ been updated to match current practice, and URLs have been updated
++ and some obsolete ones removed.
++
++
++Release 2016f - 2016-07-05 16:26:51 +0200
++
++ 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.)
++
++
++Release 2016e - 2016-06-14 08:46:16 -0700
++
++ Changes affecting future time stamps
++
++ Africa/Cairo observes DST in 2016 from July 7 to the end of October.
++ Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
++ For future years, guess April's last Thursday to October's last
++ Thursday except for Ramadan.
++
++ Changes affecting past time stamps
++
++ Locations while uninhabited now use '-00', not 'zzz', as a
++ placeholder time zone abbreviation. This is inspired by Internet
++ RFC 3339 and is more consistent with numeric time zone
++ abbreviations already used elsewhere. The change affects several
++ arctic and antarctic locations, e.g., America/Cambridge_Bay before
++ 1920 and Antarctica/Troll before 2005.
++
++ Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
++ at 03:00, not 23:00 the previous day. (Thanks to Michael Deckers.)
++
++ Changes to code
++
++ zic now outputs a dummy transition at time 2**31 - 1 in zones
++ whose POSIX-style TZ strings contain a '<'. This mostly works
++ around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
++ (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm says why governments should give plenty of notice for
++ time zone or DST changes, and refers to Matt Johnson's blog post.
++
++ tz-link.htm mentions Tzdata for Elixir. (Thanks to Matt Johnson.)
++
++
++Release 2016d - 2016-04-17 22:50:29 -0700
++
++ Changes affecting future time stamps
++
++ America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
++ (Thanks to Alexander Krivenyshev for the heads-up.)
++
++ Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
++ (Thanks to Alexander Krivenyshev and Matt Johnson.)
++
++ New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
++ Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
++ at 02:00. (Thanks to Stepan Golosunov.)
++
++ Changes affecting past time stamps
++
++ New zone Europe/Kirov, split off from Europe/Volgograd. It covers
++ Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
++ 1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
++ the same change. (Thanks to Stepan Golosunov.)
++
++ Russia and nearby locations had daylight-saving transitions on
++ 1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
++ 1992-03-28 at 23:00 and 1992-09-26 at 23:00. (Thanks to Stepan
++ Golosunov.)
++
++ Many corrections to historical time in Kazakhstan from 1991
++ through 2005. (Thanks to Stepan Golosunov.) Replace Kazakhstan's
++ invented time zone abbreviations with numeric abbreviations.
++
++ Changes to commentary
++
++ Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
++
++
++Release 2016c - 2016-03-23 00:51:27 -0700
++
++ Changes affecting future time stamps
++
++ Azerbaijan no longer observes DST. (Thanks to Steffen Thorsen.)
++
++ Chile reverts from permanent to seasonal DST. (Thanks to Juan
++ Correa for the heads-up, and to Tim Parenti for corrections.)
++ Guess that future transitions are August's and May's second
++ Saturdays at 24:00 mainland time. Also, call the period from
++ 2014-09-07 through 2016-05-14 daylight saving time instead of
++ standard time, as that seems more appropriate now.
++
++ Changes affecting past time stamps
++
++ Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
++ +02/+03 on 1989-03-26, not 1991-03-31. Europe/Volgograd changed
++ from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to commentary
++
++ Several updates and URLs for historical and proposed Russian changes.
++ (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
++
++
++Release 2016b - 2016-03-12 17:30:14 -0800
++
++ Compatibility note
++
++ Starting with release 2016b, some data entries cause zic implementations
++ derived from tz releases 2005j through 2015e to issue warnings like
++ "time zone abbreviation differs from POSIX standard (+03)".
++ These warnings should not otherwise affect zic's output and can safely be
++ ignored on today's platforms, as the warnings refer to a restriction in
++ POSIX.1-1988 that was removed in POSIX.1-2001. One way to suppress the
++ warnings is to upgrade to zic derived from tz releases 2015f and later.
++
++ Changes affecting future time stamps
++
++ New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
++ Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
++ 2016-03-27 at 02:00 local time. They need distinct zones since their
++ post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and
++ Altai Republic, Russia, which will switch from +06 to +07 on the same date
++ and local time. The Astrakhan change is already official; the others have
++ passed the first reading in the State Duma and are extremely likely.
++ Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
++ and Stepan Golosunov for followup.)
++
++ As a trial of a new system that needs less information to be made up,
++ the new zones use numeric time zone abbreviations like "+04"
++ instead of invented abbreviations like "ASTT".
++
++ Haiti will not observe DST in 2016. (Thanks to Jean Antoine via
++ Steffen Thorsen.)
++
++ Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
++ (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
++ Saturday at 01:00, not March's last Friday at 24:00.
++
++ Changes affecting past time stamps
++
++ Europe/Chisinau observed DST during 1990, and switched from +04 to
++ +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
++ (Thanks to Stepan Golosunov.)
++
++ 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
++ KUYT/KUYST. (Thanks to Stepan Golosunov.)
++
++ Changes to code
++
++ tzselect's diagnostics and checking, and checktab.awk's checking,
++ have been improved. (Thanks to J William Piggott.)
++
++ tzcode now builds under MinGW. (Thanks to Ian Abbott and Esben Haabendal.)
++
++ tzselect now tests Julian-date TZ settings more accurately.
++ (Thanks to J William Piggott.)
++
++ Changes to commentary
++
++ Comments in zone tables have been improved. (Thanks to J William Piggott.)
++
++ tzselect again limits its menu comments so that menus fit on a
++ 24x80 alphanumeric display.
++
++ A new web page tz-how-to.html. (Thanks to Bill Seymour.)
++
++ In the Theory file, the description of possible time zone abbreviations in
++ tzdata has been cleaned up, as the old description was unclear and
++ inconsistent. (Thanks to Alain Mouette for reporting the problem.)
++
++
++Release 2016a - 2016-01-26 23:28:02 -0800
++
++ Changes affecting future time stamps
++
++ America/Cayman will not observe daylight saving this year after all.
++ Revert our guess that it would. (Thanks to Matt Johnson.)
++
++ Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev.)
++
++ Asia/Tehran now has DST predictions for the year 2038 and later,
++ to be March 21 00:00 to September 21 00:00. This is likely better
++ than predicting no DST, albeit off by a day every now and then.
++
++ Changes affecting past and future time stamps
++
++ America/Metlakatla switched from PST all year to AKST/AKDT on
++ 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.)
++
++ America/Santa_Isabel has been removed, and replaced with a
++ backward compatibility link to America/Tijuana. Its contents were
++ apparently based on a misreading of Mexican legislation.
++
++ Changes affecting past time stamps
++
++ Asia/Karachi's two transition times in 2002 were off by a minute.
++ (Thanks to Matt Johnson.)
++
++ Changes affecting build procedure
++
++ An installer can now combine leap seconds with use of the backzone file,
++ e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
++ The old 'make posix_packrat' rule is now marked as obsolescent.
++ (Thanks to Ian Abbott for an initial implementation.)
++
++ Changes affecting documentation and commentary
++
++ A new file LICENSE makes it easier to see that the code and data
++ are mostly public-domain. (Thanks to James Knight.) The three
++ non-public-domain files now use the current (3-clause) BSD license
++ instead of older versions of that license.
++
++ tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
++ CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
++ on editing tz source files (with a mention of Sublime zoneinfo,
++ thanks to Gilmore Davidson).
++
++ The Theory and asia files now mention the 2015 book "The Global
++ Transformation of Time, 1870-1950", and cite a couple of reviews.
++
++ The America/Chicago entry now documents the informal use of US
++ central time in Fort Pierre, South Dakota. (Thanks to Rick
++ McDermid, Matt Johnson, and Steve Jones.)
++
++
++Release 2015g - 2015-10-01 00:39:51 -0700
++
++ Changes affecting future time stamps
++
++ Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
++ (Thanks to Fatih.)
++
++ Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.)
++
++ Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
++ (Thanks to Ken Rylander.)
++
++ Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
++ effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
++ New zone America/Fort_Nelson. (Thanks to Matt Johnson.)
++
++ Changes affecting past time stamps
++
++ Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
++
++ Changes affecting code
++
++ localtime no longer mishandles America/Anchorage after 2037.
++ (Thanks to Bradley White for reporting the bug.)
++
++ On hosts with signed 32-bit time_t, localtime no longer mishandles
++ Pacific/Fiji after 2038-01-16 14:00 UTC.
++
++ The localtime module allows the variables 'timezone', 'daylight',
++ and 'altzone' to be in common storage shared with other modules,
++ and declares them in case the system <time.h> does not.
++ (Problems reported by Kees Dekker.)
++
++ On platforms with tm_zone, strftime.c now assumes it is not NULL.
++ This simplifies the code and is consistent with zdump.c.
++ (Problem reported by Christos Zoulas.)
++
++ Changes affecting documentation
++
++ The tzfile man page now documents that transition times denote the
++ starts (not the ends) of the corresponding time periods.
++ (Ambiguity reported by Bill Seymour.)
++
++
++Release 2015f - 2015-08-10 18:06:56 -0700
++
++ Changes affecting future time stamps
++
++ North Korea switches to +0830 on 2015-08-15. (Thanks to Steffen Thorsen.)
++ The abbreviation remains "KST". (Thanks to Robert Elz.)
++
++ Uruguay no longer observes DST. (Thanks to Steffen Thorsen
++ and Pablo Camargo.)
++
++ Changes affecting past and future time stamps
++
++ Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
++ (Thanks to Roman Tudos.)
++
++ Changes affecting data format and code
++
++ zic's '-y YEARISTYPE' option is no longer documented. The TYPE
++ field of a Rule line should now be '-'; the old values 'even',
++ 'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
++ Although the implementation has not changed, these features do not
++ work in the default installation, they are not used in the data,
++ and they are now considered obsolescent.
++
++ zic now checks that two rules don't take effect at the same time.
++ (Thanks to Jon Skeet and Arthur David Olson.) Constraints on
++ simultaneity are now documented.
++
++ The two characters '%z' in a zone format now stand for the UTC
++ offset, e.g., '-07' for seven hours behind UTC and '+0530' for
++ five hours and thirty minutes ahead. This better supports time
++ zone abbreviations conforming to POSIX.1-2001 and later.
++
++ Changes affecting installed data files
++
++ Comments for America/Halifax and America/Glace_Bay have been improved.
++ (Thanks to Brian Inglis.)
++
++ Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
++ Europe/Sofia, and Europe/Tallinn. This yields slightly smaller
++ installed data files for Europe/Simferopol and Europe/Tallinn.
++ It does not affect timestamps. (Thanks to Howard Hinnant.)
++
++ Changes affecting code
++
++ zdump and zic no longer warn about valid time zone abbreviations
++ like '-05'.
++
++ Some Visual Studio 2013 warnings have been suppressed.
++ (Thanks to Kees Dekker.)
++
++ 'date' no longer sets the time of day and its -a, -d, -n and -t
++ options have been removed. Long obsolescent, the implementation
++ of these features had porting problems. Builders no longer need
++ to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
++ (Thanks to Kees Dekker for pointing out the problem.)
++
++ Changes affecting documentation
++
++ The Theory file mentions naming issues earlier, as these seem to be
++ poorly publicized (thanks to Gilmore Davidson for reporting the problem).
++
++ tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
++
++ Mention that Herbert Samuel introduced the term "Summer Time".
++
++
++Release 2015e - 2015-06-13 10:56:02 -0700
++
++ Changes affecting future time stamps
++
++ Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
++ not 06-13 and 07-18 as we had guessed. (Thanks to Milamber.)
++
++ Assume Cayman Islands will observe DST starting next year, using US rules.
++ Although it isn't guaranteed, it is the most likely.
++
++ Changes affecting data format
++
++ The file 'iso3166.tab' now uses UTF-8, so that its entries can better
++ spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
++
++ Changes affecting code
++
++ When displaying data, tzselect converts it to the current locale's
++ encoding if the iconv command works. (Problem reported by random832.)
++
++ tzselect no longer mishandles Dominica, fixing a bug introduced
++ in Release 2014f. (Problem reported by Owen Leibman.)
++
++ zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
++ This fixes a bug introduced in Release 2014f.
++ (Problem reported by Leonardo Chiquitto.)
++
++
++Release 2015d - 2015-04-24 08:09:46 -0700
++
++ Changes affecting future time stamps
++
++ Egypt will not observe DST in 2015 and will consider canceling it
++ permanently. For now, assume no DST indefinitely.
++ (Thanks to Ahmed Nazmy and Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
++ 1966-07-01. Also, Yukon's time zone history is documented better.
++ (Thanks to Brian Inglis and Dennis Ferguson.)
++
++ Change affecting past and future time zone abbreviations
++
++ The abbreviations for Hawaii-Aleutian standard and daylight times
++ have been changed from HAST/HADT to HST/HDT, as per US Government
++ Printing Office style. This affects only America/Adak since 1983,
++ as America/Honolulu was already using the new style.
++
++ Changes affecting code
++
++ zic has some minor performance improvements.
++
++
++Release 2015c - 2015-04-11 08:55:55 -0700
++
++ Changes affecting future time stamps
++
++ Egypt's spring-forward transition is at 24:00 on April's last Thursday,
++ not 00:00 on April's last Friday. 2015's transition will therefore be on
++ Thursday, April 30 at 24:00, not Friday, April 24 at 00:00. Similar fixes
++ apply to 2026, 2037, 2043, etc. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The following changes affect some pre-1991 Chile-related time stamps
++ in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
++
++ The 1910 transition was January 10, not January 1.
++
++ The 1918 transition was September 10, not September 1.
++
++ The UT -04 time observed from 1932 to 1942 is now considered to
++ be standard time, not year-round DST.
++
++ Santiago observed DST (UT -03) from 1946-07-15 through
++ 1946-08-31, then reverted to standard time, then switched to -05
++ on 1947-04-01.
++
++ Assume transitions before 1968 were at 00:00, since we have no data
++ saying otherwise.
++
++ The spring 1988 transition was 1988-10-09, not 1988-10-02.
++ The fall 1990 transition was 1990-03-11, not 1990-03-18.
++
++ Assume no UTC offset change for Pacific/Easter on 1890-01-01,
++ and omit all transitions on Pacific/Easter from 1942 through 1946
++ since we have no data suggesting that they existed.
++
++ One more zone has been turned into a link, as it differed
++ from an existing zone only for older time stamps. As usual,
++ this change affects UTC offsets in pre-1970 time stamps only.
++ The zone's old contents have been moved to the 'backzone' file.
++ The affected zone is America/Montreal.
++
++ Changes affecting commentary
++
++ Mention the TZUpdater tool.
++
++ Mention "The Time Now". (Thanks to Brandon Ramsey.)
++
++
++Release 2015b - 2015-03-19 23:28:11 -0700
++
++ Changes affecting future time stamps
++
++ Mongolia will start observing DST again this year, from the last
++ Saturday in March at 02:00 to the last Saturday in September at 00:00.
++ (Thanks to Ganbold Tsagaankhuu.)
++
++ Palestine will start DST on March 28, not March 27. Also,
++ correct the fall 2014 transition from September 26 to October 24.
++ Adjust future predictions accordingly. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
++ regression. (Thanks to Stuart Bishop for reporting the problem.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: America/Antigua, America/Cayman,
++ Pacific/Midway, and Pacific/Saipan.
++
++ Changes affecting time zone abbreviations
++
++ Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
++ (Thanks to Hank W.)
++
++ Changes affecting code
++
++ Fix integer overflow bug in reference 'mktime' implementation.
++ (Problem reported by Jörg Richter.)
++
++ Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
++ to be used in the same executable as standard-library time_t functions.
++ (Problems reported by Bradley White.)
++
++ Changes affecting commentary
++
++ Cite the recent Mexican decree changing Quintana Roo's time zone.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Likewise for the recent Chilean decree. (Thanks to Eduardo Romero Urra.)
++
++ Update info about Mars time.
++
++
++Release 2015a - 2015-01-29 22:35:20 -0800
++
++ Changes affecting future time stamps
++
++ The Mexican state of Quintana Roo, represented by America/Cancun,
++ will shift from Central Time with DST to Eastern Time without DST
++ on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
++
++ Chile will not change clocks in April or thereafter; its new standard time
++ will be its old daylight saving time. This affects America/Santiago,
++ Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
++
++ New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
++ (Thanks to Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ Iceland observed DST in 1919 and 1921, and its 1939 fallback
++ transition was Oct. 29, not Nov. 29. Remove incorrect data from
++ Shanks about time in Iceland between 1837 and 1908.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
++ and Asia/Muscat.
++
++ Changes affecting code
++
++ tzalloc now scrubs time zone abbreviations compatibly with the way
++ that tzset always has, by replacing invalid bytes with '_' and by
++ shortening too-long abbreviations.
++
++ tzselect ports to POSIX awk implementations, no longer mishandles
++ POSIX TZ settings when GNU awk is used, and reports POSIX TZ
++ settings to the user. (Thanks to Stefan Kuhn.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks for links to links in the data.
++ One such link (for Africa/Asmera) has been fixed.
++ (Thanks to Stephen Colebourne for pointing out the problem.)
++
++ Changes affecting commentary
++
++ The leapseconds file commentary now mentions the expiration date.
++ (Problem reported by Martin Burnicki.)
++
++ Update Mexican Library of Congress URL.
++
++
++Release 2014j - 2014-11-10 17:37:11 -0800
++
++ Changes affecting current and future time stamps
++
++ Turks & Caicos' switch from US eastern time to UT -04 year-round
++ did not occur on 2014-11-02 at 02:00. It's currently scheduled
++ for 2015-11-01 at 02:00. (Thanks to Chris Walton.)
++
++ Changes affecting past time stamps
++
++ Many pre-1989 time stamps have been corrected for Asia/Seoul and
++ Asia/Pyongyang, based on sources for the Korean-language Wikipedia
++ entry for time in Korea. (Thanks to Sanghyuk Jung.) Also, no
++ longer guess that Pyongyang mimicked Seoul time after World War II,
++ as this is politically implausible.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
++ Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
++ Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
++ Indian/Mayotte.
++
++ Changes affecting commentary
++
++ The commentary is less enthusiastic about Shanks as a source,
++ and is more careful to distinguish UT from UTC.
++
++
++Release 2014i - 2014-10-21 22:04:57 -0700
++
++ Changes affecting future time stamps
++
++ Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
++ (Thanks to Ken Rylander for the heads-up.) Guess that future
++ years will use a similar pattern.
++
++ A new Zone Pacific/Bougainville, for the part of Papua New Guinea
++ that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
++ (Thanks to Kiley Walbom for the heads-up.)
++
++ Changes affecting time zone abbreviations
++
++ Since Belarus is not changing its clocks even though Moscow is,
++ the time zone abbreviation in Europe/Minsk is changing from FET
++ to its more-traditional value MSK on 2014-10-26 at 01:00.
++ (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
++
++ The new abbreviation IDT stands for the pre-1976 use of UT +08 in
++ Indochina, to distinguish it better from ICT (+07).
++
++ Changes affecting past time stamps
++
++ Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
++ (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
++ authoritative book). Asia/Ho_Chi_Minh has been added to
++ zone1970.tab, to give tzselect users in Vietnam two choices,
++ since north and south Vietnam disagreed after our 1970 cutoff.
++
++ Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
++ they differed from existing zones only for older time stamps. As
++ usual, these changes affect pre-1970 time stamps only. Their old
++ contents have been moved to the 'backzone' file.
++
++ Changes affecting code
++
++ The time-related library functions now set errno on failure, and
++ some crashes in the new tzalloc-related library functions have
++ been fixed. (Thanks to Christos Zoulas for reporting most of
++ these problems and for suggesting fixes.)
++
++ If USG_COMPAT is defined and the requested time stamp is standard time,
++ the tz library's localtime and mktime functions now set the extern
++ variable timezone to a value appropriate for that time stamp; and
++ similarly for ALTZONE, daylight saving time, and the altzone variable.
++ This change is a companion to the tzname change in 2014h, and is
++ designed to make timezone and altzone more compatible with tzname.
++
++ The tz library's functions now set errno to EOVERFLOW if they fail
++ because the result cannot be represented. ctime and ctime_r now
++ return NULL and set errno when a time stamp is out of range, rather
++ than having undefined behavior.
++
++ Some bugs associated with the new 2014g functions have been fixed.
++ This includes a bug that largely incapacitated the new functions
++ time2posix_z and posix2time_z. (Thanks to Christos Zoulas.)
++ It also includes some uses of uninitialized variables after tzalloc.
++ The new code uses the standard type 'ssize_t', which the Makefile
++ now gives porting advice about.
++
++ Changes affecting commentary
++
++ Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
++
++
++Release 2014h - 2014-09-25 18:59:03 -0700
++
++ Changes affecting past time stamps
++
++ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
++
++ Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
++ not 1920-01-06. The old entry was based on a misinterpretation of Shanks.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Blantyre, Africa/Bujumbura,
++ Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
++ Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
++
++ Changes affecting code
++
++ zdump -V and -v now output gmtoff= values on all platforms,
++ not merely on platforms defining TM_GMTOFF.
++
++ The tz library's localtime and mktime functions now set tzname to a value
++ appropriate for the requested time stamp, and zdump now uses this
++ on platforms not defining TM_ZONE, fixing a 2014g regression.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ The tz library no longer sets tzname if localtime or mktime fails.
++
++ zdump -c no longer mishandles transitions near year boundaries.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ An access to uninitialized data has been fixed.
++ (Thanks to Jörg Richter for reporting the problem.)
++
++ When THREAD_SAFE is defined, the code ports to the C11 memory model.
++ A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
++ and two threads race to initialize data used by gmtime-like functions.
++ (Thanks to Andy Heninger for reporting the problems.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks better for properly-sorted data.
++
++ Changes affecting documentation and commentary
++
++ zdump's gmtoff=N output is now documented, and its isdst=D output
++ is now documented to possibly output D values other than 0 or 1.
++
++ zdump -c's treatment of years is now documented to use the
++ Gregorian calendar and Universal Time without leap seconds,
++ and its behavior at cutoff boundaries is now documented better.
++ (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
++
++ Programs are now documented to use the proleptic Gregorian calendar.
++ (Thanks to Alan Barrett for the suggestion.)
++
++ Fractional-second GMT offsets have been documented for civil time
++ in 19th-century Chennai, Jakarta, and New York.
++
++
++Release 2014g - 2014-08-28 12:31:23 -0700
++
++ Changes affecting future time stamps
++
++ Turks & Caicos is switching from US eastern time to UT -04
++ year-round, modeled as a switch on 2014-11-02 at 02:00.
++ [As noted in 2014j, this switch was later delayed.]
++
++ Changes affecting past time stamps
++
++ Time in Russia or the USSR before 1926 or so has been corrected by
++ a few seconds in the following zones: Asia/Irkutsk,
++ Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
++ Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
++ Asia/Yekaterinburg the correction is a few minutes. (Thanks to
++ Vladimir Karpinsky.)
++
++ The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
++ This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
++ Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
++ GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
++ (Thanks to Stephen Colebourne for pointing to the decree.)
++
++ Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
++
++ A new file 'backzone' contains data which may appeal to
++ connoisseurs of old time stamps, although it is out of scope for
++ the tz database, is often poorly sourced, and contains some data
++ that is known to be incorrect. The new file is not recommended
++ for ordinary use and its entries are not installed by default.
++ (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
++ Isle of Man entries.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Bangui, Africa/Brazzaville,
++ Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
++ Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
++
++ Changes affecting code
++
++ Unless NETBSD_INSPIRED is defined to 0, the tz library now
++ supplies functions for creating and using objects that represent
++ time zones. The new functions are tzalloc, tzfree, localtime_rz,
++ mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
++ time2posix_z. They are intended for performance: for example,
++ localtime_rz (unlike localtime_r) is trivially thread-safe without
++ locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
++ functions, and to Alan Barrett and Jonathan Lennox for helping to
++ debug the change.)
++
++ zdump now builds with the tz library unless USE_LTZ is defined to 0,
++ This lets zdump use tz features even if the system library lacks them.
++ To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
++ TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
++
++ zdump now uses localtime_rz if available, as it's significantly faster,
++ and it can help zdump better diagnose invalid time zone names.
++ Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
++ defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
++ not available, zdump now uses localtime_r and tzset if available,
++ as this is a bit cleaner and faster than plain localtime. Compile
++ with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
++ lacks these two functions.
++
++ If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
++ Although not needed for tz's own applications, which are single-threaded,
++ this supports POSIX better if the tz library is used in multithreaded apps.
++
++ Some crashes have been fixed when zdump or the tz library is given
++ invalid or outlandish input.
++
++ The tz library no longer mishandles leap seconds on platforms with
++ unsigned time_t in time zones that lack ordinary transitions after 1970.
++
++ The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
++ already defined, to make it easier to configure on common platforms.
++ Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
++
++ Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
++ assumes that reading uninitialized memory yields garbage values
++ but does not cause other problems such as traps.
++
++ If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
++ more likely to guess right for ambiguous time stamps near
++ transitions where tm_isdst does not change.
++
++ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
++ strftime_l for compatibility with recent versions of POSIX.
++ Only the C locale is supported, though. HAVE_STRFTIME_L defaults
++ to 1 on recent POSIX versions, and to 0 otherwise.
++
++ tzselect -c now uses a hybrid distance measure that works better
++ in Africa. (Thanks to Alan Barrett for noting the problem.)
++
++ The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
++ or when time_tz is defined.
++
++ When HAVE_UTMPX_H is set the 'date' command now builds on systems
++ whose <utmpx.h> file does not define WTMPX_FILE, and when setting
++ the date it updates the wtmpx file if _PATH_WTMPX is defined.
++ This affects GNU/Linux and similar systems.
++
++ For easier maintenance later, some C code has been simplified,
++ some lint has been removed, and the code has been tweaked so that
++ plain 'make' is more likely to work.
++
++ The C type 'bool' is now used for boolean values, instead of 'int'.
++
++ The long-obsolete LOCALE_HOME code has been removed.
++
++ The long-obsolete 'gtime' function has been removed.
++
++ Changes affecting build procedure
++
++ 'zdump' no longer links in ialloc.o, as it's not needed.
++
++ 'make check_time_t_alternatives' no longer assumes GNU diff.
++
++ Changes affecting distribution tarballs
++
++ The files checktab.awk and zoneinfo2tdf.pl are now distributed in
++ the tzdata tarball instead of the tzcode tarball, since they help
++ maintain the data. The NEWS and Theory files are now also
++ distributed in the tzdata tarball, as they're relevant for data.
++ (Thanks to Alan Barrett for pointing this out.) Also, the
++ leapseconds.awk file is no longer distributed in the tzcode
++ tarball, since it belongs in the tzdata tarball (where 2014f
++ inadvertently also distributed it).
++
++ Changes affecting documentation and commentary
++
++ A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
++ suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
++ for debugging it.)
++
++ The man pages have been updated to use function prototypes,
++ to document thread-safe variants like localtime_r, and to document
++ the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
++ mktime_z.
++
++ The fields in Link lines have been renamed to be more descriptive
++ and more like the parameters of 'ln'. LINK-FROM has become TARGET,
++ and LINK-TO has become LINK-NAME.
++
++ tz-link.htm mentions the IETF's tzdist working group; Windows
++ Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
++
++ Some broken URLs have been fixed in the commentary. (Thanks to
++ Lester Caine.)
++
++ Commentary about Philippines DST has been updated, and commentary
++ on pre-1970 time in India has been added.
++
++
++Release 2014f - 2014-08-05 17:42:36 -0700
++
++ Changes affecting future time stamps
++
++ Russia will subtract an hour from most of its time zones on 2014-10-26
++ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
++ There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
++ Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
++ (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
++ (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
++ (Europe/Samara) are not changing their clocks. The changed zones are
++ Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
++ Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
++ Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
++ Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
++ subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
++ but not its UTC offset. Two zones are added: Asia/Chita (split
++ from Asia/Yakutsk, and also with two hours subtracted) and
++ Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
++ subtracted). (Thanks to Tim Parenti for much of the above.)
++
++ Changes affecting time zone abbreviations
++
++ Australian eastern time zone abbreviations are now AEST/AEDT not EST,
++ and similarly for the other Australian zones. That is, for eastern
++ standard and daylight saving time the abbreviations are AEST and AEDT
++ instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
++ and AWST/AWDT are now used instead of the former CST, CWST, and WST.
++ This change does not affect UTC offsets, only time zone abbreviations.
++ (Thanks to Rich Tibbett and many others.)
++
++ Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
++ effective 2014-10-26 at 02:00 local time.
++
++ The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
++ has been changed from URUT to XJT. (Thanks to Luther Ma.)
++
++ Prefer MSK/MSD for Moscow time in Russia, even in other cities.
++ Similarly, prefer EET/EEST for eastern European time in Russia.
++
++ Change time zone abbreviations in (western) Samoa to use "ST" and
++ "DT" suffixes, as this is more likely to match common practice.
++ Prefix "W" to (western) Samoa time when its standard-time offset
++ disagrees with that of American Samoa.
++
++ America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
++
++ Time zone abbreviations have been updated for Japan's two time
++ zones used 1896-1937. JWST now stands for Western Standard
++ Time, and JCST for Central Standard Time (formerly this was CJT).
++ These abbreviations are now used for time in Korea, Taiwan,
++ and Sakhalin while controlled by Japan.
++
++ Changes affecting past time stamps
++
++ China's five zones have been simplified to two, since the post-1970
++ differences in the other three seem to have been imaginary. The
++ zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
++ removed; backwards-compatibility links still work, albeit with
++ different behaviors for time stamps before May 1980. Asia/Urumqi's
++ 1980 transition to UT +08 has been removed, so that it is now at
++ +06 and not +08. (Thanks to Luther Ma and to Alois Treindl;
++ Treindl sent helpful translations of two papers by Guo Qingsheng.)
++
++ Some zones have been turned into links, when they differed from existing
++ zones only for older UTC offsets where data entries were likely invented.
++ These changes affect UTC offsets in pre-1970 time stamps only. This is
++ similar to the change in release 2013e, except this time for western
++ Africa. The affected zones are: Africa/Bamako, Africa/Banjul,
++ Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
++ Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
++ Atlantic/St_Helena. This also affects the backwards-compatibility
++ link Africa/Timbuktu. (Thanks to Alan Barrett, Stephen Colebourne,
++ Tim Parenti, and David Patte for reporting problems in earlier
++ versions of this change.)
++
++ Asia/Shanghai's pre-standard-time UT offset has been changed from
++ 8:05:57 to 8:05:43, the location of Xujiahui Observatory. Its
++ transition to standard time has been changed from 1928 to 1901.
++
++ Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
++ then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
++ In 1946 it observed DST from 05-15 through 09-30; in 1947
++ from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
++ (Thanks to Yu-Cheng Chuang.)
++
++ Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
++
++ Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
++ 10-03 at 00:00. (Thanks to Konstantin Hyppönen.)
++
++ Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
++ period from 1911 to 1950.
++
++ Pacific/Chatham has been changed to New Zealand standard time plus
++ 45 minutes for the period before 1957, reflecting a 1956 remark in
++ the New Zealand parliament.
++
++ Europe/Budapest has several pre-1946 corrections: in 1918 the transition
++ out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
++ 1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
++ not 04-06 at 02:00; and there was no DST in 1920.
++
++ Africa/Accra is now assumed to have observed DST from 1920 through 1935.
++
++ Time in Russia before 1927 or so has been corrected by a few seconds in
++ the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
++ Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
++ Europe/Riga. Also, Moscow's location has been changed to its Kilometer 0
++ point. (Thanks to Vladimir Karpinsky for the Moscow changes.)
++
++ Changes affecting data format
++
++ A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
++ The new file's extended format allows multiple country codes per zone.
++ The older file is still installed but is deprecated; its format is
++ not changing and it will still be distributed for a while, but new
++ applications should use the new file.
++
++ The new file format simplifies maintenance of obscure locations.
++ To test this, it adds coverage for the Crozet Islands and the
++ Scattered Islands. (Thanks to Tobias Conradi and Antoine Leca.)
++
++ The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
++ It is still ASCII now, but commentary about the switch has been added.
++ The new file 'zone1970.tab' already uses UTF-8.
++
++ Changes affecting code
++
++ 'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
++ is defined. (Thanks to Elliott Hughes for reporting the problem.)
++
++ 'zic' no longer mishandles input when ignoring case in locales that
++ are not compatible with English, e.g., unibyte Turkish locales when
++ compiled with HAVE_GETTEXT.
++
++ Error diagnostics of 'zic' and 'yearistype' have been reworded so that
++ they no longer use ASCII '-' as if it were a dash.
++
++ 'zic' now rejects output file names that contain '.' or '..' components.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ 'zic -v' now warns about output file names that do not follow
++ POSIX rules, or that contain a digit or '.'. (Thanks to Arthur
++ David Olson for starting the ball rolling on this.)
++
++ Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
++
++ Changes affecting build procedure
++
++ 'zic' no longer links in localtime.o and asctime.o, as they're not needed.
++ (Thanks to John Cochran.)
++
++ Changes affecting documentation and commentary
++
++ The 'Theory' file documents legacy names, the longstanding
++ exceptions to the POSIX-inspired file name rules.
++
++ The 'zic' documentation clarifies the role of time types when
++ interpreting dates. (Thanks to Arthur David Olson.)
++
++ Documentation and commentary now prefer UTF-8 to US-ASCII,
++ allowing the use of proper accents in foreign words and names.
++ Code and data have not changed because of this. (Thanks to
++ Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
++ this.)
++
++ Non-HTML documentation and commentary now use plain-text URLs instead of
++ HTML insertions, and are more consistent about bracketing URLs when they
++ are not already surrounded by white space. (Thanks to suggestions by
++ Steffen Nurpmeso.)
++
++ There is new commentary about Xujiahui Observatory, the five time-zone
++ project in China from 1918 to 1949, timekeeping in Japanese-occupied
++ Shanghai, and Tibet Time in the 1950s. The sharp-eyed can spot the
++ warlord Jin Shuren in the data.
++
++ Commentary about the coverage of each Russian zone has been standardized.
++ (Thanks to Tim Parenti).
++
++ There is new commentary about contemporary timekeeping in Ethiopia.
++
++ Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
++
++ There is new commentary about time in Poland in 1919.
++
++ Proper credit has been given to DST inventor George Vernon Hudson.
++
++ Commentary about time in Metlakatla, AK and Resolute, NU has been
++ improved, with a new source for the former.
++
++ In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
++ is uninhabited.
++
++ Commentary about permanent Antarctic bases has been updated.
++
++ Several typos have been corrected. (Thanks to Tim Parenti for
++ contributing some of these fixes.)
++
++ tz-link.htm now mentions the JavaScript libraries Moment Timezone,
++ TimezoneJS.Date, Walltime-js, and Timezone. (Thanks to a heads-up
++ from Matt Johnson.) Also, it mentions the Go 'latlong' package.
++ (Thanks to a heads-up from Dirkjan Ochtman.)
++
++ The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
++ have been removed. These obsolescent US Naval Observatory entries were no
++ longer helpful for maintenance. (Thanks to Tim Parenti for the suggestion.)
++
++
++Release 2014e - 2014-06-12 21:53:52 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
++ (Thanks to Imed Chihi.) Guess that from 2015 on Egypt will temporarily
++ switch to standard time at 24:00 the last Thursday before Ramadan, and
++ back to DST at 00:00 the first Friday after Ramadan.
++
++ Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00. (Thanks
++ to Milamber Space Network.) Guess that from 2015 on Morocco will
++ temporarily switch to standard time at 03:00 the last Saturday before
++ Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
++
++ Changes affecting past time stamps
++
++ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
++ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
++ "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
++ in 1991. (Thanks to Hank W. for reporting the problems.)
++
++ Changes affecting commentary
++
++ tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
++ draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
++ removes stale pointers to World Time Explorer and WORLDTIME.
++
++
++Release 2014d - 2014-05-27 21:34:40 -0700
++
++ Changes affecting code
++
++ zic no longer generates files containing time stamps before the Big Bang.
++ This works around GNOME bug 730332
++ <https://bugzilla.gnome.org/show_bug.cgi?id=730332>.
++ (Thanks to Leonardo Chiquitto for reporting the bug, and to
++ Arthur David Olson and James Cloos for suggesting improvements to the fix.)
++
++ Changes affecting documentation
++
++ tz-link.htm now mentions GNOME.
++
++
++Release 2014c - 2014-05-13 07:44:13 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt observes DST starting 2014-05-15 at 24:00.
++ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
++ Details have not been announced, except that DST will not be observed
++ during Ramadan. Guess that DST will stop during the same Ramadan dates as
++ Morocco, and that Egypt's future spring and fall transitions will be the
++ same as 2010 when it last observed DST, namely April's last Friday at
++ 00:00 to September's last Thursday at 23:00 standard time. Also, guess
++ that Ramadan transitions will be at 00:00 standard time.
++
++ Changes affecting code
++
++ zic now generates transitions for minimum time values, eliminating guesswork
++ when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++
++ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
++
++ Changes affecting commentary and documentation
++
++ Remove now-confusing comment about Jordan. (Thanks to Oleksii Nochovnyi.)
++
++
++Release 2014b - 2014-03-24 21:28:50 -0700
++
++ Changes affecting near-future time stamps
++
++ Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.) Move its zone.tab entry from UA to RU.
++
++ New entry for Troll station, Antarctica. (Thanks to Paul-Inge Flakstad and
++ Bengt-Inge Larsson.) This is currently an approximation; a better version
++ will require the zic and localtime fixes mentioned below, and the plan is
++ to wait for a while until at least the zic fixes propagate.
++
++ Changes affecting code
++
++ 'zic' and 'localtime' no longer reject locations needing four transitions
++ per year for the foreseeable future. (Thanks to Andrew Main (Zefram).)
++ Also, 'zic' avoids some unlikely failures due to integer overflow.
++
++ Changes affecting build procedure
++
++ 'make check' now detects Rule lines defined but never used.
++ The NZAQ rules, an instance of this problem, have been removed.
++
++ Changes affecting commentary and documentation
++
++ Fix Tuesday/Thursday typo in description of time in Israel.
++ (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
++
++ Microsoft Windows 8.1 doesn't support tz database names. (Thanks
++ to Donald MacQueen.) Instead, the Microsoft Windows Store app
++ library supports them.
++
++ Add comments about Johnston Island time in the 1960s.
++ (Thanks to Lyle McElhaney.)
++
++ Morocco's 2014 DST start will be as predicted.
++ (Thanks to Sebastien Willemijns.)
++
++
++Release 2014a - 2014-03-07 23:30:29 -0800
++
++ Changes affecting near-future time stamps
++
++ Turkey begins DST on 2014-03-31, not 03-30. (Thanks to Faruk Pasin for
++ the heads-up, and to Tim Parenti for simplifying the update.)
++
++ Changes affecting past time stamps
++
++ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
++ (Thanks to Steffen Thorsen.)
++
++ Ukraine switched from Moscow to Eastern European time on 1990-07-01
++ (not 1992-01-01), and observed DST during the entire next winter.
++ (Thanks to Vladimir in Moscow via Alois Treindl.)
++
++ In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
++ (Thanks to Avigdor Finkelstein.)
++
++ Changes affecting code
++
++ A uninitialized-storage bug in 'localtime' has been fixed.
++ (Thanks to Logan Chien.)
++
++ Changes affecting the build procedure
++
++ The settings for 'make check_web' now default to Ubuntu 13.10.
++
++ Changes affecting commentary and documentation
++
++ The boundary of the US Pacific time zone is given more accurately.
++ (Thanks to Alan Mintz.)
++
++ Chile's 2014 DST will be as predicted. (Thanks to José Miguel Garrido.)
++
++ Paraguay's 2014 DST will be as predicted. (Thanks to Carlos Raúl Perasso.)
++
++ Better descriptions of countries with same time zone history as
++ Trinidad and Tobago since 1970. (Thanks to Alan Barrett for suggestion.)
++
++ Several changes affect tz-link.htm, the main web page.
++
++ Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
++ David Braverman).
++
++ Mention xCal (Internet RFC 6321) and jCal.
++
++ Microsoft has some support for tz database names.
++
++ CLDR data formats include both XML and JSON.
++
++ Mention Maggiolo's map of solar vs standard time.
++ (Thanks to Arthur David Olson.)
++
++ Mention TZ4Net. (Thanks to Matt Johnson.)
++
++ Mention the timezone-olson Haskell package.
++
++ Mention zeitverschiebung.net. (Thanks to Martin Jäger.)
++
++ Remove moribund links to daylight-savings-time.info and to
++ Simple Timer + Clocks.
++
++ Update two links. (Thanks to Oscar van Vlijmen.)
++
++ Fix some formatting glitches, e.g., remove random newlines from
++ abbr elements' title attributes.
++
++
++Release 2013i - 2013-12-17 07:25:23 -0800
++
++ Changes affecting near-future time stamps:
++
++ Jordan switches back to standard time at 00:00 on December 20, 2013.
++ The 2006-2011 transition schedule is planned to resume in 2014.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps:
++
++ In 2004, Cuba began DST on March 28, not April 4.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting code
++
++ The compile-time flag NOSOLAR has been removed, as nowadays the
++ benefit of slightly shrinking runtime table size is outweighed by the
++ cost of disallowing potential future updates that exceed old limits.
++
++ Changes affecting documentation and commentary
++
++ The files solar87, solar88, and solar89 are no longer distributed.
++ They were a negative experiment - that is, a demonstration that
++ tz data can represent solar time only with some difficulty and error.
++ Their presence in the distribution caused confusion, as Riyadh
++ civil time was generally not solar time in those years.
++
++ tz-link.htm now mentions Noda Time. (Thanks to Matt Johnson.)
++
++
++Release 2013h - 2013-10-25 15:32:32 -0700
++
++ Changes affecting current and future time stamps:
++
++ Libya has switched its UT offset back to +02 without DST, instead
++ of +01 with DST. (Thanks to Even Scharning.)
++
++ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
++ (Thanks to Gwillim Law.)
++
++ Changes affecting future time stamps:
++
++ Acre and (we guess) western Amazonas will switch from UT -04 to -05
++ on 2013-11-10. This affects America/Rio_Branco and America/Eirunepe.
++ (Thanks to Steffen Thorsen.)
++
++ Add entries for DST transitions in Morocco in the year 2038.
++ This avoids some year-2038 glitches introduced in 2013g.
++ (Thanks to Yoshito Umaoka for reporting the problem.)
++
++ Changes affecting API
++
++ The 'tzselect' command no longer requires the 'select' command,
++ and should now work with /bin/sh on more platforms. It also works
++ around a bug in BusyBox awk before version 1.21.0. (Thanks to
++ Patrick 'P. J.' McDermott and Alan Barrett.)
++
++ Changes affecting code
++
++ Fix localtime overflow bugs with 32-bit unsigned time_t.
++
++ zdump no longer assumes sscanf returns maximal values on overflow.
++
++ Changes affecting the build procedure
++
++ The builder can specify which programs to use, if any, instead of
++ 'ar' and 'ranlib', and libtz.a is now built locally before being
++ installed. (Thanks to Michael Forney.)
++
++ A dependency typo in the 'zdump' rule has been fixed.
++ (Thanks to Andrew Paprocki.)
++
++ The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
++ work as specified by POSIX.2-1992 or later; this is portable nowadays.
++
++ 'make clean' no longer removes 'leapseconds', since it's
++ host-independent and is part of the distribution.
++
++ The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
++ (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
++
++ Update URLs in tz-link page. Add URLs for Microsoft Windows, since
++ 8.1 introduces tz support. Remove URLs for Tru64 and UnixWare (no
++ longer maintained) and for old advisories. SOFA now does C.
++
++Release 2013g - 2013-09-30 21:08:26 -0700
++
++ Changes affecting current and near-future time stamps
++
++ Morocco now observes DST from the last Sunday in March to the last
++ Sunday in October, not April to September respectively. (Thanks
++ to Steffen Thorsen.)
++
++ Changes affecting 'zic'
++
++ 'zic' now runs on platforms that lack both hard links and symlinks.
++ (Thanks to Theo Veenker for reporting the problem, for MinGW.)
++ Also, fix some bugs on platforms that lack hard links but have symlinks.
++
++ 'zic -v' again warns that Asia/Tehran has no POSIX environment variable
++ to predict the far future, fixing a bug introduced in 2013e.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is again put into the tzdata tarball.
++ Also, 'leapseconds.awk', so tzdata is self-contained. (Thanks to
++ Matt Burgess and Ian Abbott.) The timestamps of these and other
++ dependent files in tarballs are adjusted more consistently.
++
++ Changes affecting documentation and commentary
++
++ The README file is now part of the data tarball as well as the code.
++ It now states that files are public domain unless otherwise specified.
++ (Thanks to Andrew Main (Zefram) for asking for clarifications.)
++ Its details about the 1989 release moved to a place of honor near
++ the end of NEWS.
++
++
++Release 2013f - 2013-09-24 23:37:36 -0700
++
++ Changes affecting near-future time stamps
++
++ Tocantins will very likely not observe DST starting this spring.
++ (Thanks to Steffen Thorsen.)
++
++ Jordan will likely stay at UT +03 indefinitely, and will not fall
++ back this fall.
++
++ Palestine will fall back at 00:00, not 01:00. (Thanks to Steffen Thorsen.)
++
++ Changes affecting API
++
++ The types of the global variables 'timezone' and 'altzone' (if present)
++ have been changed back to 'long'. This is required for 'timezone'
++ by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
++ These variables were originally 'long' in the tz code, but were
++ mistakenly changed to 'time_t' in 1987; nobody reported the
++ incompatibility until now. The difference matters on x32, where
++ 'long' is 32 bits and 'time_t' is 64. (Thanks to Elliott Hughes.)
++
++ Changes affecting the build procedure
++
++ Avoid long strings in leapseconds.awk to work around a mawk bug.
++ (Thanks to Cyril Baurand.)
++
++ Changes affecting documentation and commentary
++
++ New file 'NEWS' that contains release notes like this one.
++
++ Paraguay's law does not specify DST transition time; 00:00 is customary.
++ (Thanks to Waldemar Villamayor-Venialbo.)
++
++ Minor capitalization fixes.
++
++ Changes affecting version-control only
++
++ The experimental GitHub repository now contains annotated and
++ signed tags for recent releases, e.g., '2013e' for Release 2013e.
++ Releases are tagged starting with 2012e; earlier releases were
++ done differently, and tags would either not have a simple name or
++ not exactly match what was released.
++
++ 'make set-timestamps' is now simpler and a bit more portable.
++
++
++Release 2013e - 2013-09-19 23:50:04 -0700
++
++ Changes affecting near-future time stamps
++
++ This year Fiji will start DST on October 27, not October 20.
++ (Thanks to David Wheeler for the heads-up.) For now, guess that
++ Fiji will continue to spring forward the Sunday before the fourth
++ Monday in October.
++
++ Changes affecting current and future time zone abbreviations
++
++ Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
++ time zone abbreviations since 1932. (Thanks to George Ziegler,
++ Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
++ Benny Lin.) This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
++ Asia/Makassar, and Asia/Pontianak.
++
++ Use ART (UT -03, standard time), rather than WARST (also -03, but
++ daylight saving time) for San Luis, Argentina since 2009.
++
++ Changes affecting Godthåb time stamps after 2037 if version mismatch
++
++ Allow POSIX-like TZ strings where the transition time's hour can
++ range from -167 through 167, instead of the POSIX-required 0
++ through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
++ new Fiji rules. This is a more-compact way to represent
++ far-future time stamps for America/Godthab, America/Santiago,
++ Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
++ Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
++ this change. (Derived from a suggestion by Arthur David Olson.)
++
++ Allow POSIX-like TZ strings where daylight saving time is in
++ effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
++ Argentina Summer Time all year. This supports a more-compact way
++ to represent the 2013d data for America/Argentina/San_Luis.
++ Because of the change for San Luis noted above this change does not
++ affect the current data. (Thanks to Andrew Main (Zefram) for
++ suggestions that improved this change.)
++
++ Where these two TZ changes take effect, there is a minor extension
++ to the tz file format in that it allows new values for the
++ embedded TZ-format string, and the tz file format version number
++ has therefore been increased from 2 to 3 as a precaution.
++ Version-2-based client code should continue to work as before for
++ all time stamps before 2038. Existing version-2-based client code
++ (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
++ files, and typically works in practice even for time stamps after
++ 2037; the only known exception is America/Godthab.
++
++ Changes affecting time stamps before 1970
++
++ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
++ some errors before 1947.
++
++ Some zones have been turned into links, when they differ from existing
++ zones only in older data entries that were likely invented or that
++ differ only in LMT or transitions from LMT. These changes affect
++ only time stamps before 1943. The affected zones are:
++ Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
++ America/Grenada, America/Guadeloupe, America/Marigot,
++ America/Montserrat, America/St_Barthelemy, America/St_Kitts,
++ America/St_Lucia, America/St_Thomas, America/St_Vincent,
++ America/Tortola, and Europe/Vaduz. (Thanks to Alois Treindl for
++ confirming that the old Europe/Vaduz zone was wrong and the new
++ link is better for WWII-era times.)
++
++ Change Kingston Mean Time from -5:07:12 to -5:07:11. This affects
++ America/Cayman, America/Jamaica and America/Grand_Turk time stamps
++ from 1890 to 1912.
++
++ Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
++ This affects Europe/Zurich time stamps from 1853 to 1894. (Thanks
++ to Alois Treindl).
++
++ Change the date of the circa-1850 Zurich transition from 1849-09-12
++ to 1853-07-16, overriding Shanks with data from Messerli about
++ postal and telegraph time in Switzerland.
++
++ Changes affecting time zone abbreviations before 1970
++
++ For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
++ as Jakarta was called Batavia back then.
++
++ Changes affecting API
++
++ The 'zic' command now outputs a dummy transition when far-future
++ data can't be summarized using a TZ string, and uses a 402-year
++ window rather than a 400-year window. For the current data, this
++ affects only the Asia/Tehran file. It does not affect any of the
++ time stamps that this file represents, so zdump outputs the same
++ information as before. (Thanks to Andrew Main (Zefram).)
++
++ The 'date' command has a new '-r' option, which lets you specify
++ the integer time to display, a la FreeBSD.
++
++ The 'tzselect' command has two new options '-c' and '-n', which lets you
++ select a zone based on latitude and longitude.
++
++ The 'zic' command's '-v' option now warns about constructs that
++ require the new version-3 binary file format. (Thanks to Arthur
++ David Olson for the suggestion.)
++
++ Support for floating-point time_t has been removed.
++ It was always dicey, and POSIX no longer requires it.
++ (Thanks to Eric Blake for suggesting to the POSIX committee to
++ remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
++ Heninger, Arthur David Olson, and Alois Treindl, for reporting
++ bugs and elucidating some of the corners of the old floating-point
++ implementation.)
++
++ The signatures of 'offtime', 'timeoff', and 'gtime' have been
++ changed back to the old practice of using 'long' to represent UT
++ offsets. This had been inadvertently and mistakenly changed to
++ 'int_fast32_t'. (Thanks to Christos Zoulas.)
++
++ The code avoids undefined behavior on integer overflow in some
++ more places, including gmtime, localtime, mktime and zdump.
++
++ Changes affecting the zdump utility
++
++ zdump now outputs "UT" when referring to Universal Time, not "UTC".
++ "UTC" does not make sense for time stamps that predate the introduction
++ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
++ for clarifying UT vs UTC.)
++
++ Data changes affecting behavior of tzselect and similar programs
++
++ Country code BQ is now called the more-common name "Caribbean Netherlands"
++ rather than the more-official "Bonaire, St Eustatius & Saba".
++
++ Remove from zone.tab the names America/Montreal, America/Shiprock,
++ and Antarctica/South_Pole, as they are equivalent to existing
++ same-country-code zones for post-1970 time stamps. The data entries for
++ these names are unchanged, so the names continue to work as before.
++
++ Changes affecting code internals
++
++ zic -c now runs way faster on 64-bit hosts when given large numbers.
++
++ zic now uses vfprintf to avoid allocating and freeing some memory.
++
++ tzselect now computes the list of continents from the data,
++ rather than have it hard-coded.
++
++ Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is now generated automatically from a
++ new file 'leap-seconds.list', which is a copy of
++ <ftp://time.nist.gov/pub/leap-seconds.list>.
++ A new source file 'leapseconds.awk' implements this.
++ The goal is simplification of the future maintenance of 'leapseconds'.
++
++ When building the 'posix' or 'right' subdirectories, if the
++ subdirectory would be a copy of the default subdirectory, it is
++ now made a symbolic link if that is supported. This saves about
++ 2 MB of file system space.
++
++ The links America/Shiprock and Antarctica/South_Pole have been
++ moved to the 'backward' file. This affects only nondefault builds
++ that omit 'backward'.
++
++ Changes affecting version-control only
++
++ .gitignore now ignores 'date'.
++
++ Changes affecting documentation and commentary
++
++ Changes to the 'tzfile' man page
++
++ It now mentions that the binary file format may be extended in
++ future versions by appending data.
++
++ It now refers to the 'zdump' and 'zic' man pages.
++
++ Changes to the 'zic' man page
++
++ It lists conditions that elicit a warning with '-v'.
++
++ It says that the behavior is unspecified when duplicate names
++ are given, or if the source of one link is the target of another.
++
++ Its examples are updated to match the latest data.
++
++ The definition of white space has been clarified slightly.
++ (Thanks to Michael Deckers.)
++
++ Changes to the 'Theory' file
++
++ There is a new section about the accuracy of the tz database,
++ describing the many ways that errors can creep in, and
++ explaining why so many of the pre-1970 time stamps are wrong or
++ misleading (thanks to Steve Allen, Lester Caine, and Garrett
++ Wollman for discussions that contributed to this).
++
++ The 'Theory' file describes LMT better (this follows a
++ suggestion by Guy Harris).
++
++ It refers to the 2013 edition of POSIX rather than the 2004 edition.
++
++ It's mentioned that excluding 'backward' should not affect the
++ other data, and it suggests at least one zone.tab name per
++ inhabited country (thanks to Stephen Colebourne).
++
++ Some longstanding restrictions on names are documented, e.g.,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++
++ It gives more reasons for the 1970 cutoff.
++
++ It now mentions which time_t variants are supported, such as
++ signed integer time_t. (Thanks to Paul Goyette for reporting
++ typos in an experimental version of this change.)
++
++ (Thanks to Philip Newton for correcting typos in these changes.)
++
++ Documentation and commentary is more careful to distinguish UT in
++ general from UTC in particular. (Thanks to Steve Allen.)
++
++ Add a better source for the Zurich 1894 transition.
++ (Thanks to Pierre-Yves Berger.)
++
++ Update shapefile citations in tz-link.htm. (Thanks to Guy Harris.)
++
++
++Release 2013d - 2013-07-05 07:38:01 -0700
++
++ Changes affecting future time stamps:
++
++ Morocco's midsummer transitions this year are July 7 and August 10,
++ not July 9 and August 8. (Thanks to Andrew Paprocki.)
++
++ Israel now falls back on the last Sunday of October.
++ (Thanks to Ephraim Silverberg.)
++
++ Changes affecting past time stamps:
++
++ Specify Jerusalem's location more precisely; this changes the pre-1880
++ times by 2 s.
++
++ Changing affecting metadata only:
++
++ Fix typos in the entries for country codes BQ and SX.
++
++ Changes affecting code:
++
++ Rework the code to fix a bug with handling Australia/Macquarie on
++ 32-bit hosts (thanks to Arthur David Olson).
++
++ Port to platforms like NetBSD, where time_t can be wider than long.
++
++ Add support for testing time_t types other than the system's.
++ Run 'make check_time_t_alternatives' to try this out.
++ Currently, the tests fail for unsigned time_t;
++ this should get fixed at some point.
++
++ Changes affecting documentation and commentary:
++
++ Deemphasize the significance of national borders.
++
++ Update the zdump man page.
++
++ Remove obsolete NOID comment (thanks to Denis Excoffier).
++
++ Update several URLs and comments in the web pages.
++
++ Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
++
++ Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
++
++
++Release 2013c - 2013-04-19 16:17:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Palestine observed DST starting March 29, 2013. (Thanks to
++ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
++ with the predicted rules being the last Thursday in March at 24:00
++ to the first Friday on or after September 21 at 01:00.
++
++ Assume that the recent change to Paraguay's DST rules is permanent,
++ by moving the end of DST to the 4th Sunday in March every year.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Changes affecting past time stamps:
++
++ Fix some historical data for Palestine to agree with that of
++ timeanddate.com, as follows:
++
++ The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
++ 00:00 Apr 1.
++
++ The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
++ 02:00.
++
++ The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
++
++ The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
++
++ The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
++
++ The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
++
++ Fix times of habitation for Macquarie to agree with the Tasmania
++ Parks & Wildlife Service history, which indicates that permanent
++ habitation was 1899-1919 and 1948 on.
++
++ Changing affecting metadata only:
++
++ Macquarie Island is politically part of Australia, not Antarctica.
++ (Thanks to Tobias Conradi.)
++
++ Sort Macquarie more-consistently with other parts of Australia.
++ (Thanks to Tim Parenti.)
++
++
++Release 2013b - 2013-03-10 22:33:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Haiti uses US daylight-saving rules this year, and presumably future years.
++ This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++
++ Paraguay will end DST on March 24 this year.
++ (Thanks to Steffen Thorsen.) For now, assume it's just this year.
++
++ Morocco does not observe DST during Ramadan;
++ try to predict Ramadan in Morocco as best we can.
++ (Thanks to Erik Homoet for the heads-up.)
++
++ Changes affecting commentary:
++
++ Update URLs in tz-link page. Add URLs for webOS, BB10, iOS.
++ Update URL for Solaris. Mention Internet RFC 6557.
++ Update Internet RFCs 2445->5545, 2822->5322.
++ Switch from FTP to HTTP for Internet RFCs.
++
++
++Release 2013a - 2013-02-27 09:20:35 -0800
++
++ Change affecting binary data format:
++
++ The zone offset at the end of version-2-format zone files is now
++ allowed to be 24:00, as per POSIX.1-2008. (Thanks to Arthur David Olson.)
++
++ Changes affecting current and future time stamps:
++
++ Chile's 2013 rules, and we guess rules for 2014 and later, will be
++ the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
++ (Thanks to Steffen Thorsen and Robert Elz.)
++
++ New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
++ (Thanks to Tobias Conradi and Arthur David Olson.)
++
++ Many changes affect historical time stamps before 1940.
++ These were deduced from: Milne J. Civil time. Geogr J. 1899
++ Feb;13(2):173-94 <http://www.jstor.org/stable/1774359>.
++
++ Changes affecting the code:
++
++ Fix zic bug that mishandled Egypt's 2010 changes (this also affected
++ the data). (Thanks to Arthur David Olson.)
++
++ Fix localtime bug when time_t is unsigned and data files were generated
++ by a signed time_t system. (Thanks to Doug Bailey for reporting and
++ to Arthur David Olson for fixing.)
++
++ Allow the email address for bug reports to be set by the packager.
++ The default is tz@iana.org, as before. (Thanks to Joseph S. Myers.)
++
++ Update HTML checking to be compatible with Ubuntu 12.10.
++
++ Check that files are a safe subset of ASCII. At some point we may
++ relax this requirement to a safe subset of UTF-8. Without the
++ check, some non-UTF-8 encodings were leaking into the distribution.
++
++ Commentary changes:
++
++ Restore a comment about copyright notices that was inadvertently deleted.
++ (Thanks to Arthur David Olson.)
++
++ Improve the commentary about which districts observe what times
++ in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
++
++ Add web page links to tz.js.
++
++ Add "Run by the Monkeys" to tz-art. (Thanks to Arthur David Olson.)
++
++
++Release 2012j - 2012-11-12 18:34:49 -0800
++
++ Libya moved to CET this weekend, but with DST planned next year.
++ (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
++
++ Signatures now have the extension .asc, not .sign, as that's more
++ standard. (Thanks to Phil Pennock.)
++
++ The output of 'zdump --version', and of 'zic --version', now
++ uses a format that is more typical for --version.
++ (Thanks to Joseph S. Myers.)
++
++ The output of 'tzselect --help', 'zdump --help', and 'zic --help'
++ now uses tz@iana.org rather than the old elsie address.
++
++ zic -v now complains about abbreviations that are less than 3
++ or more than 6 characters, as per Posix. Formerly, it checked
++ for abbreviations that were more than 3.
++
++ 'make public' no longer puts its temporary directory under /tmp,
++ and uses the just-built zic rather than the system zic.
++
++ Various fixes to documentation and commentary.
++
++
++Release 2012i - 2012-11-03 12:57:09 -0700
++
++ Cuba switches from DST tomorrow at 01:00. (Thanks to Steffen Thorsen.)
++
++ Linker flags can now be specified via LDFLAGS.
++ AWK now defaults to 'awk', not 'nawk'.
++ The shell in tzselect now defaults to /bin/bash, but this can
++ be overridden by specifying KSHELL.
++ The main web page now mentions the unofficial GitHub repository.
++ (Thanks to Mike Frysinger.)
++
++ Tarball signatures can now be built by running 'make signatures'.
++ There are also new makefile rules 'tarballs', 'check_public', and
++ separate makefile rules for each tarball and signature file.
++ A few makefile rules are now more portable to strict POSIX.
++
++ The main web page now lists the canonical IANA URL.
++
++
++Release 2012h - 2012-10-26 22:49:10 -0700
++
++ Bahia no longer has DST. (Thanks to Kelley Cook.)
++
++ Tocantins has DST. (Thanks to Rodrigo Severo.)
++
++ Israel has new DST rules next year. (Thanks to Ephraim Silverberg.)
++
++ Jordan stays on DST this winter. (Thanks to Steffen Thorsen.)
++
++ Web page updates.
++
++ More C modernization, except that at Arthur David Olson's suggestion
++ the instances of 'register' were kept.
++
++
++Release 2012g - 2012-10-17 20:59:45 -0700
++
++ Samoa fall 2012 and later. (Thanks to Nicholas Pereira and Robert Elz.)
++
++ Palestine fall 2012. (Thanks to Steffen Thorsen.)
++
++ Assume C89.
++
++ To attack the version-number problem, this release ships the file
++ 'Makefile' (which contains the release number) in both the tzcode and
++ the tzdata tarballs. The two Makefiles are identical, and should be
++ identical in any matching pair of tarballs, so it shouldn't matter
++ which order you extract the tarballs. Perhaps we can come up with a
++ better version-number scheme at some point; this scheme does have the
++ virtue of not adding more files.
++
++
++Release 2012f - 2012-09-12 23:17:03 -0700
++
++ * australasia (Pacific/Fiji): Fiji DST is October 21 through January
++ 20 this year. (Thanks to Steffen Thorsen.)
++
++
++Release 2012e - 2012-08-02 20:44:55 -0700
++
++ * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
++ (Thanks to Steffen Thorsen.)
++
++ * Use a single version number for both code and data.
++
++ * .gitignore: New file.
++
++ * Remove trailing white space.
++
++
++Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
++
++ Changes for Morocco's time stamps, which take effect in a couple of
++ hours, along with infrastructure changes to accommodate how the tz
++ code and data are released on IANA.
++
++
++Release data2012c - 2012-03-27 12:17:25 -0400
++
++ africa
++ Summer time changes for Morocco (to start late April 2012)
++
++ asia
++ Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
++
++ northamerica
++ Haiti following US/Canada rules for 2012 (and we're assuming,
++ for now anyway, for the future).
++
++
++Release 2012b - 2012-03-02 12:29:15 +0700
++
++ There is just one change to tzcode2012b (compared with 2012a):
++ the Makefile that was accidentally included with 2012a has been
++ replaced with the version that should have been there, which is
++ identical with the previous version (from tzcode2011i).
++
++ There are just two changes in tzdata2012b compared with 2012a.
++
++ Most significantly, summer time in Cuba has been delayed 3 weeks
++ (now starts April 1 rather than March 11). Since Mar 11 (the old start
++ date, as listed in 2012a) is just a little over a week away, this
++ change is urgent.
++
++ Less importantly, an excess tab in one of the changes in zone.tab
++ in 2012a has been removed.
++
++
++Release 2012a - 2012-03-01 18:28:10 +0700
++
++ The changes in tzcode2012a (compared to the previous version, 2011i)
++ are entirely to the README and tz-art.htm and tz-link.htm files, if
++ none of those concern you, you can ignore the code update. The changes
++ reflect the changed addresses for the mailing list and the code and
++ data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
++ has been added to tz-link.htm).
++
++ In tzdata2012a (compared to the previous release, which was 2011n)
++ the major changes are:
++ Chile 2011/2012 and 2012/2013 summer time date adjustments.
++ Falkland Islands onto permanent summer time (we're assuming for the
++ foreseeable future, though 2012 is all we're fairly certain of.)
++ Armenia has abolished Summer Time.
++ Tokelau jumped the International Date Line back last December
++ (just the same as their near neighbour, Samoa).
++ America/Creston is a new zone for a small area of British Columbia
++ There will be a leapsecond 2012-06-30 23:59:60 UTC.
++
++ Other minor changes are:
++ Corrections to 1918 Canadian summer time end dates.
++ Updated URL for UK time zone history (in comments)
++ A few typos in Le Corre's list of free French place names (comments)
++
++
++Release data2011n - 2011-10-30 14:57:54 +0700
++
++ There are three changes of note - most urgently, Cuba (America/Havana)
++ has extended summer time by two weeks, now to end on Nov 13, rather than
++ the (already past) Oct 30. Second, the Pridnestrovian Moldavian Republic
++ (Europe/Tiraspol) decided not to split from the rest of Moldova after
++ all, and consequently that zone has been removed (again) and reinstated
++ in the "backward" file as a link to Europe/Chisinau. And third, the
++ end date for Fiji's summer time this summer was moved forward from the
++ earlier planned Feb 26, to Jan 22.
++
++ Apart from that, Moldova (MD) returns to a single entry in zone.tab
++ (and the incorrect syntax that was in the 2011m version of that file
++ is so fixed - it would have been fixed in a different way had this
++ change not happened - that's the "missing" sccs version id).
++
++
++Release data2011m - 2011-10-24 21:42:16 +0700
++
++ In particular, the typos in comments in the data (2011-11-17 should have
++ been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
++ Tim Parenti noted) have been fixed, and the change for Ukraine has been
++ made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
++ Tim Parenti, and also Denys Gavrysh)
++
++ In addition, I added Europe/Tiraspol to zone.tab.
++
++ This time, all the files have new version numbers... (including the files
++ otherwise unchanged in 2011m that were changed in 2011l but didn't get new
++ version numbers there...)
++
++
++Release data2011l - 2011-10-10 11:15:43 +0700
++
++ There are just 2 changes that cause different generated tzdata files from
++ zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
++ is included, but commented out. Compared with the diff I sent out last week,
++ this version also includes attributions for the sources for the changes
++ (in much the same format as ado used, but the html tags have not been
++ checked, verified, or used in any way at all, so if there are errors there,
++ please let me know.)
++
++
++Release data2011k - 2011-09-20 17:54:03 -0400
++
++ [not summarized]
++
++
++Release data2011j - 2011-09-12 09:22:49 -0400
++
++ (contemporary changes for Samoa; past changes for Kenya, Uganda, and
++ Tanzania); there are also two spelling corrections to comments in
++ the australasia file (with thanks to Christos Zoulas).
++
++
++Release 2011i - 2011-08-29 05:56:32 -0400
++
++ [not summarized]
++
++
++Release data2011h - 2011-06-15 18:41:48 -0400
++
++ Russia and Curaçao changes
++
++
++Release 2011g - 2011-04-25 09:07:22 -0400
++
++ update the rules for Egypt to reflect its abandonment of DST this year
++
++
++Release 2011f - 2011-04-06 17:14:53 -0400
++
++ [not summarized]
++
++
++Release 2011e - 2011-03-31 16:04:38 -0400
++
++ Morocco, Chile, and tz-link changes
++
++
++Release 2011d - 2011-03-14 09:18:01 -0400
++
++ changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++
++
++Release 2011c - 2011-03-07 09:30:09 -0500
++
++ These do affect current time stamps in Chile and Annette Island, Canada.
++
++
++Release 2011b - 2011-02-07 08:44:50 -0500
++
++ [not summarized]
++
++
++Release 2011a - 2011-01-24 10:30:16 -0500
++
++ [not summarized]
++
++
++Release data2010o - 2010-11-01 09:18:23 -0400
++
++ change to the end of DST in Fiji in 2011
++
++
++Release 2010n - 2010-10-25 08:19:17 -0400
++
++ [not summarized]
++
++
++Release 2010m - 2010-09-27 09:24:48 -0400
++
++ Hong Kong, Vostok, and zic.c changes
++
++
++Release 2010l - 2010-08-16 06:57:25 -0400
++
++ [not summarized]
++
++
++Release 2010k - 2010-07-26 10:42:27 -0400
++
++ [not summarized]
++
++
++Release 2010j - 2010-05-10 09:07:48 -0400
++
++ changes for Bahía de Banderas and for version naming
++
++
++Release data2010i - 2010-04-16 18:50:45 -0400
++
++ the end of DST in Morocco on 2010-08-08
++
++
++Release data2010h - 2010-04-05 09:58:56 -0400
++
++ [not summarized]
++
++
++Release data2010g - 2010-03-24 11:14:53 -0400
++
++ [not summarized]
++
++
++Release 2010f - 2010-03-22 09:45:46 -0400
++
++ [not summarized]
++
++
++Release data2010e - 2010-03-08 14:24:27 -0500
++
++ corrects the Dhaka bug found by Danvin Ruangchan
++
++
++Release data2010d - 2010-03-06 07:26:01 -0500
++
++ [not summarized]
++
++
++Release 2010c - 2010-03-01 09:20:58 -0500
++
++ changes including KRE's suggestion for earlier initialization of
++ "goahead" and "goback" structure elements
++
++
++Release code2010a - 2010-02-16 10:40:04 -0500
++
++ [not summarized]
++
++
++Release data2010b - 2010-01-20 12:37:01 -0500
++
++ Mexico changes
++
++
++Release data2010a - 2010-01-18 08:30:04 -0500
++
++ changes to Dhaka
++
++
++Release data2009u - 2009-12-26 08:32:28 -0500
++
++ changes to DST in Bangladesh
++
++
++Release 2009t - 2009-12-21 13:24:27 -0500
++
++ [not summarized]
++
++
++Release data2009s - 2009-11-14 10:26:32 -0500
++
++ (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
++
++
++Release 2009r - 2009-11-09 10:10:31 -0500
++
++ "antarctica" and "tz-link.htm" changes
++
++
++Release 2009q - 2009-11-02 09:12:40 -0500
++
++ with two corrections as reported by Eric Muller and Philip Newton
++
++
++Release data2009p - 2009-10-23 15:05:27 -0400
++
++ Argentina (including San Luis) changes (with the correction from
++ Mariano Absatz)
++
++
++Release data2009o - 2009-10-14 16:49:38 -0400
++
++ Samoa (commentary only), Pakistan, and Bangladesh changes
++
++
++Release data2009n - 2009-09-22 15:13:38 -0400
++
++ added commentary for Argentina and a change to the end of DST in
++ 2009 in Pakistan
++
++
++Release data2009m - 2009-09-03 10:23:43 -0400
++
++ Samoa and Palestine changes
++
++
++Release data2009l - 2009-08-14 09:13:07 -0400
++
++ Samoa (comments only) and Egypt
++
++
++Release 2009k - 2009-07-20 09:46:08 -0400
++
++ [not summarized]
++
++
++Release data2009j - 2009-06-15 06:43:59 -0400
++
++ Bangladesh change (with a short turnaround since the DST change is
++ impending)
++
++
++Release 2009i - 2009-06-08 09:21:22 -0400
++
++ updating for DST in Bangladesh this year
++
++
++Release 2009h - 2009-05-26 09:19:14 -0400
++
++ [not summarized]
++
++
++Release data2009g - 2009-04-20 16:34:07 -0400
++
++ Cairo
++
++
++Release data2009f - 2009-04-10 11:00:52 -0400
++
++ correct DST in Pakistan
++
++
++Release 2009e - 2009-04-06 09:08:11 -0400
++
++ [not summarized]
++
++
++Release 2009d - 2009-03-23 09:38:12 -0400
++
++ Morocco, Tunisia, Argentina, and American Astronomical Society changes
++
++
++Release data2009c - 2009-03-16 09:47:51 -0400
++
++ change to the start of Cuban DST
++
++
++Release 2009b - 2009-02-09 11:15:22 -0500
++
++ [not summarized]
++
++
++Release 2009a - 2009-01-21 10:09:39 -0500
++
++ [not summarized]
++
++
++Release data2008i - 2008-10-21 12:10:25 -0400
++
++ southamerica and zone.tab files, with Argentina DST rule changes and
++ United States zone reordering and recommenting
++
++
++Release 2008h - 2008-10-13 07:33:56 -0400
++
++ [not summarized]
++
++
++Release 2008g - 2008-10-06 09:03:18 -0400
++
++ Fix a broken HTML anchor and update Brazil's DST transitions;
++ there's also a slight reordering of information in tz-art.htm.
++
++
++Release data2008f - 2008-09-09 22:33:26 -0400
++
++ [not summarized]
++
++
++Release 2008e - 2008-07-28 14:11:17 -0400
++
++ changes by Arthur David Olson and Jesper Nørgaard Welen
++
++
++Release data2008d - 2008-07-07 09:51:38 -0400
++
++ changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
++
++
++Release data2008c - 2008-05-19 17:48:03 -0400
++
++ Pakistan, Morocco, and Mongolia
++
++
++Release data2008b - 2008-03-24 08:30:59 -0400
++
++ including renaming Asia/Calcutta to Asia/Kolkata, with a backward
++ link provided
++
++
++Release 2008a - 2008-03-08 05:42:16 -0500
++
++ [not summarized]
++
++
++Release 2007k - 2007-12-31 10:25:22 -0500
++
++ most importantly, changes to the "southamerica" file based on
++ Argentina's readoption of daylight saving time
++
++
++Release 2007j - 2007-12-03 09:51:01 -0500
++
++ 1. eliminate the "P" (parameter) macro;
++
++ 2. the "noncontroversial" changes circulated on the time zone
++ mailing list (less the changes to "logwtmp.c");
++
++ 3. eliminate "too many transition" errors when "min" is used in time
++ zone rules;
++
++ 4. changes by Paul Eggert (including updated information for Venezuela).
++
++
++Release data2007i - 2007-10-30 10:28:11 -0400
++
++ changes for Cuba and Syria
++
++
++Release 2007h - 2007-10-01 10:05:51 -0400
++
++ changes by Paul Eggert, as well as an updated link to the ICU
++ project in tz-link.htm
++
++
++Release 2007g - 2007-08-20 10:47:59 -0400
++
++ changes by Paul Eggert
++
++ The "leapseconds" file has been updated to incorporate the most
++ recent International Earth Rotation and Reference Systems Service
++ (IERS) bulletin.
++
++ There's an addition to tz-art.htm regarding the television show "Medium".
++
++
++Release 2007f - 2007-05-07 10:46:46 -0400
++
++ changes by Paul Eggert (including Haiti, Turks and Caicos, and New
++ Zealand)
++
++ changes to zic.c to allow hour values greater than 24 (along with
++ Paul's improved time value overflow checking)
++
++
++Release 2007e - 2007-04-02 10:11:52 -0400
++
++ Syria and Honduras changes by Paul Eggert
++
++ zic.c variable renaming changes by Arthur David Olson
++
++
++Release 2007d - 2007-03-20 08:48:30 -0400
++
++ changes by Paul Eggert
++
++ the elimination of white space at the ends of lines
++
++
++Release 2007c - 2007-02-26 09:09:37 -0500
++
++ changes by Paul Eggert
++
++
++Release 2007b - 2007-02-12 09:34:20 -0500
++
++ Paul Eggert's proposed change to the quotation handling logic in zic.c.
++
++ changes to the commentary in "leapseconds" reflecting the IERS
++ announcement that there is to be no positive leap second at the end
++ of June 2007.
++
++
++Release 2007a - 2007-01-08 12:28:29 -0500
++
++ changes by Paul Eggert
++
++ Derick Rethan's Asmara change
++
++ Oscar van Vlijmen's Easter Island local mean time change
++
++ symbolic link changes
++
++
++Release 2006p - 2006-11-27 08:54:27 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006o - 2006-11-06 09:18:07 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006n - 2006-10-10 11:32:06 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006m - 2006-10-02 15:32:35 -0400
++
++ changes for Uruguay, Palestine, and Egypt by Paul Eggert
++
++ (minimalist) changes to zic.8 to clarify "until" information
++
++
++Release data2006l - 2006-09-18 12:58:11 -0400
++
++ Paul's best-effort work on this coming weekend's Egypt time change
++
++
++Release 2006k - 2006-08-28 12:19:09 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006j - 2006-08-21 09:56:32 -0400
++
++ changes by Paul Eggert
++
++
++Release code2006i - 2006-08-07 12:30:55 -0400
++
++ localtime.c fixes
++
++ Ken Pizzini's conversion script
++
++
++Release code2006h - 2006-07-24 09:19:37 -0400
++
++ adds public domain notices to four files
++
++ includes a fix for transition times being off by a second
++
++ adds a new recording to the "arts" file (information courtesy Colin Bowern)
++
++
++Release 2006g - 2006-05-08 17:18:09 -0400
++
++ northamerica changes by Paul Eggert
++
++
++Release 2006f - 2006-05-01 11:46:00 -0400
++
++ a missing version number problem is fixed (with thanks to Bradley
++ White for catching the problem)
++
++
++Release 2006d - 2006-04-17 14:33:43 -0400
++
++ changes by Paul Eggert
++
++ added new items to tz-arts.htm that were found by Paul
++
++
++Release 2006c - 2006-04-03 10:09:32 -0400
++
++ two sets of data changes by Paul Eggert
++
++ a fencepost error fix in zic.c
++
++ changes to zic.c and the "europe" file to minimize differences
++ between output produced by the old 32-bit zic and the new 64-bit
++ version
++
++
++Release 2006b - 2006-02-20 10:08:18 -0500
++ [tz32code2006b + tz64code2006b + tzdata2006b]
++
++ 64-bit code
++
++ All SCCS IDs were bumped to "8.1" for this release.
++
++
++Release 2006a - 2006-01-30 08:59:31 -0500
++
++ changes by Paul Eggert (in particular, Indiana time zone moves)
++
++ an addition to the zic manual page to describe how special-case
++ transitions are handled
++
++
++Release 2005r - 2005-12-27 09:27:13 -0500
++
++ Canadian changes by Paul Eggert
++
++ They also add "<pre>" directives to time zone data files and reflect
++ changes to warning message logic in "zdump.c" (but with calls to
++ "gettext" kept unbundled at the suggestion of Ken Pizzini).
++
++
++Release 2005q - 2005-12-13 09:17:09 -0500
++
++ Nothing earth-shaking here:
++ 1. Electronic mail addresses have been removed.
++ 2. Casts of the return value of exit have been removed.
++ 3. Casts of the argument of is.* macros have been added.
++ 4. Indentation in one section of zic.c has been fixed.
++ 5. References to dead URLs in the data files have been dealt with.
++
++
++Release 2005p - 2005-12-05 10:30:53 -0500
++
++ "systemv", "tz-link.htm", and "zdump.c" changes
++ (less the casts of arguments to the is* macros)
++
++
++Release 2005o - 2005-11-28 10:55:26 -0500
++
++ Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
++
++ zdump.c lint fixes by Arthur David Olson
++
++
++Release 2005n - 2005-10-03 09:44:09 -0400
++
++ changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
++ et al. changes)
++
++
++Release 2005m - 2005-08-29 12:15:40 -0400
++
++ changes by Paul Eggert (with a small tweak to the tz-art change)
++
++ a declaration of an unused variable has been removed from zdump.c
++
++
++Release 2005l - 2005-08-22 12:06:39 -0400
++
++ changes by Paul Eggert
++
++ overflow/underflow checks by Arthur David Olson, minus changes to
++ the "Theory" file about the pending addition of 64-bit data (I grow
++ less confident of the changes being accepted with each passing day,
++ and the changes no longer increase the data files nine-fold--there's
++ less than a doubling in size by my local Sun's reckoning)
++
++
++Release 2005k - 2005-07-14 14:14:24 -0400
++
++ The "leapseconds" file has been edited to reflect the recently
++ announced leap second at the end of 2005.
++
++ I've also deleted electronic mail addresses from the files as an
++ anti-spam measure.
++
++
++Release 2005j - 2005-06-13 14:34:13 -0400
++
++ These reflect changes to limit the length of time zone abbreviations
++ and the characters used in those abbreviations.
++
++ There are also changes to handle POSIX-style "quoted" time zone
++ environment variables.
++
++ The changes were circulated on the time zone mailing list; the only
++ change since then was the removal of a couple of minimum-length of
++ abbreviation checks.
++
++
++Release data2005i - 2005-04-21 15:04:16 -0400
++
++ changes (most importantly to Nicaragua and Haiti) by Paul Eggert
++
++
++Release 2005h - 2005-04-04 11:24:47 -0400
++
++ changes by Paul Eggert
++
++ minor changes to Makefile and zdump.c to produce more useful output
++ when doing a "make typecheck"
++
++
++Release 2005g - 2005-03-14 10:11:21 -0500
++
++ changes by Paul Eggert (a change to current DST rules in Uruguay and
++ an update to a link to time zone software)
++
++
++Release 2005f - 2005-03-01 08:45:32 -0500
++
++ data and documentation changes by Paul Eggert
++
++
++Release 2005e - 2005-02-10 15:59:44 -0500
++
++ [not summarized]
++
++
++Release code2005d - 2005-01-31 09:21:47 -0500
++
++ make zic complain about links to links if the -v flag is used
++
++ have "make public" do more code checking
++
++ add an include to "localtime.c" for the benefit of gcc systems
++
++
++Release 2005c - 2005-01-17 18:36:29 -0500
++
++ get better results when mktime runs on a system where time_t is double
++
++ changes to the data files (most importantly to Paraguay)
++
++
++Release 2005b - 2005-01-10 09:19:54 -0500
++
++ Get localtime and gmtime working on systems with exotic time_t types.
++
++ Update the leap second commentary in the "leapseconds" file.
++
++
++Release 2005a - 2005-01-01 13:13:44 -0500
++
++ [not summarized]
++
++
++Release code2004i - 2004-12-14 13:42:58 -0500
++
++ Deal with systems where time_t is unsigned.
++
++
++Release code2004h - 2004-12-07 11:40:18 -0500
++
++ 64-bit-time_t changes
++
++
++Release 2004g - 2004-11-02 09:06:01 -0500
++
++ update to Cuba (taking effect this weekend)
++
++ other changes by Paul Eggert
++
++ correction of the spelling of Oslo
++
++ changed versions of difftime.c and private.h
++
++
++Release code2004f - 2004-10-21 10:25:22 -0400
++
++ Cope with wide-ranging tm_year values.
++
++
++Release 2004e - 2004-10-11 14:47:21 -0400
++
++ Brazil/Argentina/Israel changes by Paul Eggert
++
++ changes to tz-link.htm by Paul
++
++ one small fix to Makefile
++
++
++Release 2004d - 2004-09-22 08:27:29 -0400
++
++ Avoid overflow problems when TM_YEAR_BASE is added to an integer.
++
++
++Release 2004c - 2004-08-11 12:06:26 -0400
++
++ asctime-related changes
++
++ (variants of) some of the documentation changes suggested by Paul Eggert
++
++
++Release 2004b - 2004-07-19 14:33:35 -0400
++
++ data changes by Paul Eggert - most importantly, updates for Argentina
++
++
++Release 2004a - 2004-05-27 12:00:47 -0400
++
++ changes by Paul Eggert
++
++ Handle DST transitions that occur at the end of a month in some
++ years but at the start of the following month in other years.
++
++ Add a copy of the correspondence that's the basis for claims about
++ DST in the Navajo Nation.
++
++
++Release 2003e - 2003-12-15 09:36:47 -0500
++
++ changes by Arthur David Olson (primarily code changes)
++
++ changes by Paul Eggert (primarily data changes)
++
++ minor changes to "Makefile" and "northamerica" (in the latter case,
++ optimization of the "Toronto" rules)
++
++
++Release 2003d - 2003-10-06 09:34:44 -0400
++
++ changes by Paul Eggert
++
++
++Release 2003c - 2003-09-16 10:47:05 -0400
++
++ Fix bad returns in zic.c's inleap function.
++ Thanks to Bradley White for catching the problem!
++
++
++Release 2003b - 2003-09-16 07:13:44 -0400
++
++ Add a "--version" option (and documentation) to the zic and zdump commands.
++
++ changes to overflow/underflow checking in zic
++
++ a localtime typo fix.
++
++ Update the leapseconds and tz-art.htm files.
++
++
++Release 2003a - 2003-03-24 09:30:54 -0500
++
++ changes by Paul Eggert
++
++ a few additions and modifications to the tz-art.htm file
++
++
++Release 2002d - 2002-10-15 13:12:42 -0400
++
++ changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
++
++ There's also a new time zone quote in "tz-art.htm".
++
++
++Release 2002c - 2002-04-04 11:55:20 -0500
++
++ changes by Paul Eggert
++
++ Change zic.c to avoid creating symlinks to files that don't exist.
++
++
++Release 2002b - 2002-01-28 12:56:03 -0500
++
++ [These change notes are for Release 2002a, which was corrupted.
++ 2002b was a corrected version of 2002a.]
++
++ changes by Paul Eggert
++
++ Update the "leapseconds" file to note that there'll be no leap
++ second at the end of June, 2002.
++
++ Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
++
++ Change to "difftime.c" to avoid sizeof problems.
++
++
++Release 2001d - 2001-10-09 13:31:32 -0400
++
++ changes by Paul Eggert
++
++
++Release 2001c - 2001-06-05 13:59:55 -0400
++
++ changes by Paul Eggert and Andrew Brown
++
++
++Release 2001b - 2001-04-05 16:44:38 -0400
++
++ changes by Paul Eggert (modulo jnorgard's typo fix)
++
++ tz-art.htm has been HTMLified.
++
++
++Release 2001a - 2001-03-13 12:57:44 -0500
++
++ changes by Paul Eggert
++
++ An addition to the "leapseconds" file: comments with the text of the
++ latest IERS leap second notice.
++
++ Trailing white space has been removed from data file lines, and
++ repeated spaces in "Rule Jordan" lines in the "asia" file have been
++ converted to tabs.
++
++
++Release 2000h - 2000-12-14 15:33:38 -0500
++
++ changes by Paul Eggert
++
++ one typo fix in the "art" file
++
++ With providence, this is the last update of the millennium.
++
++
++Release 2000g - 2000-10-10 11:35:22 -0400
++
++ changes by Paul Eggert
++
++ correction of John Mackin's name submitted by Robert Elz
++
++ Garry Shandling's Daylight Saving Time joke (!?!) from the recent
++ Emmy Awards broadcast.
++
++
++Release 2000f - 2000-08-10 09:31:58 -0400
++
++ changes by Paul Eggert
++
++ Added information in "tz-art.htm" on a Seinfeld reference to DST.
++
++ Error checking and messages in the "yearistype" script have been
++ improved.
++
++
++Release 2000e - 2000-07-31 09:27:54 -0400
++
++ data changes by Paul Eggert
++
++ a change to the default value of the defined constant HAVE_STRERROR
++
++ the addition of a Dave Barry quote on DST to the tz-arts file
++
++
++Release 2000d - 2000-04-20 15:43:04 -0400
++
++ changes to the documentation and code of strftime for C99 conformance
++
++ a bug fix for date.c
++
++ These are based on (though modified from) changes by Paul Eggert.
++
++
++Release 2000c - 2000-03-04 10:31:43 -0500
++
++ changes by Paul Eggert
++
++
++Release 2000b - 2000-02-21 12:16:29 -0500
++
++ changes by Paul Eggert and Joseph Myers
++
++ modest tweaks to the tz-art.htm and tz-link.htm files
++
++
++Release 2000a - 2000-01-18 09:21:26 -0500
++
++ changes by Paul Eggert
++
++ The two hypertext documents have also been renamed.
++
++
++Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
++
++ Paul Eggert's changes
++
++ additions to the "zic" manual page and the "Arts.htm" file
++
++
++Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
++
++ [not summarized]
++
++
++Release data1999h - 1999-10-07 03:50:29 -0400
++
++ changes by Paul Eggert to "europe" (most importantly, fixing
++ Lithuania and Estonia)
++
++
++Release 1999g - 1999-09-28 11:06:18 -0400
++
++ data changes by Paul Eggert (most importantly, the change for
++ Lebanon that buys correctness for this coming Sunday)
++
++ The "code" file contains changes to "Makefile" and "checktab.awk" to
++ allow better checking of time zone files before they are published.
++
++
++Release 1999f - 1999-09-23 09:48:14 -0400
++
++ changes by Arthur David Olson and Paul Eggert
++
++
++Release 1999e - 1999-08-17 15:20:54 -0400
++
++ changes circulated by Paul Eggert, although the change to handling
++ of DST-specifying time zone names has been commented out for now
++ (search for "XXX" in "localtime.c" for details). These files also
++ do not make any changes to the start of DST in Brazil.
++
++ In addition to Paul's changes, there are updates to "Arts.htm" and
++ cleanups of URLs.
++
++
++Release 1999d - 1999-03-30 11:31:07 -0500
++
++ changes by Paul Eggert
++
++ The Makefile's "make public" rule has also been changed to do a test
++ compile of each individual time zone data file (which should help
++ avoid problems such as the one we had with Nicosia).
++
++
++Release 1999c - 1999-03-25 09:47:47 -0500
++
++ changes by Paul Eggert, most importantly the change for Chile.
++
++
++Release 1999b - 1999-02-01 17:51:44 -0500
++
++ changes by Paul Eggert
++
++ code changes (suggested by Mani Varadarajan, mani at be.com) for
++ correct handling of symbolic links when building using a relative directory
++
++ code changes to generate correct messages for failed links
++
++ updates to the URLs in Arts.htm
++
++
++Release 1999a - 1999-01-19 16:20:29 -0500
++
++ error message internationalizations and corrections in zic.c and
++ zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
++ to whom thanks!)
++
++
++Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
++
++ changes for Brazil, Chile, and Germany
++
++ support for use of "24:00" in the input files for the time zone compiler
++
++
++Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
++
++ changes by Paul Eggert
++
++ correction to a define in the "private.h" file
++
++
++Release data1998g - 1998-08-11 03:28:35 -0000
++ [tzdata1998g.tar.gz is missing!]
++
++ Lithuanian change provided by mgedmin at pub.osf.it
++
++ Move creation of the GMT link with Etc/GMT to "etcetera" (from
++ "backward") to ensure that the GMT file is created even where folks
++ don't want the "backward" links (as suggested by Paul Eggert).
++
++
++Release data1998f - 1998-07-20 13:50:00 -0000
++ [tzdata1998f.tar.gz is missing!]
++
++ Update the "leapseconds" file to include the newly-announced
++ insertion at the end of 1998.
++
++
++Release code1998f - 1998-06-01 10:18:31 -0400
++
++ addition to localtime.c by Guy Harris
++
++
++Release 1998e - 1998-05-28 09:56:26 -0400
++
++ The Makefile is changed to produce zoneinfo-posix rather than
++ zoneinfo/posix, and to produce zoneinfo-leaps rather than
++ zoneinfo/right.
++
++ data changes by Paul Eggert
++
++ changes from Guy Harris to provide asctime_r and ctime_r
++
++ A usno1998 file (substantially identical to usno1997) has been added.
++
++
++Release 1998d - 1998-05-14 11:58:34 -0400
++
++ changes to comments (in particular, elimination of references to CIA maps).
++ "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
++ where changes occur.
++
++
++Release 1998c - 1998-02-28 12:32:26 -0500
++
++ changes by Paul Eggert (save the "French correction," on which I'll
++ wait for the dust to settle)
++
++ symlink changes
++
++ changes and additions to Arts.htm
++
++
++Release 1998b - 1998-01-17 14:31:51 -0500
++
++ URL cleanups and additions
++
++
++Release 1998a - 1998-01-13 12:37:35 -0500
++
++ changes by Paul Eggert
++
++
++Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
++
++ changes by Paul Eggert, with minor modifications from Arthur David
++ Olson to make the files more browser friendly
++
++
++Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
++
++ minor changes to put "TZif" at the start of each time zone information file
++
++ a rule has also been added to the Makefile so you can
++ make zones
++ to just recompile the zone information files (rather than doing a
++ full "make install" with its other effects).
++
++
++Release data1997i - 1997-10-07 08:45:38 -0400
++
++ changes to Africa by Paul Eggert
++
++
++Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
++
++ corrections for Uruguay (and other locations)
++
++ Arthur David Olson's simple-minded fix allowing mktime to both
++ correctly handle leap seconds and correctly handle tm_sec values
++ upon which arithmetic has been performed.
++
++
++Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
++
++ Paul Eggert's updates
++
++ a small change to a function prototype;
++
++ "Music" has been renamed "Arts.htm", HTMLified, and augmented to
++ include information on Around the World in Eighty Days.
++
++
++Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
++
++ fixes to zic's error handling
++
++ changes inspired by the item circulated on Slovenia
++
++ The description of Web resources has been HTMLified for browsing
++ convenience.
++
++ A new piece of tz-related music has been added to the "Music" file.
++
++
++Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
++
++ Paul Eggert's latest suggestions
++
++
++Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
++
++ changes to "zic.c" to correct performance of the "-s" option
++
++ a new file "usno1997"
++
++
++Release data1997c - 1997-03-04 09:58:18 -0500
++
++ changes in Israel
++
++
++Release 1997b - 1997-02-27 18:34:19 -0500
++
++ The data file incorporates the 1997 leap second.
++
++ The code file incorporates Arthur David Olson's take on the
++ zic/multiprocessor/directory-creation situation.
++
++
++Release 1997a - 1997-01-21 09:11:10 -0500
++
++ Paul Eggert's Antarctica (and other changes)
++
++ Arthur David Olson finessed the "getopt" issue by checking against
++ both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
++ is returned while SunOS 5.5's manual says EOF is returned).
++
++
++Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
++
++ Paul Eggert's latest changes
++
++
++Release code1996n - 1996-12-16 09:42:02 -0500
++
++ link snapping fix from Bruce Evans (via Garrett Wollman)
++
++
++Release data1996m - 1996-11-24 02:37:34 -0000
++ [tzdata1996m.tar.gz is missing!]
++
++ Paul Eggert's batch of changes
++
++
++Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
++
++ No functional changes here; the files have simply been changed to
++ make more use of ISO style dates in comments. The names of the above
++ files now include the year in full.
++
++
++Release code96l - 1996-09-08 17:12:20 -0400
++
++ tzcode96k was missing a couple of pieces.
++
++
++Release 96k - 1996-09-08 16:06:22 -0400
++
++ the latest round of changes from Paul Eggert
++
++ the recent Year 2000 material
++
++
++Release code96j - 1996-07-30 13:18:53 -0400
++
++ Set sp->typecnt as suggested by Timothy Patrick Murphy.
++
++
++Release code96i - 1996-07-27 20:11:35 -0400
++
++ Paul's suggested patch for strftime %V week numbers
++
++
++Release data96i - 1996-07-01 18:13:04 -0400
++
++ "northamerica" and "europe" changes by Paul Eggert
++
++
++Release code96h - 1996-06-05 08:02:21 -0400
++
++ fix for handling transitions specified in Universal Time
++
++ Some "public domain" notices have also been added.
++
++
++Release code96g - 1996-05-16 14:00:26 -0400
++
++ fix for the simultaneous-DST-and-zone-change challenge
++
++
++Release data96h - 1996-05-09 17:40:51 -0400
++
++ changes by Paul Eggert
++
++
++Release code96f-data96g - 1996-05-03 03:09:59 -0000
++ [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
++
++ The changes get us some of the way to fixing the problems noted in Paul
++ Eggert's letter yesterday (in addition to a few others). The approach
++ has been to make zic a bit smarter about figuring out what time zone
++ abbreviations apply just after the time specified in the "UNTIL" part
++ of a zone line. Putting the smarts in zic means avoiding having
++ transition times show up in both "Zone" lines and "Rule" lines, which
++ in turn avoids multiple transition time entries in time zone files.
++ (This also makes the zic input files such as "europe" a bit shorter and
++ should ease maintenance.)
++
++
++Release data96f - 1996-04-19 19:20:03 -0000
++ [tzdata96f.tar.gz is missing!]
++
++ The only changes are to the "northamerica" file; the time zone
++ abbreviation for Denver is corrected to MST (and MDT), and the
++ comments for Mexico have been updated.
++
++
++Release data96e - 1996-03-19 17:37:26 -0500
++
++ Proposals by Paul Eggert, in particular the Portugal change that
++ comes into play at the end of this month.
++
++
++Release data96d - 1996-03-18 20:49:39 -0500
++
++ [not summarized]
++
++
++Release code96e - 1996-02-29 15:43:27 -0000
++ [tzcode96e.tar.gz is missing!]
++
++ internationalization changes and the fix to the documentation for strftime
++
++
++Release code96d-data96c - 1996-02-12 11:05:27 -0500
++
++ The "code" file simply updates Bob Kridle's electronic address.
++
++ The "data" file updates rules for Mexico.
++
++
++Release data96b - 1996-01-27 15:44:42 -0500
++
++ Kiribati change
++
++
++Release code96c - 1996-01-16 16:58:15 -0500
++
++ leap-year streamlining and binary-search changes
++
++ fix to newctime.3
++
++
++Release code96b - 1996-01-10 20:42:39 -0500
++
++ fixes and enhancements from Paul Eggert, including code that
++ emulates the behavior of recent versions of the SunOS "date"
++ command.
++
++
++Release 96a - 1996-01-06 09:08:24 -0500
++
++ Israel updates
++
++ fixes to strftime.c for correct ISO 8601 week number generation,
++ plus support for two new formats ('G' and 'g') to give ISO 8601 year
++ numbers (which are not necessarily the same as calendar year numbers)
++
++
++Release code95i-data95m - 1995-12-21 12:46:47 -0500
++
++ The latest revisions from Paul Eggert are included, the usno1995
++ file has been updated, and a new file ("WWW") covering useful URLs
++ has been added.
++
++
++Release code95h-data95l - 1995-12-19 18:10:12 -0500
++
++ A simplification of a macro definition, a change to data for Sudan,
++ and (for last minute shoppers) notes in the "Music" file on the CD
++ "Old Man Time".
++
++
++Release code95g-data95k - 1995-10-30 10:32:47 -0500
++
++ (slightly reformatted) 8-bit-clean proposed patch
++
++ minor patch: US/Eastern -> America/New_York
++
++ snapshot of the USNO's latest data ("usno1995")
++
++ some other minor cleanups
++
++
++Release code95f-data95j - 1995-10-28 21:01:34 -0000
++ [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
++
++ European cleanups
++
++ support for 64-bit time_t's
++
++ optimization in localtime.c
++
++
++Release code95e - 1995-10-13 13:23:57 -0400
++
++ the mktime change to scan from future to past when trying to find time zone
++ offsets
++
++
++Release data95i - 1995-09-26 10:43:26 -0400
++
++ For Canada/Central, guess that the Sun customer's "one week too
++ early" was just a approximation, and the true error is one month
++ too early. This is consistent with the rest of Canada.
++
++
++Release data95h - 1995-09-21 11:26:48 -0400
++
++ latest changes from Paul Eggert
++
++
++Release code95d - 1995-09-14 11:14:45 -0400
++
++ the addition of a "Music" file, which documents four recorded
++ versions of the tune "Save That Time".
++
++
++Release data95g - 1995-09-01 17:21:36 -0400
++
++ "yearistype" correction
++
++
++Release data95f - 1995-08-28 20:46:56 -0400
++
++ Paul Eggert's change to the australasia file
++
++
++Release data95e - 1995-07-08 18:02:34 -0400
++
++ The only change is a leap second at the end of this year.
++ Thanks to Bradley White for forwarding news on the leap second.
++
++
++Release data95d - 1995-07-03 13:26:22 -0400
++
++ Paul Eggert's changes
++
++
++Release data95c - 1995-07-02 19:19:28 -0400
++
++ changes to "asia", "backward", "europe", and "southamerica"
++ (read: northamericacentrics need not apply)
++
++
++Release code95c - 1995-03-13 14:00:46 -0500
++
++ one-line fix for sign extension problems in detzcode
++
++
++Release 95b - 1995-03-04 11:22:38 -0500
++
++ Minor changes in both:
++
++ The "code" file contains a workaround for the lack of "unistd.h" in
++ Microsoft C++ version 7.
++
++ The "data" file contains a fixed "Link" for America/Shiprock.
++
++
++Release 94h - 1994-12-10 12:51:14 -0500
++
++ The files:
++
++ * incorporate the changes to "zdump" and "date" to make changes to
++ the "TZ" environment variable permanent;
++
++ * incorporate the table changes by Paul Eggert;
++
++ * include (and document) support for universal time specifications in
++ data files - but do not (yet) include use of this feature in the
++ data files.
++
++ Think of this as "TZ Classic" - the software has been set up not to break if
++ universal time shows up in its input, and data entries have been
++ left as is so as not to break existing implementations.
++
++
++Release data94f - 1994-08-20 12:56:09 -0400
++
++ (with thanks!) the latest data updates from Paul Eggert
++
++
++Release data94e - 1994-06-04 13:13:53 -0400
++
++ [not summarized]
++
++
++Release code94g - 1994-05-05 12:14:07 -0400
++
++ fix missing "optind.c" and a reference to it in the Makefile
++
++
++Release code94f - 1994-05-05 13:00:33 -0000
++ [tzcode94f.tar.gz is missing!]
++
++ changes to avoid overflow in difftime, as well as changes to cope
++ with the 52/53 challenge in strftime
++
++
++Release code94e - 1994-03-30 23:32:59 -0500
++
++ change for the benefit of PCTS
++
++
++Release 94d - 1994-02-24 15:42:25 -0500
++
++ Avoid clashes with POSIX semantics for zones such as GMT+4.
++
++ Some other very minor housekeeping is also present.
++
++
++Release code94c - 1994-02-10 08:52:40 -0500
++
++ Fix bug where mkdirs was broken unless you compile with
++ -fwritable-strings (which is generally losing to do).
++
++
++Release 94b - 1994-02-07 10:04:33 -0500
++
++ work by Paul Eggert who notes:
++
++ I found another book of time zone histories by E W Whitman; it's not
++ as extensive as Shanks but has a few goodies of its own. I used it
++ to update the tables. I also fixed some more as a result of
++ correspondence with Adam David and Peter Ilieve, and move some stray
++ links from 'europe' to 'backward'. I corrected some scanning errors
++ in usno1989.
++
++ As far as the code goes, I fixed zic to allow years in the range
++ INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
++ And I cleaned up the zic documentation a little bit.
++
++
++Release data94a - 1994-02-03 08:58:54 -0500
++
++ It simply incorporates the recently announced leap second into the
++ "leapseconds" file.
++
++
++Release 93g - 1993-11-22 17:28:27 -0500
++
++ Paul Eggert has provided a good deal of historic information (based
++ on Shanks), and there are some code changes to deal with the buglets
++ that crawled out in dealing with the new information.
++
++
++Release 93f - 1993-10-15 12:27:46 -0400
++
++ Paul Eggert's changes
++
++
++Release 93e - 1993-09-05 21:21:44 -0400
++
++ This has updated data for Israel, England, and Kwajalein. There's
++ also an update to "zdump" to cope with Kwajalein's 24-hour jump.
++ Thanks to Paul Eggert and Peter Ilieve for the changes.
++
++
++Release 93d - 1993-06-17 23:34:17 -0400
++
++ new fix and new data on Israel
++
++
++Release 93c - 1993-06-06 19:31:55 -0400
++
++ [not summarized]
++
++
++Release 93b - 1993-02-02 14:53:58 -0500
++
++ updated "leapseconds" file
++
++
++Release 93 - 1993-01-08 07:01:06 -0500
++
++ At kre's suggestion, the package has been split in two - a code piece
++ (which also includes documentation) that's only of use to folks who
++ want to recompile things and a data piece useful to anyone who can
++ run "zic".
++
++ The new version has a few changes to the data files, a few
++ portability changes, and an off-by-one fix (with thanks to
++ Tom Karzes at deshaw.com for providing a description and a
++ solution).
++
++
++Release 92c - 1992-11-21 17:35:36 -0000
++ [tz92c.tar.Z is missing!]
++
++ The fallout from the latest round of DST transitions.
++
++ There are changes for Portugal, Saskatchewan, and "Pacific-New";
++ there's also a change to "zic.c" that makes it portable to more systems.
++
++
++Release 92 - 1992-04-25 18:17:03 -0000
++ [tz92.tar.Z is missing!]
++
++ By popular demand (well, at any rate, following a request by kre at munnari)
++
++
++The 1989 update of the time zone package featured:
++
++ * POSIXization (including interpretation of POSIX-style TZ environment
++ variables, provided by Guy Harris),
++ * ANSIfication (including versions of "mktime" and "difftime"),
++ * SVIDulation (an "altzone" variable)
++ * MACHination (the "gtime" function)
++ * corrections to some time zone data (including corrections to the rules
++ for Great Britain and New Zealand)
++ * reference data from the United States Naval Observatory for folks who
++ want to do additional time zones
++ * and the 1989 data for Saudi Arabia.
++
++ (Since this code will be treated as "part of the implementation" in some
++ places and as "part of the application" in others, there's no good way to
++ name functions, such as timegm, that are not part of the proposed ANSI C
++ standard; such functions have kept their old, underscore-free names in this
++ update.)
++
++ And the "dysize" function has disappeared; it was present to allow
++ compilation of the "date" command on old BSD systems, and a version of "date"
++ is now provided in the package. The "date" command is not created when you
++ "make all" since it may lack options provided by the version distributed with
++ your operating system, or may not interact with the system in the same way
++ the native version does.
++
++ Since POSIX frowns on correct leap second handling, the default behavior of
++ the "zic" command (in the absence of a "-L" option) has been changed to omit
++ leap second information from its output files.
++
++
++-----
++Notes
++
++This file contains copies of the part of each release announcement
++that talks about the changes in that release. The text has been
++adapted and reformatted for the purposes of this file.
++
++Traditionally a release R consists of a pair of tarball files,
++tzcodeR.tar.gz and tzdataR.tar.gz. However, some releases (e.g.,
++code2010a, data2012c) consist of just one or the other tarball, and a
++few (e.g., code2012c-data2012d) have tarballs with mixed version
++numbers. Recent releases also come in an experimental format
++consisting of a single tarball tzdb-R.tar.lz with extra data.
++
++Release time stamps are taken from the release's commit (for newer,
++Git-based releases), from the newest file in the tarball (for older
++releases, where this info is available) or from the email announcing
++the release (if all else fails; these are marked with a time zone of
++-0000 and an "is missing!" comment).
++
++Earlier versions of the code and data were not announced on the tz
++list and are not summarized here.
++
++This file is in the public domain.
++
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -0,0 +1,71 @@
++README for the tz distribution
++
++"What time is it?" -- Richard Deacon as The King
++"Any time you want it to be." -- Frank Baxter as The Scientist
++ (from the Bell System film "About Time")
++
++The Time Zone Database (often called tz or zoneinfo) contains code and
++data that represent the history of local time for many representative
++locations around the globe. It is updated periodically to reflect
++changes made by political bodies to time zone boundaries, UTC offsets,
++and daylight-saving rules.
++
++Here is a recipe for acquiring, building, installing, and testing the
++tz distribution on a GNU/Linux or similar host.
++
++To acquire the distribution, run the following shell commands:
++
++ mkdir tz
++ cd tz
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tz*-latest.tar.gz'
++ gzip -dc tzcode-latest.tar.gz | tar -xf -
++ gzip -dc tzdata-latest.tar.gz | tar -xf -
++
++Alternatively, the following shell commands acquire the same
++distribution, with extra data useful for regression testing:
++
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tzdb-latest.tar.lz'
++ lzip -dc tzdb-latest.tar.lz | tar -xf -
++
++Be sure to read the comments in "Makefile" and make any changes needed
++to make things right for your system, especially if you are using some
++platform other than GNU/Linux. Then run the following commands,
++substituting your desired installation directory for "$HOME/tzdir":
++
++ make TOPDIR=$HOME/tzdir install
++ $HOME/tzdir/etc/zdump -v America/Los_Angeles
++
++Historical local time information has been included here to:
++
++* provide a compendium of data about the history of civil time
++ that is useful even if not 100% accurate;
++
++* give an idea of the variety of local time rules that have
++ existed in the past and thus an idea of the variety that may be
++ expected in the future;
++
++* provide a test of the generality of the local time rule description
++ system.
++
++The information in the time zone data files is by no means authoritative;
++fixes and enhancements are welcome. Please see the file CONTRIBUTING
++for details.
++
++Thanks to these Time Zone Caballeros who've made major contributions to the
++time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz;
++Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to
++Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales
++for testing work, and to Gwillim Law for checking local mean time data.
++Thanks in particular to Arthur David Olson, the project's founder and first
++maintainer, to whom the time zone community owes the greatest debt of all.
++None of them are responsible for remaining errors.
++
++Look in <ftp://ftp.iana.org/tz/releases/> for updated versions of these files.
++
++Please send comments or information to tz@iana.org.
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson. The other files in this distribution are either
++public domain or BSD licensed; see the file LICENSE for details.
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -0,0 +1,840 @@
++Theory and pragmatics of the tz code and data
++
++
++----- Outline -----
++
++ Scope of the tz database
++ Names of time zone rules
++ Time zone abbreviations
++ Accuracy of the tz database
++ Time and date functions
++ Calendrical issues
++ Time and time zones on Mars
++
++
++----- Scope of the tz database -----
++
++The tz database attempts to record the history and predicted future of
++all computer-based clocks that track civil time. To represent this
++data, the world is partitioned into regions whose clocks all agree
++about time stamps that occur after the somewhat-arbitrary cutoff point
++of the POSIX Epoch (1970-01-01 00:00:00 UTC). For each such region,
++the database records all known clock transitions, and labels the region
++with a notable location. Although 1970 is a somewhat-arbitrary
++cutoff, there are significant challenges to moving the cutoff earlier
++even by a decade or two, due to the wide variety of local practices
++before computer timekeeping became prevalent.
++
++Clock transitions before 1970 are recorded for each such location,
++because most systems support time stamps before 1970 and could
++misbehave if data entries were omitted for pre-1970 transitions.
++However, the database is not designed for and does not suffice for
++applications requiring accurate handling of all past times everywhere,
++as it would take far too much effort and guesswork to record all
++details of pre-1970 civil timekeeping.
++
++As described below, reference source code for using the tz database is
++also available. The tz code is upwards compatible with POSIX, an
++international standard for UNIX-like systems. As of this writing, the
++current edition of POSIX is:
++
++ The Open Group Base Specifications Issue 7
++ IEEE Std 1003.1, 2013 Edition
++ <http://pubs.opengroup.org/onlinepubs/9699919799/>
++
++
++
++----- Names of time zone rules -----
++
++Each of the database's time zone rules has a unique name.
++Inexperienced users are not expected to select these names unaided.
++Distributors should provide documentation and/or a simple selection
++interface that explains the names; for one example, see the 'tzselect'
++program in the tz code. The Unicode Common Locale Data Repository
++<http://cldr.unicode.org/> contains data that may be useful for other
++selection interfaces.
++
++The time zone rule naming conventions attempt to strike a balance
++among the following goals:
++
++ * Uniquely identify every region where clocks have agreed since 1970.
++ This is essential for the intended use: static clocks keeping local
++ civil time.
++
++ * Indicate to experts where that region is.
++
++ * Be robust in the presence of political changes. For example, names
++ of countries are ordinarily not used, to avoid incompatibilities
++ when countries change their name (e.g. Zaire->Congo) or when
++ locations change countries (e.g. Hong Kong from UK colony to
++ China).
++
++ * Be portable to a wide variety of implementations.
++
++ * Use a consistent naming conventions over the entire world.
++
++Names normally have the form AREA/LOCATION, where AREA is the name
++of a continent or ocean, and LOCATION is the name of a specific
++location within that region. North and South America share the same
++area, 'America'. Typical names are 'Africa/Cairo', 'America/New_York',
++and 'Pacific/Honolulu'.
++
++Here are the general rules used for choosing location names,
++in decreasing order of importance:
++
++ Use only valid POSIX file name components (i.e., the parts of
++ names other than '/'). Do not use the file name
++ components '.' and '..'. Within a file name component,
++ use only ASCII letters, '.', '-' and '_'. Do not use
++ digits, as that might create an ambiguity with POSIX
++ TZ strings. A file name component must not exceed 14
++ characters or start with '-'. E.g., prefer 'Brunei'
++ to 'Bandar_Seri_Begawan'. Exceptions: see the discussion
++ of legacy names below.
++ A name must not be empty, or contain '//', or start or end with '/'.
++ Do not use names that differ only in case. Although the reference
++ implementation is case-sensitive, some other implementations
++ are not, and they would mishandle names differing only in case.
++ If one name A is an initial prefix of another name AB (ignoring case),
++ then B must not start with '/', as a regular file cannot have
++ the same name as a directory in POSIX. For example,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++ Uninhabited regions like the North Pole and Bouvet Island
++ do not need locations, since local time is not defined there.
++ There should typically be at least one name for each ISO 3166-1
++ officially assigned two-letter code for an inhabited country
++ or territory.
++ If all the clocks in a region have agreed since 1970,
++ don't bother to include more than one location
++ even if subregions' clocks disagreed before 1970.
++ Otherwise these tables would become annoyingly large.
++ If a name is ambiguous, use a less ambiguous alternative;
++ e.g. many cities are named San José and Georgetown, so
++ prefer 'Costa_Rica' to 'San_Jose' and 'Guyana' to 'Georgetown'.
++ Keep locations compact. Use cities or small islands, not countries
++ or regions, so that any future time zone changes do not split
++ locations into different time zones. E.g. prefer 'Paris'
++ to 'France', since France has had multiple time zones.
++ Use mainstream English spelling, e.g. prefer 'Rome' to 'Roma', and
++ prefer 'Athens' to the Greek 'Αθήνα' or the Romanized 'Athína'.
++ The POSIX file name restrictions encourage this rule.
++ Use the most populous among locations in a zone,
++ e.g. prefer 'Shanghai' to 'Beijing'. Among locations with
++ similar populations, pick the best-known location,
++ e.g. prefer 'Rome' to 'Milan'.
++ Use the singular form, e.g. prefer 'Canary' to 'Canaries'.
++ Omit common suffixes like '_Islands' and '_City', unless that
++ would lead to ambiguity. E.g. prefer 'Cayman' to
++ 'Cayman_Islands' and 'Guatemala' to 'Guatemala_City',
++ but prefer 'Mexico_City' to 'Mexico' because the country
++ of Mexico has several time zones.
++ Use '_' to represent a space.
++ Omit '.' from abbreviations in names, e.g. prefer 'St_Helena'
++ to 'St._Helena'.
++ Do not change established names if they only marginally
++ violate the above rules. For example, don't change
++ the existing name 'Rome' to 'Milan' merely because
++ Milan's population has grown to be somewhat greater
++ than Rome's.
++ If a name is changed, put its old spelling in the 'backward' file.
++ This means old spellings will continue to work.
++
++The file 'zone1970.tab' lists geographical locations used to name time
++zone rules. It is intended to be an exhaustive list of names for
++geographic regions as described above; this is a subset of the names
++in the data. Although a 'zone1970.tab' location's longitude
++corresponds to its LMT offset with one hour for every 15 degrees east
++longitude, this relationship is not exact.
++
++Older versions of this package used a different naming scheme,
++and these older names are still supported.
++See the file 'backward' for most of these older names
++(e.g., 'US/Eastern' instead of 'America/New_York').
++The other old-fashioned names still supported are
++'WET', 'CET', 'MET', and 'EET' (see the file 'europe').
++
++Older versions of this package defined legacy names that are
++incompatible with the first rule of location names, but which are
++still supported. These legacy names are mostly defined in the file
++'etcetera'. Also, the file 'backward' defines the legacy names
++'GMT0', 'GMT-0', 'GMT+0' and 'Canada/East-Saskatchewan', and the file
++'northamerica' defines the legacy names 'EST5EDT', 'CST6CDT',
++'MST7MDT', and 'PST8PDT'.
++
++Excluding 'backward' should not affect the other data. If
++'backward' is excluded, excluding 'etcetera' should not affect the
++remaining data.
++
++
++----- Time zone abbreviations -----
++
++When this package is installed, it generates time zone abbreviations
++like 'EST' to be compatible with human tradition and POSIX.
++Here are the general rules used for choosing time zone abbreviations,
++in decreasing order of importance:
++
++ Use three or more characters that are ASCII alphanumerics or '+' or '-'.
++ Previous editions of this database also used characters like
++ ' ' and '?', but these characters have a special meaning to
++ the shell and cause commands like
++ set `date`
++ to have unexpected effects.
++ Previous editions of this rule required upper-case letters,
++ but the Congressman who introduced Chamorro Standard Time
++ preferred "ChST", so lower-case letters are now allowed.
++ Also, POSIX from 2001 on relaxed the rule to allow '-', '+',
++ and alphanumeric characters from the portable character set
++ in the current locale. In practice ASCII alphanumerics and
++ '+' and '-' are safe in all locales.
++
++ In other words, in the C locale the POSIX extended regular
++ expression [-+[:alnum:]]{3,} should match the abbreviation.
++ This guarantees that all abbreviations could have been
++ specified by a POSIX TZ string.
++
++ Use abbreviations that are in common use among English-speakers,
++ e.g. 'EST' for Eastern Standard Time in North America.
++ We assume that applications translate them to other languages
++ as part of the normal localization process; for example,
++ a French application might translate 'EST' to 'HNE'.
++
++ For zones whose times are taken from a city's longitude, use the
++ traditional xMT notation, e.g. 'PMT' for Paris Mean Time.
++ The only name like this in current use is 'GMT'.
++
++ Use 'LMT' for local mean time of locations before the introduction
++ of standard time; see "Scope of the tz database".
++
++ If there is no common English abbreviation, use numeric offsets like
++ -05 and +0830 that are generated by zic's %z notation.
++
++ [The remaining guidelines predate the introduction of %z.
++ They are problematic as they mean tz data entries invent
++ notation rather than record it. These guidelines are now
++ deprecated and the plan is to gradually move to %z for
++ inhabited locations and to "-00" for uninhabited locations.]
++
++ If there is no common English abbreviation, abbreviate the English
++ translation of the usual phrase used by native speakers.
++ If this is not available or is a phrase mentioning the country
++ (e.g. "Cape Verde Time"), then:
++
++ When a country is identified with a single or principal zone,
++ append 'T' to the country's ISO code, e.g. 'CVT' for
++ Cape Verde Time. For summer time append 'ST';
++ for double summer time append 'DST'; etc.
++ Otherwise, take the first three letters of an English place
++ name identifying each zone and append 'T', 'ST', etc.
++ as before; e.g. 'VLAST' for VLAdivostok Summer Time.
++
++ Use UT (with time zone abbreviation '-00') for locations while
++ uninhabited. The leading '-' is a flag that the time
++ zone is in some sense undefined; this notation is
++ derived from Internet RFC 3339.
++
++Application writers should note that these abbreviations are ambiguous
++in practice: e.g. 'CST' has a different meaning in China than
++it does in the United States. In new applications, it's often better
++to use numeric UT offsets like '-0600' instead of time zone
++abbreviations like 'CST'; this avoids the ambiguity.
++
++
++----- Accuracy of the tz database -----
++
++The tz database is not authoritative, and it surely has errors.
++Corrections are welcome and encouraged; see the file CONTRIBUTING.
++Users requiring authoritative data should consult national standards
++bodies and the references cited in the database's comments.
++
++Errors in the tz database arise from many sources:
++
++ * The tz database predicts future time stamps, and current predictions
++ will be incorrect after future governments change the rules.
++ For example, if today someone schedules a meeting for 13:00 next
++ October 1, Casablanca time, and tomorrow Morocco changes its
++ daylight saving rules, software can mess up after the rule change
++ if it blithely relies on conversions made before the change.
++
++ * The pre-1970 entries in this database cover only a tiny sliver of how
++ clocks actually behaved; the vast majority of the necessary
++ information was lost or never recorded. Thousands more zones would
++ be needed if the tz database's scope were extended to cover even
++ just the known or guessed history of standard time; for example,
++ the current single entry for France would need to split into dozens
++ of entries, perhaps hundreds. And in most of the world even this
++ approach would be misleading due to widespread disagreement or
++ indifference about what times should be observed. In her 2015 book
++ "The Global Transformation of Time, 1870-1950", Vanessa Ogle writes
++ "Outside of Europe and North America there was no system of time
++ zones at all, often not even a stable landscape of mean times,
++ prior to the middle decades of the twentieth century". See:
++ Timothy Shenk, Booked: A Global History of Time. Dissent 2015-12-17
++ https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanessa-ogle
++
++ * Most of the pre-1970 data entries come from unreliable sources, often
++ astrology books that lack citations and whose compilers evidently
++ invented entries when the true facts were unknown, without
++ reporting which entries were known and which were invented.
++ These books often contradict each other or give implausible entries,
++ and on the rare occasions when they are checked they are
++ typically found to be incorrect.
++
++ * For the UK the tz database relies on years of first-class work done by
++ Joseph Myers and others; see <http://www.polyomino.org.uk/british-time/>.
++ Other countries are not done nearly as well.
++
++ * Sometimes, different people in the same city would maintain clocks
++ that differed significantly. Railway time was used by railroad
++ companies (which did not always agree with each other),
++ church-clock time was used for birth certificates, etc.
++ Often this was merely common practice, but sometimes it was set by law.
++ For example, from 1891 to 1911 the UT offset in France was legally
++ 0:09:21 outside train stations and 0:04:21 inside.
++
++ * Although a named location in the tz database stands for the
++ containing region, its pre-1970 data entries are often accurate for
++ only a small subset of that region. For example, Europe/London
++ stands for the United Kingdom, but its pre-1847 times are valid
++ only for locations that have London's exact meridian, and its 1847
++ transition to GMT is known to be valid only for the L&NW and the
++ Caledonian railways.
++
++ * The tz database does not record the earliest time for which a zone's
++ data entries are thereafter valid for every location in the region.
++ For example, Europe/London is valid for all locations in its
++ region after GMT was made the standard time, but the date of
++ standardization (1880-08-02) is not in the tz database, other than
++ in commentary. For many zones the earliest time of validity is
++ unknown.
++
++ * The tz database does not record a region's boundaries, and in many
++ cases the boundaries are not known. For example, the zone
++ America/Kentucky/Louisville represents a region around the city of
++ Louisville, the boundaries of which are unclear.
++
++ * Changes that are modeled as instantaneous transitions in the tz
++ database were often spread out over hours, days, or even decades.
++
++ * Even if the time is specified by law, locations sometimes
++ deliberately flout the law.
++
++ * Early timekeeping practices, even assuming perfect clocks, were
++ often not specified to the accuracy that the tz database requires.
++
++ * Sometimes historical timekeeping was specified more precisely
++ than what the tz database can handle. For example, from 1909 to
++ 1937 Netherlands clocks were legally UT +00:19:32.13, but the tz
++ database cannot represent the fractional second.
++
++ * Even when all the timestamp transitions recorded by the tz database
++ are correct, the tz rules that generate them may not faithfully
++ reflect the historical rules. For example, from 1922 until World
++ War II the UK moved clocks forward the day following the third
++ Saturday in April unless that was Easter, in which case it moved
++ clocks forward the previous Sunday. Because the tz database has no
++ way to specify Easter, these exceptional years are entered as
++ separate tz Rule lines, even though the legal rules did not change.
++
++ * The tz database models pre-standard time using the proleptic Gregorian
++ calendar and local mean time (LMT), but many people used other
++ calendars and other timescales. For example, the Roman Empire used
++ the Julian calendar, and had 12 varying-length daytime hours with a
++ non-hour-based system at night.
++
++ * Early clocks were less reliable, and data entries do not represent
++ this unreliability.
++
++ * As for leap seconds, civil time was not based on atomic time before
++ 1972, and we don't know the history of earth's rotation accurately
++ enough to map SI seconds to historical solar time to more than
++ about one-hour accuracy. See: Morrison LV, Stephenson FR.
++ Historical values of the Earth's clock error Delta T and the
++ calculation of eclipses. J Hist Astron. 2004;35:327-36
++ <http://adsabs.harvard.edu/full/2004JHA....35..327M>;
++ Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
++ <http://adsabs.harvard.edu/full/2005JHA....36..339M>.
++
++ * The relationship between POSIX time (that is, UTC but ignoring leap
++ seconds) and UTC is not agreed upon after 1972. Although the POSIX
++ clock officially stops during an inserted leap second, at least one
++ proposed standard has it jumping back a second instead; and in
++ practice POSIX clocks more typically either progress glacially during
++ a leap second, or are slightly slowed while near a leap second.
++
++ * The tz database does not represent how uncertain its information is.
++ Ideally it would contain information about when data entries are
++ incomplete or dicey. Partial temporal knowledge is a field of
++ active research, though, and it's not clear how to apply it here.
++
++In short, many, perhaps most, of the tz database's pre-1970 and future
++time stamps are either wrong or misleading. Any attempt to pass the
++tz database off as the definition of time should be unacceptable to
++anybody who cares about the facts. In particular, the tz database's
++LMT offsets should not be considered meaningful, and should not prompt
++creation of zones merely because two locations differ in LMT or
++transitioned to standard time at different dates.
++
++
++----- Time and date functions -----
++
++The tz code contains time and date functions that are upwards
++compatible with those of POSIX.
++
++POSIX has the following properties and limitations.
++
++* In POSIX, time display in a process is controlled by the
++ environment variable TZ. Unfortunately, the POSIX TZ string takes
++ a form that is hard to describe and is error-prone in practice.
++ Also, POSIX TZ strings can't deal with other (for example, Israeli)
++ daylight saving time rules, or situations where more than two
++ time zone abbreviations are used in an area.
++
++ The POSIX TZ string takes the following form:
++
++ stdoffset[dst[offset][,date[/time],date[/time]]]
++
++ where:
++
++ std and dst
++ are 3 or more characters specifying the standard
++ and daylight saving time (DST) zone names.
++ Starting with POSIX.1-2001, std and dst may also be
++ in a quoted form like "<UTC+10>"; this allows
++ "+" and "-" in the names.
++ offset
++ is of the form '[+-]hh:[mm[:ss]]' and specifies the
++ offset west of UT. 'hh' may be a single digit; 0<=hh<=24.
++ The default DST offset is one hour ahead of standard time.
++ date[/time],date[/time]
++ specifies the beginning and end of DST. If this is absent,
++ the system supplies its own rules for DST, and these can
++ differ from year to year; typically US DST rules are used.
++ time
++ takes the form 'hh:[mm[:ss]]' and defaults to 02:00.
++ This is the same format as the offset, except that a
++ leading '+' or '-' is not allowed.
++ date
++ takes one of the following forms:
++ Jn (1<=n<=365)
++ origin-1 day number not counting February 29
++ n (0<=n<=365)
++ origin-0 day number counting February 29 if present
++ Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)
++ for the dth day of week n of month m of the year,
++ where week 1 is the first week in which day d appears,
++ and '5' stands for the last week in which day d appears
++ (which may be either the 4th or 5th week).
++ Typically, this is the only useful form;
++ the n and Jn forms are rarely used.
++
++ Here is an example POSIX TZ string, for US Pacific time using rules
++ appropriate from 1987 through 2006:
++
++ TZ='PST8PDT,M4.1.0/02:00,M10.5.0/02:00'
++
++ This POSIX TZ string is hard to remember, and mishandles time stamps
++ before 1987 and after 2006. With this package you can use this
++ instead:
++
++ TZ='America/Los_Angeles'
++
++* POSIX does not define the exact meaning of TZ values like "EST5EDT".
++ Typically the current US DST rules are used to interpret such values,
++ but this means that the US DST rules are compiled into each program
++ that does time conversion. This means that when US time conversion
++ rules change (as in the United States in 1987), all programs that
++ do time conversion must be recompiled to ensure proper results.
++
++* The TZ environment variable is process-global, which makes it hard
++ to write efficient, thread-safe applications that need access
++ to multiple time zones.
++
++* In POSIX, there's no tamper-proof way for a process to learn the
++ system's best idea of local wall clock. (This is important for
++ applications that an administrator wants used only at certain times -
++ without regard to whether the user has fiddled the "TZ" environment
++ variable. While an administrator can "do everything in UTC" to get
++ around the problem, doing so is inconvenient and precludes handling
++ daylight saving time shifts - as might be required to limit phone
++ calls to off-peak hours.)
++
++* POSIX provides no convenient and efficient way to determine the UT
++ offset and time zone abbreviation of arbitrary time stamps,
++ particularly for time zone settings that do not fit into the
++ POSIX model.
++
++* POSIX requires that systems ignore leap seconds.
++
++* The tz code attempts to support all the time_t implementations
++ allowed by POSIX. The time_t type represents a nonnegative count of
++ seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds.
++ In practice, time_t is usually a signed 64- or 32-bit integer; 32-bit
++ signed time_t values stop working after 2038-01-19 03:14:07 UTC, so
++ new implementations these days typically use a signed 64-bit integer.
++ Unsigned 32-bit integers are used on one or two platforms,
++ and 36-bit and 40-bit integers are also used occasionally.
++ Although earlier POSIX versions allowed time_t to be a
++ floating-point type, this was not supported by any practical
++ systems, and POSIX.1-2013 and the tz code both require time_t
++ to be an integer type.
++
++These are the extensions that have been made to the POSIX functions:
++
++* The "TZ" environment variable is used in generating the name of a file
++ from which time zone information is read (or is interpreted a la
++ POSIX); "TZ" is no longer constrained to be a three-letter time zone
++ name followed by a number of hours and an optional three-letter
++ daylight time zone name. The daylight saving time rules to be used
++ for a particular time zone are encoded in the time zone file;
++ the format of the file allows U.S., Australian, and other rules to be
++ encoded, and allows for situations where more than two time zone
++ abbreviations are used.
++
++ It was recognized that allowing the "TZ" environment variable to
++ take on values such as "America/New_York" might cause "old" programs
++ (that expect "TZ" to have a certain form) to operate incorrectly;
++ consideration was given to using some other environment variable
++ (for example, "TIMEZONE") to hold the string used to generate the
++ time zone information file name. In the end, however, it was decided
++ to continue using "TZ": it is widely used for time zone purposes;
++ separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;
++ and systems where "new" forms of "TZ" might cause problems can simply
++ use TZ values such as "EST5EDT" which can be used both by
++ "new" programs (a la POSIX) and "old" programs (as zone names and
++ offsets).
++
++* The code supports platforms with a UT offset member in struct tm,
++ e.g., tm_gmtoff.
++
++* The code supports platforms with a time zone abbreviation member in
++ struct tm, e.g., tm_zone.
++
++* Since the "TZ" environment variable can now be used to control time
++ conversion, the "daylight" and "timezone" variables are no longer
++ needed. (These variables are defined and set by "tzset"; however, their
++ values will not be used by "localtime.")
++
++* Functions tzalloc, tzfree, localtime_rz, and mktime_z for
++ more-efficient thread-safe applications that need to use
++ multiple time zones. The tzalloc and tzfree functions
++ allocate and free objects of type timezone_t, and localtime_rz
++ and mktime_z are like localtime_r and mktime with an extra
++ timezone_t argument. The functions were inspired by NetBSD.
++
++* A function "tzsetwall" has been added to arrange for the system's
++ best approximation to local wall clock time to be delivered by
++ subsequent calls to "localtime." Source code for portable
++ applications that "must" run on local wall clock time should call
++ "tzsetwall();" if such code is moved to "old" systems that don't
++ provide tzsetwall, you won't be able to generate an executable program.
++ (These time zone functions also arrange for local wall clock time to be
++ used if tzset is called - directly or indirectly - and there's no "TZ"
++ environment variable; portable applications should not, however, rely
++ on this behavior since it's not the way SVR2 systems behave.)
++
++* Negative time_t values are supported, on systems where time_t is signed.
++
++* These functions can account for leap seconds, thanks to Bradley White.
++
++Points of interest to folks with other systems:
++
++* Code compatible with this package is already part of many platforms,
++ including GNU/Linux, Android, the BSDs, Chromium OS, Cygwin, AIX, iOS,
++ BlackBery 10, macOS, Microsoft Windows, OpenVMS, and Solaris.
++ On such hosts, the primary use of this package
++ is to update obsolete time zone rule tables.
++ To do this, you may need to compile the time zone compiler
++ 'zic' supplied with this package instead of using the system 'zic',
++ since the format of zic's input is occasionally extended,
++ and a platform may still be shipping an older zic.
++
++* The UNIX Version 7 "timezone" function is not present in this package;
++ it's impossible to reliably map timezone's arguments (a "minutes west
++ of GMT" value and a "daylight saving time in effect" flag) to a
++ time zone abbreviation, and we refuse to guess.
++ Programs that in the past used the timezone function may now examine
++ tzname[localtime(&clock)->tm_isdst] to learn the correct time
++ zone abbreviation to use. Alternatively, use
++ localtime(&clock)->tm_zone if this has been enabled.
++
++* The 4.2BSD gettimeofday function is not used in this package.
++ This formerly let users obtain the current UTC offset and DST flag,
++ but this functionality was removed in later versions of BSD.
++
++* In SVR2, time conversion fails for near-minimum or near-maximum
++ time_t values when doing conversions for places that don't use UT.
++ This package takes care to do these conversions correctly.
++ A comment in the source code tells how to get compatibly wrong
++ results.
++
++The functions that are conditionally compiled if STD_INSPIRED is defined
++should, at this point, be looked on primarily as food for thought. They are
++not in any sense "standard compatible" - some are not, in fact, specified in
++*any* standard. They do, however, represent responses of various authors to
++standardization proposals.
++
++Other time conversion proposals, in particular the one developed by folks at
++Hewlett Packard, offer a wider selection of functions that provide capabilities
++beyond those provided here. The absence of such functions from this package
++is not meant to discourage the development, standardization, or use of such
++functions. Rather, their absence reflects the decision to make this package
++contain valid extensions to POSIX, to ensure its broad acceptability. If
++more powerful time conversion functions can be standardized, so much the
++better.
++
++
++----- Interface stability -----
++
++The tz code and data supply the following interfaces:
++
++ * A set of zone names as per "Names of time zone rules" above.
++
++ * Library functions described in "Time and date functions" above.
++
++ * The programs tzselect, zdump, and zic, documented in their man pages.
++
++ * The format of zic input files, documented in the zic man page.
++
++ * The format of zic output files, documented in the tzfile man page.
++
++ * The format of zone table files, documented in zone1970.tab.
++
++ * The format of the country code file, documented in iso3166.tab.
++
++When these interfaces are changed, an effort is made to preserve
++backward compatibility. For example, tz data files typically do not
++rely on recently-added zic features, so that users can run older zic
++versions to process newer data files.
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for time
++stamps, as data entries are often based on guesswork and these guesses
++may be corrected or improved.
++
++
++----- Calendrical issues -----
++
++Calendrical issues are a bit out of scope for a time zone database,
++but they indicate the sort of problems that we would run into if we
++extended the time zone database further into the past. An excellent
++resource in this area is Nachum Dershowitz and Edward M. Reingold,
++Calendrical Calculations: Third Edition, Cambridge University Press (2008)
++<http://emr.cs.iit.edu/home/reingold/calendar-book/third-edition/>.
++Other information and sources are given below. They sometimes disagree.
++
++
++France
++
++Gregorian calendar adopted 1582-12-20.
++French Revolutionary calendar used 1793-11-24 through 1805-12-31,
++and (in Paris only) 1871-05-06 through 1871-05-23.
++
++
++Russia
++
++From Chris Carrier (1996-12-02):
++On 1929-10-01 the Soviet Union instituted an "Eternal Calendar"
++with 30-day months plus 5 holidays, with a 5-day week.
++On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the
++Gregorian calendar while retaining the 6-day week; on 1940-06-27 it
++reverted to the 7-day week. With the 6-day week the usual days
++off were the 6th, 12th, 18th, 24th and 30th of the month.
++(Source: Evitiar Zerubavel, _The Seven Day Circle_)
++
++
++Mark Brader reported a similar story in "The Book of Calendars", edited
++by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
++
++From: Petteri Sulonen (via Usenet)
++Date: 14 Jan 1999 00:00:00 GMT
++...
++
++If your source is correct, how come documents between 1929 and 1940 were
++still dated using the conventional, Gregorian calendar?
++
++I can post a scan of a document dated December 1, 1934, signed by
++Yenukidze, the secretary, on behalf of Kalinin, the President of the
++Executive Committee of the Supreme Soviet, if you like.
++
++
++
++Sweden (and Finland)
++
++From: Mark Brader
++Subject: Re: Gregorian reform - a part of locale?
++<news:1996Jul6.012937.29190@sq.com>
++Date: 1996-07-06
++
++In 1700, Denmark made the transition from Julian to Gregorian. Sweden
++decided to *start* a transition in 1700 as well, but rather than have one of
++those unsightly calendar gaps :-), they simply decreed that the next leap
++year after 1696 would be in 1744 - putting the whole country on a calendar
++different from both Julian and Gregorian for a period of 40 years.
++
++However, in 1704 something went wrong and the plan was not carried through;
++they did, after all, have a leap year that year. And one in 1708. In 1712
++they gave it up and went back to Julian, putting 30 days in February that
++year!...
++
++Then in 1753, Sweden made the transition to Gregorian in the usual manner,
++getting there only 13 years behind the original schedule.
++
++(A previous posting of this story was challenged, and Swedish readers
++produced the following references to support it: "Tideräkning och historia"
++by Natanael Beckman (1924) and "Tid, en bok om tideräkning och
++kalenderväsen" by Lars-Olof Lodén (1968).
++
++
++Grotefend's data
++
++From: "Michael Palmer" [with one obvious typo fixed]
++Subject: Re: Gregorian Calendar (was Re: Another FHC related question
++Newsgroups: soc.genealogy.german
++Date: Tue, 9 Feb 1999 02:32:48 -800
++...
++
++The following is a(n incomplete) listing, arranged chronologically, of
++European states, with the date they converted from the Julian to the
++Gregorian calendar:
++
++04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman
++ Catholics and Danzig only)
++09/20 Dec 1582 - France, Lorraine
++
++21 Dec 1582/
++ 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau
++10/21 Feb 1583 - bishopric of Liege (Lüttich)
++13/24 Feb 1583 - bishopric of Augsburg
++04/15 Oct 1583 - electorate of Trier
++05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,
++ Salzburg, Brixen
++13/24 Oct 1583 - Austrian Oberelsaß and Breisgau
++20/31 Oct 1583 - bishopric of Basel
++02/13 Nov 1583 - duchy of Jülich-Berg
++02/13 Nov 1583 - electorate and city of Köln
++04/15 Nov 1583 - bishopric of Würzburg
++11/22 Nov 1583 - electorate of Mainz
++16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden
++17/28 Nov 1583 - bishopric of Münster and duchy of Cleve
++14/25 Dec 1583 - Steiermark
++
++06/17 Jan 1584 - Austria and Bohemia
++11/22 Jan 1584 - Lucerne, Uri, Schwyz, Zug, Freiburg, Solothurn
++12/23 Jan 1584 - Silesia and the Lausitz
++22 Jan/
++ 02 Feb 1584 - Hungary (legally on 21 Oct 1587)
++ Jun 1584 - Unterwalden
++01/12 Jul 1584 - duchy of Westfalen
++
++16/27 Jun 1585 - bishopric of Paderborn
++
++14/25 Dec 1590 - Transylvania
++
++22 Aug/
++ 02 Sep 1612 - duchy of Prussia
++
++13/24 Dec 1614 - Pfalz-Neuburg
++
++ 1617 - duchy of Kurland (reverted to the Julian calendar in
++ 1796)
++
++ 1624 - bishopric of Osnabrück
++
++ 1630 - bishopric of Minden
++
++15/26 Mar 1631 - bishopric of Hildesheim
++
++ 1655 - Kanton Wallis
++
++05/16 Feb 1682 - city of Strassburg
++
++18 Feb/
++ 01 Mar 1700 - Protestant Germany (including Swedish possessions in
++ Germany), Denmark, Norway
++30 Jun/
++ 12 Jul 1700 - Gelderland, Zutphen
++10 Nov/
++ 12 Dec 1700 - Utrecht, Overijssel
++
++31 Dec 1700/
++ 12 Jan 1701 - Friesland, Groningen, Zürich, Bern, Basel, Geneva,
++ Turgau, and Schaffhausen
++
++ 1724 - Glarus, Appenzell, and the city of St. Gallen
++
++01 Jan 1750 - Pisa and Florence
++
++02/14 Sep 1752 - Great Britain
++
++17 Feb/
++ 01 Mar 1753 - Sweden
++
++1760-1812 - Graubünden
++
++The Russian empire (including Finland and the Baltic states) did not
++convert to the Gregorian calendar until the Soviet revolution of 1917.
++
++Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen
++Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend
++(Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.
++
++
++----- Time and time zones on Mars -----
++
++Some people's work schedules use Mars time. Jet Propulsion Laboratory
++(JPL) coordinators have kept Mars time on and off at least since 1997
++for the Mars Pathfinder mission. Some of their family members have
++also adapted to Mars time. Dozens of special Mars watches were built
++for JPL workers who kept Mars time during the Mars Exploration
++Rovers mission (2004). These timepieces look like normal Seikos and
++Citizens but use Mars seconds rather than terrestrial seconds.
++
++A Mars solar day is called a "sol" and has a mean period equal to
++about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is
++divided into a conventional 24-hour clock, so each Mars second equals
++about 1.02749125 terrestrial seconds.
++
++The prime meridian of Mars goes through the center of the crater
++Airy-0, named in honor of the British astronomer who built the
++Greenwich telescope that defines Earth's prime meridian. Mean solar
++time on the Mars prime meridian is called Mars Coordinated Time (MTC).
++
++Each landed mission on Mars has adopted a different reference for
++solar time keeping, so there is no real standard for Mars time zones.
++For example, the Mars Exploration Rover project (2004) defined two
++time zones "Local Solar Time A" and "Local Solar Time B" for its two
++missions, each zone designed so that its time equals local true solar
++time at approximately the middle of the nominal mission. Such a "time
++zone" is not particularly suited for any application other than the
++mission itself.
++
++Many calendars have been proposed for Mars, but none have achieved
++wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a
++sequential count of Mars solar days elapsed since about 1873-12-29
++12:00 GMT.
++
++The tz database does not currently support Mars time, but it is
++documented here in the hopes that support will be added eventually.
++
++Sources:
++
++Michael Allison and Robert Schmunk,
++"Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
++<http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2012-08-08).
++
++Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
++<http://articles.latimes.com/2004/jan/14/science/sci-marstime14>
++(2004-01-14), pp A1, A20-A21.
++
++Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
++<http://www.theatlantic.com/technology/archive/2015/02/jet-lag-is-worse-on-mars/386033/>
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson.
++
++-----
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/africa.orig
++++ contrib/tzdata/africa
+@@ -343,6 +343,12 @@
+ # decision to abandon DST permanently. See Ahram Online 2015-04-24.
+ # http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx
+
++# From Steffen Thorsen (2016-04-29):
++# Egypt will have DST from July 7 until the end of October....
++# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx
++# From Mina Samuel (2016-07-04):
++# Egyptian government took the decision to cancel the DST,
++
+ Rule Egypt 2008 only - Aug lastThu 24:00 0 -
+ Rule Egypt 2009 only - Aug 20 24:00 0 -
+ Rule Egypt 2010 only - Aug 10 24:00 0 -
+@@ -458,7 +464,7 @@
+ # http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
+ #
+ # From Paul Eggert (2013-10-25):
+-# For now, assume they're reverting to the pre-2012 rules of permanent UTC+2.
++# For now, assume they're reverting to the pre-2012 rules of permanent UT +02.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Libya 1951 only - Oct 14 2:00 1:00 S
+@@ -538,7 +544,7 @@
+
+ # From Alex Krivenyshev (2008-07-11):
+ # Seems that English language article "The revival of daylight saving
+-# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally
++# time: Energy conservation?"- No. 16578 (07/11/2008) was originally
+ # published on Monday, June 30, 2008...
+ #
+ # I guess that article in French "Le gouvernement avance l'introduction
+@@ -670,7 +676,7 @@
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+ # Ministère de la Modernisation des Secteurs Publics
+ #
+-# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
++# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 June 1967)
+ # concerning the amendment of the legal time, the Ministry of Modernization of
+ # Public Sectors announced that the official time in the Kingdom will be
+ # advanced 60 minutes from Sunday 31 May 2009 at midnight.
+@@ -858,11 +864,11 @@
+ Rule Morocco 2010 only - May 2 0:00 1:00 S
+ Rule Morocco 2010 only - Aug 8 0:00 0 -
+ Rule Morocco 2011 only - Apr 3 0:00 1:00 S
+-Rule Morocco 2011 only - Jul 31 0 0 -
++Rule Morocco 2011 only - Jul 31 0:00 0 -
+ Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S
+-Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2012 only - Jul 20 3:00 0 -
+ Rule Morocco 2012 only - Aug 20 2:00 1:00 S
++Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2013 only - Jul 7 3:00 0 -
+ Rule Morocco 2013 only - Aug 10 2:00 1:00 S
+ Rule Morocco 2013 max - Oct lastSun 3:00 0 -
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -10,10 +10,8 @@
+ # http://www.spri.cam.ac.uk/bob/periant.htm
+ # for information.
+ # Unless otherwise specified, we have no time zone information.
+-#
+-# Except for the French entries,
+-# I made up all time zone abbreviations mentioned here; corrections welcome!
+-# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
++
++# FORMAT is '-00' and GMTOFF is 0 for locations while uninhabited.
+
+ # Argentina - year-round bases
+ # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+@@ -29,7 +27,7 @@
+ # previously sealers and scientific personnel wintered
+ # Margaret Turner reports
+ # http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html
+-# (1999-09-30) that they're UTC+5, with no DST;
++# (1999-09-30) that they're UT +05, with no DST;
+ # presumably this is when they have visitors.
+ #
+ # year-round bases
+@@ -66,25 +64,29 @@
+ # Background:
+ # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
+
++# From Steffen Thorsen (2016-10-28):
++# Australian Antarctica Division informed us that Casey changed time
++# zone to UTC+11 in "the morning of 22nd October 2016".
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Casey 0 - zzz 1969
+- 8:00 - AWST 2009 Oct 18 2:00
+- # Australian Western Std Time
+- 11:00 - CAST 2010 Mar 5 2:00 # Casey Time
+- 8:00 - AWST 2011 Oct 28 2:00
+- 11:00 - CAST 2012 Feb 21 17:00u
+- 8:00 - AWST
+-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+- 7:00 - DAVT 1964 Nov # Davis Time
+- 0 - zzz 1969 Feb
+- 7:00 - DAVT 2009 Oct 18 2:00
+- 5:00 - DAVT 2010 Mar 10 20:00u
+- 7:00 - DAVT 2011 Oct 28 2:00
+- 5:00 - DAVT 2012 Feb 21 20:00u
+- 7:00 - DAVT
+-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+- 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time
+- 5:00 - MAWT
++Zone Antarctica/Casey 0 - -00 1969
++ 8:00 - +08 2009 Oct 18 2:00
++ 11:00 - +11 2010 Mar 5 2:00
++ 8:00 - +08 2011 Oct 28 2:00
++ 11:00 - +11 2012 Feb 21 17:00u
++ 8:00 - +08 2016 Oct 22
++ 11:00 - +11
++Zone Antarctica/Davis 0 - -00 1957 Jan 13
++ 7:00 - +07 1964 Nov
++ 0 - -00 1969 Feb
++ 7:00 - +07 2009 Oct 18 2:00
++ 5:00 - +05 2010 Mar 10 20:00u
++ 7:00 - +07 2011 Oct 28 2:00
++ 5:00 - +05 2012 Feb 21 20:00u
++ 7:00 - +07
++Zone Antarctica/Mawson 0 - -00 1954 Feb 13
++ 6:00 - +06 2009 Oct 18 2:00
++ 5:00 - +05
+ # References:
+ # Casey Weather (1998-02-26)
+ # http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html
+@@ -137,8 +139,8 @@
+ # fishing stations operated variously 1819/1931
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
+- 5:00 - TFT # ISO code TF Time
++Zone Indian/Kerguelen 0 - -00 1950 # Port-aux-Français
++ 5:00 - +05
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+@@ -148,10 +150,10 @@
+ # It was destroyed by fire on 1952-01-14.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/DumontDUrville 0 - zzz 1947
+- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+- 0 - zzz 1956 Nov
+- 10:00 - DDUT # Dumont-d'Urville Time
++Zone Antarctica/DumontDUrville 0 - -00 1947
++ 10:00 - +10 1952 Jan 14
++ 0 - -00 1956 Nov
++ 10:00 - +10
+
+ # France & Italy - year-round base
+ # Concordia, -750600+1232000, since 2005
+@@ -176,8 +178,8 @@
+ # was established on 1957-01-29. Since Syowa station is still the main
+ # station of Japan, it's appropriate for the principal location.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+- 3:00 - SYOT # Syowa Time
++Zone Antarctica/Syowa 0 - -00 1957 Jan 29
++ 3:00 - +03
+ # See:
+ # NIPR Antarctic Research Activities (1999-08-17)
+ # http://www.nipr.ac.jp/english/ara01.html
+@@ -214,19 +216,19 @@
+ # correct, but they should be quite close to the actual dates.
+ #
+ # From Paul Eggert (2014-03-21):
+-# The CET-switching Troll rules require zic from tzcode 2014b or later, so as
++# The CET-switching Troll rules require zic from tz 2014b or later, so as
+ # suggested by Bengt-Inge Larsson comment them out for now, and approximate
+ # with only UTC and CEST. Uncomment them when 2014b is more prevalent.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET
+-Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST
+-#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET
+-#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC
++#Rule Troll 2005 max - Mar 1 1:00u 1:00 +01
++Rule Troll 2005 max - Mar lastSun 1:00u 2:00 +02
++#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 +01
++#Rule Troll 2004 max - Nov 7 1:00u 0:00 +00
+ # Remove the following line when uncommenting the above '#Rule' lines.
+-Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC
++Rule Troll 2004 max - Oct lastSun 1:00u 0:00 +00
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Troll 0 - zzz 2005 Feb 12
++Zone Antarctica/Troll 0 - -00 2005 Feb 12
+ 0:00 Troll %s
+
+ # Poland - year-round base
+@@ -265,10 +267,10 @@
+ # changes during the year and does not necessarily correspond to mean
+ # solar noon. So the Vostok time might have been whatever the clocks
+ # happened to be during their visit. So we still don't really know what time
+-# it is at Vostok. But we'll guess UTC+6.
++# it is at Vostok. But we'll guess +06.
+ #
+-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+- 6:00 - VOST # Vostok time
++Zone Antarctica/Vostok 0 - -00 1957 Dec 16
++ 6:00 - +06
+
+ # S Africa - year-round bases
+ # Marion Island, -4653+03752
+@@ -300,8 +302,8 @@
+ # <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+- -3:00 - ROTT # Rothera time
++Zone Antarctica/Rothera 0 - -00 1976 Dec 1
++ -3:00 - -03
+
+ # Uruguay - year round base
+ # Artigas, King George Island, -621104-0585107
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -6,7 +6,7 @@
+ # tz@iana.org for general use in the future). For more, please see
+ # the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2014-10-31):
++# From Paul Eggert (2015-08-08):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -43,7 +43,7 @@
+ # 2:00 EET EEST Eastern European Time
+ # 2:00 IST IDT Israel
+ # 3:00 AST ADT Arabia*
+-# 3:30 IRST IRDT Iran
++# 3:30 IRST IRDT Iran*
+ # 4:00 GST Gulf*
+ # 5:30 IST India
+ # 7:00 ICT Indochina, most times and locations*
+@@ -52,10 +52,11 @@
+ # 8:00 CST China
+ # 8:00 IDT Indochina, 1943-45, 1947-55, 1960-75 (some locations)*
+ # 8:00 JWST Western Standard Time (Japan, 1896/1937)*
++# 8:30 KST KDT Korea when at +0830*
+ # 9:00 JCST Central Standard Time (Japan, 1896/1937)
+ # 9:00 WIT east Indonesia (Waktu Indonesia Timur)
+ # 9:00 JST JDT Japan
+-# 9:00 KST KDT Korea
++# 9:00 KST KDT Korea when at +09
+ # 9:30 ACST Australian Central Standard Time
+ #
+ # See the 'europe' file for Russia and Turkey in Asia.
+@@ -78,13 +79,9 @@
+ Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
++Rule RussiaAsia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule RussiaAsia 1985 2011 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2011 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -119,30 +116,37 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+- 3:00 - YERT 1957 Mar # Yerevan Time
+- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+- 3:00 1:00 YERST 1991 Sep 23 # independence
+- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+- 4:00 - AMT 1997
+- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s
+- 4:00 - AMT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
++ 4:00 - +04 1997
++ 4:00 RussiaAsia +04/+05
+
+ # Azerbaijan
++
+ # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+ # According to the resolution of Cabinet of Ministers, 1997
+-# Resolution available at: http://aif.az/docs/daylight_res.pdf
++# From Paul Eggert (2015-09-17): It was Resolution No. 21 (1997-03-17).
++# http://code.az/files/daylight_res.pdf
++
++# From Steffen Thorsen (2016-03-17):
++# ... the Azerbaijani Cabinet of Ministers has cancelled switching to
++# daylight saving time....
++# http://www.azernews.az/azerbaijan/94137.html
++# http://vestnikkavkaza.net/news/Azerbaijani-Cabinet-of-Ministers-cancels-daylight-saving-time.html
++# http://en.apa.az/xeber_azerbaijan_abolishes_daylight_savings_ti_240862.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+-Rule Azer 1997 max - Oct lastSun 5:00 0 -
++Rule Azer 1997 2015 - Mar lastSun 4:00 1:00 S
++Rule Azer 1997 2015 - Oct lastSun 5:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+- 3:00 - BAKT 1957 Mar # Baku Time
+- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+- 3:00 1:00 BAKST 1991 Aug 30 # independence
+- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+- 4:00 - AZT 1996 # Azerbaijan Time
+- 4:00 EUAsia AZ%sT 1997
+- 4:00 Azer AZ%sT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
++ 4:00 - +04 1996
++ 4:00 EUAsia +04/+05 1997
++ 4:00 Azer +04/+05
+
+ # Bahrain
+ # See Asia/Qatar.
+@@ -261,7 +265,7 @@
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
++Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
+ 6:24:40 - RMT 1920 # Rangoon Mean Time?
+ 6:30 - BURT 1942 May # Burma Time
+ 9:00 - JST 1945 May 3
+@@ -376,7 +380,7 @@
+ # Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is
+ # different - the occupied districts going by Tokyo time, an hour
+ # ahead of that prevailing in the rest of Shanghai." Guess that the
+-# Xujiahui Observatory was under French control and stuck with UT+8.
++# Xujiahui Observatory was under French control and stuck with UT +08.
+ #
+ # In earlier versions of this file, China had many separate Zone entries, but
+ # this was based on what were apparently incorrect data in Shanks & Pottenger.
+@@ -385,26 +389,26 @@
+ # Proposed in 1918 and theoretically in effect until 1949 (although in practice
+ # mainly observed in coastal areas), the five zones were:
+ #
+-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+ # Asia/Harbin (currently a link to Asia/Shanghai)
+ # Heilongjiang (except Mohe county), Jilin
+ #
+-# Zhongyuan Time ("Central plain Time") UT+8
++# Zhongyuan Time ("Central plain Time") UT +08
+ # Asia/Shanghai
+ # most of China
+ # This currently represents most other zones as well,
+ # as apparently these regions have been the same since 1970.
+ # Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest.
+-# Guo says Shanghai switched to UT+8 "from the end of the 19th century".
++# Guo says Shanghai switched to UT +08 "from the end of the 19th century".
+ #
+-# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7
++# Long-shu Time (probably due to Long and Shu being two names of the area) UT +07
+ # Asia/Chongqing (currently a link to Asia/Shanghai)
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+ # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+-# Xin-zang Time ("Xinjiang-Tibet Time") UT+6
++# Xin-zang Time ("Xinjiang-Tibet Time") UT +06
+ # Asia/Urumqi
+ # This currently represents Kunlun Time as well,
+ # as apparently the two regions have been the same since 1970.
+@@ -417,7 +421,7 @@
+ # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+-# Kunlun Time UT+5.5
++# Kunlun Time UT +05:30
+ # Asia/Kashgar (currently a link to Asia/Urumqi)
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+@@ -433,7 +437,7 @@
+ #
+ # On the other hand, ethnic Uyghurs, who make up about half the
+ # population of Xinjiang, typically use "Xinjiang time" which is two
+-# hours behind Beijing time, or UTC +0600. The government of the Xinjiang
++# hours behind Beijing time, or UT +06. The government of the Xinjiang
+ # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as
+ # local governments such as the Ürümqi city government use both times in
+ # publications, referring to what is popularly called Xinjiang time as
+@@ -489,8 +493,8 @@
+ # having the same time as Beijing.
+
+ # From Paul Eggert (2014-06-30):
+-# In the early days of the PRC, Tibet was given its own time zone (UT+6) but
+-# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
++# In the early days of the PRC, Tibet was given its own time zone (UT +06)
++# but this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
+ # Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN
+ # 978-0231142861 (2008), translator's introduction by Matthew Akester, p x.
+ # As this is before our 1970 cutoff, Tibet doesn't need a separate zone.
+@@ -504,12 +508,12 @@
+ # Republics, the Soviet Union, the Kuomintang, and the People's Republic of
+ # China, and tracking down all these organizations' timekeeping rules would be
+ # quite a trick. Approximate this lost history by a transition from LMT to
+-# XJT at the start of 1928, the year of accession of the warlord Jin Shuren,
++# UT +06 at the start of 1928, the year of accession of the warlord Jin Shuren,
+ # which happens to be the date given by Shanks & Pottenger (no doubt as a
+-# guess) as the transition from LMT. Ignore the usage of UT+8 before
+-# 1986-02-01 under the theory that the transition date to UT+8 is unknown and
++# guess) as the transition from LMT. Ignore the usage of +08 before
++# 1986-02-01 under the theory that the transition date to +08 is unknown and
+ # that the sort of users who prefer Asia/Urumqi now typically ignored the
+-# UT+8 mandate back then.
++# +08 mandate back then.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Beijing time, used throughout China; represented by Shanghai.
+@@ -714,7 +718,7 @@
+ # be found from historical government announcement database.
+
+ # From Paul Eggert (2014-07-03):
+-# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01
++# As per Yu-Cheng Chuang, say that Taiwan was at UT +09 from 1937-10-01
+ # until 1945-09-21 at 01:00, overriding Shanks & Pottenger.
+ # Likewise, use Yu-Cheng Chuang's data for DST in Taiwan.
+
+@@ -767,9 +771,19 @@
+ ###############################################################################
+
+ # Cyprus
+-#
++
+ # Milne says the Eastern Telegraph Company used 2:14:00. Stick with LMT.
+-#
++# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++
++# From Paul Eggert (2016-09-09):
++# Yesterday's Cyprus Mail reports that Northern Cyprus followed Turkey's
++# lead and switched from +02/+03 to +03 year-round.
++# http://cyprus-mail.com/2016/09/08/two-time-zones-cyprus-turkey-will-not-turn-clocks-back-next-month/
++#
++# From Even Scharning (2016-10-31):
++# Looks like the time zone split in Cyprus went through last night.
++# http://cyprus-mail.com/2016/10/30/cyprus-new-division-two-time-zones-now-reality/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+ Rule Cyprus 1975 only - Oct 12 0:00 0 -
+@@ -784,7 +798,10 @@
+ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14
++ 2:00 Cyprus EE%sT 1998 Sep
++ 2:00 EUAsia EE%sT 2016 Sep 8
++ 3:00 - +03
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -828,16 +845,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tbilisi 2:59:11 - LMT 1880
+ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time
+- 3:00 - TBIT 1957 Mar # Tbilisi Time
+- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+- 3:00 1:00 TBIST 1991 Apr 9 # independence
+- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+- 4:00 1:00 GEST 1997 Mar lastSun
+- 4:00 E-EurAsia GE%sT 2004 Jun 27
+- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+- 4:00 - GET
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992
++ 3:00 E-EurAsia +03/+04 1994 Sep lastSun
++ 4:00 E-EurAsia +04/+05 1996 Oct lastSun
++ 4:00 1:00 +05 1997 Mar lastSun
++ 4:00 E-EurAsia +04/+05 2004 Jun 27
++ 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
++ 4:00 - +04
+
+ # East Timor
+
+@@ -872,6 +888,15 @@
+ 9:00 - TLT
+
+ # India
++
++# From Ian P. Beacock, in "A brief history of (modern) time", The Atlantic
++# http://www.theatlantic.com/technology/archive/2015/12/the-creation-of-modern-time/421419/
++# (2015-12-22):
++# In January 1906, several thousand cotton-mill workers rioted on the
++# outskirts of Bombay.... They were protesting the proposed abolition of
++# local time in favor of Indian Standard Time.... Journalists called this
++# dispute the "Battle of the Clocks." It lasted nearly half a century.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+@@ -905,7 +930,7 @@
+ # These would be the earliest possible times for a change.
+ # Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions
+ # Traditionnelles, 1987, Paris) says that Java and Madura switched
+-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
++# from UT +09 to +07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+ # (Hollandia). For now, assume all Indonesian locations other than Jayapura
+ # switched on 1945-09-23.
+ #
+@@ -916,11 +941,11 @@
+ # summary published by the Time and Frequency Laboratory of the
+ # Research Center for Calibration, Instrumentation and Metrology,
+ # Indonesia, <http://time.kim.lipi.go.id/time-eng.php> (2006-09-29).
+-# The abbreviations are:
++# The time zone abbreviations and UT offsets are:
+ #
+-# WIB - UTC+7 - Waktu Indonesia Barat (Indonesia western time)
+-# WITA - UTC+8 - Waktu Indonesia Tengah (Indonesia central time)
+-# WIT - UTC+9 - Waktu Indonesia Timur (Indonesia eastern time)
++# WIB - +07 - Waktu Indonesia Barat (Indonesia western time)
++# WITA - +08 - Waktu Indonesia Tengah (Indonesia central time)
++# WIT - +09 - Waktu Indonesia Timur (Indonesia eastern time)
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Java, Sumatra
+@@ -1027,7 +1052,7 @@
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+-# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
++# Iran, Volume 63, No. 18242, dated Tuesday 1386/6/24
+ # [2007-10-16]. I am doing the best translation I can:...
+ # The official time of the country will be moved forward for one hour
+ # on the 24 hours of the first day of the month of Farvardin and will
+@@ -1082,8 +1107,15 @@
+ Rule Iran 2032 2033 - Sep 21 0:00 0 S
+ Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+ Rule Iran 2034 2035 - Sep 22 0:00 0 S
+-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+-Rule Iran 2036 2037 - Sep 21 0:00 0 S
++#
++# The following rules are approximations starting in the year 2038.
++# These are the best post-2037 approximations available, given the
++# restrictions of a single rule using a Gregorian-based data format.
++# At some point this table will need to be extended, though quite
++# possibly Iran will change the rules first.
++Rule Iran 2036 max - Mar 21 0:00 1:00 D
++Rule Iran 2036 max - Sep 21 0:00 0 S
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+@@ -1540,24 +1572,7 @@
+
+ # Kazakhstan
+
+-# From Paul Eggert (1996-11-22):
+-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+-# IATA SSIM mentions a third time zone in Kazakhstan.
+-
+-# From Paul Eggert (2006-03-22):
+-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+-# Also go with the following claims of Shanks & Pottenger:
+-#
+-# - Kazakhstan did not observe DST in 1991.
+-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+-# - Oral switched from +5:00 to +4:00 in spring 1989.
+-
+-# From Kazakhstan Embassy's News Bulletin #11
++# From Kazakhstan Embassy's News Bulletin No. 11
+ # <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21):
+ # The Government of Kazakhstan passed a resolution March 15 abolishing
+ # daylight saving time citing lack of economic benefits and health
+@@ -1573,61 +1588,232 @@
+ # everything else.... I guess that would make Kazakhstan time zones
+ # de jure UTC+5 and UTC+6 respectively.
+
++# From Stepan Golosunov (2016-03-27) ([*] means see later comments below):
++# Review of the linked documents from http://adilet.zan.kz/
++# produced the following data for post-1991 Kazakhstan:
++#
++# 0. Act of the Cabinet of Ministers of the USSR
++# from 1991-02-04 No. 20
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102010545
++# removed the extra hour ("decree time") on the territory of the USSR
++# starting with the last Sunday of March 1991.
++# It also allowed (but not mandated) Kazakh SSR, Kirghiz SSR, Tajik SSR,
++# Turkmen SSR and Uzbek SSR to not have "summer" time.
++#
++# The 1992-01-13 act also refers to the act of the Cabinet of Ministers
++# of the Kazakh SSR from 1991-03-20 No. 170 "About the act of the Cabinet
++# of Ministers of the USSR from 1991-02-04 No. 20" but I didn't found its
++# text.
++#
++# According to Izvestia newspaper No. 68 (23334) from 1991-03-20
++# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# transition to "summer" time:
++# Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
++# Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
++# were to move clocks 1 hour forward.
++# Kazakh SSR (excluding Uralsk oblast); Republic of Kyrgyzstan, Tajik
++# SSR; Andijan, Jizzakh, Namangan, Sirdarya, Tashkent, Fergana oblasts
++# of the Uzbek SSR were to move clocks 1 hour backwards.
++# Other territories were to not move clocks.
++# When the "summer" time would end on 1991-09-29, clocks were to be
++# moved 1 hour backwards on the territory of the USSR excluding
++# Kazakhstan, Kirghizia, Uzbekistan, Turkmenia, Tajikistan.
++#
++# Apparently there were last minute changes. Apparently Kazakh act No. 170
++# was one of such changes.
++#
++# https://ru.wikipedia.org/wiki/Декретное время
++# claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
++# Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
++# were to not move clocks and Uralsk oblast was to move clocks
++# forward; on 1991-09-29 Kazakhstan was to move clocks backwards.
++# (Probably there were changes even after that publication. There is an
++# article claiming that Kaliningrad oblast decided on 1991-03-29 to not
++# move clocks.)
++#
++# This implies that on 1991-03-31 Asia/Oral remained on +04/+05 while
++# the rest of Kazakhstan switched from +06/+07 to +05/06 or from +05/06
++# to +04/+05. It's unclear how Kzyl-Orda oblast moved into the fifth
++# time belt. (By switching from +04/+05 to +05/+06 on 1991-09-29?) ...
++#
++# 1. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-01-13 No. 28
++# http://adilet.zan.kz/rus/docs/P920000028_
++# (text includes modification from the 1996 act)
++# introduced new rules for calculation of time, mirroring Russian
++# 1992-01-08 act. It specified that time would be calculated
++# according to time belts plus extra hour ("decree time"), moved clocks
++# on the whole territory of Kazakhstan 1 hour forward on 1992-01-19 at
++# 2:00, specified DST rules. It acknowledged that Kazakhstan was
++# located in the fourth and the fifth time belts and specified the
++# border between them to be located east of Kustanay and Aktyubinsk
++# oblasts (notably including Turgai and Kzyl-Orda oblasts into the fifth
++# time belt).
++#
++# This means switch on 1992-01-19 at 2:00 from +04/+05 to +05/+06 for
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyrau and Kustanay oblasts; from
++# +05/+06 to +06/+07 for Asia/Almaty and Asia/Qyzylorda (and Arkalyk) [*]....
++#
++# 2. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-03-27 No. 284
++# http://adilet.zan.kz/rus/docs/P920000284_
++# cancels extra hour ("decree time") for Uralsk and Kzyl-Orda oblasts
++# since the last Sunday of March 1992, while keeping them in the fourth
++# and the fifth time belts respectively.
++#
++# 3. Order of the Prime Minister of the Republic of Kazakhstan
++# from 1994-09-23 No. 384
++# http://adilet.zan.kz/rus/docs/R940000384_
++# cancels the extra hour ("decree time") on the territory of Mangystau
++# oblast since the last Sunday of September 1994 (saying that time on
++# the territory would correspond to the third time belt as a
++# result)....
++#
++# 4. Act of the Government of the Republic of Kazakhstan
++# from 1996-05-08 No. 575
++# http://adilet.zan.kz/rus/docs/P960000575_
++# amends the 1992-01-13 act to end summer time in October instead
++# of September, mirroring identical Russian change from 1996-04-23 act.
++#
++# 5. Act of the Government of the Republic of Kazakhstan
++# from 1999-03-26 No. 305
++# http://adilet.zan.kz/rus/docs/P990000305_
++# cancels the extra hour ("decree time") for Atyrau oblast since the
++# last Sunday of March 1999 while retaining the oblast in the fourth
++# time belt.
++#
++# This means change from +05/+06 to +04/+05.
++#
++# There is no zone for Atyrau currently (listed under Asia/Aqtau in
++# zone1970.tab).[*]
++#
++# 6. Act of the Government of the Republic of Kazakhstan
++# from 2000-11-23 No. 1749
++# http://adilet.zan.kz/rus/archive/docs/P000001749_/23.11.2000
++# replaces the previous five documents.
++#
++# The only changes I noticed are in definition of the border between the
++# fourth and the fifth time belts. They account for changes in spelling
++# and administrative division (splitting of Turgai oblast in 1997
++# probably changed time in territories incorporated into Kostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Kyzylorda oblast
++# from being in the fifth time belt and not using decree time into the
++# fourth time belt (no change in practice).[*]
++#
++# 7. Act of the Government of the Republic of Kazakhstan
++# from 2003-12-29 No. 1342
++# http://adilet.zan.kz/rus/docs/P030001342_
++# modified the 2000-11-23 act. No relevant changes, apparently.
++#
++# 8. Act of the Government of the Republic of Kazakhstan
++# from 2004-07-20 No. 775
++# http://adilet.zan.kz/rus/archive/docs/P040000775_/20.07.2004
++# modified the 2000-11-23 act to move Kostanay and Kyzylorda oblasts into
++# the fifth time belt and add Aktobe oblast to the list of regions not
++# using extra hour ("decree time"), leaving Kazakhstan with only 2 time
++# zones (+04/+05 and +06/+07). The changes were to be implemented
++# during DST transitions in 2004 and 2005 but the acts got radically
++# amended before implementation happened.
++#
++# 9. Act of the Government of the Republic of Kazakhstan
++# from 2004-09-15 No. 1059
++# http://adilet.zan.kz/rus/docs/P040001059_
++# modified the 2000-11-23 act to remove exceptions from the "decree time"
++# (leaving Kazakhstan in +05/+06 and +06/+07 zones), amended the
++# 2004-07-20 act to implement changes for Atyrau, West Kazakhstan,
++# Kostanay, Kyzylorda and Mangystau oblasts by not moving clocks
++# during the 2014 transition to "winter" time.
++#
++# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# zone currently), Asia/Oral, Asia/Aqtau and transition from +05/+06 to
++# +06/+07 for Kostanay oblast (Kostanay and Arkalyk, no zones currently)
++# and Asia/Qyzylorda on 2004-10-31 at 3:00....[*]
++#
++# 10. Act of the Government of the Republic of Kazakhstan
++# from 2005-03-15 No. 231
++# http://adilet.zan.kz/rus/docs/P050000231_
++# removes DST provisions from the 2000-11-23 act, removes most of the
++# (already implemented) provisions from the 2004-07-20 and 2004-09-15
++# acts, comes into effect 10 days after official publication.
++# The only practical effect seems to be the abolition of the summer
++# time.
++#
++# Unamended version of the act of the Government of the Russian Federation
++# No. 23 from 1992-01-08 [See 'europe' file for details].
++# Kazakh 1992-01-13 act appears to provide the same rules and 1992-03-27
++# act was to be enacted on the last Sunday of March 1992.
++
++# From Paul Eggert (2016-04-15):
++# The tables below should reflect Stepan Golosunov's remarks above,
++# except for the items marked "[*]" which I haven't gotten to yet.
++# It looks like we will need new zones Asia/Atyrau and Asia/Qostanay
++# to handle changes from 1992 through 2004 that we did not previously
++# know about.
++
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
++# This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
++# KZ-KAR, KZ-SEV, KZ-PAV, and KZ-YUZ.
+ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+- 6:00 RussiaAsia ALM%sT 1991
+- 6:00 - ALMT 1992
+- 6:00 RussiaAsia ALM%sT 2005 Mar 15
+- 6:00 - ALMT
+-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
++ 6:00 - +06
++# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+- 5:00 - KIZT 1981 Apr 1
+- 5:00 1:00 KIZST 1981 Oct 1
+- 6:00 - KIZT 1982 Apr 1
+- 5:00 RussiaAsia KIZ%sT 1991
+- 5:00 - KIZT 1991 Dec 16 # independence
+- 5:00 - QYZT 1992 Jan 19 2:00
+- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+- 6:00 - QYZT
+-# Aqtobe (aka Aktobe, formerly Aktyubinsk)
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 6:00 - +06
++# Aqtobe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+- 5:00 - AKTT 1981 Apr 1
+- 5:00 1:00 AKTST 1981 Oct 1
+- 6:00 - AKTT 1982 Apr 1
+- 5:00 RussiaAsia AKT%sT 1991
+- 5:00 - AKTT 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+- 5:00 - AQTT
+-# Mangghystau
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 5:00 - +05
++# Qostanay (KZ-KUS)
++
++# Mangghystau (KZ-MAN)
+ # Aqtau was not founded until 1963, but it represents an inhabited region,
+ # so include time stamps before 1963.
+ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+- 5:00 - FORT 1963
+- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+- 6:00 - SHET 1982 Apr 1
+- 5:00 RussiaAsia SHE%sT 1991
+- 5:00 - SHET 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+- 4:00 RussiaAsia AQT%sT 2005 Mar 15
+- 5:00 - AQTT
+-# West Kazakhstan
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1963
++ 5:00 - +05 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
++
++# West Kazakhstan (KZ-ZAP)
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+- 4:00 - URAT 1930 Jun 21 # Ural'sk time
+- 5:00 - URAT 1981 Apr 1
+- 5:00 1:00 URAST 1981 Oct 1
+- 6:00 - URAT 1982 Apr 1
+- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+- 4:00 RussiaAsia URA%sT 1991
+- 4:00 - URAT 1991 Dec 16 # independence
+- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+- 5:00 - ORAT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
+
+ # Kyrgyzstan (Kirgizstan)
+ # Transitions through 1991 are from Shanks & Pottenger.
+@@ -1648,11 +1834,11 @@
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+- 5:00 - FRUT 1930 Jun 21 # Frunze Time
+- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+- 6:00 - KGT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
++ 5:00 Kyrgyz +05/+06 2005 Aug 12
++ 6:00 - +06
+
+ ###############################################################################
+
+@@ -1691,25 +1877,36 @@
+ Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D
+ Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
+
+-# From Paul Eggert (2014-10-30):
++# From Paul Eggert (2016-08-23):
+ # The Korean Wikipedia entry gives the following sources for UT offsets:
+ #
+-# 1908: Official Journal Article No. 3994 (Edict No. 5)
++# 1908: Official Journal Article No. 3994 (decree No. 5)
+ # 1912: Governor-General of Korea Official Gazette Issue No. 367
+ # (Announcement No. 338)
+ # 1954: Presidential Decree No. 876 (1954-03-17)
+ # 1961: Law No. 676 (1961-08-07)
+-# 1987: Law No. 3919 (1986-12-31)
+ #
+-# The Wikipedia entry also has confusing information about a change
+-# to UT+9 in April 1910, but then what would be the point of the later change
+-# to UT+9 on 1912-01-01? Omit the 1910 change for now.
++# (Another source "1987: Law No. 3919 (1986-12-31)" was in the 2014-10-30
++# edition of the Korean Wikipedia entry.)
+ #
+ # I guessed that time zone abbreviations through 1945 followed the same
+ # rules as discussed under Taiwan, with nominal switches from JST to KST
+ # when the respective cities were taken over by the Allies after WWII.
+ #
+-# For Pyongyang we have no information; guess no changes since World War II.
++# For Pyongyang, guess no changes from World War II until 2015, as we
++# have no information otherwise.
++
++# From Steffen Thorsen (2015-08-07):
++# According to many news sources, North Korea is going to change to
++# the 8:30 time zone on August 15, one example:
++# http://www.bbc.com/news/world-asia-33815049
++#
++# From Paul Eggert (2015-08-15):
++# Bells rang out midnight (00:00) Friday as part of the celebrations. See:
++# Talmadge E. North Korea celebrates new time zone, 'Pyongyang Time'
++# http://news.yahoo.com/north-korea-celebrates-time-zone-pyongyang-time-164038128.html
++# There is no common English-language abbreviation for this time zone.
++# Use KST, as that's what we already use for 1954-1961 in ROK.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1
+@@ -1723,7 +1920,8 @@
+ 8:30 - KST 1912 Jan 1
+ 9:00 - JCST 1937 Oct 1
+ 9:00 - JST 1945 Aug 24
+- 9:00 - KST
++ 9:00 - KST 2015 Aug 15 00:00
++ 8:30 - KST
+
+ ###############################################################################
+
+@@ -1856,7 +2054,7 @@
+ # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+ # there is only one time zone and that DST is observed, citing Microsoft
+ # Windows XP as the source. Risto Nykänen (2005-05-16) reports that
+-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
++# travelmongolia.org says there are two time zones (UT +07, +08) with no DST.
+ # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+ # Washington, DC says there are two time zones, with DST observed.
+ # He also found
+@@ -2096,8 +2294,8 @@
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
++Rule Pakistan 2002 only - Apr Sun>=2 0:00 1:00 S
++Rule Pakistan 2002 only - Oct Sun>=2 0:00 0 -
+ Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+ Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+@@ -2359,9 +2557,28 @@
+ # From Paul Eggert (2015-03-03):
+ # http://www.timeanddate.com/time/change/west-bank/ramallah?year=2014
+ # says that the fall 2014 transition was Oct 23 at 24:00.
+-# For future dates, guess the last Friday in March at 24:00 through
+-# the first Friday on or after October 21 at 00:00. This is consistent with
+-# the predictions in today's editions of the following URLs:
++
++# From Hannah Kreitem (2016-03-09):
++# http://www.palestinecabinet.gov.ps/WebSite/ar/ViewDetails?ID=31728
++# [Google translation]: "The Council also decided to start daylight
++# saving in Palestine as of one o'clock on Saturday morning,
++# 2016-03-26, to provide the clock 60 minutes ahead."
++#
++# From Paul Eggert (2016-03-12):
++# Predict spring transitions on March's last Saturday at 01:00 from now on.
++
++# From Sharef Mustafa (2016-10-19):
++# [T]he Palestinian cabinet decision (Mar 8th 2016) published on
++# http://www.palestinecabinet.gov.ps/WebSite/Upload/Decree/GOV_17/16032016134830.pdf
++# states that summer time will end on Oct 29th at 01:00.
++#
++# From Tim Parenti (2016-10-19):
++# Predict fall transitions on October's last Saturday at 01:00 from now on.
++# This is consistent with the 2016 transition as well as our spring
++# predictions.
++#
++# From Paul Eggert (2016-10-19):
++# It's also consistent with predictions in the following URLs today:
+ # http://www.timeanddate.com/time/change/gaza-strip/gaza
+ # http://www.timeanddate.com/time/change/west-bank/hebron
+
+@@ -2392,8 +2609,10 @@
+ Rule Palestine 2012 2014 - Mar lastThu 24:00 1:00 S
+ Rule Palestine 2012 only - Sep 21 1:00 0 -
+ Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
+-Rule Palestine 2014 max - Oct Fri>=21 0:00 0 -
+-Rule Palestine 2015 max - Mar lastFri 24:00 1:00 S
++Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
++Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
++Rule Palestine 2016 max - Mar lastSat 1:00 1:00 S
++Rule Palestine 2016 max - Oct lastSat 1:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+@@ -2481,7 +2700,7 @@
+ # earlier date.
+ #
+ # Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two
+-# time zones; the other zone, at UTC+4, was in the far eastern part of
++# time zones; the other zone, at UT +04, was in the far eastern part of
+ # the country. Ignore this, as it's before our 1970 cutoff.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2543,45 +2762,31 @@
+ # People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+ # as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+-# From K Sethu (2006-04-25):
+-# I think the abbreviation LKT originated from the world of computers at
+-# the time of or subsequent to the time zone changes by SL Government
+-# twice in 1996 and probably SL Government or its standardization
+-# agencies never declared an abbreviation as a national standard.
+-#
+-# I recollect before the recent change the government announcements
+-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+-# Time and no mention was made about the abbreviation.
+-#
+-# If we look at Sri Lanka Department of Government's "Official News
+-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+-# use SLT as abbreviation in time stamp at the beginning of each news
+-# item....
+-#
+-# Within Sri Lanka I think LKT is well known among computer users and
+-# administrators. In my opinion SLT may not be a good choice because the
+-# nation's largest telcom / internet operator Sri Lanka Telcom is well
+-# known by that abbreviation - simply as SLT (there IP domains are
+-# slt.lk and sltnet.lk).
+-#
+-# But if indeed our government has adopted SLT as standard abbreviation
+-# (that we have not known so far) then it is better that it be used for
+-# all computers.
+-
+-# From Paul Eggert (2006-04-25):
+-# One possibility is that we wait for a bit for the dust to settle down
+-# and then see what people actually say in practice.
++# From Sadika Sumanapala (2016-10-19):
++# According to http://www.sltime.org (maintained by Measurement Units,
++# Standards & Services Department, Sri Lanka) abbreviation for Sri Lanka
++# standard time is SLST.
++#
++# From Paul Eggert (2016-10-18):
++# "SLST" seems to be reasonably recent and rarely-used outside time
++# zone nerd sources. I searched Google News and found three uses of
++# it in the International Business Times of India in February and
++# March of this year when discussing cricket match times, but nothing
++# since then (though there has been a lot of cricket) and nothing in
++# other English-language news sources. Our old abbreviation "LKT" is
++# even worse. For now, let's use a numeric abbreviation; we can
++# switch to "SLST" if it catches on.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 5:19:32 - MMT 1906 # Moratuwa Mean Time
+- 5:30 - IST 1942 Jan 5
+- 5:30 0:30 IHST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 16 2:00
+- 5:30 - IST 1996 May 25 0:00
+- 6:30 - LKT 1996 Oct 26 0:30
+- 6:00 - LKT 2006 Apr 15 0:30
+- 5:30 - IST
++ 5:30 - +0530 1942 Jan 5
++ 5:30 0:30 +0530/+06 1942 Sep
++ 5:30 1:00 +0530/+0630 1945 Oct 16 2:00
++ 5:30 - +0530 1996 May 25 0:00
++ 6:30 - +0630 1996 Oct 26 0:30
++ 6:00 - +06 2006 Apr 15 0:30
++ 5:30 - +0530
+
+ # Syria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -2750,10 +2955,10 @@
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+- 5:00 1:00 DUSST 1991 Sep 9 2:00s
+- 5:00 - TJT # Tajikistan Time
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 1:00 +05/+06 1991 Sep 9 2:00s
++ 5:00 - +05
+
+ # Thailand
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2767,11 +2972,10 @@
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+- 5:00 - TMT
++ 4:00 - +04 1930 Jun 21
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
++ 5:00 - +05
+
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2783,20 +2987,18 @@
+ # Byalokoz 1919 says Uzbekistan was 4:27:53.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
+- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+- 5:00 - SAMT 1981 Apr 1
+- 5:00 1:00 SAMST 1981 Oct 1
+- 6:00 - TAST 1982 Apr 1 # Tashkent Time
+- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+ # Milne says Tashkent was 4:37:10.8; round to nearest.
+ Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2
+- 5:00 - TAST 1930 Jun 21 # Tashkent Time
+- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+
+ # Vietnam
+
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -60,6 +60,14 @@
+ # Hamilton is the largest, but there is also a Hamilton in Victoria,
+ # so use Lindeman.
+ #
++# From J William Piggott (2016-02-20):
++# There is no location named Holiday Islands in Queensland Australia; holiday
++# islands is a colloquial term used globally. Hayman and Lindeman are at the
++# north and south extremes of the Whitsunday Islands archipelago, and
++# Hamilton is in between; it is reasonable to believe that this time zone
++# applies to all of the Whitsundays.
++# http://www.australia.gov.au/about-australia/australian-story/austn-islands
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D
+ Rule AQ 1972 only - Feb lastSun 2:00s 0 S
+@@ -235,11 +243,11 @@
+ # will produce a binary file with an [A]EST-type as the first 32-bit type;
+ # this is required for correct handling of times before 1916 by
+ # pre-2013 versions of localtime.
+-Zone Antarctica/Macquarie 0 - zzz 1899 Nov
++Zone Antarctica/Macquarie 0 - -00 1899 Nov
+ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1919 Apr 1 0:00s
+- 0 - zzz 1948 Mar 25
++ 0 - -00 1948 Mar 25
+ 10:00 Aus AE%sT 1967
+ 10:00 AT AE%sT 2010 Apr 4 3:00
+ 11:00 - MIST # Macquarie I Standard Time
+@@ -335,10 +343,23 @@
+ # DST will start Nov. 2 this year.
+ # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-NOVEMBER-2ND.aspx
+
+-# From Paul Eggert (2014-10-20):
++# From a government order dated 2015-08-26 and published as Legal Notice No. 77
++# in the Government of Fiji Gazette Supplement No. 24 (2015-08-28),
++# via Ken Rylander (2015-09-02):
++# the daylight saving period is 1 hour in advance of the standard time
++# commencing at 2.00 am on Sunday 1st November, 2015 and ending at
++# 3.00 am on Sunday 17th January, 2016.
++
++# From Raymond Kumar (2016-10-04):
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-6th-NOVEMBER,-2016.aspx
++# "Fiji's daylight savings will begin on Sunday, 6 November 2016, when
++# clocks go forward an hour at 2am to 3am.... Daylight Saving will
++# end at 3.00am on Sunday 15th January 2017."
++
++# From Paul Eggert (2016-10-03):
+ # For now, guess DST from 02:00 the first Sunday in November to
+-# 03:00 the first Sunday on or after January 18. Although ad hoc, it
+-# matches this year's plan and seems more likely to match future
++# 03:00 the third Sunday in January. Although ad hoc, it matches
++# transitions since late 2014 and seems more likely to match future
+ # practice than guessing no DST.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -351,7 +372,7 @@
+ Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 -
+ Rule Fiji 2014 only - Jan Sun>=18 2:00 0 -
+ Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S
+-Rule Fiji 2015 max - Jan Sun>=18 3:00 0 -
++Rule Fiji 2015 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji FJ%sT # Fiji Time
+@@ -510,7 +531,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
+ 11:12 - NMT 1951 # Norfolk Mean Time
+- 11:30 - NFT # Norfolk Time
++ 11:30 - NFT 1974 Oct 27 02:00 # Norfolk T.
++ 11:30 1:00 NFST 1975 Mar 2 02:00
++ 11:30 - NFT 2015 Oct 4 02:00
++ 11:00 - NFT
+
+ # Palau (Belau)
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -527,7 +551,7 @@
+ # Base the Bougainville entry on the Arawa-Kieta region, which appears to have
+ # the most people even though it was devastated in the Bougainville Civil War.
+ #
+-# Although Shanks gives 1942-03-15 / 1943-11-01 for JST, these dates
++# Although Shanks gives 1942-03-15 / 1943-11-01 for UT +09, these dates
+ # are apparently rough guesswork from the starts of military campaigns.
+ # The World War II entries below are instead based on Arawa-Kieta.
+ # The Japanese occupied Kieta in July 1942,
+@@ -535,8 +559,8 @@
+ # http://pwencycl.kgbudge.com/B/o/Bougainville.htm
+ # and seem to have controlled it until their 1945-08-21 surrender.
+ #
+-# The Autonomous Region of Bougainville plans to switch from UTC+10 to UTC+11
+-# on 2014-12-28 at 02:00. They call UTC+11 "Bougainville Standard Time";
++# The Autonomous Region of Bougainville switched from UT +10 to +11
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
+ # abbreviate this as BST. See:
+ # http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
+ #
+@@ -602,7 +626,7 @@
+ # From Paul Eggert (2014-06-27):
+ # The International Date Line Act 2011
+ # http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf
+-# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on
++# changed Samoa from UT -11 to +13, effective "12 o'clock midnight, on
+ # Thursday 29th December 2011". The International Date Line was adjusted
+ # accordingly.
+
+@@ -678,11 +702,13 @@
+ Rule Tonga 2000 only - Mar 19 2:00s 0 -
+ Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
++Rule Tonga 2016 max - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+- 12:20 - TOT 1941 # Tonga Time
+- 13:00 - TOT 1999
+- 13:00 Tonga TO%sT
++ 12:20 - +1220 1941
++ 13:00 - +13 1999
++ 13:00 Tonga +13/+14
+
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -697,7 +723,7 @@
+ # 1886-1891; Baker was similar but exact dates are not known.
+ # Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+ # uninhabited thereafter.
+-# Howland observed Hawaii Standard Time (UT-10:30) in 1937;
++# Howland observed Hawaii Standard Time (UT -10:30) in 1937;
+ # see page 206 of Elgen M. Long and Marie K. Long,
+ # Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+ # So most likely Howland and Baker observed Hawaii Time from 1935
+@@ -1455,7 +1481,7 @@
+ # Zealand time. I understand that is the time they keep locally, anyhow."
+ # For now, assume this practice goes back to the introduction of standard time
+ # in New Zealand, as this would make Chatham Islands time almost exactly match
+-# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did
++# LMT back when New Zealand was at UT +11:30; also, assume Chatham Islands did
+ # not observe New Zealand's prewar DST.
+
+ ###############################################################################
+@@ -1511,7 +1537,7 @@
+ # For now, we assume the Ladrones switched at the same time as the Philippines;
+ # see Asia/Manila.
+
+-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
++# US Public Law 106-564 (2000-12-23) made UT +10 the official standard time,
+ # under the name "Chamorro Standard Time". There is no official abbreviation,
+ # but Congressman Robert A. Underwood, author of the bill that became law,
+ # wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+@@ -1523,15 +1549,15 @@
+ # "I am certain, having lived there for the past decade, that 'Truk'
+ # (now properly known as Chuuk) ... is in the time zone GMT+10."
+ #
+-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
++# Shanks & Pottenger write that Truk switched from UT +10 to +11
+ # on 1978-10-01; ignore this for now.
+
+ # From Paul Eggert (1999-10-29):
+ # The Federated States of Micronesia Visitors Board writes in
+ # The Federated States of Micronesia - Visitor Information (1999-01-26)
+ # http://www.fsmgov.org/info/clocks.html
+-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
++# that Truk and Yap are UT +10, and Ponape and Kosrae are +11.
++# We don't know when Kosrae switched from +12; assume January 1 for now.
+
+
+ # Midway
+@@ -1550,6 +1576,20 @@
+ # started DST on June 3. Possibly DST was observed other years
+ # in Midway, but we have no record of it.
+
++# Norfolk
++
++# From Alexander Krivenyshev (2015-09-23):
++# Norfolk Island will change ... from +1130 to +1100:
++# https://www.comlaw.gov.au/Details/F2015L01483/Explanatory%20Statement/Text
++# ... at 12.30 am (by legal time in New South Wales) on 4 October 2015.
++# http://www.norfolkisland.gov.nf/nia/MediaRelease/Media%20Release%20Norfolk%20Island%20Standard%20Time%20Change.pdf
++
++# From Paul Eggert (2015-09-23):
++# Transitions before 2015 are from timeanddate.com, which consulted
++# the Norfolk Island Museum and the Australian Bureau of Meteorology's
++# Norfolk Island station, and found no record of Norfolk observing DST
++# other than in 1974/5. See:
++# http://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1583,11 +1623,11 @@
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
+
+-# Although Shanks & Pottenger says they both switched to UTC-11:30
+-# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11
++# Although Shanks & Pottenger says they both switched to UT -11:30
++# in 1911, and to -11 in 1950. many earlier sources give -11
+ # for American Samoa, e.g., the US National Bureau of Standards
+ # circular "Standard Time Throughout the World", 1932.
+-# Assume American Samoa switched to UTC-11 in 1911, not 1950,
++# Assume American Samoa switched to -11 in 1911, not 1950,
+ # and that after 1950 they agreed until (western) Samoa skipped a
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+@@ -1674,9 +1714,17 @@
+ # of January the standard time in the Kingdom shall be moved backward by one
+ # hour to 1:00am.
+
+-# From Pulu 'Anau (2002-11-05):
++# From Pulu ʻAnau (2002-11-05):
+ # The law was for 3 years, supposedly to get renewed. It wasn't.
+
++# From Pulu ʻAnau (2016-10-27):
++# http://mic.gov.to/news-today/press-releases/6375-daylight-saving-set-to-run-from-6-november-2016-to-15-january-2017
++# Cannot find anyone who knows the rules, has seen the duration or has seen
++# the cabinet decision, but it appears we are following Fiji's rule set.
++#
++# From Tim Parenti (2016-10-26):
++# Assume Tonga will observe DST from the first Sunday in November at 02:00
++# through the third Sunday in January at 03:00, like Fiji, for now.
+
+ # Wake
+
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -23,6 +23,7 @@
+ Link America/Toronto America/Montreal
+ Link America/Rio_Branco America/Porto_Acre
+ Link America/Argentina/Cordoba America/Rosario
++Link America/Tijuana America/Santa_Isabel
+ Link America/Denver America/Shiprock
+ Link America/Port_of_Spain America/Virgin
+ Link Pacific/Auckland Antarctica/South_Pole
+@@ -35,6 +36,7 @@
+ Link Asia/Urumqi Asia/Kashgar
+ Link Asia/Kathmandu Asia/Katmandu
+ Link Asia/Macau Asia/Macao
++Link Asia/Yangon Asia/Rangoon
+ Link Asia/Ho_Chi_Minh Asia/Saigon
+ Link Asia/Jerusalem Asia/Tel_Aviv
+ Link Asia/Thimphu Asia/Thimbu
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -0,0 +1,677 @@
++# Zones that go back beyond the scope of the tz database
++
++# This file is in the public domain.
++
++# This file is by no means authoritative; if you think you know
++# better, go ahead and edit it (and please send any changes to
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
++
++
++# From Paul Eggert (2014-10-31):
++
++# This file contains data outside the normal scope of the tz database,
++# in that its zones do not differ from normal tz zones after 1970.
++# Links in this file point to zones in this file, superseding links in
++# the file 'backward'.
++
++# Although zones in this file may be of some use for analyzing
++# pre-1970 time stamps, they are less reliable, cover only a tiny
++# sliver of the pre-1970 era, and cannot feasibly be improved to cover
++# most of the era. Because the zones are out of normal scope for the
++# database, less effort is put into maintaining this file. Many of
++# the zones were formerly in other source files, but were removed or
++# replaced by links as their data entries were questionable and/or they
++# differed from other zones only in pre-1970 time stamps.
++
++# Unless otherwise specified, the source for data through 1990 is:
++# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
++# San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
++
++# This file is not intended to be compiled standalone, as it
++# assumes rules from other files. In the tz distribution, use
++# 'make PACKRATDATA=backzone zones' to compile and install this file.
++
++# Zones are sorted by zone name. Each zone is preceded by the
++# name of the country that the zone is in, along with any other
++# commentary and rules associated with the entry.
++#
++# As explained in the zic man page, the zone columns are:
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++
++# Ethiopia
++# From Paul Eggert (2014-07-31):
++# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
++# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
++# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
++#
++# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
++# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
++# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
++# was for Adis Dera. Quite likely the Shanks data entries are wrong
++# anyway.
++Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++
++# Eritrea
++Zone Africa/Asmara 2:35:32 - LMT 1870
++ 2:35:32 - AMT 1890 # Asmara Mean Time
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++Link Africa/Asmara Africa/Asmera
++
++# Mali (southern)
++Zone Africa/Bamako -0:32:00 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Jun 20
++ 0:00 - GMT
++
++# Central African Republic
++Zone Africa/Bangui 1:14:20 - LMT 1912
++ 1:00 - WAT
++
++# Gambia
++Zone Africa/Banjul -1:06:36 - LMT 1912
++ -1:06:36 - BMT 1935 # Banjul Mean Time
++ -1:00 - WAT 1964
++ 0:00 - GMT
++
++# Malawi
++Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Republic of the Congo
++Zone Africa/Brazzaville 1:01:08 - LMT 1912
++ 1:00 - WAT
++
++# Burundi
++Zone Africa/Bujumbura 1:57:28 - LMT 1890
++ 2:00 - CAT
++
++# Guinea
++Zone Africa/Conakry -0:54:52 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960
++ 0:00 - GMT
++
++# Senegal
++Zone Africa/Dakar -1:09:44 - LMT 1912
++ -1:00 - WAT 1941 Jun
++ 0:00 - GMT
++
++# Tanzania
++Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
++ 3:00 - EAT 1948
++ 2:45 - BEAUT 1961
++ 3:00 - EAT
++
++# Djibouti
++Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
++ 3:00 - EAT
++
++# Cameroon
++# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
++Zone Africa/Douala 0:38:48 - LMT 1912
++ 1:00 - WAT
++# Sierra Leone
++# From Paul Eggert (2014-08-12):
++# The following table is from Shanks & Pottenger, but it can't be right.
++# Whitman gives Mar 31 - Aug 31 for 1931 on.
++# The International Hydrographic Bulletin, 1932-33, p 63 says that
++# Sierra Leone would advance its clocks by 20 minutes on 1933-10-01.
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
++Rule SL 1935 1942 - Oct 1 0:00 0 WAT
++Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
++Rule SL 1957 1962 - Sep 1 0:00 0 GMT
++Zone Africa/Freetown -0:53:00 - LMT 1882
++ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
++ -1:00 SL %s 1957
++ 0:00 SL %s
++
++# Botswana
++# From Paul Eggert (2013-02-21):
++# Milne says they were regulated by the Cape Town Signal in 1899;
++# assume they switched to 2:00 when Cape Town did.
++Zone Africa/Gaborone 1:43:40 - LMT 1885
++ 1:30 - SAST 1903 Mar
++ 2:00 - CAT 1943 Sep 19 2:00
++ 2:00 1:00 CAST 1944 Mar 19 2:00
++ 2:00 - CAT
++
++# Zimbabwe
++Zone Africa/Harare 2:04:12 - LMT 1903 Mar
++ 2:00 - CAT
++
++# South Sudan
++Zone Africa/Juba 2:06:24 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
++
++# Uganda
++Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
++ 3:00 - EAT 1930
++ 2:30 - BEAT 1948
++ 2:45 - BEAUT 1957
++ 3:00 - EAT
++
++# Rwanda
++Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
++ 2:00 - CAT
++
++# Democratic Republic of the Congo (west)
++Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
++ 1:00 - WAT
++
++# Gabon
++Zone Africa/Libreville 0:37:48 - LMT 1912
++ 1:00 - WAT
++
++# Togo
++Zone Africa/Lome 0:04:52 - LMT 1893
++ 0:00 - GMT
++
++# Angola
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
++Zone Africa/Luanda 0:52:56 - LMT 1892
++ 0:52:04 - AOT 1912 Jan 1 # Angola Time
++ 1:00 - WAT
++
++# Democratic Republic of the Congo (east)
++Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
++ 2:00 - CAT
++
++# Zambia
++Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Equatorial Guinea
++#
++# Although Shanks says that Malabo switched from UT +00 to +01 on 1963-12-15,
++# a Google Books search says that London Calling, Issues 432-465 (1948), p 19,
++# says that Spanish Guinea was at +01 back then. The Shanks data entries
++# are most likely wrong, but we have nothing better; use them here for now.
++#
++Zone Africa/Malabo 0:35:08 - LMT 1912
++ 0:00 - GMT 1963 Dec 15
++ 1:00 - WAT
++
++# Lesotho
++Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
++ 2:00 - SAST 1943 Sep 19 2:00
++ 2:00 1:00 SAST 1944 Mar 19 2:00
++ 2:00 - SAST
++
++# Swaziland
++Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
++ 2:00 - SAST
++
++# Somalia
++Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
++ 3:00 - EAT 1931
++ 2:30 - BEAT 1957
++ 3:00 - EAT
++
++# Niger
++Zone Africa/Niamey 0:08:28 - LMT 1912
++ -1:00 - WAT 1934 Feb 26
++ 0:00 - GMT 1960
++ 1:00 - WAT
++
++# Mauritania
++Zone Africa/Nouakchott -1:03:48 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Nov 28
++ 0:00 - GMT
++
++# Burkina Faso
++Zone Africa/Ouagadougou -0:06:04 - LMT 1912
++ 0:00 - GMT
++
++# Benin
++# Whitman says they switched to 1:00 in 1946, not 1934;
++# go with Shanks & Pottenger.
++Zone Africa/Porto-Novo 0:10:28 - LMT 1912 Jan 1
++ 0:00 - GMT 1934 Feb 26
++ 1:00 - WAT
++
++# São Tomé and Príncipe
++Zone Africa/Sao_Tome 0:26:56 - LMT 1884
++ -0:36:32 - LMT 1912 # Lisbon Mean Time
++ 0:00 - GMT
++
++# Mali (northern)
++Zone Africa/Timbuktu -0:12:04 - LMT 1912
++ 0:00 - GMT
++
++# Anguilla
++Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
++ -4:00 - AST
++
++# Antigua and Barbuda
++Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
++ -5:00 - EST 1951
++ -4:00 - AST
++
++# Chubut, Argentina
++# The name "Comodoro Rivadavia" exceeds the 14-byte POSIX limit.
++Zone America/Argentina/ComodRivadavia -4:30:00 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Mar 3
++ -4:00 - WART 1991 Oct 20
++ -3:00 Arg AR%sT 1999 Oct 3
++ -4:00 Arg AR%sT 2000 Mar 3
++ -3:00 - ART 2004 Jun 1
++ -4:00 - WART 2004 Jun 20
++ -3:00 - ART
++
++# Aruba
++Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
++ -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:00 - AST
++
++# Cayman Is
++Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST
++
++# Canada
++Zone America/Coral_Harbour -5:32:40 - LMT 1884
++ -5:00 NT_YK E%sT 1946
++ -5:00 - EST
++
++# Dominica
++Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
++ -4:00 - AST
++
++# Baja California
++# See 'northamerica' for why this entry is here rather than there.
++Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32
++ -8:00 - PST 1927 Jun 10 23:00
++ -7:00 - MST 1930 Nov 16
++ -8:00 - PST 1942 Apr
++ -7:00 - MST 1949 Jan 14
++ -8:00 - PST 1996
++ -8:00 Mexico P%sT
++
++# Grenada
++Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
++ -4:00 - AST
++
++# Guadeloupe
++Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe-à-Pitre
++ -4:00 - AST
++
++# Canada
++#
++# From Paul Eggert (2015-03-24):
++# Since 1970 most of Quebec has been like Toronto; see
++# America/Toronto. However, earlier versions of the tz database
++# mistakenly relied on data from Shanks & Pottenger saying that Quebec
++# differed from Ontario after 1970, and the following rules and zone
++# were created for most of Quebec from the incorrect Shanks &
++# Pottenger data. The post-1970 entries have been corrected, but the
++# pre-1970 entries are unchecked and probably have errors.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Mont 1917 only - Mar 25 2:00 1:00 D
++Rule Mont 1917 only - Apr 24 0:00 0 S
++Rule Mont 1919 only - Mar 31 2:30 1:00 D
++Rule Mont 1919 only - Oct 25 2:30 0 S
++Rule Mont 1920 only - May 2 2:30 1:00 D
++Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
++Rule Mont 1921 only - May 1 2:00 1:00 D
++Rule Mont 1922 only - Apr 30 2:00 1:00 D
++Rule Mont 1924 only - May 17 2:00 1:00 D
++Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
++Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
++Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
++Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
++Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
++Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
++Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
++Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
++Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
++Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
++Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
++Zone America/Montreal -4:54:16 - LMT 1884
++ -5:00 Mont E%sT 1918
++ -5:00 Canada E%sT 1919
++ -5:00 Mont E%sT 1942 Feb 9 2:00s
++ -5:00 Canada E%sT 1946
++ -5:00 Mont E%sT 1974
++ -5:00 Canada E%sT
++
++# Montserrat
++# From Paul Eggert (2006-03-22):
++# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
++# world.gazetteer.com says Cork Hill is the most populous location now.
++Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
++ -4:00 - AST
++
++# Argentina
++# This entry was intended for the following areas, but has been superseded by
++# more detailed zones.
++# Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
++# Formosa (FM), La Pampa (LP), Chubut (CH)
++Zone America/Rosario -4:02:40 - LMT 1894 Nov
++ -4:16:44 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Jul
++ -3:00 - ART 1999 Oct 3 0:00
++ -4:00 Arg AR%sT 2000 Mar 3 0:00
++ -3:00 - ART
++
++# St Kitts-Nevis
++Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
++ -4:00 - AST
++
++# St Lucia
++Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
++ -4:04:00 - CMT 1912 # Castries Mean Time
++ -4:00 - AST
++
++# Virgin Is
++Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
++ -4:00 - AST
++
++# St Vincent and the Grenadines
++Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
++ -4:04:56 - KMT 1912 # Kingstown Mean Time
++ -4:00 - AST
++
++# British Virgin Is
++Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
++ -4:00 - AST
++
++# McMurdo, Ross Island, since 1955-12
++Zone Antarctica/McMurdo 0 - -00 1956
++ 12:00 NZ NZ%sT
++Link Antarctica/McMurdo Antarctica/South_Pole
++
++# Yemen
++# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
++# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
++Zone Asia/Aden 2:59:54 - LMT 1950
++ 3:00 - AST
++
++# Bahrain
++Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
++ 4:00 - GST 1972 Jun
++ 3:00 - AST
++
++# India
++#
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 305 says that Madras
++# civil time was 5:20:57.3.
++#
++# From Paul Eggert (2014-08-21):
++# In tomorrow's The Hindu, Nitya Menon reports that India had two civil time
++# zones starting in 1884, one in Bombay and one in Calcutta, and that railways
++# used a third time zone based on Madras time (80 deg. 18'30" E). Also,
++# in 1881 Bombay briefly switched to Madras time, but switched back. See:
++# http://www.thehindu.com/news/cities/chennai/madras-375-when-madras-clocked-the-time/article6339393.ece
++#Zone Asia/Chennai [not enough info to complete]
++
++# China
++# Long-shu Time (probably due to Long and Shu being two names of that area)
++# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
++# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
++# Yangchun, Yangjiang, Yu'nan, and Yunfu.
++Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
++ 7:00 - LONT 1980 May # Long-shu Time
++ 8:00 PRC C%sT
++Link Asia/Chongqing Asia/Chungking
++
++# Vietnam
++# From Paul Eggert (2014-10-13):
++# See Asia/Ho_Chi_Minh for the source for this data.
++# Trần's book says the 1954-55 transition to 07:00 in Hanoi was in
++# October 1954, with exact date and time unspecified.
++Zone Asia/Hanoi 7:03:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1954 Oct
++ 7:00 - ICT
++
++# China
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
++# Heilongjiang (except Mohe county), Jilin
++Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
++ 8:30 - CHAT 1932 Mar # Changbai Time
++ 8:00 - CST 1940
++ 9:00 - CHAT 1966 May
++ 8:30 - CHAT 1980 May
++ 8:00 PRC C%sT
++
++# far west China
++Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
++ 5:30 - KAST 1940 # Kashgar Time
++ 5:00 - KAST 1980 May
++ 8:00 PRC C%sT
++
++# Kuwait
++Zone Asia/Kuwait 3:11:56 - LMT 1950
++ 3:00 - AST
++
++
++# Oman
++# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
++Zone Asia/Muscat 3:54:24 - LMT 1920
++ 4:00 - GST
++
++# India
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Portuguese India switched to UT +05 on 1912-01-01.
++#Zone Asia/Panaji [not enough info to complete]
++
++# Cambodia
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data. Also, guess
++# (1) Cambodia reverted to UT +07 on 1945-09-02, when Vietnam did, and
++# (2) they also reverted to +07 on 1953-11-09, the date of independence.
++# These guesses are probably wrong but they're better than guessing no
++# transitions there.
++Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1953 Nov 9
++ 7:00 - ICT
++
++# Israel
++Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
++ 2:21 - JMT 1918
++ 2:00 Zion I%sT
++
++# Laos
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data.
++# Trần's book says that Laos reverted to UT +07 on 1955-04-15.
++# Also, guess that Laos reverted to +07 on 1945-09-02, when Vietnam did;
++# this is probably wrong but it's better than guessing no transition.
++Zone Asia/Vientiane 6:50:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Apr 15
++ 7:00 - ICT
++
++# Jan Mayen
++# From Whitman:
++Zone Atlantic/Jan_Mayen -1:00 - EGT
++
++# St Helena
++Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
++ -0:22:48 - JMT 1951 # Jamestown Mean Time
++ 0:00 - GMT
++
++# Northern Ireland
++Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
++ -0:25:21 - DMT 1916 May 21 2:00
++ # DMT = Dublin/Dunsink MT
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ # IST = Irish Summer Time
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Guernsey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.27N -2.33E - St.Peter Port
++Zone Europe/Guernsey -0:09:19 - LMT 1913 Jun 18
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Isle of Man
++#
++# From Lester Caine (2013-09-04):
++# The Isle of Man legislation is now on-line at
++# <http://www.legislation.gov.im>, starting with the original Statutory
++# Time Act in 1883 and including additional confirmation of some of
++# the dates of the 'Summer Time' orders originating at
++# Westminster. There is a little uncertainty as to the starting date
++# of the first summer time in 1916 which may have be announced a
++# couple of days late. There is still a substantial number of
++# documents to work through, but it is thought that every GB change
++# was also implemented on the island.
++#
++# AT4 of 1883 - The Statutory Time et cetera Act 1883 -
++# LMT Location - 54.1508N -4.4814E - Tynwald Hill ( Manx parliament )
++Zone Europe/Isle_of_Man -0:17:55 - LMT 1883 Mar 30 0:00s
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Jersey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.187N -2.107E - St. Helier
++Zone Europe/Jersey -0:08:25 - LMT 1898 Jun 11 16:00u
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Slovenia
++Zone Europe/Ljubljana 0:58:04 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Bosnia and Herzegovina
++Zone Europe/Sarajevo 1:13:40 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Macedonia
++Zone Europe/Skopje 1:25:44 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Moldova / Transnistria
++Zone Europe/Tiraspol 1:58:32 - LMT 1880
++ 1:55 - CMT 1918 Feb 15 # Chisinau MT
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1940 Aug 15
++ 2:00 1:00 EEST 1941 Jul 17
++ 1:00 C-Eur CE%sT 1944 Aug 24
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 2:00 Russia EE%sT 1992 Jan 19 2:00
++ 3:00 Russia MSK/MSD
++
++# Liechtenstein
++Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
++ 1:00 - CET 1981
++ 1:00 EU CE%sT
++
++# Croatia
++Zone Europe/Zagreb 1:03:52 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Madagascar
++Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
++ 3:00 - EAT 1954 Feb 27 23:00s
++ 3:00 1:00 EAST 1954 May 29 23:00s
++ 3:00 - EAT
++
++# Comoros
++Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
++ 3:00 - EAT
++
++# Mayotte
++Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
++ 3:00 - EAT
++
++# US minor outlying islands
++Zone Pacific/Johnston -10:00 - HST
++
++# US minor outlying islands
++#
++# From Mark Brader (2005-01-23):
++# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
++# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
++# reproduced a Pan American Airways timetable from 1936, for their weekly
++# "Orient Express" flights between San Francisco and Manila, and connecting
++# flights to Chicago and the US East Coast. As it uses some time zone
++# designations that I've never seen before:....
++# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
++# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
++#
++Zone Pacific/Midway -11:49:28 - LMT 1901
++ -11:00 - NST 1956 Jun 3
++ -11:00 1:00 NDT 1956 Sep 2
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++
++# N Mariana Is
++Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
++ 9:43:00 - LMT 1901
++ 9:00 - MPT 1969 Oct # N Mariana Is Time
++ 10:00 - MPT 2000 Dec 23
++ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -0,0 +1,48 @@
++# Check links in tz tables.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ # Special marker indicating that the name is defined as a Zone.
++ # It is a newline so that it cannot match a valid name.
++ # It is not null so that its slot does not appear unset.
++ Zone = "\n"
++}
++
++/^Zone/ {
++ if (defined[$2]) {
++ if (defined[$2] == Zone) {
++ printf "%s: Zone has duplicate definition\n", $2
++ } else {
++ printf "%s: Link with same name as Zone\n", $2
++ }
++ status = 1
++ }
++ defined[$2] = Zone
++}
++
++/^Link/ {
++ if (defined[$3]) {
++ if (defined[$3] == Zone) {
++ printf "%s: Link with same name as Zone\n", $3
++ } else if (defined[$3] == $2) {
++ printf "%s: Link has duplicate definition\n", $3
++ } else {
++ printf "%s: Link to both %s and %s\n", $3, defined[$3], $2
++ }
++ status = 1
++ }
++ used[$2] = 1
++ defined[$3] = $2
++}
++
++END {
++ for (tz in used) {
++ if (defined[tz] != Zone) {
++ printf "%s: Link to non-zone\n", tz
++ status = 1
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/checktab.awk.orig
++++ contrib/tzdata/checktab.awk
+@@ -0,0 +1,177 @@
++# Check tz tables for consistency.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ FS = "\t"
++
++ if (!iso_table) iso_table = "iso3166.tab"
++ if (!zone_table) zone_table = "zone1970.tab"
++ if (!want_warnings) want_warnings = -1
++
++ while (getline <iso_table) {
++ iso_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 2) {
++ printf "%s:%d: wrong number of columns\n", \
++ iso_table, iso_NR >>"/dev/stderr"
++ status = 1
++ }
++ cc = $1
++ name = $2
++ if (cc !~ /^[A-Z][A-Z]$/) {
++ printf "%s:%d: invalid country code '%s'\n", \
++ iso_table, iso_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ if (cc <= cc0) {
++ if (cc == cc0) {
++ s = "duplicate";
++ } else {
++ s = "out of order";
++ }
++
++ printf "%s:%d: country code '%s' is %s\n", \
++ iso_table, iso_NR, cc, s \
++ >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ if (name2cc[name]) {
++ printf "%s:%d: '%s' and '%s' have the same name\n", \
++ iso_table, iso_NR, name2cc[name], cc \
++ >>"/dev/stderr"
++ status = 1
++ }
++ name2cc[name] = cc
++ cc2name[cc] = name
++ cc2NR[cc] = iso_NR
++ }
++
++ cc0 = ""
++
++ while (getline <zone_table) {
++ zone_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 3 && NF != 4) {
++ printf "%s:%d: wrong number of columns\n", \
++ zone_table, zone_NR >>"/dev/stderr"
++ status = 1
++ }
++ split($1, cca, /,/)
++ cc = cca[1]
++ coordinates = $2
++ tz = $3
++ comments = $4
++ if (cc < cc0) {
++ printf "%s:%d: country code '%s' is out of order\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ tztab[tz] = 1
++ tz2comments[tz] = comments
++ tz2NR[tz] = zone_NR
++ for (i in cca) {
++ cc = cca[i]
++ cctz = cc tz
++ cctztab[cctz] = 1
++ if (cc2name[cc]) {
++ cc_used[cc]++
++ } else {
++ printf "%s:%d: %s: unknown country code\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (coordinates !~ /^[-+][0-9][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9]$/ \
++ && coordinates !~ /^[-+][0-9][0-9][0-5][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9][0-5][0-9]$/) {
++ printf "%s:%d: %s: invalid coordinates\n", \
++ zone_table, zone_NR, coordinates >>"/dev/stderr"
++ status = 1
++ }
++ }
++
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (1 < cc_used[cc]) {
++ comments_needed[tz] = cc
++ }
++ }
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (!comments_needed[tz] && tz2comments[tz]) {
++ printf "%s:%d: unnecessary comment '%s'\n", \
++ zone_table, tz2NR[tz], tz2comments[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 0
++ status = 1
++ } else if (comments_needed[tz] && !tz2comments[tz]) {
++ printf "%s:%d: missing comment for %s\n", \
++ zone_table, tz2NR[tz], comments_needed[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 1
++ status = 1
++ }
++ }
++ FS = " "
++}
++
++$1 ~ /^#/ { next }
++
++{
++ tz = rules = ""
++ if ($1 == "Zone") {
++ tz = $2
++ ruleUsed[$4] = 1
++ } else if ($1 == "Link" && zone_table == "zone.tab") {
++ # Ignore Link commands if source and destination basenames
++ # are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
++ src = $2
++ dst = $3
++ while ((i = index(src, "/"))) src = substr(src, i+1)
++ while ((i = index(dst, "/"))) dst = substr(dst, i+1)
++ if (src != dst) tz = $3
++ } else if ($1 == "Rule") {
++ ruleDefined[$2] = 1
++ } else {
++ ruleUsed[$2] = 1
++ }
++ if (tz && tz ~ /\//) {
++ if (!tztab[tz]) {
++ printf "%s: no data for '%s'\n", zone_table, tz \
++ >>"/dev/stderr"
++ status = 1
++ }
++ zoneSeen[tz] = 1
++ }
++}
++
++END {
++ for (tz in ruleDefined) {
++ if (!ruleUsed[tz]) {
++ printf "%s: Rule never used\n", tz
++ status = 1
++ }
++ }
++ for (tz in tztab) {
++ if (!zoneSeen[tz]) {
++ printf "%s:%d: no Zone table for '%s'\n", \
++ zone_table, tz2NR[tz], tz >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (0 < want_warnings) {
++ for (cc in cc2name) {
++ if (!cc_used[cc]) {
++ printf "%s:%d: warning: " \
++ "no Zone entries for %s (%s)\n", \
++ iso_table, cc2NR[cc], cc, cc2name[cc]
++ }
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/etcetera.orig
++++ contrib/tzdata/etcetera
+@@ -8,6 +8,13 @@
+ # need now for the entries that are not on UTC are for ships at sea
+ # that cannot use POSIX TZ settings.
+
++# Starting with POSIX 1003.1-2001, the entries below are all
++# unnecessary as settings for the TZ environment variable. E.g.,
++# instead of TZ='Etc/GMT+4' one can use the POSIX setting TZ='<-04>+4'.
++#
++# Do not use a POSIX TZ setting like TZ='GMT+4', which is four hours
++# behind GMT but uses the completely misleading abbreviation "GMT".
++
+ Zone Etc/GMT 0 - GMT
+ Zone Etc/UTC 0 - UTC
+ Zone Etc/UCT 0 - UCT
+@@ -26,23 +33,13 @@
+ Link Etc/GMT Etc/GMT+0
+ Link Etc/GMT Etc/GMT0
+
+-# We use POSIX-style signs in the Zone names and the output abbreviations,
++# Be consistent with POSIX TZ settings in the Zone names,
+ # even though this is the opposite of what many people expect.
+ # POSIX has positive signs west of Greenwich, but many people expect
+ # positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+-# the abbreviation "GMT+4" and corresponds to 4 hours behind UT
++# the abbreviation "-04" and corresponds to 4 hours behind UT
+ # (i.e. west of Greenwich) even though many people would expect it to
+ # mean 4 hours ahead of UT (i.e. east of Greenwich).
+-#
+-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
+-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+-# offset is kept within the angle bracket (and is used for display)
+-# while the POSIX sign is kept outside the angle bracket (and is used
+-# for calculation).
+-#
+-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+-# GMT but uses the completely misleading abbreviation "GMT".
+
+ # Earlier incarnations of this package were not POSIX-compliant,
+ # and had lines such as
+@@ -51,30 +48,31 @@
+ # way does a
+ # zic -l GMT-12
+ # so we moved the names into the Etc subdirectory.
++# Also, the time zone abbreviations are now compatible with %z.
+
+-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+-Zone Etc/GMT-13 13 - GMT-13
+-Zone Etc/GMT-12 12 - GMT-12
+-Zone Etc/GMT-11 11 - GMT-11
+-Zone Etc/GMT-10 10 - GMT-10
+-Zone Etc/GMT-9 9 - GMT-9
+-Zone Etc/GMT-8 8 - GMT-8
+-Zone Etc/GMT-7 7 - GMT-7
+-Zone Etc/GMT-6 6 - GMT-6
+-Zone Etc/GMT-5 5 - GMT-5
+-Zone Etc/GMT-4 4 - GMT-4
+-Zone Etc/GMT-3 3 - GMT-3
+-Zone Etc/GMT-2 2 - GMT-2
+-Zone Etc/GMT-1 1 - GMT-1
+-Zone Etc/GMT+1 -1 - GMT+1
+-Zone Etc/GMT+2 -2 - GMT+2
+-Zone Etc/GMT+3 -3 - GMT+3
+-Zone Etc/GMT+4 -4 - GMT+4
+-Zone Etc/GMT+5 -5 - GMT+5
+-Zone Etc/GMT+6 -6 - GMT+6
+-Zone Etc/GMT+7 -7 - GMT+7
+-Zone Etc/GMT+8 -8 - GMT+8
+-Zone Etc/GMT+9 -9 - GMT+9
+-Zone Etc/GMT+10 -10 - GMT+10
+-Zone Etc/GMT+11 -11 - GMT+11
+-Zone Etc/GMT+12 -12 - GMT+12
++Zone Etc/GMT-14 14 - +14
++Zone Etc/GMT-13 13 - +13
++Zone Etc/GMT-12 12 - +12
++Zone Etc/GMT-11 11 - +11
++Zone Etc/GMT-10 10 - +10
++Zone Etc/GMT-9 9 - +09
++Zone Etc/GMT-8 8 - +08
++Zone Etc/GMT-7 7 - +07
++Zone Etc/GMT-6 6 - +06
++Zone Etc/GMT-5 5 - +05
++Zone Etc/GMT-4 4 - +04
++Zone Etc/GMT-3 3 - +03
++Zone Etc/GMT-2 2 - +02
++Zone Etc/GMT-1 1 - +01
++Zone Etc/GMT+1 -1 - -01
++Zone Etc/GMT+2 -2 - -02
++Zone Etc/GMT+3 -3 - -03
++Zone Etc/GMT+4 -4 - -04
++Zone Etc/GMT+5 -5 - -05
++Zone Etc/GMT+6 -6 - -06
++Zone Etc/GMT+7 -7 - -07
++Zone Etc/GMT+8 -8 - -08
++Zone Etc/GMT+9 -9 - -09
++Zone Etc/GMT+10 -10 - -10
++Zone Etc/GMT+11 -11 - -11
++Zone Etc/GMT+12 -12 - -12
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -75,8 +75,7 @@
+ # 1:00 CET CEST CEMT Central Europe
+ # 1:00:14 SET Swedish (1879-1899)*
+ # 2:00 EET EEST Eastern Europe
+-# 3:00 FET Further-eastern Europe (2011-2014)*
+-# 3:00 MSK MSD MSM* Minsk, Moscow
++# 3:00 MSK MSD Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -193,11 +192,14 @@
+ # republished in Finest Hour (Spring 2002) 1(114):26
+ # http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf
+
+-# From Paul Eggert (1996-09-03):
++# From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+ # when they were debating the adoption of DST in 1908; but by 1916 this
+ # term appears only in quotes taken from DST's opponents, whereas the
+ # proponents (who eventually won the argument) are quoted as using "Summer".
++# The term "Summer Time" was introduced by Herbert Samuel, Home Secretary; see:
++# Viscount Samuel. Leisure in a Democracy. Cambridge University Press
++# ISBN 978-1-107-49471-8 (1949, reissued 2015), p 8.
+
+ # From Arthur David Olson (1989-01-19):
+ # A source at the British Information Office in New York avers that it's
+@@ -343,7 +345,7 @@
+
+ # From an anonymous contributor (1996-06-02):
+ # The law governing time in Ireland is under Statutory Instrument SI 395/94,
+-# which gives force to European Union 7th Council Directive # 94/21/EC.
++# which gives force to European Union 7th Council Directive No. 94/21/EC.
+ # Under this directive, the Minister for Justice in Ireland makes appropriate
+ # regulations. I spoke this morning with the Secretary of the Department of
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+@@ -580,33 +582,74 @@
+ Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+ Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
++
++# Daylight saving time for Russia and the Soviet Union
++#
++# The 1917-1921 decree URLs are from Alexander Belopolsky (2016-08-23).
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
++#
++# Decree No. 142 (1917-12-22) http://istmat.info/node/28137
+ Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
++#
++# Decree No. 497 (1918-05-30) http://istmat.info/node/30001
+ Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+ Rule Russia 1918 only - Sep 16 1:00 1:00 MST
++#
++# Decree No. 258 (1919-05-29) http://istmat.info/node/37949
+ Rule Russia 1919 only - May 31 23:00 2:00 MDST
+-Rule Russia 1919 only - Jul 1 2:00 1:00 MSD
++#
++Rule Russia 1919 only - Jul 1 0:00u 1:00 MSD
+ Rule Russia 1919 only - Aug 16 0:00 0 MSK
++#
++# Decree No. 63 (1921-02-03) http://istmat.info/node/45840
+ Rule Russia 1921 only - Feb 14 23:00 1:00 MSD
+-Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer
++#
++# Decree No. 121 (1921-03-07) http://istmat.info/node/45949
++Rule Russia 1921 only - Mar 20 23:00 2:00 +05
++#
+ Rule Russia 1921 only - Sep 1 0:00 1:00 MSD
+ Rule Russia 1921 only - Oct 1 0:00 0 -
+-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
++# Act No. 925 of the Council of Ministers of the USSR (1980-10-24):
+ Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule Russia 1981 1983 - Oct 1 0:00 0 -
+-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
+-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-#
+-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule Russia 1992 only - Sep lastSat 23:00 0 -
+-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
+-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
++# Act No. 967 of the Council of Ministers of the USSR (1984-09-13), repeated in
++# Act No. 227 of the Council of Ministers of the USSR (1989-03-14):
++Rule Russia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule Russia 1985 2010 - Mar lastSun 2:00s 1:00 S
++#
+ Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
+ # As described below, Russia's 2014 change affects Zone data, not Rule data.
+
++# From Stepan Golosunov (2016-03-07):
++# Wikipedia and other sources refer to the Act of the Council of
++# Ministers of the USSR from 1988-01-04 No. 5 and the Act of the
++# Council of Ministers of the USSR from 1989-03-14 No. 227.
++#
++# I did not find full texts of these acts. For the 1989 one we have
++# title at http://base.garant.ru/70754136/ :
++# "About change in calculation of time on the territories of
++# Lithuanian SSR, Latvian SSR and Estonian SSR, Astrakhan,
++# Kaliningrad, Kirov, Kuybyshev, Ulyanovsk and Uralsk oblasts".
++# And http://astrozet.net/files/Zones/DOC/RU/1980-925.txt appears to
++# contain quotes from both acts: Since last Sunday of March 1988 rules
++# of the second time belt are installed in Volgograd and Saratov
++# oblasts. Since last Sunday of March 1989:
++# a) Lithuanian SSR, Latvian SSR, Estonian SSR, Kaliningrad oblast:
++# second time belt rules without extra hour (Moscow-1);
++# b) Astrakhan, Kirov, Kuybyshev, Ulyanovsk oblasts: second time belt
++# rules (Moscow time)
++# c) Uralsk oblast: third time belt rules (Moscow+1).
++
++# From Stepan Golosunov (2016-03-27):
++# Unamended version of the act of the
++# Government of the Russian Federation No. 23 from 08.01.1992
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102014034&rdk=0
++# says that every year clocks were to be moved forward on last Sunday
++# of March at 2 hours and moved backwards on last Sunday of September
++# at 3 hours. It was amended in 1996 to replace September with October.
++
+ # From Alexander Krivenyshev (2011-06-14):
+ # According to Kremlin press service, Russian President Dmitry Medvedev
+ # signed a federal law "On calculation of time" on June 9, 2011.
+@@ -728,6 +771,14 @@
+ 1:00 EU CE%sT
+
+ # Belarus
++#
++# From Stepan Golosunov (2016-07-02):
++# http://www.lawbelarus.com/repub/sub30/texf9611.htm
++# (Act of the Cabinet of Ministers of the Republic of Belarus from
++# 1992-03-25 No. 157) ... says clocks were to be moved forward at 2:00
++# on last Sunday of March and backward at 3:00 on last Sunday of September
++# (the same as previous USSR and contemporary Russian regulations).
++#
+ # From Yauhen Kharuzhy (2011-09-16):
+ # By latest Belarus government act Europe/Minsk timezone was changed to
+ # GMT+3 without DST (was GMT+2 with DST).
+@@ -740,8 +791,6 @@
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+ # http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
+-# From Paul Eggert (2014-10-08):
+-# Hence Belarus can share time zone abbreviations with Moscow again.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+@@ -751,12 +800,8 @@
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
+- 2:00 - EET 1992 Mar 29 0:00s
+- 2:00 1:00 EEST 1992 Sep 27 0:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 1:00s
+- 3:00 - MSK
++ 3:00 - +03
+
+ # Belgium
+ #
+@@ -828,7 +873,7 @@
+ # Bulgaria
+ #
+ # From Plamen Simenov via Steffen Thorsen (1999-09-09):
+-# A document of Government of Bulgaria (No.94/1997) says:
++# A document of Government of Bulgaria (No. 94/1997) says:
+ # EET -> EETDST is in 03:00 Local time in last Sunday of March ...
+ # EETDST -> EET is in 04:00 Local time in last Sunday of October
+ #
+@@ -845,7 +890,7 @@
+ 1:00 C-Eur CE%sT 1945
+ 1:00 - CET 1945 Apr 2 3:00
+ 2:00 - EET 1979 Mar 31 23:00
+- 2:00 Bulg EE%sT 1982 Sep 26 2:00
++ 2:00 Bulg EE%sT 1982 Sep 26 3:00
+ 2:00 C-Eur EE%sT 1991
+ 2:00 E-Eur EE%sT 1997
+ 2:00 EU EE%sT
+@@ -1002,6 +1047,12 @@
+ # startkart.no says Thule does not observe DST, but this is clearly an error,
+ # so go with Shanks & Pottenger for Thule transitions until this year.
+ # For 2007 on assume Thule will stay in sync with US DST rules.
++
++# From J William Piggott (2016-02-20):
++# "Greenland north of the community of Scoresbysund" is officially named
++# "National Park" by Executive Order:
++# http://naalakkersuisut.gl/~/media/Nanoq/Files/Attached%20Files/Engelske-tekster/Legislation/Executive%20Order%20National%20Park.rtf
++# It is their only National Park.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+@@ -1027,6 +1078,10 @@
+ -4:00 Thule A%sT
+
+ # Estonia
++#
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
+ # From Peter Ilieve (1994-10-15):
+ # A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+ # [through 1994] and gives the legal authority for it,
+@@ -1062,8 +1117,8 @@
+ # after that.
+
+ # From Mart Oruaas (2000-01-29):
+-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
+-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
++# Regulation No. 301 (1999-10-12) obsoletes previous regulation
++# No. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
+ # the year round. The regulation is effective 1999-11-01.
+
+ # From Toomas Soome (2002-02-21):
+@@ -1084,7 +1139,7 @@
+ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+ 2:00 1:00 EEST 1989 Sep 24 2:00s
+ 2:00 C-Eur EE%sT 1998 Sep 22
+- 2:00 EU EE%sT 1999 Nov 1
++ 2:00 EU EE%sT 1999 Oct 31 4:00
+ 2:00 - EET 2002 Feb 21
+ 2:00 EU EE%sT
+
+@@ -1254,7 +1309,7 @@
+ # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+ # says that Bersarin issued an order to use Moscow time on May 20.
+ # However, Moscow did not observe daylight saving in 1945, so
+-# this was equivalent to CEMT (GMT+3), not GMT+4.
++# this was equivalent to UT +03, not +04.
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1445,73 +1500,84 @@
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
+-# From Paul Eggert (2006-03-22):
+-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+-# F. Pollastri
+-# Day-light Saving Time in Italy (2006-02-03)
+-# http://toi.iriti.cnr.it/uk/ienitlt.html
+-# ('FP' below), taken from an Italian National Electrotechnical Institute
+-# publication. When the three sources disagree, guess who's right, as follows:
+-#
+-# year FP Shanks&P. (S) Whitman (W) Go with:
+-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+-# 09-30 09-29 24:00 09-30 01:00 FP & W
+-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+-# 10-06 10-05 24:00 10-06 01:00 FP & W
+-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+-# 1944 04-02 04-03 02:00 S (see C-Eur)
+-# 09-16 10-02 03:00 FP; guess 24:00s
+-# 1945 09-14 09-16 24:00 FP; guess 24:00s
+-# 1970 05-21 05-31 00:00 S
+-# 09-20 09-27 00:00 S
+-#
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+-Rule Italy 1916 only - Oct 1 0:00s 0 -
+-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+-Rule Italy 1917 only - Sep 30 0:00s 0 -
+-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+-Rule Italy 1920 only - Sep 19 0:00s 0 -
+-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+-Rule Italy 1944 only - Sep 17 0:00s 0 -
+-Rule Italy 1945 only - Apr 2 2:00 1:00 S
+-Rule Italy 1945 only - Sep 15 0:00s 0 -
+-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+-Rule Italy 1946 only - Oct 6 2:00s 0 -
+-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+-Rule Italy 1947 only - Oct 5 0:00s 0 -
+-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+-Rule Italy 1948 only - Oct 3 2:00s 0 -
+-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+-Rule Italy 1969 only - Jun 1 0:00 1:00 S
+-Rule Italy 1970 only - May 31 0:00 1:00 S
+-Rule Italy 1970 only - Sep lastSun 0:00 0 -
+-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1971 only - Sep lastSun 1:00 0 -
+-Rule Italy 1972 only - Oct 1 0:00 0 -
+-Rule Italy 1973 only - Jun 3 0:00 1:00 S
+-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+-Rule Italy 1974 only - May 26 0:00 1:00 S
+-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+-Rule Italy 1976 only - May 30 0:00s 1:00 S
+-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+-Rule Italy 1978 only - Oct 1 0:00s 0 -
+-Rule Italy 1979 only - Sep 30 0:00s 0 -
++# From Michael Deckers (2016-10-24):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
++# ... [translated as] "The preceding dispositions will enter into
++# force at the instant at which, according to the time specified in
++# the 1st article, the 1st of November 1893 will begin...."
++#
++# From Pierpaolo Bernardi (2016-10-20):
++# The authoritative source for time in Italy is the national metrological
++# institute, which has a summary page of historical DST data at
++# http://www.inrim.it/res/tf/ora_legale_i.shtml
++# (2016-10-24):
++# http://www.renzobaldini.it/le-ore-legali-in-italia/
++# has still different data for 1944. It divides Italy in two, as
++# there were effectively two governments at the time, north of Gothic
++# Line German controlled territory, official government RSI, and south
++# of the Gothic Line, controlled by allied armies.
++#
++# From Brian Inglis (2016-10-23):
++# Viceregal LEGISLATIVE DECREE. 14 September 1944, no. 219.
++# Restoration of Standard Time. (044U0219) (OJ 62 of 30.9.1944) ...
++# Given the R. law decreed on 1944-03-29, no. 92, by which standard time is
++# advanced to sixty minutes later starting at hour two on 1944-04-02; ...
++# Starting at hour three on the date 1944-09-17 standard time will be resumed.
++#
++# From Paul Eggert (2016-10-27):
++# Go with INRiM for DST rules, except as corrected by Inglis for 1944
++# for the Kingdom of Italy. This is consistent with Renzo Baldini.
++# Model Rome's occupation by using using C-Eur rules from 1943-09-10
++# to 1944-06-04; although Rome was an open city during this period, it
++# was effectively controlled by Germany.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Italy 1916 only - Jun 3 24:00 1:00 S
++Rule Italy 1916 1917 - Sep 30 24:00 0 -
++Rule Italy 1917 only - Mar 31 24:00 1:00 S
++Rule Italy 1918 only - Mar 9 24:00 1:00 S
++Rule Italy 1918 only - Oct 6 24:00 0 -
++Rule Italy 1919 only - Mar 1 24:00 1:00 S
++Rule Italy 1919 only - Oct 4 24:00 0 -
++Rule Italy 1920 only - Mar 20 24:00 1:00 S
++Rule Italy 1920 only - Sep 18 24:00 0 -
++Rule Italy 1940 only - Jun 14 24:00 1:00 S
++Rule Italy 1942 only - Nov 2 2:00s 0 -
++Rule Italy 1943 only - Mar 29 2:00s 1:00 S
++Rule Italy 1943 only - Oct 4 2:00s 0 -
++Rule Italy 1944 only - Apr 2 2:00s 1:00 S
++Rule Italy 1944 only - Sep 17 2:00s 0 -
++Rule Italy 1945 only - Apr 2 2:00 1:00 S
++Rule Italy 1945 only - Sep 15 1:00 0 -
++Rule Italy 1946 only - Mar 17 2:00s 1:00 S
++Rule Italy 1946 only - Oct 6 2:00s 0 -
++Rule Italy 1947 only - Mar 16 0:00s 1:00 S
++Rule Italy 1947 only - Oct 5 0:00s 0 -
++Rule Italy 1948 only - Feb 29 2:00s 1:00 S
++Rule Italy 1948 only - Oct 3 2:00s 0 -
++Rule Italy 1966 1968 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1966 only - Sep 24 24:00 0 -
++Rule Italy 1967 1969 - Sep Sun>=22 0:00s 0 -
++Rule Italy 1969 only - Jun 1 0:00s 1:00 S
++Rule Italy 1970 only - May 31 0:00s 1:00 S
++Rule Italy 1970 only - Sep lastSun 0:00s 0 -
++Rule Italy 1971 1972 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1971 only - Sep lastSun 0:00s 0 -
++Rule Italy 1972 only - Oct 1 0:00s 0 -
++Rule Italy 1973 only - Jun 3 0:00s 1:00 S
++Rule Italy 1973 1974 - Sep lastSun 0:00s 0 -
++Rule Italy 1974 only - May 26 0:00s 1:00 S
++Rule Italy 1975 only - Jun 1 0:00s 1:00 S
++Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
++Rule Italy 1976 only - May 30 0:00s 1:00 S
++Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1978 only - Oct 1 0:00s 0 -
++Rule Italy 1979 only - Sep 30 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1944 Jul
++ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
++ 1:00 Italy CE%sT 1943 Sep 10
++ 1:00 C-Eur CE%sT 1944 Jun 4
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+@@ -1527,21 +1593,21 @@
+ # correct data in juridical acts and I found some juridical documents about
+ # changes in the counting of time in Latvia from 1981....
+ #
+-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
+-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
++# Act No. 35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
++# according to the Act No. 925 of the Council of Ministers of USSR of 1980-10-24
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
+ # and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
+ #
+-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
+-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
++# Act No. 592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
++# according to the Act No. 967 of the Council of Ministers of USSR of 1984-09-13
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on the last Sunday of March at 02:00
+ # (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
+ # September at 03:00 (GMT 23:00 on the previous day).
+ #
+-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
+-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
++# Act No. 81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
++# according to the Act No. 227 of the Council of Ministers of USSR of 1989-03-14
+ # ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
+ # Estonian SSR and Kaliningrad region of Russian Federation all year round the
+ # time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
+@@ -1558,7 +1624,7 @@
+ # From Andrei Ivanov (2000-03-06):
+ # This year Latvia will not switch to Daylight Savings Time (as specified in
+ # The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
+-# 29-Feb-2000 (#79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
++# 29-Feb-2000 (No. 79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
+ # in Latvian for subscribers only).
+
+ # From RFE/RL Newsline
+@@ -1620,6 +1686,9 @@
+
+ # Lithuania
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
+ # From Paul Eggert (1996-11-22):
+ # IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+ # known to be wrong about Estonia and Latvia, assume it's wrong here too.
+@@ -1659,8 +1728,8 @@
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+ 2:00 - EET 1998 Mar 29 1:00u
+ 1:00 EU CE%sT 1999 Oct 31 1:00u
+@@ -1707,6 +1776,10 @@
+ # See Europe/Belgrade.
+
+ # Malta
++#
++# From Paul Eggert (2016-10-21):
++# Assume 1900-1972 was like Rome, overriding Shanks.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+ Rule Malta 1973 only - Sep 29 0:00s 0 -
+@@ -1717,14 +1790,22 @@
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Moldova
+
++# From Stepan Golosunov (2016-03-07):
++# the act of the government of the Republic of Moldova Nr. 132 from 1990-05-04
++# http://lex.justice.md/viewdoc.php?action=view&view=doc&id=298782&lang=2
++# ... says that since 1990-05-06 on the territory of the Moldavian SSR
++# time would be calculated as the standard time of the second time belt
++# plus one hour of the "summer" time. To implement that clocks would be
++# adjusted one hour backwards at 1990-05-06 2:00. After that "summer"
++# time would be cancelled last Sunday of September at 3:00 and
++# reintroduced last Sunday of March at 2:00.
++
+ # From Paul Eggert (2006-03-22):
+ # A previous version of this database followed Shanks & Pottenger, who write
+ # that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+@@ -1763,6 +1844,18 @@
+ # News from Moldova (in russian):
+ # http://ru.publika.md/link_317061.html
+
++# From Roman Tudos (2015-07-02):
++# http://lex.justice.md/index.php?action=view&view=doc&lang=1&id=355077
++# From Paul Eggert (2015-07-01):
++# The abovementioned official link to IGO1445-868/2014 states that
++# 2014-10-26's fallback transition occurred at 03:00 local time. Also,
++# http://www.trm.md/en/social/la-30-martie-vom-trece-la-ora-de-vara
++# says the 2014-03-30 spring-forward transition was at 02:00 local time.
++# Guess that since 1997 Moldova has switched one hour before the EU.
++
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Moldova 1997 max - Mar lastSun 2:00 1:00 S
++Rule Moldova 1997 max - Oct lastSun 3:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Chisinau 1:55:20 - LMT 1880
+@@ -1771,13 +1864,11 @@
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+- 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 May 6
+- 2:00 - EET 1991
++ 3:00 Russia MSK/MSD 1990 May 6 2:00
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+ # See Romania commentary for the guessed 1997 transition to EU rules.
+- 2:00 EU EE%sT
++ 2:00 Moldova EE%sT
+
+ # Monaco
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+@@ -1830,7 +1921,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm
++# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+@@ -2123,7 +2214,7 @@
+ # Russia
+
+ # From Alexander Krivenyshev (2011-09-15):
+-# Based on last Russian Government Decree # 725 on August 31, 2011
++# Based on last Russian Government Decree No. 725 on August 31, 2011
+ # (Government document
+ # http://www.government.ru/gov/results/16355/print/
+ # in Russian)
+@@ -2133,7 +2224,7 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia36.htm
+
+ # From Sanjeev Gupta (2011-09-27):
+-# Scans of [Decree #23 of January 8, 1992] are available at:
++# Scans of [Decree No. 23 of January 8, 1992] are available at:
+ # http://government.consultant.ru/page.aspx?1223966
+ # They are in Cyrillic letters (presumably Russian).
+
+@@ -2144,19 +2235,19 @@
+ # One source is
+ # http://government.ru/gov/results/16355/
+ # which, according to translate.google.com, begins "Decree of August 31,
+-# 2011 No 725" and contains no other dates or "effective date" information.
++# 2011 No. 725" and contains no other dates or "effective date" information.
+ #
+ # Another source is
+ # http://www.rg.ru/2011/09/06/chas-zona-dok.html
+ # which, according to translate.google.com, begins "Resolution of the
+ # Government of the Russian Federation on August 31, 2011 N 725" and also
+ # contains "Date first official publication: September 6, 2011 Posted on:
+-# in the 'RG' - Federal Issue number 5573 September 6, 2011" but which
++# in the 'RG' - Federal Issue No. 5573 September 6, 2011" but which
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+ # http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+-# which, in note 8, contains "Resolution #725 of August 31, 2011...
++# which, in note 8, contains "Resolution No. 725 of August 31, 2011...
+ # Effective as of after 7 days following the day of the official publication"
+ # but which does not contain any reference to September 6, 2011.
+ #
+@@ -2195,7 +2286,6 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+ # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+ # are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+ # except we follow Chernov's report that 1992 DST transitions were Sat
+@@ -2251,16 +2341,32 @@
+ # Europe/Kaliningrad covers...
+ # 39 RU-KGD Kaliningrad Oblast
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Stepan Golosunov (2016-03-07):
++# http://www.rgo.ru/ru/kaliningradskoe-oblastnoe-otdelenie/ob-otdelenii/publikacii/kak-nam-zhilos-bez-letnego-vremeni
++# confirms that the 1989 change to Moscow-1 was implemented.
++# (The article, though, is misattributed to 1990 while saying that
++# summer->winter transition would be done on the 24 of September. But
++# 1990-09-24 was Monday, while 1989-09-24 was Sunday as expected.)
++# ...
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad switched to Moscow-1 on 1989-03-26, avoided
++# at the last moment switch to Moscow-1 on 1991-03-31, switched to
++# Moscow on 1991-11-03, switched to Moscow-1 on 1992-01-19.
++
+ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 2:00s
++ 3:00 - +03 2014 Oct 26 2:00s
+ 2:00 - EET
+
+
+-# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
++# From Paul Eggert (2016-02-21), per Tim Parenti (2014-07-03) and
++# Oscar van Vlijmen (2001-08-25):
+ # Europe/Moscow covers...
+ # 01 RU-AD Adygea, Republic of
+ # 05 RU-DA Dagestan, Republic of
+@@ -2303,12 +2409,102 @@
+ # 68 RU-TAM Tambov Oblast
+ # 69 RU-TVE Tver Oblast
+ # 71 RU-TUL Tula Oblast
+-# 73 RU-ULY Ulyanovsk Oblast
+ # 76 RU-YAR Yaroslavl Oblast
+ # 77 RU-MOW Moscow
+ # 78 RU-SPE Saint Petersburg
+ # 83 RU-NEN Nenets Autonomous Okrug
+
++# From Paul Eggert (2016-08-23):
++# The Soviets switched to UT-based time in 1919. Decree No. 59
++# (1919-02-08) http://istmat.info/node/35567 established UT-based time
++# zones, and Decree No. 147 (1919-03-29) http://istmat.info/node/35854
++# specified a transition date of 1919-07-01, apparently at 00:00 UT.
++# No doubt only the Soviet-controlled regions switched on that date;
++# later transitions to UT-based time in other parts of Russia are
++# taken from what appear to be guesses by Shanks.
++# (Thanks to Alexander Belopolsky for pointers to the decrees.)
++
++# From Stepan Golosunov (2016-03-07):
++# 11. Regions-violators, 1981-1982.
++# Wikipedia refers to
++# http://maps.monetonos.ru/maps/raznoe/Old_Maps/Old_Maps/Articles/022/3_1981.html
++# http://besp.narod.ru/nauka_1981_3.htm
++#
++# The second link provides two articles scanned from the Nauka i Zhizn
++# magazine No. 3, 1981 and a scan of the short article attributed to
++# the Trud newspaper from February 1982. The first link provides the
++# same Nauka i Zhizn articles converted to the text form (but misses
++# time belt changes map).
++#
++# The second Nauka i Zhizn article says that in addition to
++# introduction of summer time on 1981-04-01 there are some time belt
++# border changes on 1981-10-01, mostly affecting Nenets Autonomous
++# Okrug, Krasnoyarsk Krai, Yakutia, Magadan Oblast and Chukotka
++# according to the provided map (colored one). In addition to that
++# "time violators" (regions which were not using rules of the time
++# belts in which they were located) would not be moving off the DST on
++# 1981-10-01 to restore the decree time usage. (Komi ASSR was
++# supposed to repeat that move in October 1982 to account for the 2
++# hour difference.) Map depicting "time violators" before 1981-10-01
++# is also provided.
++#
++# The article from Trud says that 1981-10-01 changes caused problems
++# and some territories would be moved to pre-1981-10-01 time by not
++# moving to summer time on 1982-04-01. Namely: Dagestan,
++# Kabardino-Balkar, Kalmyk, Komi, Mari, Mordovian, North Ossetian,
++# Tatar, Chechen-Ingush and Chuvash ASSR, Krasnodar and Stavropol
++# krais, Arkhangelsk, Vladimir, Vologda, Voronezh, Gorky, Ivanovo,
++# Kostroma, Lipetsk, Penza, Rostov, Ryazan, Tambov, Tyumen and
++# Yaroslavl oblasts, Nenets and Evenk autonomous okrugs, Khatangsky
++# district of Taymyr Autonomous Okrug. As a result Evenk Autonomous
++# Okrug and Khatangsky district of Taymyr Autonomous Okrug would end
++# up on Moscow+4, Tyumen Oblast on Moscow+2 and the rest on Moscow
++# time.
++#
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# attributes the 1982 changes to the Act of the Council of Ministers
++# of the USSR No. 126 from 18.02.1982. 1980-925.txt also adds
++# Udmurtia to the list of affected territories and lists Khatangsky
++# district separately from Taymyr Autonomous Okrug. Probably erroneously.
++#
++# The affected territories are currently listed under Europe/Moscow,
++# Asia/Yekaterinburg and Asia/Krasnoyarsk.
++#
++# 12. Udmurtia
++# The fact that Udmurtia is depicted as a violator in the Nauka i
++# Zhizn article hints at Izhevsk being on different time from
++# Kuybyshev before 1981-10-01. Udmurtia is not mentioned in the 1989 act.
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# implies Udmurtia was on Moscow time after 1982-04-01.
++# Wikipedia implies Udmurtia being on Moscow+1 until 1991.
++#
++# ...
++#
++# All Russian zones are supposed to have by default a -1 change at
++# 1991-03-31 2:00 (cancellation of the decree time in the USSR) and a +1
++# change at 1992-01-19 2:00 (restoration of the decree time in Russia).
++#
++# There were some exceptions, though.
++# Wikipedia says newspapers listed Astrakhan, Saratov, Kirov, Volgograd,
++# Izhevsk, Grozny, Kazan and Samara as such exceptions for the 1992
++# change. (Different newspapers providing different lists. And some
++# lists found in the internet are quite wild.)
++#
++# And apparently some exceptions were reverted in the last moment.
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad decided not to be an exception 2 days before the
++# 1991-03-31 switch and one person at
++# http://izhevsk.ru/forum_light_message/50/682597-m8369040.html
++# says he remembers that Samara opted out of the 1992-01-19 exception
++# 2 days before the switch.
++#
++#
++# From Paul Eggert (2016-03-18):
++# Given the above, we appear to be missing some Zone entries for the
++# chaotic early 1980s in Russia. It's not clear what these entries
++# should be. For now, sweep this under the rug and just document the
++# time in Moscow.
++
+ # From Vladimir Karpinsky (2014-07-08):
+ # LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow
+ # Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30")....
+@@ -2329,7 +2525,7 @@
+
+ Zone Europe/Moscow 2:30:17 - LMT 1880
+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
+- 2:31:19 Russia %s 1919 Jul 1 2:00
++ 2:31:19 Russia %s 1919 Jul 1 0:00u
+ 3:00 Russia %s 1921 Oct
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+@@ -2364,7 +2560,7 @@
+ # changed in May.
+ 2:00 E-Eur EE%sT 1994 May
+ # From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
+- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
++ 3:00 E-Eur MSK/MSD 1996 Mar 31 0:00s
+ 3:00 1:00 MSD 1996 Oct 27 3:00s
+ # IATA SSIM (1997-09) says Crimea switched to EET/EEST.
+ # Assume it happened in March by not changing the clocks.
+@@ -2382,47 +2578,101 @@
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Volgograd covers...
++# From Paul Eggert (2016-03-18):
++# Europe/Astrakhan covers:
+ # 30 RU-AST Astrakhan Oblast
++#
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-01-12):
++# On February 10, 2016 Astrakhan Oblast got approval by the Federation
++# Council to change its time zone to UTC+4 (from current UTC+3 Moscow time)....
++# This Federal Law shall enter into force on 27 March 2016 at 02:00.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201602150056
++
++Zone Europe/Astrakhan 3:12:12 - LMT 1924 May
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Volgograd covers:
+ # 34 RU-VGG Volgograd Oblast
+-# 43 RU-KIR Kirov Oblast
+ # 64 RU-SAR Saratov Oblast
+-
+-# From Paul Eggert (2006-05-09):
+-# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300.
+-# Perhaps it switched after the others? But we have no data.
++# The 1988 transition is from USSR act No. 5 (1988-01-04).
+
+ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+- 4:00 - STAT 1961 Nov 11
+- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+- 4:00 - VOLT 1992 Mar 29 2:00s
+- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
+- 3:00 - MSK
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1961 Nov 11
++ 4:00 Russia +04/+05 1988 Mar 27 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
++# From Paul Eggert (2016-03-18):
++# Europe/Kirov covers:
++# 43 RU-KIR Kirov Oblast
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
++Zone Europe/Kirov 3:18:48 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Europe/Samara covers...
+ # 18 RU-UD Udmurt Republic
+ # 63 RU-SAM Samara Oblast
+
++# From Paul Eggert (2016-03-18):
+ # Byalokoz 1919 says Samara was 3:20:20.
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+
+-Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 2:00
+- 3:00 - SAMT 1930 Jun 21
+- 4:00 - SAMT 1935 Jan 27
+- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1991 Sep 29 2:00s
+- 3:00 - KUYT 1991 Oct 20 3:00
+- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
+- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
+- 4:00 - SAMT
++Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1935 Jan 27
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1991 Sep 29 2:00s
++ 3:00 - +03 1991 Oct 20 3:00
++ 4:00 Russia +04/+05 2010 Mar 28 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Ulyanovsk covers:
++# 73 RU-ULY Ulyanovsk Oblast
++
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+
++# From Alexander Krivenyshev (2016-02-17):
++# Ulyanovsk ... on their way to change time zones by March 27, 2016 at 2am.
++# Ulyanovsk Oblast ... from MSK to MSK+1 (UTC+3 to UTC+4) ...
++# 920582-6 ... 02/17/2016 The State Duma passed the bill in the first reading.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090051
++
++Zone Europe/Ulyanovsk 3:13:36 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1992 Jan 19 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Yekaterinburg covers...
+@@ -2446,47 +2696,140 @@
+
+ Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3
+ 3:45:05 - PMT 1919 Jul 15 4:00
+- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
+- 6:00 - YEKT 2014 Oct 26 2:00s
+- 5:00 - YEKT
++ 4:00 - +04 1930 Jun 21
++ 5:00 Russia +05/+06 1991 Mar 31 2:00s
++ 4:00 Russia +04/+05 1992 Jan 19 2:00s
++ 5:00 Russia +05/+06 2011 Mar 27 2:00s
++ 6:00 - +06 2014 Oct 26 2:00s
++ 5:00 - +05
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Omsk covers...
+-# 04 RU-AL Altai Republic
+-# 22 RU-ALT Altai Krai
+ # 55 RU-OMS Omsk Oblast
+
+ # Byalokoz 1919 says Omsk was 4:53:30.
+
+ Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14
+- 5:00 - OMST 1930 Jun 21 # Omsk Time
+- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
+- 7:00 - OMST 2014 Oct 26 2:00s
+- 6:00 - OMST
++ 5:00 - +05 1930 Jun 21
++ 6:00 Russia +06/+07 1991 Mar 31 2:00s
++ 5:00 Russia +05/+06 1992 Jan 19 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06
+
++# From Paul Eggert (2016-02-22):
++# Asia/Barnaul covers:
++# 04 RU-AL Altai Republic
++# 22 RU-ALT Altai Krai
+
+-# From Tim Parenti (2014-07-03):
+-# Asia/Novosibirsk covers...
++# Data before 1991 are from Shanks & Pottenger.
++
++# From Stepan Golosunov (2016-03-07):
++# Letter of Bank of Russia from 1995-05-25
++# http://www.bestpravo.ru/rossijskoje/lj-akty/y3a.htm
++# suggests that Altai Republic transitioned to Moscow+3 on
++# 1995-05-28.
++#
++# http://regnum.ru/news/society/1957270.html
++# has some historical data for Altai Krai:
++# before 1957: west part on UTC+6, east on UTC+7
++# after 1957: UTC+7
++# since 1995: UTC+6
++# http://barnaul.rusplt.ru/index/pochemu_altajskij_kraj_okazalsja_v_neprivychnom_chasovom_pojase-17648.html
++# confirms that and provides more details including 1995-05-28 transition date.
++
++# From Alexander Krivenyshev (2016-02-17):
++# Altai Krai and Altai Republic on their way to change time zones
++# by March 27, 2016 at 2am....
++# Altai Republic / Gorno-Altaysk MSK+3 to MSK+4 (UTC+6 to UTC+7) ...
++# Altai Krai / Barnaul MSK+3 to MSK+4 (UTC+6 to UTC+7)
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090043
++# http://publication.pravo.gov.ru/Document/View/0001201603090038
++
++Zone Asia/Barnaul 5:35:00 - LMT 1919 Dec 10
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1995 May 28
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Mar 27 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Novosibirsk covers:
+ # 54 RU-NVS Novosibirsk Oblast
+-# 70 RU-TOM Tomsk Oblast
+
+-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+-# not clear when it switched from +7 to +6.
++# From Stepan Golosunov (2016-05-30):
++# http://asozd2.duma.gov.ru/main.nsf/(Spravka)?OpenAgent&RN=1085784-6
++# moves Novosibirsk oblast from UTC+6 to UTC+7.
++# From Stepan Golosunov (2016-07-04):
++# The law was signed yesterday and published today on
++# http://publication.pravo.gov.ru/Document/View/0001201607040064
+
+ Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 6:00 - NOVT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1993 May 23 # say Shanks & P.
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Jul 24 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Tomsk covers:
++# 70 RU-TOM Tomsk Oblast
++
++# From Stepan Golosunov (2016-03-24):
++# Byalokoz listed Tomsk at 5:39:51.
++
++# From Stanislaw A. Kuzikowski (1994-06-29):
++# Tomsk is still 4 hours ahead of Moscow.
++
++# From Stepan Golosunov (2016-03-19):
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102075743
++# (fifth time belt being UTC+5+1(decree time)
++# / UTC+5+1(decree time)+1(summer time)) ...
++# Note that time belts (numbered from 2 (Moscow) to 12 according to their
++# GMT/UTC offset and having too many exceptions like regions formally
++# belonging to one belt but using time from another) were replaced
++# with time zones in 2011 with different numbering (there was a
++# 2-hour gap between second and third zones in 2011-2014).
++
++# From Stepan Golosunov (2016-04-12):
++# http://asozd2.duma.gov.ru/main.nsf/(SpravkaNew)?OpenAgent&RN=1006865-6
++# This bill was approved in the first reading today. It moves Tomsk oblast
++# from UTC+6 to UTC+7 and is supposed to come into effect on 2016-05-29 at
++# 2:00. The bill needs to be approved in the second and the third readings by
++# the State Duma, approved by the Federation Council, signed by the President
++# and published to become a law. Minor changes in the text are to be expected
++# before the second reading (references need to be updated to account for the
++# recent changes).
++#
++# Judging by the ultra-short one-day amendments period, recent similar laws,
++# the State Duma schedule and the Federation Council schedule
++# http://www.duma.gov.ru/legislative/planning/day-shedule/por_vesna_2016/
++# http://council.gov.ru/activity/meetings/schedule/63303
++# I speculate that the final text of the bill will be proposed tomorrow, the
++# bill will be approved in the second and the third readings on Friday,
++# approved by the Federation Council on 2016-04-20, signed by the President and
++# published as a law around 2016-04-26.
++
++# From Matt Johnson (2016-04-26):
++# http://publication.pravo.gov.ru/Document/View/0001201604260048
++
++Zone Asia/Tomsk 5:39:51 - LMT 1919 Dec 22
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2002 May 1 3:00
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 May 29 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2499,7 +2842,7 @@
+ # from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
+ # to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
+ #
+-# This is according to Government of Russia decree # 740, on September
++# This is according to Government of Russia decree No. 740, on September
+ # 14, 2009 "Application in the territory of the Kemerovo region the Fifth
+ # time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
+ #
+@@ -2511,23 +2854,18 @@
+ #
+ # Thus, when Russia will switch to DST on the night of March 28, 2010
+ # Kemerovo region (Kemerovo oblast') will not change the clock.
+-#
+-# As a result, Kemerovo oblast' will be in the same time zone as
+-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+ # From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02):
+ # The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus
+ # realigning itself with KRAT.
+
+ Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 7:00 - KRAT # Krasnoyarsk Time
+-
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2010 Mar 28 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Krasnoyarsk covers...
+@@ -2541,12 +2879,12 @@
+ # Byalokoz 1919 says Krasnoyarsk was 6:11:26.
+
+ Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
+- 8:00 - KRAT 2014 Oct 26 2:00s
+- 7:00 - KRAT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2011 Mar 27 2:00s
++ 8:00 - +08 2014 Oct 26 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2563,12 +2901,12 @@
+
+ Zone Asia/Irkutsk 6:57:05 - LMT 1880
+ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time
+- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
+- 9:00 - IRKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 7:00 - +07 1930 Jun 21
++ 8:00 Russia +08/+09 1991 Mar 31 2:00s
++ 7:00 Russia +07/+08 1992 Jan 19 2:00s
++ 8:00 Russia +08/+09 2011 Mar 27 2:00s
++ 9:00 - +09 2014 Oct 26 2:00s
++ 8:00 - +08
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2578,13 +2916,20 @@
+ # Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat
+ # Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai.
+
++# From Alexander Krivenyshev (2016-01-02):
++# [The] time zone in the Trans-Baikal Territory (Zabaykalsky Krai) -
++# Asia/Chita [is changing] from UTC+8 to UTC+9. Effective date will
++# be March 27, 2016 at 2:00am....
++# http://publication.pravo.gov.ru/Document/View/0001201512300107
++
+ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 8:00 - +08 2016 Mar 27 2:00
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2624,12 +2969,12 @@
+ # Byalokoz 1919 says Yakutsk was 8:38:58.
+
+ Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2647,12 +2992,12 @@
+ # Go with Byalokoz.
+
+ Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
+- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+- 9:00 Russia VLA%sT 1992 Jan 19 2:00s
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 9:00 - +09 1930 Jun 21
++ 10:00 Russia +10/+11 1991 Mar 31 2:00s
++ 9:00 Russia +09/+10 1992 Jan 19 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2670,14 +3015,14 @@
+ # This transition is no doubt wrong, but we have no better info.
+
+ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2004
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725?
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2004
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2011 Sep 13 0:00s # Decree 725?
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2686,16 +3031,21 @@
+ # ...with the exception of:
+ # 65-11 **** Severo-Kurilsky District (North Kuril Islands)
+
++# From Matt Johnson (2016-02-22):
++# Asia/Sakhalin is moving (in entirety) from UTC+10 to UTC+11 ...
++# (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090044
++
+ # The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long.
+ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+- 9:00 - JCST 1937 Oct 1
+- 9:00 - JST 1945 Aug 25
+- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T
+- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
+- 11:00 - SAKT 2014 Oct 26 2:00s
+- 10:00 - SAKT
++ 9:00 - +09 1945 Aug 25
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s # Sakhalin T
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Mar 27 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2709,13 +3059,22 @@
+ # until now by Asia/Magadan, will instead move to UTC+11. These regions will
+ # need their own zone.
+
++# From Alexander Krivenyshev (2016-03-27):
++# ... draft bill 948300-6 to change its time zone from UTC+10 to UTC+11 ...
++# will take ... effect ... on April 24, 2016 at 2 o'clock
++#
++# From Matt Johnson (2016-04-05):
++# ... signed by the President today ...
++# http://publication.pravo.gov.ru/Document/View/0001201604050038
++
+ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 10:00 - MAGT
++ 10:00 - +10 1930 Jun 21 # Magadan Time
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Apr 24 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2758,17 +3117,14 @@
+ # in Russian.) In addition, Srednekolymsk appears to be a much older
+ # settlement and the population of Zyryanka seems to be declining.
+ # Go with Srednekolymsk.
+-#
+-# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT
+-# as the abbreviation. Use SRET instead.
+
+ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 11:00 - SRET # Srednekolymsk Time
++ 10:00 - +10 1930 Jun 21
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2786,14 +3142,14 @@
+ # UTC+12 since at least then, too.
+
+ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAKT 1981 Apr 1
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725?
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1981 Apr 1
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2011 Sep 13 0:00s # Decree 725?
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2806,12 +3162,12 @@
+ # The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps
+ # Asia/Petropavlovsk-Kamchatsky, but these are too long.
+ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+- 11:00 - PETT 1930 Jun 21 # P-K Time
+- 12:00 Russia PET%sT 1991 Mar 31 2:00s
+- 11:00 Russia PET%sT 1992 Jan 19 2:00s
+- 12:00 Russia PET%sT 2010 Mar 28 2:00s
+- 11:00 Russia PET%sT 2011 Mar 27 2:00s
+- 12:00 - PETT
++ 11:00 - +11 1930 Jun 21
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2819,13 +3175,13 @@
+ # 87 RU-CHU Chukotka Autonomous Okrug
+
+ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
+- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
+- 12:00 - ANAT
++ 12:00 - +12 1930 Jun 21
++ 13:00 Russia +13/+14 1982 Apr 1 0:00s
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # San Marino
+@@ -2922,7 +3278,7 @@
+ Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
+ -1:00 - CANT 1946 Sep 30 1:00 # Canaries T
+ 0:00 - WET 1980 Apr 6 0:00s
+- 0:00 1:00 WEST 1980 Sep 28 0:00s
++ 0:00 1:00 WEST 1980 Sep 28 1:00u
+ 0:00 EU WE%sT
+ # IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
+ # Ignore this for now, as the Canaries are part of the EU.
+@@ -3084,22 +3440,24 @@
+
+ # Turkey
+
+-# From Amar Devegowda (2007-01-03):
+-# The time zone rules for Istanbul, Turkey have not been changed for years now.
+-# ... The latest rules are available at:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=107
+-# From Steffen Thorsen (2007-01-03):
+-# I have been able to find press records back to 1996 which all say that
+-# DST started 01:00 local time and end at 02:00 local time. I am not sure
+-# what happened before that. One example for each year from 1996 to 2001:
+-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+-# From Paul Eggert (2007-01-03):
+-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
++# From Kıvanç Yazan (2016-09-25):
++# 1) For 1986-2006, DST started at 01:00 local and ended at 02:00 local, with
++# no exceptions.
++# 2) 1994's lastSun was overridden with Mar 20 ...
++# Here are official papers:
++# http://www.resmigazete.gov.tr/arsiv/19032.pdf - page 2 for 1986
++# http://www.resmigazete.gov.tr/arsiv/19400.pdf - page 4 for 1987
++# http://www.resmigazete.gov.tr/arsiv/19752.pdf - page 15 for 1988
++# http://www.resmigazete.gov.tr/arsiv/20102.pdf - page 6 for 1989
++# http://www.resmigazete.gov.tr/arsiv/20464.pdf - page 1 for 1990 - 1992
++# http://www.resmigazete.gov.tr/arsiv/21531.pdf - page 15 for 1993 - 1995
++# http://www.resmigazete.gov.tr/arsiv/21879.pdf - page 1 for overriding 1994
++# http://www.resmigazete.gov.tr/arsiv/22588.pdf - page 1 for 1996, 1997
++# http://www.resmigazete.gov.tr/arsiv/23286.pdf - page 10 for 1998 - 2000
++# http://www.resmigazete.gov.tr/eskiler/2001/03/20010324.htm#2 - for 2001
++# http://www.resmigazete.gov.tr/eskiler/2002/03/20020316.htm#2 - for 2002-2006
++# From Paul Eggert (2016-09-25):
++# Prefer the above sources to Shanks & Pottenger for time stamps after 1985.
+
+ # From Steffen Thorsen (2007-03-09):
+ # Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+@@ -3135,6 +3493,25 @@
+ # http://www.balkaneu.com/eventful-elections-turkey/ 2014-03-30.
+ # I guess the best we can do is document the official time.
+
++# From Fatih (2015-09-29):
++# It's officially announced now by the Ministry of Energy.
++# Turkey delays winter time to 8th of November 04:00
++# http://www.aa.com.tr/tr/turkiye/yaz-saati-uygulamasi-8-kasimda-sona-erecek/362217
++#
++# From BBC News (2015-10-25):
++# Confused Turks are asking "what's the time?" after automatic clocks defied a
++# government decision ... "For the next two weeks #Turkey is on EEST... Erdogan
++# Engineered Standard Time," said Twitter user @aysekarahasan.
++# http://www.bbc.com/news/world-europe-34631326
++
++# From Burak AYDIN (2016-09-08):
++# Turkey will stay in Daylight Saving Time even in winter....
++# http://www.resmigazete.gov.tr/eskiler/2016/09/20160908-2.pdf
++#
++# From Paul Eggert (2016-09-07):
++# The change is permanent, so this is the new standard time in Turkey.
++# It takes effect today, which is not much notice.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Turkey 1916 only - May 1 0:00 1:00 S
+ Rule Turkey 1916 only - Oct 1 0:00 0 -
+@@ -3189,22 +3566,25 @@
+ Rule Turkey 1983 only - Oct 2 0:00 0 -
+ Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+ Rule Turkey 1985 only - Sep 28 0:00 0 -
+-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1986 1993 - Mar lastSun 1:00s 1:00 S
++Rule Turkey 1986 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
++Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
++ 3:00 Turkey +03/+04 1985 Apr 20
+ 2:00 Turkey EE%sT 2007
+ 2:00 EU EE%sT 2011 Mar 27 1:00u
+ 2:00 - EET 2011 Mar 28 1:00u
+ 2:00 EU EE%sT 2014 Mar 30 1:00u
+ 2:00 - EET 2014 Mar 31 1:00u
+- 2:00 EU EE%sT
++ 2:00 EU EE%sT 2015 Oct 25 1:00u
++ 2:00 1:00 EEST 2015 Nov 8 1:00u
++ 2:00 EU EE%sT 2016 Sep 7
++ 3:00 - +03
+ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+ # Ukraine
+@@ -3212,7 +3592,7 @@
+ # From Igor Karpov, who works for the Ukrainian Ministry of Justice,
+ # via Garrett Wollman (2003-01-27):
+ # BTW, I've found the official document on this matter. It's government
+-# regulations number 509, May 13, 1996. In my poor translation it says:
++# regulations No. 509, May 13, 1996. In my poor translation it says:
+ # "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
+ # of March at 3am the time is changing to 4am and each last Sunday of
+ # October the time at 4am is changing to 3am"
+@@ -3221,7 +3601,7 @@
+ # On September 20, 2011 the deputies of the Verkhovna Rada agreed to
+ # abolish the transfer clock to winter time.
+ #
+-# Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got
++# Bill No. 8330 of MP from the Party of Regions Oleg Nadoshi got
+ # approval from 266 deputies.
+ #
+ # Ukraine abolishes transfer back to the winter time (in Russian)
+--- contrib/tzdata/factory.orig
++++ contrib/tzdata/factory
+@@ -1,9 +1,10 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# For companies who don't want to put time zone specification in
+-# their installation procedures. When users run date, they'll get the message.
+-# Also useful for the "comp.sources" version.
++# For distributors who don't want to put time zone specification in
++# their installation procedures. Users that run 'date' will get the
++# time zone abbreviation "-00", indicating that the actual time zone
++# is unknown.
+
+ # Zone NAME GMTOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -143,7 +143,7 @@
+ # Boulder, Colorado
+ # Judah.Levine@nist.gov
+ #
+-# Last Update of leap second values: 5 January 2015
++# Last Update of leap second values: 8 July 2016
+ #
+ # The following line shows this last update date in NTP timestamp
+ # format. This is the date on which the most recent change to
+@@ -151,7 +151,7 @@
+ # be identified by the unique pair of characters in the first two
+ # columns as shown below.
+ #
+-#$ 3629404800
++#$ 3676924800
+ #
+ # The NTP timestamps are in units of seconds since the NTP epoch,
+ # which is 1 January 1900, 00:00:00. The Modified Julian Day number
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C49
+-# File expires on: 28 December 2015
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+ #
+-#@ 3660249600
++#@ 3707596800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -231,6 +231,7 @@
+ 3439756800 34 # 1 Jan 2009
+ 3550089600 35 # 1 Jul 2012
+ 3644697600 36 # 1 Jul 2015
++3692217600 37 # 1 Jan 2017
+ #
+ # the following special comment contains the
+ # hash value of the data in this file computed
+@@ -246,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h 45e70fa7 a9df2033 f4a49ab0 ec648273 7b6c22c
++#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -1,14 +1,21 @@
+-# <pre>
+-# This file is in the public domain, so clarified as of
+-# 2009-05-17 by Arthur David Olson.
++# Allowance for leap seconds added to each time zone file.
+
+-# Allowance for leapseconds added to each timezone file.
++# This file is in the public domain.
+
+-# The International Earth Rotation Service periodically uses leap seconds
+-# to keep UTC to within 0.9 s of UT1
++# This file is generated automatically from the data in the public-domain
++# leap-seconds.list file available from most NIST time servers.
++# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,
++# you should be able to pick up leap-seconds.list from a secondary NIST server.
++# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers.
++# For more about leap-seconds.list, please see
++# The NTP Timescale and Leap Seconds
++# http://www.eecis.udel.edu/~mills/leap.html
++
++# The International Earth Rotation and Reference Systems Service
++# periodically uses leap seconds to keep UTC to within 0.9 s of UT1
+ # (which measures the true angular orientation of the earth in space); see
+ # Terry J Quinn, The BIPM and the accurate measure of time,
+-# Proc IEEE 79, 7 (July 1991), 894-905.
++# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>.
+ # There were no leap seconds before 1972, because the official mechanism
+ # accounting for the discrepancy between atomic time and the earth's rotation
+ # did not exist until the early 1970s.
+@@ -19,8 +26,8 @@
+ # or
+ # Leap YEAR MON DAY 23:59:59 - R/S
+
+-# If the leapsecond is Rolling (R) the given time is local time
+-# If the leapsecond is Stationary (S) the given time is UTC
++# If the leapsecond is Rolling (R) the given time is local time.
++# If the leapsecond is Stationary (S) the given time is UTC.
+
+ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
+ Leap 1972 Jun 30 23:59:60 + S
+@@ -48,53 +55,8 @@
+ Leap 2005 Dec 31 23:59:60 + S
+ Leap 2008 Dec 31 23:59:60 + S
+ Leap 2012 Jun 30 23:59:60 + S
++Leap 2015 Jun 30 23:59:60 + S
++Leap 2016 Dec 31 23:59:60 + S
+
+-# INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
+-#
+-# SERVICE INTERNATIONAL DE LA ROTATION TERRESTRE ET DES SYSTEMES DE REFERENCE
+-#
+-#
+-# SERVICE DE LA ROTATION TERRESTRE
+-# OBSERVATOIRE DE PARIS
+-# 61, Av. de l'Observatoire 75014 PARIS (France)
+-# Tel. : 33 (0) 1 40 51 22 26
+-# FAX : 33 (0) 1 40 51 22 91
+-# e-mail : (E-Mail Removed)
+-# http://hpiers.obspm.fr/eop-pc
+-#
+-# Paris, 5 January 2012
+-#
+-#
+-# Bulletin C 43
+-#
+-# To authorities responsible
+-# for the measurement and
+-# distribution of time
+-#
+-#
+-# UTC TIME STEP
+-# on the 1st of July 2012
+-#
+-#
+-# A positive leap second will be introduced at the end of June 2012.
+-# The sequence of dates of the UTC second markers will be:
+-#
+-# 2012 June 30, 23h 59m 59s
+-# 2012 June 30, 23h 59m 60s
+-# 2012 July 1, 0h 0m 0s
+-#
+-# The difference between UTC and the International Atomic Time TAI is:
+-#
+-# from 2009 January 1, 0h UTC, to 2012 July 1 0h UTC : UTC-TAI = - 34s
+-# from 2012 July 1, 0h UTC, until further notice : UTC-TAI = - 35s
+-#
+-# Leap seconds can be introduced in UTC at the end of the months of December
+-# or June, depending on the evolution of UT1-TAI. Bulletin C is mailed every
+-# six months, either to announce a time step in UTC or to confirm that there
+-# will be no time step at the next possible date.
+-#
+-#
+-# Daniel GAMBIS
+-# Head
+-# Earth Orientation Center of IERS
+-# Observatoire de Paris, France
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -0,0 +1,76 @@
++# Generate the 'leapseconds' file from 'leap-seconds.list'.
++
++# This file is in the public domain.
++
++BEGIN {
++ print "# Allowance for leap seconds added to each time zone file."
++ print ""
++ print "# This file is in the public domain."
++ print ""
++ print "# This file is generated automatically from the data in the public-domain"
++ print "# leap-seconds.list file available from most NIST time servers."
++ print "# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,"
++ print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
++ print "# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers."
++ print "# For more about leap-seconds.list, please see"
++ print "# The NTP Timescale and Leap Seconds"
++ print "# http://www.eecis.udel.edu/~mills/leap.html"
++ print ""
++ print "# The International Earth Rotation and Reference Systems Service"
++ print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1"
++ print "# (which measures the true angular orientation of the earth in space); see"
++ print "# Terry J Quinn, The BIPM and the accurate measure of time,"
++ print "# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>."
++ print "# There were no leap seconds before 1972, because the official mechanism"
++ print "# accounting for the discrepancy between atomic time and the earth's rotation"
++ print "# did not exist until the early 1970s."
++ print ""
++ print "# The correction (+ or -) is made at the given time, so lines"
++ print "# will typically look like:"
++ print "# Leap YEAR MON DAY 23:59:60 + R/S"
++ print "# or"
++ print "# Leap YEAR MON DAY 23:59:59 - R/S"
++ print ""
++ print "# If the leapsecond is Rolling (R) the given time is local time."
++ print "# If the leapsecond is Stationary (S) the given time is UTC."
++ print ""
++ print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
++}
++
++/^ *$/ { next }
++
++/^#\tUpdated through/ || /^#\tFile expires on:/ {
++ last_lines = last_lines $0 "\n"
++}
++
++/^#/ { next }
++
++{
++ NTP_timestamp = $1
++ TAI_minus_UTC = $2
++ hash_mark = $3
++ one = $4
++ month = $5
++ year = $6
++ if (old_TAI_minus_UTC) {
++ if (old_TAI_minus_UTC < TAI_minus_UTC) {
++ sign = "23:59:60\t+"
++ } else {
++ sign = "23:59:59\t-"
++ }
++ if (month == "Jan") {
++ year--;
++ month = "Dec";
++ day = 31
++ } else if (month == "Jul") {
++ month = "Jun";
++ day = 30
++ }
++ printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign
++ }
++ old_TAI_minus_UTC = TAI_minus_UTC
++}
++
++END {
++ printf "\n%s", last_lines
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -24,8 +24,32 @@
+ # was the result of his proposals at the Convention of Railroad Trunk Lines
+ # in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+ # but in 1872-05 he moved the proposed origin to Greenwich.
+-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+-# and the most of the country soon followed suit.
++
++# From Paul Eggert (2016-09-21):
++# Dowd's proposal left many details unresolved, such as where to draw
++# lines between time zones. The key individual who made time zones
++# work in the US was William Frederick Allen - railway engineer,
++# managing editor of the Travelers' Guide, and secretary of the
++# General Time Convention, a railway standardization group. Allen
++# spent months in dialogs with scientific and railway leaders,
++# developed a workable plan to institute time zones, and presented it
++# to the General Time Convention on 1883-04-11, saying that his plan
++# meant "local time would be practically abolished" - a plus for
++# railway scheduling. By the next convention on 1883-10-11 nearly all
++# railroads had agreed and it took effect on 1883-11-18 at 12:00.
++# That Sunday was called the "day of two noons", as the eastern parts
++# of the new zones observed noon twice. Allen witnessed the
++# transition in New York City, writing:
++#
++# I heard the bells of St. Paul's strike on the old time. Four
++# minutes later, obedient to the electrical signal from the Naval
++# Observatory ... the time-ball made its rapid descent, the chimes
++# of old Trinity rang twelve measured strokes, and local time was
++# abandoned, probably forever.
++#
++# Most of the US soon followed suit. See:
++# Bartky IR. The adoption of standard time. Technol Cult 1989 Jan;30(1):25-56.
++# http://dx.doi.org/10.2307/3105430
+
+ # From Paul Eggert (2005-04-16):
+ # That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+@@ -325,6 +349,16 @@
+ # Statue 175 closer in synch with the US Congress' intent....
+ # http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
++# From an email administrator of the City of Fort Pierre, SD (2015-12-21):
++# Fort Pierre is technically located in the Mountain time zone as is
++# the rest of Stanley County. Most of Stanley County and Fort Pierre
++# uses the Central time zone due to doing most of their business in
++# Pierre so it simplifies schedules. I have lived in Stanley County
++# all my life and it has been that way since I can remember. (43 years!)
++#
++# From Paul Eggert (2015-12-25):
++# Assume this practice predates 1970, so Fort Pierre can use America/Chicago.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+ Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+@@ -403,11 +437,42 @@
+ # north of the Salmon River, and the towns of Burgdorf and Warren),
+ # Nevada (except West Wendover), Oregon (except the northern 3/4 of
+ # Malheur county), and Washington
++
++# From Paul Eggert (2016-08-20):
++# In early February 1948, in response to California's electricity shortage,
++# PG&E changed power frequency from 60 to 59.5 Hz during daylight hours,
++# causing electric clocks to lose six minutes per day. (This did not change
++# legal time, and is not part of the data here.) See:
++# Ross SA. An energy crisis from the past: Northern California in 1948.
++# Working Paper No. 8, Institute of Governmental Studies, UC Berkeley,
++# 1973-11. http://escholarship.org/uc/item/8x22k30c
++#
++# In another measure to save electricity, DST was instituted from 1948-03-14
++# at 02:01 to 1949-01-16 at 02:00, with the governor having the option to move
++# the fallback transition earlier. See pages 3-4 of:
++# http://clerk.assembly.ca.gov/sites/clerk.assembly.ca.gov/files/archive/Statutes/1948/48Vol1_Chapters.pdf
++#
++# In response:
++#
++# Governor Warren received a torrent of objecting mail, and it is not too much
++# to speculate that the objections to Daylight Saving Time were one important
++# factor in the defeat of the Dewey-Warren Presidential ticket in California.
++# -- Ross, p 25
++#
++# On December 8 the governor exercised the option, setting the date to January 1
++# (LA Times 1948-12-09). The transition time was 02:00 (LA Times 1949-01-01).
++#
++# Despite the controversy, in 1949 California voters approved Proposition 12,
++# which established DST from April's last Sunday at 01:00 until September's
++# last Sunday at 02:00. This was amended by 1962's Proposition 6, which changed
++# the fall-back date to October's last Sunday. See:
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1636&context=ca_ballot_props
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+-Rule CA 1948 only - Mar 14 2:00 1:00 D
++Rule CA 1948 only - Mar 14 2:01 1:00 D
+ Rule CA 1949 only - Jan 1 2:00 0 S
+-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
++Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -481,6 +546,12 @@
+ # For lack of better information, assume that Metlakatla's
+ # abandonment of use of daylight saving resulted from the 1983 vote.
+
++# From Steffen Thorsen (2015-11-09):
++# It seems Metlakatla did go off PST on Sunday, November 1, changing
++# their time to AKST and are going to follow Alaska's DST, switching
++# between AKST and AKDT from now on....
++# http://www.krbd.org/2015/10/30/annette-island-times-they-are-a-changing/
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+@@ -506,7 +577,8 @@
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+ -8:00 US P%sT 1983 Oct 30 2:00
+- -8:00 - PST
++ -8:00 - PST 2015 Nov 1 2:00
++ -9:00 US AK%sT
+ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+@@ -1235,10 +1307,19 @@
+
+ # west Labrador, Nova Scotia, Prince Edward I
+
+-# From Paul Eggert (2006-03-22):
++# From Brian Inglis (2015-07-20):
++# From the historical weather station records available at:
++# https://weatherspark.com/history/28351/1971/Sydney-Nova-Scotia-Canada
++# Sydney shares the same time history as Glace Bay, so was
++# likely to be the same across the island....
++# Sydney, as the capital and most populous location, or Cape Breton, would
++# have been better names for the zone had we known this in 1996.
++
++# From Paul Eggert (2015-07-20):
+ # Shanks & Pottenger write that since 1970 most of this region has been like
+ # Halifax. Many locales did not observe peacetime DST until 1972;
+-# Glace Bay, NS is the largest that we know of.
++# the Cape Breton area, represented by Glace Bay, is the largest we know of
++# (Glace Bay was perhaps not the best name choice but no point changing now).
+ # Shanks & Pottenger also write that Liverpool, NS was the only town
+ # in Canada to observe DST in 1971 but not 1970; for now we'll assume
+ # this is a typo.
+@@ -1796,13 +1877,13 @@
+ # Exact date in October unknown; Sunday October 1 is a reasonable guess.
+ # 3. June 1918: switch to Pacific Daylight Time (GMT-7)
+ # Exact date in June unknown; Sunday June 2 is a reasonable guess.
+-# note#1:
++# note 1:
+ # On Oct 27/1918 when daylight saving ended in the rest of Canada,
+ # Creston did not change its clocks.
+-# note#2:
++# note 2:
+ # During WWII when the Federal Government legislated a mandatory clock change,
+ # Creston did not oblige.
+-# note#3:
++# note 3:
+ # There is no guarantee that Creston will remain on Mountain Standard Time
+ # (UTC-7) forever.
+ # The subject was debated at least once this year by the town Council.
+@@ -1817,6 +1898,22 @@
+
+ # The transition dates (and times) are guesses.
+
++# From Matt Johnson (2015-09-21):
++# Fort Nelson, BC, Canada will cancel DST this year. So while previously they
++# were aligned with America/Vancouver, they're now aligned with
++# America/Dawson_Creek.
++# http://www.northernrockies.ca/EN/meta/news/archives/2015/northern-rockies-time-change.html
++#
++# From Tim Parenti (2015-09-23):
++# This requires a new zone for the Northern Rockies Regional Municipality,
++# America/Fort_Nelson. The resolution of 2014-12-08 was reached following a
++# 2014-11-15 poll with nearly 75% support. Effectively, the municipality has
++# been on MST (-0700) like Dawson Creek since it advanced its clocks on
++# 2015-03-08.
++#
++# From Paul Eggert (2015-09-23):
++# Shanks says Fort Nelson did not observe DST in 1946, unlike Vancouver.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Vanc 1918 only - Apr 14 2:00 1:00 D
+ Rule Vanc 1918 only - Oct 27 2:00 0 S
+@@ -1835,6 +1932,12 @@
+ -8:00 Canada P%sT 1947
+ -8:00 Vanc P%sT 1972 Aug 30 2:00
+ -7:00 - MST
++Zone America/Fort_Nelson -8:10:47 - LMT 1884
++ -8:00 Vanc P%sT 1946
++ -8:00 - PST 1947
++ -8:00 Vanc P%sT 1987
++ -8:00 Canada P%sT 2015 Mar 8 2:00
++ -7:00 - MST
+ Zone America/Creston -7:46:04 - LMT 1884
+ -7:00 - MST 1916 Oct 1
+ -8:00 - PST 1918 Jun 2
+@@ -2143,39 +2246,39 @@
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
++Zone America/Pangnirtung 0 - -00 1921 # trading post est.
+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+ -5:00 Canada E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # formerly Frobisher Bay
+-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
++Zone America/Iqaluit 0 - -00 1942 Aug # Frobisher Bay est.
+ -5:00 NT_YK E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # aka Qausuittuq
+-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
++Zone America/Resolute 0 - -00 1947 Aug 31 # Resolute founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT 2006 Oct 29 2:00
+ -5:00 - EST 2007 Mar 11 3:00
+ -6:00 Canada C%sT
+ # aka Kangiqiniq
+-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
++Zone America/Rankin_Inlet 0 - -00 1957 # Rankin Inlet founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+ # aka Iqaluktuuttiaq
+-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
++Zone America/Cambridge_Bay 0 - -00 1920 # trading post est.?
+ -7:00 NT_YK M%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2000 Nov 5 0:00
+ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
++Zone America/Yellowknife 0 - -00 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
++Zone America/Inuvik 0 - -00 1953 # Inuvik founded
+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+@@ -2427,13 +2530,22 @@
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
++# Coahuila, Nuevo León, Tamaulipas (near US border)
++# This includes the following municipalities:
++# in Coahuila: Ocampo, Acuña, Zaragoza, Jiménez, Piedras Negras, Nava,
++# Guerrero, Hidalgo.
++# in Nuevo León: Anáhuac, Los Aldama.
++# in Tamaulipas: Nuevo Laredo, Guerrero, Mier, Miguel Alemán, Camargo,
++# Gustavo Díaz Ordaz, Reynosa, Río Bravo, Valle Hermoso, Matamoros.
++# See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
++# 2016-03-12
++# http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+ Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT 2010
+ -6:00 US C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
++# Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+ Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+@@ -2449,6 +2561,9 @@
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+ # Chihuahua (near US border)
++# This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
++# Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
++# (See the 2016-03-12 El Universal source mentioned above.)
+ Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+@@ -2536,7 +2651,7 @@
+ -7:00 Mexico M%sT 2010 Apr 4 2:00
+ -6:00 Mexico C%sT
+
+-# Baja California (near US border)
++# Baja California
+ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+@@ -2556,25 +2671,6 @@
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT 2010
+ -8:00 US P%sT
+-# Baja California (away from US border)
+-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
+- -7:00 - MST 1924
+- -8:00 - PST 1927 Jun 10 23:00
+- -7:00 - MST 1930 Nov 15
+- -8:00 - PST 1931 Apr 1
+- -8:00 1:00 PDT 1931 Sep 30
+- -8:00 - PST 1942 Apr 24
+- -8:00 1:00 PWT 1945 Aug 14 23:00u
+- -8:00 1:00 PPT 1945 Nov 12 # Peace
+- -8:00 - PST 1948 Apr 5
+- -8:00 1:00 PDT 1949 Jan 14
+- -8:00 - PST 1954
+- -8:00 CA P%sT 1961
+- -8:00 - PST 1976
+- -8:00 US P%sT 1996
+- -8:00 Mexico P%sT 2001
+- -8:00 US P%sT 2002 Feb 20
+- -8:00 Mexico P%sT
+ # From Paul Eggert (2006-03-22):
+ # Formerly there was an America/Ensenada zone, which differed from
+ # America/Tijuana only in that it did not observe DST from 1976
+@@ -2587,6 +2683,13 @@
+ # other than America/Tijuana for Baja, but it's not clear yet what its
+ # name or contents should be.
+ #
++# From Paul Eggert (2015-10-08):
++# Formerly there was an America/Santa_Isabel zone, but this appears to
++# have come from a misreading of
++# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
++# It has been moved to the 'backward' file.
++#
++#
+ # Revillagigedo Is
+ # no information
+
+@@ -2661,17 +2764,7 @@
+ -4:00 US A%sT
+
+ # Cayman Is
+-
+-# From Paul Eggert (2015-05-15):
+-# The Cayman government has decided to introduce DST in 2016, the idea being
+-# to keep in sync with New York. The legislation hasn't passed but the change
+-# seems quite likely. See: Meade B. Cayman 27.
+-# http://www.cayman27.com.ky/2015/05/15/clock-ticks-toward-daylight-saving-time-in-cayman
+-
+-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST 2016
+- -5:00 US E%sT
++# See America/Panama.
+
+ # Costa Rica
+
+@@ -3034,6 +3127,13 @@
+ # http://radiovision2000haiti.net/public/haiti-avis-changement-dheure-dimanche/
+ # http://www.canalplushaiti.net/?p=6714
+
++# From Steffen Thorsen (2016-03-12):
++# Jean Antoine, editor of www.haiti-reference.com informed us that Haiti
++# are not going on DST this year. Several other resources confirm this: ...
++# http://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# http://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
++# http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Haiti 1983 only - May 8 0:00 1:00 D
+ Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+@@ -3044,8 +3144,8 @@
+ Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+ Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+ Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+-Rule Haiti 2012 max - Mar Sun>=8 2:00 1:00 D
+-Rule Haiti 2012 max - Nov Sun>=1 2:00 0 S
++Rule Haiti 2012 2015 - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+@@ -3194,6 +3294,7 @@
+ Zone America/Panama -5:18:08 - LMT 1890
+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
++Link America/Panama America/Cayman
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+@@ -3235,7 +3336,7 @@
+ # indicating that the normal ET rules are followed.
+ #
+ # From Paul Eggert (2014-08-19):
+-# The 2014-08-13 Cabinet meeting decided to stay on UTC-4 year-round. See:
++# The 2014-08-13 Cabinet meeting decided to stay on UT -04 year-round. See:
+ # http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm
+ # Model this as a switch from EST/EDT to AST ...
+ # From Chris Walton (2014-11-04):
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -131,7 +131,7 @@
+ # Timezone Law (which never was effectively applied) will (would?) be
+ # in effect.... The article is at
+ # http://ar.clarin.com/diario/2001-06-06/e-01701.htm
+-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
++# ... The Law itself is "Ley No. 25155", sanctioned on 1999-08-25, enacted
+ # 1999-09-17, and published 1999-09-21. The official publication is at:
+ # http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
+ # Regretfully, you have to subscribe (and pay) for the on-line version....
+@@ -175,15 +175,11 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
+ # http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
+
+-# From Rodrigo Severo (2008-10-06):
+-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
+-# ...
+-# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
+-# Hi, there is a problem with timezone-data-2008e and maybe with
+-# timezone-data-2008f
+-# Argentinian law [Number] 25.155 is no longer valid.
++# From Juan Manuel Docile in https://bugs.gentoo.org/240339 (2008-10-07)
++# via Rodrigo Severo:
++# Argentinian law No. 25.155 is no longer valid.
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
+-# The new one is law [Number] 26.350
++# The new one is law No. 26.350
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
+ # So there is no summer time in Argentina for now.
+
+@@ -414,9 +410,9 @@
+ # stuck on Summer daylight savings time even though the summer is over.
+
+ # From Paul Eggert (2013-09-05):
+-# Perhaps San Luis operates on the legal fiction that it is at UTC-4
++# Perhaps San Luis operates on the legal fiction that it is at -04
+ # with perpetual summer time, but ordinary usage typically seems to
+-# just say it's at UTC-3; see, for example,
++# just say it's at -03; see, for example,
+ # http://es.wikipedia.org/wiki/Hora_oficial_argentina
+ # We've documented similar situations as being plain changes to
+ # standard time, so let's do that here too. This does not change UTC
+@@ -771,7 +767,7 @@
+ # [ and in a second message (same day): ]
+ # I found the decree.
+ #
+-# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
++# DECRETO No. 7.584, DE 13 DE OUTUBRO DE 2011
+ # Link :
+ # http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
+
+@@ -1125,7 +1121,7 @@
+ # Conflicts between [1] and [2] were resolved as follows:
+ #
+ # - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
+-# Boletín Nº 1, Aviso Nº 1 (1910). Go with [2].
++# Boletín No. 1, Aviso No. 1 (1910). Go with [2].
+ #
+ # - [1] says SMT was -4:42:45, [2] says Chile's official time from
+ # 1916 to 1919 was -4:42:46.3, the meridian of Chile's National
+@@ -1133,7 +1129,7 @@
+ # Quinta Normal in Santiago. Go with [2], rounding it to -4:42:46.
+ #
+ # - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
+-# Boletín Nº 22, Aviso Nº 129/1918 (1918-08-23). Go with [2].
++# Boletín No. 22, Aviso No. 129/1918 (1918-08-23). Go with [2].
+ #
+ # - [1] does not give times for transitions; assume they occur
+ # at midnight mainland time, the current common practice. However,
+@@ -1225,6 +1221,20 @@
+ # From Paul Eggert (2015-03-03):
+ # For now, assume that the extension will persist indefinitely.
+
++# From Juan Correa (2016-03-18):
++# The decree regarding DST has been published in today's Official Gazette:
++# http://www.diariooficial.interior.gob.cl/versiones-anteriores/do/20160318/
++# http://www.leychile.cl/Navegar?idNorma=1088502
++# It does consider the second Saturday of May and August as the dates
++# for the transition; and it lists DST dates until 2019, but I think
++# this scheme will stick.
++#
++# From Paul Eggert (2016-03-18):
++# For now, assume the pattern holds for the indefinite future.
++# The decree says transitions occur at 24:00; in practice this appears
++# to mean 24:00 mainland time, not 24:00 local time, so that Easter
++# Island is always two hours behind the mainland.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
+ Rule Chile 1928 1932 - Apr 1 0:00 0 -
+@@ -1256,8 +1266,10 @@
+ Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
+ Rule Chile 2011 only - May Sun>=2 3:00u 0 -
+ Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule Chile 2012 2015 - Apr Sun>=23 3:00u 0 -
++Rule Chile 2012 2014 - Apr Sun>=23 3:00u 0 -
+ Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2016 max - May Sun>=9 3:00u 0 -
++Rule Chile 2016 max - Aug Sun>=9 4:00u 1:00 S
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -1274,13 +1286,11 @@
+ -4:00 1:00 CLST 1946 Sep 1 # central Chile
+ -4:00 - CLT 1947 Apr 1
+ -5:00 - CLT 1947 May 21 23:00
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+ Zone Pacific/Easter -7:17:28 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+ -7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
+- -6:00 Chile EAS%sT 2015 Apr 26 3:00u
+- -5:00 - EAST
++ -6:00 Chile EAS%sT
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+@@ -1299,11 +1309,10 @@
+ # Palmer used to be supplied from Argentina.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Palmer 0 - zzz 1965
++Zone Antarctica/Palmer 0 - -00 1965
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1982 May
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+
+ # Colombia
+
+@@ -1533,7 +1542,7 @@
+ # (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
+ Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
+ # From Rives McDow (2002-02-28):
+-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
++# A decree was issued in Paraguay (No. 16350) on 2002-02-26 that changed the
+ # dst method to be from the first Sunday in September to the first Sunday in
+ # April.
+ Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
+@@ -1713,8 +1722,19 @@
+ Rule Uruguay 2006 only - Mar 12 2:00 0 -
+ # From Jesper Nørgaard Welen (2006-09-06):
+ # http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
+-Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
+-Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
++#
++# From Steffen Thorsen (2015-06-30):
++# ... it looks like they will not be using DST the coming summer:
++# http://www.elobservador.com.uy/gobierno-resolvio-que-no-habra-cambio-horario-verano-n656787
++# http://www.republica.com.uy/este-ano-no-se-modificara-el-huso-horario-en-uruguay/523760/
++# From Paul Eggert (2015-06-30):
++# Apparently restaurateurs complained that DST caused people to go to the beach
++# instead of out to dinner.
++# From Pablo Camargo (2015-07-13):
++# http://archivo.presidencia.gub.uy/sci/decretos/2015/06/cons_min_201.pdf
++# [dated 2015-06-29; repeals Decree 311/006 dated 2006-09-04]
++Rule Uruguay 2006 2014 - Oct Sun>=1 2:00 1:00 S
++Rule Uruguay 2007 2015 - Mar Sun>=8 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
+ -3:44:44 - MMT 1920 May 1 # Montevideo MT
+@@ -1723,6 +1743,10 @@
+
+ # Venezuela
+ #
++# From Paul Eggert (2015-07-28):
++# For the 1965 transition see Gaceta Oficial No. 27.619 (1964-12-15), p 205.533
++# http://www.pgr.gob.ve/dmdocuments/1964/27619.pdf
++#
+ # From John Stainforth (2007-11-28):
+ # ... the change for Venezuela originally expected for 2007-12-31 has
+ # been brought forward to 2007-12-09. The official announcement was
+@@ -1731,9 +1755,25 @@
+ # resolution publication)
+ # http://www.globovision.com/news.php?nid=72208
+
++# From Alexander Krivenyshev (2016-04-15):
++# https://actualidad.rt.com/actualidad/204758-venezuela-modificar-huso-horario-sequia-elnino
++#
++# From Paul Eggert (2016-04-15):
++# Clocks advance 30 minutes on 2016-05-01 at 02:30....
++# "'Venezuela's new time-zone: hours without light, hours without water,
++# hours of presidential broadcasts, hours of lines,' quipped comedian
++# Jean Mary Curró ...". See: Cawthorne A, Kai D. Venezuela scraps
++# half-hour time difference set by Chavez. Reuters 2016-04-15 14:50 -0400
++# http://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
++#
++# From Matt Johnson (2016-04-20):
++# ... published in the official Gazette [2016-04-18], here:
++# http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+- -4:30 - VET 1965 # Venezuela Time
++ -4:30 - VET 1965 Jan 1 0:00 # Venezuela T.
+ -4:00 - VET 2007 Dec 9 3:00
+- -4:30 - VET
++ -4:30 - VET 2016 May 1 2:30
++ -4:00 - VET
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -0,0 +1 @@
++2016i
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -30,22 +30,22 @@
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+ AO -0848+01314 Africa/Luanda
+-AQ -7750+16636 Antarctica/McMurdo McMurdo, South Pole, Scott (New Zealand time)
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adelie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -7750+16636 Antarctica/McMurdo New Zealand time - McMurdo, South Pole
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -56,17 +56,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AW +1230-06958 America/Aruba
+ AX +6006+01957 Europe/Mariehamn
+ AZ +4023+04951 Asia/Baku
+@@ -85,62 +85,63 @@
+ BO -1630-06809 America/La_Paz
+ BQ +120903-0681636 America/Kralendijk
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapa, E Para
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Para (east); Amapa
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Para
++BR -0226-05452 America/Santarem Para (west)
+ BR -0846-06354 America/Porto_Velho Rondonia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BW -2439+02555 Africa/Gaborone
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
++CD -0418+01518 Africa/Kinshasa Dem. Rep. of Congo (west)
++CD -1140+02728 Africa/Lubumbashi Dem. Rep. of Congo (east)
+ CF +0422+01835 Africa/Bangui
+ CG -0416+01517 Africa/Brazzaville
+ CH +4723+00832 Europe/Zurich
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -151,30 +152,31 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin most locations
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DE +4742+00841 Europe/Busingen Busingen
+ DJ +1136+04309 Africa/Djibouti
+ DK +5540+01235 Europe/Copenhagen
+ DM +1518-06124 America/Dominica
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galapagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+ ER +1520+03853 Africa/Asmara
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ ET +0902+03842 Africa/Addis_Ababa
+ FI +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -186,10 +188,10 @@
+ GG +4927-00232 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GM +1328-01639 Africa/Banjul
+ GN +0931-01343 Africa/Conakry
+ GP +1614-06132 America/Guadeloupe
+@@ -205,10 +207,10 @@
+ HR +4548+01558 Europe/Zagreb
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IM +5409-00428 Europe/Isle_of_Man
+@@ -234,10 +236,10 @@
+ KR +3733+12658 Asia/Seoul
+ KW +2920+04759 Asia/Kuwait
+ KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -256,12 +258,12 @@
+ ME +4226+01916 Europe/Podgorica
+ MF +1804-06305 America/Marigot
+ MG -1855+04731 Indian/Antananarivo
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+ MK +4159+02126 Europe/Skopje
+ ML +1239-00800 Africa/Bamako
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -273,20 +275,19 @@
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+ MW -1547+03500 Africa/Blantyre
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo Leon, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo Leon, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahia de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
+ MZ -2558+03235 Africa/Maputo
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+@@ -299,7 +300,7 @@
+ NP +2743+08519 Asia/Kathmandu
+ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+-NZ -3652+17446 Pacific/Auckland most locations
++NZ -3652+17446 Pacific/Auckland New Zealand (most areas)
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+ OM +2336+05835 Asia/Muscat
+ PA +0858-07932 America/Panama
+@@ -307,7 +308,7 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -317,7 +318,7 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+@@ -326,27 +327,32 @@
+ RE -2052+05528 Indian/Reunion
+ RO +4426+02606 Europe/Bucharest
+ RS +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ RW -0157+03004 Africa/Kigali
+ SA +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+@@ -385,45 +391,45 @@
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+ TZ -0648+03917 Africa/Dar_es_Salaam
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UG +0019+03225 Africa/Kampala
+ UM +1645-16931 Pacific/Johnston Johnston Atoll
+ UM +2813-17722 Pacific/Midway Midway Islands
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+ US +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VA +415408+0122711 Europe/Vatican
+ VC +1309-06114 America/St_Vincent
+ VE +1030-06656 America/Caracas
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -39,21 +39,21 @@
+ AF +3431+06912 Asia/Kabul
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adélie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -64,17 +64,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AZ +4023+04951 Asia/Baku
+ BB +1306-05937 America/Barbados
+ BD +2343+09025 Asia/Dhaka
+@@ -84,57 +84,58 @@
+ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapá, E Pará
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Pará (east); Amapá
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Pará
++BR -0226-05452 America/Santarem Pará (west)
+ BR -0846-06354 America/Porto_Velho Rondônia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+ CH,DE,LI +4723+00832 Europe/Zurich Swiss time
+ CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -144,25 +145,26 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW,AW,BQ,SX +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ,SK +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin Berlin time
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DK +5540+01235 Europe/Copenhagen
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galápagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ FI,AX +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -171,10 +173,10 @@
+ GF +0456-05220 America/Cayenne
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GR +3758+02343 Europe/Athens
+ GS -5416-03632 Atlantic/South_Georgia
+ GT +1438-09031 America/Guatemala
+@@ -185,10 +187,10 @@
+ HN +1406-08713 America/Tegucigalpa
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IN +2232+08822 Asia/Kolkata
+@@ -207,11 +209,10 @@
+ KI +0152-15720 Pacific/Kiritimati Line Islands
+ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+-KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -223,10 +224,10 @@
+ MA +3339-00735 Africa/Casablanca
+ MC +4342+00723 Europe/Monaco
+ MD +4700+02850 Europe/Chisinau
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -234,25 +235,24 @@
+ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo León, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo León, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
+-MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahía de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
++MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+ NF -2903+16758 Pacific/Norfolk
+-NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
++NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time
+ NI +1209-08617 America/Managua
+ NL +5222+00454 Europe/Amsterdam
+ NO,SJ +5955+01045 Europe/Oslo
+@@ -261,12 +261,12 @@
+ NU -1901-16955 Pacific/Niue
+ NZ,AQ -3652+17446 Pacific/Auckland New Zealand time
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+-PA +0858-07932 America/Panama
++PA,KY +0858-07932 America/Panama
+ PE -1203-07703 America/Lima
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -276,36 +276,41 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+ PY -2516-05740 America/Asuncion
+ QA,BH +2517+05132 Asia/Qatar
+-RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
++RE,TF -2052+05528 Indian/Reunion Réunion, Crozet, Scattered Islands
+ RO +4426+02606 Europe/Bucharest
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+@@ -317,8 +322,8 @@
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
+ TD +1207+01503 Africa/Ndjamena
+-TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
+-TH,KH,LA,VN +1345+10031 Asia/Bangkok most of Indochina
++TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul Island, Amsterdam Island
++TH,KH,LA,VN +1345+10031 Asia/Bangkok Indochina (most areas)
+ TJ +3835+06848 Asia/Dushanbe
+ TK -0922-17114 Pacific/Fakaofo
+ TL -0833+12535 Asia/Dili
+@@ -329,44 +334,44 @@
+ TT,AG,AI,BL,DM,GD,GP,KN,LC,MF,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+-US,UM +211825-1575130 Pacific/Honolulu Hawaii time
++US,UM +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VE +1030-06656 America/Caracas
+-VN +1045+10640 Asia/Ho_Chi_Minh south Vietnam
++VN +1045+10640 Asia/Ho_Chi_Minh Vietnam (south)
+ VU -1740+16825 Pacific/Efate
+ WF -1318-17610 Pacific/Wallis
+ WS -1350-17144 Pacific/Apia
+--- contrib/tzdata/zoneinfo2tdf.pl.orig
++++ contrib/tzdata/zoneinfo2tdf.pl
+@@ -0,0 +1,52 @@
++#! /usr/bin/perl -w
++
++# Courtesy Ken Pizzini.
++
++use strict;
++
++#This file released to the public domain.
++
++# Note: error checking is poor; trust the output only if the input
++# has been checked by zic.
++
++my $contZone = '';
++while (<>) {
++ my $origline = $_;
++ my @fields = ();
++ while (s/^\s*((?:"[^"]*"|[^\s#])+)//) {
++ push @fields, $1;
++ }
++ next unless @fields;
++
++ my $type = lc($fields[0]);
++ if ($contZone) {
++ @fields >= 3 or warn "bad continuation line";
++ unshift @fields, '+', $contZone;
++ $type = 'zone';
++ }
++
++ $contZone = '';
++ if ($type eq 'zone') {
++ # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ my $nfields = @fields;
++ $nfields >= 5 or warn "bad zone line";
++ if ($nfields > 6) {
++ #this splice is optional, depending on one's preference
++ #(one big date-time field, or componentized date and time):
++ splice(@fields, 5, $nfields-5, "@fields[5..$nfields-1]");
++ }
++ $contZone = $fields[1] if @fields > 5;
++ } elsif ($type eq 'rule') {
++ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++ @fields == 10 or warn "bad rule line";
++ } elsif ($type eq 'link') {
++ # Link TARGET LINK-NAME
++ @fields == 3 or warn "bad link line";
++ } elsif ($type eq 'leap') {
++ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
++ @fields == 7 or warn "bad leap line";
++ } else {
++ warn "Fubar at input line $.: $origline";
++ }
++ print join("\t", @fields), "\n";
++}
++native
+\ No newline at end of property
++*
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
diff --git a/share/security/patches/EN-16:20/tzdata-10.2.patch.asc b/share/security/patches/EN-16:20/tzdata-10.2.patch.asc
new file mode 100644
index 0000000000..801a8bf3f8
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.2.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1rAAoJEO1n7NZdz2rngakQAOIT07earAHkhoiIEiU+x9Ai
+rAV41bYSIxfBZ8X5Sp3g1/TC7HrMWzM68ar9Uqm9iM5nDWWBTxwXZYwcFSvVUrF0
+T4SVztyiksyzQQmypreaSY1msPIk/aIr1YVtGsyvPv0KbvvldFGQEWAUrcLykCaG
+LUamzrzMXWrFpZwN/TLnykIPXhRrrV1O+l8xBH7qm4JWp8PkoeFe6xtCuj1E+ZZg
++h24AMxoaDD6/fDXHZ+ht8MuY3/zz39oVCc6vFxAg0iCbO/MOy0Rwq8Uh0raSPE6
+aSWQGEQB8jrml24WAc6nozL6j9dyv5uKUr0mKCc9x00ZW2Ml4WNw4BIZ4FSJXJGU
+nMnIK/5aS5SJ5+JuBeoqwh0Qim6Z6SRz+gLsrA45pa2tY3mMjKn21WFpKyFlug9S
+bDqgeapTv4Cau38NPATGScSn3qzxeW9tSQ//Njj4XTD5sYhH1a0+VEUooo8bGvt0
+ANtOmeJXqH7vJmA/JA7V5rfEZts75eKDPWBg4DgW4KX8N0spkgHkCphfwF8ZEgTM
+0UkEpxRhWAeZ/DECr5MNdJ1g+koxk5Ijj0mc4TiRftGYL3ttIo+Q1YfWaLTGUazD
+/8fE0SCu417DC/MwQeLMge7nfQC0sW4NOTDjYpxgi39O/UJkKwn4WX/qyT2/RmdW
+5iPHnGay+FX6w0vSuMwU
+=CtTo
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:20/tzdata-10.3.patch b/share/security/patches/EN-16:20/tzdata-10.3.patch
new file mode 100644
index 0000000000..f32fd02a4f
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.3.patch
@@ -0,0 +1,10686 @@
+Index: contrib/tzdata/CONTRIBUTING
+===================================================================
+--- contrib/tzdata/CONTRIBUTING (nonexistent)
++++ contrib/tzdata/CONTRIBUTING (working copy)
+@@ -0,0 +1,73 @@
++Contributing to the tz code and data
++
++The time zone database is by no means authoritative: governments
++change timekeeping rules erratically and sometimes with little
++warning, the data entries do not cover all of civil time before
++1970, and undoubtedly errors remain in the code and data. Feel
++free to fill gaps or fix mistakes, and please email improvements
++to tz@iana.org for use in the future.
++
++To email small changes, please run a POSIX shell command like
++'diff -u old/europe new/europe >myfix.patch', and attach
++myfix.patch to the email.
++
++For more-elaborate changes, please read the Theory file and browse
++the mailing list archives <http://mm.icann.org/pipermail/tz/> for
++examples of patches that tend to work well. Ideally, additions to
++data should contain commentary citing reliable sources as
++justification.
++
++Please submit changes against either the latest release in
++<ftp://ftp.iana.org/tz/> or the master branch of the experimental
++Git repository. If you use Git the following workflow may be helpful:
++
++ * Copy the experimental repository.
++
++ git clone https://github.com/eggert/tz.git
++ cd tz
++
++ * Get current with the master branch.
++
++ git checkout master
++ git pull
++
++ * Switch to a new branch for the changes. Choose a different
++ branch name for each change set.
++
++ git checkout -b mybranch
++
++ * Edit source files. Include commentary that justifies the
++ changes by citing reliable sources.
++
++ * Debug the changes, e.g.:
++
++ make check
++ make install
++ ./zdump -v America/Los_Angeles
++
++ * For each separable change, commit it in the new branch, e.g.:
++
++ git add northamerica
++ git commit
++
++ See recent 'git log' output for the commit-message style.
++
++ * Create patch files 0001-*, 0002-*, ...
++
++ git format-patch master
++
++ * After reviewing the patch files, send the patches to tz@iana.org
++ for others to review.
++
++ git send-email master
++
++ * Start anew by getting current with the master branch again
++ (the second step above).
++
++Please do not create issues or pull requests on GitHub, as the
++proper procedure for proposing and distributing patches is via
++email as illustrated above.
++
++-----
++
++This file is in the public domain.
+Index: contrib/tzdata/LICENSE
+===================================================================
+--- contrib/tzdata/LICENSE (nonexistent)
++++ contrib/tzdata/LICENSE (working copy)
+@@ -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.
+Index: contrib/tzdata/Makefile
+===================================================================
+--- contrib/tzdata/Makefile (nonexistent)
++++ contrib/tzdata/Makefile (working copy)
+@@ -0,0 +1,793 @@
++# This file is in the public domain, so clarified as of
++# 2009-05-17 by Arthur David Olson.
++
++# Package name for the code distribution.
++PACKAGE= tzcode
++
++# Version number for the distribution, overridden in the 'tarballs' rule below.
++VERSION= unknown
++
++# Email address for bug reports.
++BUGEMAIL= tz@iana.org
++
++# Change the line below for your time zone (after finding the zone you want in
++# the time zone files, or adding it to a time zone file).
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -l rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for LOCALTIME.
++
++LOCALTIME= GMT
++
++# If you want something other than Eastern United States time as a template
++# for handling POSIX-style time zone environment variables,
++# change the line below (after finding the zone you want in the
++# time zone files, or adding it to a time zone file).
++# (When a POSIX-style environment variable is handled, the rules in the
++# template file are used to determine "spring forward" and "fall back" days and
++# times; the environment variable itself specifies UT offsets of standard and
++# summer time.)
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -p rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for POSIXRULES.
++# If you want POSIX compatibility, use "America/New_York".
++
++POSIXRULES= America/New_York
++
++# Also see TZDEFRULESTRING below, which takes effect only
++# if the time zone files cannot be accessed.
++
++# Everything gets put in subdirectories of. . .
++
++TOPDIR= /usr/local
++
++# "Compiled" time zone information is placed in the "TZDIR" directory
++# (and subdirectories).
++# Use an absolute path name for TZDIR unless you're just testing the software.
++
++TZDIR_BASENAME= zoneinfo
++TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
++
++# Types to try, as an alternative to time_t. int64_t should be first.
++TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
++
++# The "tzselect", "zic", and "zdump" commands get installed in. . .
++
++ETCDIR= $(TOPDIR)/etc
++
++# If you "make INSTALL", the "date" command gets installed in. . .
++
++BINDIR= $(TOPDIR)/bin
++
++# Manual pages go in subdirectories of. . .
++
++MANDIR= $(TOPDIR)/man
++
++# Library functions are put in an archive in LIBDIR.
++
++LIBDIR= $(TOPDIR)/lib
++
++# If you always want time values interpreted as "seconds since the epoch
++# (not counting leap seconds)", use
++# REDO= posix_only
++# below. If you always want right time values interpreted as "seconds since
++# the epoch" (counting leap seconds)", use
++# REDO= right_only
++# below. If you want both sets of data available, with leap seconds not
++# counted normally, use
++# REDO= posix_right
++# below. If you want both sets of data available, with leap seconds counted
++# normally, use
++# REDO= right_posix
++# below. POSIX mandates that leap seconds not be counted; for compatibility
++# with it, use "posix_only" or "posix_right".
++
++REDO= posix_right
++
++# If you want out-of-scope and often-wrong data from the file 'backzone', use
++# PACKRATDATA= backzone
++# To omit this data, use
++# PACKRATDATA=
++
++PACKRATDATA=
++
++# Since "." may not be in PATH...
++
++YEARISTYPE= ./yearistype
++
++# Non-default libraries needed to link.
++LDLIBS=
++
++# Add the following to the end of the "CFLAGS=" line as needed.
++# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r
++# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
++# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS)
++# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares
++# ctime_r and asctime_r incompatibly with the POSIX standard
++# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
++# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h"
++# -DHAVE_LINK=0 if your system lacks a link function
++# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
++# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
++# This defaults to 1 if a working localtime_rz seems to be available.
++# localtime_rz can make zdump significantly faster, but is nonstandard.
++# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
++# functions like 'link' or variables like 'tzname' required by POSIX
++# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h"
++# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l
++# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_STRDUP=0 if your system lacks the strdup function
++# -DHAVE_SYMLINK=0 if your system lacks the symlink function
++# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h"
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h"
++# -DHAVE_TZSET=0 if your system lacks a tzset function
++# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?)
++# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT
++# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater
++# than what POSIX specifies, assuming local time is UT.
++# For example, N is 252460800 on AmigaOS.
++# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1
++# if you do not want run time warnings about formats that may cause
++# year 2000 grief
++# -Dssize_t=long on ancient hosts that lack ssize_t
++# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires;
++# not needed by the main-program tz code, which is single-threaded.
++# Append other compiler flags as needed, e.g., -pthread on GNU/Linux.
++# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t
++# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz"
++# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
++# the default is system-supplied, typically "/usr/lib/locale"
++# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
++# DST transitions if the time zone files cannot be accessed
++# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems
++# other than simply getting garbage data
++# -DUSE_LTZ=0 to build zdump with the system time zone library
++# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
++# -DZIC_MAX_ABBR_LEN_WO_WARN=3
++# (or some other number) to set the maximum time zone abbreviation length
++# that zic will accept without a warning (the default is 6)
++# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
++GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
++ -Wall -Wextra \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement \
++ -Wdouble-promotion \
++ -Wformat=2 -Winit-self -Wjump-misses-init \
++ -Wlogical-op -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \
++ -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \
++ -Wsuggest-attribute=pure -Wtrampolines \
++ -Wunused -Wwrite-strings \
++ -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
++ -Wno-type-limits -Wno-unused-parameter
++#
++# If you want to use System V compatibility code, add
++# -DUSG_COMPAT
++# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight"
++# variables to be kept up-to-date by the time conversion functions. Neither
++# "timezone" nor "daylight" is described in X3J11's work.
++#
++# If your system has a "GMT offset" field in its "struct tm"s
++# (or if you decide to add such a field in your system's "time.h" file),
++# add the name to a define such as
++# -DTM_GMTOFF=tm_gmtoff
++# to the end of the "CFLAGS=" line. If not defined, the code attempts to
++# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this.
++# Similarly, if your system has a "zone abbreviation" field, define
++# -DTM_ZONE=tm_zone
++# and define NO_TM_ZONE to suppress any guessing. These two fields are not
++# required by POSIX, but are widely available on GNU/Linux and BSD systems.
++#
++# If you want functions that were inspired by early versions of X3J11's work,
++# add
++# -DSTD_INSPIRED
++# to the end of the "CFLAGS=" line. This arranges for the functions
++# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
++# "posix2time", and "time2posix" to be added to the time conversion library.
++# "tzsetwall" is like "tzset" except that it arranges for local wall clock
++# time (rather than the time specified in the TZ environment variable)
++# to be used.
++# "offtime" is like "gmtime" except that it accepts a second (long) argument
++# that gives an offset to add to the time_t when converting it.
++# "timelocal" is equivalent to "mktime".
++# "timegm" is like "timelocal" except that it turns a struct tm into
++# a time_t using UT (rather than local time as "timelocal" does).
++# "timeoff" is like "timegm" except that it accepts a second (long) argument
++# that gives an offset to use when converting to a time_t.
++# "posix2time" and "time2posix" are described in an included manual page.
++# X3J11's work does not describe any of these functions.
++# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0.
++# These functions may well disappear in future releases of the time
++# conversion package.
++#
++# If you don't want functions that were inspired by NetBSD, add
++# -DNETBSD_INSPIRED=0
++# to the end of the "CFLAGS=" line. Otherwise, the functions
++# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
++# time library, and if STD_INSPIRED is also defined the functions
++# "posix2time_z" and "time2posix_z" are added as well.
++# The functions ending in "_z" (or "_rz") are like their unsuffixed
++# (or suffixed-by-"_r") counterparts, except with an extra first
++# argument of opaque type timezone_t that specifies the time zone.
++# "tzalloc" allocates a timezone_t value, and "tzfree" frees it.
++#
++# If you want to allocate state structures in localtime, add
++# -DALL_STATE
++# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc.
++#
++# If you want an "altzone" variable (a la System V Release 3.1), add
++# -DALTZONE
++# to the end of the "CFLAGS=" line.
++# This variable is not described in X3J11's work.
++#
++# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put
++# out by the National Institute of Standards and Technology
++# which claims to test C and Posix conformance. If you want to pass PCTS, add
++# -DPCTS
++# to the end of the "CFLAGS=" line.
++#
++# If you want strict compliance with XPG4 as of 1994-04-09, add
++# -DXPG4_1994_04_09
++# to the end of the "CFLAGS=" line. This causes "strftime" to always return
++# 53 as a week number (rather than 52 or 53) for those days in January that
++# before the first Monday in January when a "%V" format is used and January 1
++# falls on a Friday, Saturday, or Sunday.
++
++CFLAGS=
++
++# Linker flags. Default to $(LFLAGS) for backwards compatibility
++# to release 2012h and earlier.
++
++LDFLAGS= $(LFLAGS)
++
++# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in
++# submake command lines. The default is no leap seconds.
++
++LEAPSECONDS=
++
++# The zic command and its arguments.
++
++zic= ./zic
++ZIC= $(zic) $(ZFLAGS)
++
++ZFLAGS=
++
++# How to use zic to install tz binary files.
++
++ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++
++# The name of a Posix-compliant 'awk' on your system.
++AWK= awk
++
++# The full path name of a Posix-compliant shell, preferably one that supports
++# the Korn shell's 'select' statement as an extension.
++# These days, Bash is the most popular.
++# It should be OK to set this to /bin/sh, on platforms where /bin/sh
++# lacks 'select' or doesn't completely conform to Posix, but /bin/bash
++# is typically nicer if it works.
++KSHELL= /bin/bash
++
++# The path where SGML DTDs are kept and the catalog file(s) to use when
++# validating. The default should work on both Debian and Red Hat.
++SGML_TOPDIR= /usr
++SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
++SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
++SGML_CATALOG_FILES= \
++ $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
++
++# The name, arguments and environment of a program to validate your web pages.
++# See <http://openjade.sourceforge.net/doc/> for a validator, and
++# <https://validator.w3.org/source/> for a validation library.
++VALIDATE = nsgmls
++VALIDATE_FLAGS = -s -B -wall -wno-unused-param
++VALIDATE_ENV = \
++ SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \
++ SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \
++ SP_CHARSET_FIXED=YES \
++ SP_ENCODING=UTF-8
++
++# This expensive test requires USE_LTZ.
++# To suppress it, define this macro to be empty.
++CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
++
++# SAFE_CHAR is a regular expression that matches a safe character.
++# Some parts of this distribution are limited to safe characters;
++# others can use any UTF-8 character.
++# For now, the safe characters are a safe subset of ASCII.
++# The caller must set the shell variable 'sharp' to the character '#',
++# since Makefile macros cannot contain '#'.
++# TAB_CHAR is a single tab character, in single quotes.
++TAB_CHAR= ' '
++SAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@'
++SAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`'
++SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~'
++SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
++SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]'
++
++# OK_CHAR matches any character allowed in the distributed files.
++# This is the same as SAFE_CHAR, except that multibyte letters are
++# also allowed so that commentary can contain people's names and quote
++# non-English sources. For non-letters the sources are limited to
++# ASCII renderings for the convenience of maintainers whose text editors
++# mishandle UTF-8 by default (e.g., XEmacs 21.4.22).
++OK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]'
++
++# SAFE_LINE matches a line of safe characters.
++# SAFE_SHARP_LINE is similar, except any OK character can follow '#';
++# this is so that comments can contain non-ASCII characters.
++# OK_LINE matches a line of OK characters.
++SAFE_LINE= '^'$(SAFE_CHAR)'*$$'
++SAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$'
++OK_LINE= '^'$(OK_CHAR)'*$$'
++
++# Flags to give 'tar' when making a distribution.
++# Try to use flags appropriate for GNU tar.
++GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
++TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
++ then echo $(GNUTARFLAGS); \
++ else :; \
++ fi`
++
++# Flags to give 'gzip' when making a distribution.
++GZIPFLAGS= -9n
++
++###############################################################################
++
++#MAKE= make
++
++cc= cc
++CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++
++AR= ar
++
++# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib.
++RANLIB= :
++
++TZCOBJS= zic.o
++TZDOBJS= zdump.o localtime.o asctime.o
++DATEOBJS= date.o localtime.o strftime.o asctime.o
++LIBSRCS= localtime.c asctime.c difftime.c
++LIBOBJS= localtime.o asctime.o difftime.o
++HEADERS= tzfile.h private.h
++NONLIBSRCS= zic.c zdump.c
++NEWUCBSRCS= date.c strftime.c
++SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
++ tzselect.ksh workman.sh
++MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
++ tzfile.5 tzselect.8 zic.8 zdump.8
++MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
++ time2posix.3.txt \
++ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \
++ date.1.txt
++COMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version
++WEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm
++DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
++PRIMARY_YDATA= africa antarctica asia australasia \
++ europe northamerica southamerica
++YDATA= $(PRIMARY_YDATA) pacificnew etcetera backward
++NDATA= systemv factory
++TDATA= $(YDATA) $(NDATA)
++ZONETABLES= zone1970.tab zone.tab
++TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++LEAP_DEPS= leapseconds.awk leap-seconds.list
++DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
++ leap-seconds.list yearistype.sh
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
++MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
++TZS_YEAR= 2050
++TZS= to$(TZS_YEAR).tzs
++TZS_NEW= to$(TZS_YEAR)new.tzs
++TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
++ private.h tzfile.h zdump.c zic.c
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
++
++# Consult these files when deciding whether to rebuild the 'version' file.
++# This list is not the same as the output of 'git ls-files', since
++# .gitignore is not distributed.
++VERSION_DEPS= \
++ CONTRIBUTING LICENSE Makefile NEWS README Theory \
++ africa antarctica asctime.c asia australasia \
++ backward backzone \
++ checklinks.awk checktab.awk \
++ date.1 date.c difftime.c \
++ etcetera europe factory iso3166.tab \
++ leap-seconds.list leapseconds.awk localtime.c \
++ newctime.3 newstrftime.3 newtzset.3 northamerica \
++ pacificnew private.h \
++ southamerica strftime.c systemv \
++ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
++ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
++ workman.sh yearistype.sh \
++ zdump.8 zdump.c zic.8 zic.c \
++ zone.tab zone1970.tab zoneinfo2tdf.pl
++
++# And for the benefit of csh users on systems that assume the user
++# shell should be used to handle commands in Makefiles. . .
++
++SHELL= /bin/sh
++
++all: tzselect yearistype zic zdump libtz.a $(TABDATA)
++
++ALL: all date $(ENCHILADA)
++
++install: all $(DATA) $(REDO) $(MANS)
++ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
++ $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
++ $(DESTDIR)$(MANDIR)/man8
++ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
++ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp libtz.a $(DESTDIR)$(LIBDIR)/.
++ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
++ cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
++ cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
++ cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
++
++INSTALL: ALL install date.1
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp date $(DESTDIR)$(BINDIR)/.
++ cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
++
++version: $(VERSION_DEPS)
++ { (type git) >/dev/null 2>&1 && \
++ V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
++ --abbrev=7 --dirty` || \
++ V=$(VERSION); } && \
++ printf '%s\n' "$$V" >$@.out
++ mv $@.out $@
++
++version.h: version
++ VERSION=`cat version` && printf '%s\n' \
++ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
++ "static char const TZVERSION[]=\"$$VERSION\";" \
++ 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \
++ >$@.out
++ mv $@.out $@
++
++zdump: $(TZDOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
++
++zic: $(TZCOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
++
++yearistype: yearistype.sh
++ cp yearistype.sh yearistype
++ chmod +x yearistype
++
++leapseconds: $(LEAP_DEPS)
++ $(AWK) -f leapseconds.awk leap-seconds.list >$@.out
++ mv $@.out $@
++
++# Arguments to pass to submakes of install_data.
++# They can be overridden by later submake arguments.
++INSTALLARGS = \
++ DESTDIR=$(DESTDIR) \
++ LEAPSECONDS='$(LEAPSECONDS)' \
++ PACKRATDATA='$(PACKRATDATA)' \
++ TZDIR=$(TZDIR) \
++ YEARISTYPE=$(YEARISTYPE) \
++ ZIC='$(ZIC)'
++
++# 'make install_data' installs one set of tz binary files.
++# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc.
++install_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA)
++ $(ZIC_INSTALL) $(TDATA)
++ $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA)
++
++posix_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
++
++right_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \
++ install_data
++
++# In earlier versions of this makefile, the other two directories were
++# subdirectories of $(TZDIR). However, this led to configuration errors.
++# For example, with posix_right under the earlier scheme,
++# TZ='right/Australia/Adelaide' got you localtime with leap seconds,
++# but gmtime without leap seconds, which led to problems with applications
++# like sendmail that subtract gmtime from localtime.
++# Therefore, the other two directories are now siblings of $(TZDIR).
++# You must replace all of $(TZDIR) to switch from not using leap seconds
++# to using them, or vice versa.
++right_posix: right_only
++ rm -fr $(DESTDIR)$(TZDIR)-leaps
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++
++posix_right: posix_only
++ rm -fr $(DESTDIR)$(TZDIR)-posix
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++
++# This obsolescent rule is present for backwards compatibility with
++# tz releases 2014g through 2015g. It should go away eventually.
++posix_packrat:
++ $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only
++
++zones: $(REDO)
++
++$(TZS_NEW): $(TDATA) zdump zic
++ mkdir -p tzs.dir
++ $(zic) -d tzs.dir $(TDATA)
++ $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
++ $(TDATA) | LC_ALL=C sort >$@.out
++ wd=`pwd` && \
++ zones=`$(AWK) -v wd="$$wd" \
++ '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ | LC_ALL=C sort` && \
++ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
++ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
++ rm -fr tzs.dir $@.out
++ mv $@.sed.out $@
++
++# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
++# If it exists but 'make check_tzs' fails, a maintainer should inspect the
++# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
++$(TZS):
++ $(MAKE) force_tzs
++
++force_tzs: $(TZS_NEW)
++ cp $(TZS_NEW) $(TZS)
++
++libtz.a: $(LIBOBJS)
++ $(AR) ru $@ $(LIBOBJS)
++ $(RANLIB) $@
++
++date: $(DATEOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
++
++tzselect: tzselect.ksh version
++ VERSION=`cat version` && sed \
++ -e 's|#!/bin/bash|#!$(KSHELL)|g' \
++ -e 's|AWK=[^}]*|AWK=$(AWK)|g' \
++ -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
++ -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
++ -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
++ -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \
++ <$@.ksh >$@.out
++ chmod +x $@.out
++ mv $@.out $@
++
++check: check_character_set check_white_space check_links check_sorted \
++ check_tables check_tzs check_web
++
++check_character_set: $(ENCHILADA)
++ LC_ALL=en_US.utf8 && export LC_ALL && \
++ sharp='#' && \
++ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
++ $(MISC) $(SOURCES) $(WEB_PAGES) \
++ CONTRIBUTING LICENSE Makefile README version && \
++ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
++ leapseconds yearistype.sh zone.tab && \
++ ! grep -Env $(OK_LINE) $(ENCHILADA)
++
++check_white_space: $(ENCHILADA)
++ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
++ ! grep -En "$$pat" $(ENCHILADA)
++ ! grep -n '[[:space:]]$$' $(ENCHILADA)
++
++CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
++
++check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
++ $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
++ $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
++ LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
++ LC_ALL=C sort -cu
++
++check_links: checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk $(TDATA)
++
++check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
++ for tab in $(ZONETABLES); do \
++ $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \
++ || exit; \
++ done
++
++check_tzs: $(TZS) $(TZS_NEW)
++ diff -u $(TZS) $(TZS_NEW)
++
++check_web: $(WEB_PAGES)
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++
++clean_misc:
++ rm -f core *.o *.out \
++ date tzselect version.h zdump zic yearistype libtz.a
++clean: clean_misc
++ rm -fr *.dir tzdb-*/ $(TZS_NEW)
++
++maintainer-clean: clean
++ @echo 'This command is intended for maintainers to use; it'
++ @echo 'deletes files that may need special tools to rebuild.'
++ rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
++
++names:
++ @echo $(ENCHILADA)
++
++public: check check_public $(CHECK_TIME_T_ALTERNATIVES) \
++ tarballs signatures
++
++date.1.txt: date.1
++newctime.3.txt: newctime.3
++newstrftime.3.txt: newstrftime.3
++newtzset.3.txt: newtzset.3
++time2posix.3.txt: time2posix.3
++tzfile.5.txt: tzfile.5
++tzselect.8.txt: tzselect.8
++zdump.8.txt: zdump.8
++zic.8.txt: zic.8
++
++$(MANTXTS): workman.sh
++ LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out
++ mv $@.out $@
++
++# Set the time stamps to those of the git repository, if available,
++# and if the files have not changed since then.
++# This uses GNU 'touch' syntax 'touch -d@N FILE',
++# where N is the number of seconds since 1970.
++# If git or GNU 'touch' is absent, don't bother to sync with git timestamps.
++# Also, set the timestamp of each prebuilt file like 'leapseconds'
++# to be the maximum of the files it depends on.
++set-timestamps.out: $(ENCHILADA)
++ rm -f $@
++ if (type git) >/dev/null 2>&1 && \
++ files=`git ls-files $(ENCHILADA)` && \
++ touch -md @1 test.out; then \
++ rm -f test.out && \
++ for file in $$files; do \
++ if git diff --quiet $$file; then \
++ time=`git log -1 --format='tformat:%ct' $$file` && \
++ touch -cmd @$$time $$file; \
++ else \
++ echo >&2 "$$file: warning: does not match repository"; \
++ fi || exit; \
++ done; \
++ fi
++ touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds
++ for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \
++ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
++ exit; \
++ done
++ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
++ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
++ touch $@
++
++# The zics below ensure that each data file can stand on its own.
++# We also do an all-files run to catch links to links.
++
++check_public:
++ $(MAKE) maintainer-clean
++ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
++ mkdir -p public.dir
++ for i in $(TDATA) ; do \
++ $(zic) -v -d public.dir $$i 2>&1 || exit; \
++ done
++ $(zic) -v -d public.dir $(TDATA)
++ rm -fr public.dir
++
++# Check that the code works under various alternative
++# implementations of time_t.
++check_time_t_alternatives:
++ if diff -q Makefile Makefile 2>/dev/null; then \
++ quiet_option='-q'; \
++ else \
++ quiet_option=''; \
++ fi && \
++ wd=`pwd` && \
++ zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
++ for type in $(TIME_T_ALTERNATIVES); do \
++ mkdir -p time_t.dir/$$type && \
++ $(MAKE) clean_misc && \
++ $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \
++ CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
++ REDO='$(REDO)' \
++ install && \
++ diff $$quiet_option -r \
++ time_t.dir/int64_t/etc/zoneinfo \
++ time_t.dir/$$type/etc/zoneinfo && \
++ case $$type in \
++ int32_t) range=-2147483648,2147483647;; \
++ uint32_t) range=0,4294967296;; \
++ int64_t) continue;; \
++ *u*) range=0,10000000000;; \
++ *) range=-10000000000,10000000000;; \
++ esac && \
++ echo checking $$type zones ... && \
++ time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/int64_t.out && \
++ time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/$$type.out && \
++ diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
++ || exit; \
++ done
++ rm -fr time_t.dir
++
++tarballs traditional_tarballs signatures traditional_signatures: version
++ VERSION=`cat version` && \
++ $(MAKE) VERSION="$$VERSION" $@_version
++
++tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
++traditional_tarballs_version: \
++ tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
++signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
++traditional_signatures_version: \
++ tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
++
++tzcode$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - \
++ $(COMMON) $(DOCS) $(SOURCES) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdata$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdb-$(VERSION).tar.lz: set-timestamps.out
++ rm -fr tzdb-$(VERSION)
++ mkdir tzdb-$(VERSION)
++ ln $(ENCHILADA) tzdb-$(VERSION)
++ touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION)
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out
++ mv $@.out $@
++
++tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
++ gpg --armor --detach-sign $?
++
++typecheck:
++ $(MAKE) clean
++ for i in "long long" unsigned; \
++ do \
++ $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \
++ ./zdump -v Europe/Rome ; \
++ $(MAKE) clean ; \
++ done
++
++zonenames: $(TDATA)
++ @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++
++asctime.o: private.h tzfile.h
++date.o: private.h
++difftime.o: private.h
++localtime.o: private.h tzfile.h
++strftime.o: private.h tzfile.h
++zdump.o: version.h
++zic.o: private.h tzfile.h version.h
++
++.KEEP_STATE:
++
++.PHONY: ALL INSTALL all
++.PHONY: check check_character_set check_links
++.PHONY: check_public check_sorted check_tables
++.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
++.PHONY: clean clean_misc force_tzs
++.PHONY: install install_data maintainer-clean names
++.PHONY: posix_only posix_packrat posix_right
++.PHONY: public right_only right_posix signatures signatures_version
++.PHONY: tarballs tarballs_version typecheck
++.PHONY: zonenames zones
+Index: contrib/tzdata/NEWS
+===================================================================
+--- contrib/tzdata/NEWS (nonexistent)
++++ contrib/tzdata/NEWS (working copy)
+@@ -0,0 +1,3782 @@
++News for the tz database
++
++Release 2016i - 2016-11-01 23:19:52 -0700
++
++ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
++ reintroduces DST on 2016-11-06.
++
++ Changes to future time stamps
++
++ Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
++ 2017-01-15 at 03:00. Assume future observances in Tonga will be
++ from the first Sunday in November through the third Sunday in
++ January, like Fiji. (Thanks to Pulu ʻAnau.) Switch to numeric
++ time zone abbreviations for this zone.
++
++ Changes to past and future time stamps
++
++ Northern Cyprus is now +03 year round, causing a split in Cyprus
++ time zones starting 2016-10-30 at 04:00. This creates a zone
++ Asia/Famagusta. (Thanks to Even Scharning and Matt Johnson.)
++
++ Antarctica/Casey switched from +08 to +11 on 2016-10-22.
++ (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Several corrections were made for pre-1975 time stamps in Italy.
++ These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
++ Europe/Vatican.
++
++ First, the 1893-11-01 00:00 transition in Italy used the new UT
++ offset (+01), not the old (+00:49:56). (Thanks to Michael
++ Deckers.)
++
++ Second, rules for daylight saving in Italy were changed to agree
++ with Italy's National Institute of Metrological Research (INRiM)
++ except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
++ Inglis, and Michael Deckers):
++
++ The 1916-06-03 transition was at 24:00, not 00:00.
++
++ The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
++ 00:00, not 01:00.
++
++ The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
++ 01:00.
++
++ The 1944-09-17 transition was at 03:00, not 01:00. This
++ particular change is taken from Italian law as INRiM's table,
++ (which says 02:00) appears to have a typo here. Also, keep the
++ 1944-04-03 transition for Europe/Rome, as Rome was controlled by
++ Germany then.
++
++ The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
++ not 00:00.
++
++ Changes to code
++
++ The code should now be buildable on AmigaOS merely by setting the
++ appropriate Makefile variables. (From a patch by Carsten Larsen.)
++
++
++Release 2016h - 2016-10-19 23:17:57 -0700
++
++ Changes to future time stamps
++
++ Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
++ 2016-10-21 at 00:00. (Thanks to Sharef Mustafa.) Predict that
++ future fall transitions will be on the last Saturday of October
++ at 01:00, which is consistent with predicted spring transitions
++ on the last Saturday of March. (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ In Turkey, transitions in 1986-1990 were at 01:00 standard time
++ not at 02:00, and the spring 1994 transition was on March 20, not
++ March 27. (Thanks to Kıvanç Yazan.)
++
++ Changes to past and future time zone abbreviations
++
++ Asia/Colombo now uses numeric time zone abbreviations like "+0530"
++ instead of alphabetic ones like "IST" and "LKT". Various
++ English-language sources use "IST", "LKT" and "SLST", with no
++ working consensus. (Usage of "SLST" mentioned by Sadika
++ Sumanapala.)
++
++ Changes to code
++
++ zic no longer mishandles relativizing file names when creating
++ symbolic links like /etc/localtime, when these symbolic links
++ are outside the usual directory hierarchy. This fixes a bug
++ introduced in 2016g. (Problem reported by Andreas Stieger.)
++
++ Changes to build procedure
++
++ New rules 'traditional_tarballs' and 'traditional_signatures' for
++ building just the traditional-format distribution. (Requested by
++ Deborah Goldsmith.)
++
++ The file 'version' is now put into the tzdata tarball too.
++ (Requested by Howard Hinnant.)
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now has a section on interface stability.
++ (Requested by Paul Koning.) It also mentions features like
++ tm_zone and localtime_rz that have long been supported by the
++ reference code.
++
++ tz-link.htm has improved coverage of time zone boundaries suitable
++ for geolocation. (Thanks to heads-ups from Evan Siroky and Matt
++ Johnson.)
++
++ The US commentary now mentions Allen and the "day of two noons".
++
++ The Fiji commentary mentions the government's 2016-10-03 press
++ release. (Thanks to Raymond Kumar.)
++
++
++Release 2016g - 2016-09-13 08:56:38 -0700
++
++ Changes to future time stamps
++
++ Turkey switched from EET/EEST (+02/+03) to permanent +03,
++ effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather
++ than an invented abbreviation for the new time.
++
++ New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
++ (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ For America/Los_Angeles, spring-forward transition times have been
++ corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
++ 1950-1966.
++
++ For zones using Soviet time on 1919-07-01, transitions to UT-based
++ time were at 00:00 UT, not at 02:00 local time. The affected
++ zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
++ Europe/Ulyanovsk. (Thanks to Alexander Belopolsky.)
++
++ Changes to past and future time zone abbreviations
++
++ The Factory zone now uses the time zone abbreviation -00 instead
++ of a long English-language string, as -00 is now the normal way to
++ represent an undefined time zone.
++
++ Several zones in Antarctica and the former Soviet Union, along
++ with zones intended for ships at sea that cannot use POSIX TZ
++ strings, now use numeric time zone abbreviations instead of
++ invented or obsolete alphanumeric abbreviations. The affected
++ zones are Antarctica/Casey, Antarctica/Davis,
++ Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
++ Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
++ Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
++ Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
++ Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
++ Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
++ Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
++ Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
++ Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
++ Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
++ Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
++ Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
++ Europe/Minsk, Europe/Samara, Europe/Volgograd, and
++ Indian/Kerguelen. For Europe/Moscow the invented abbreviation MSM
++ was replaced by +05, whereas MSK and MSD were kept as they are not
++ our invention and are widely used.
++
++ Changes to zone names
++
++ Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
++ (Thanks to David Massoud.)
++
++ Changes to code
++
++ zic no longer generates binary files containing POSIX TZ-like
++ strings that disagree with the local time type after the last
++ explicit transition in the data. This fixes a bug with
++ Africa/Casablanca and Africa/El_Aaiun in some year-2037 time
++ stamps on the reference platform. (Thanks to Alexander Belopolsky
++ for reporting the bug and suggesting a way forward.)
++
++ If the installed localtime and/or posixrules files are symbolic
++ links, zic now keeps them symbolic links when updating them, for
++ compatibility with platforms like OpenSUSE where other programs
++ configure these files as symlinks.
++
++ zic now avoids hard linking to symbolic links, avoids some
++ unnecessary mkdir and stat system calls, and uses shorter file
++ names internally.
++
++ zdump has a new -i option to generate transitions in a
++ more-compact but still human-readable format. This option is
++ experimental, and the output format may change in future versions.
++ (Thanks to Jon Skeet for suggesting that an option was needed,
++ and thanks to Tim Parenti and Chris Rovick for further comments.)
++
++ Changes to build procedure
++
++ An experimental distribution format is available, in addition
++ to the traditional format which will continue to be distributed.
++ The new format is a tarball tzdb-VERSION.tar.lz with signature
++ file tzdb-VERSION.tar.lz.asc. It unpacks to a top-level directory
++ tzdb-VERSION containing the code and data of the traditional
++ two-tarball format, along with extra data that may be useful.
++ (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
++ for comments about the experimental format.)
++
++ The release version number is now more accurate in the usual case
++ where releases are built from a Git repository. For example, if
++ 23 commits and some working-file changes have been made since
++ release 2016g, the version number is now something like
++ '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
++ Official releases uses the same version number format as before,
++ e.g., '2016g'. To support the more-accurate version number, its
++ specification has moved from a line in the Makefile to a new
++ source file 'version'.
++
++ The experimental distribution contains a file to2050.tzs that
++ contains what should be the output of 'zdump -i -c 2050' on
++ primary zones. If this file is available, 'make check' now checks
++ that zdump generates this output.
++
++ 'make check_web' now works on Fedora-like distributions.
++
++ Changes to documentation and commentary
++
++ tzfile.5 now documents the new restriction on POSIX TZ-like
++ strings that is now implemented by zic.
++
++ Comments now cite URLs for some 1917-1921 Russian DST decrees.
++ (Thanks to Alexander Belopolsky.)
++
++ tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
++ (thanks to Meno Hochschild) and ThreeTen-Extra, and its
++ description of Java 8 has been brought up to date (thanks to
++ Stephen Colebourne). Its description of local time on Mars has
++ been updated to match current practice, and URLs have been updated
++ and some obsolete ones removed.
++
++
++Release 2016f - 2016-07-05 16:26:51 +0200
++
++ 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.)
++
++
++Release 2016e - 2016-06-14 08:46:16 -0700
++
++ Changes affecting future time stamps
++
++ Africa/Cairo observes DST in 2016 from July 7 to the end of October.
++ Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
++ For future years, guess April's last Thursday to October's last
++ Thursday except for Ramadan.
++
++ Changes affecting past time stamps
++
++ Locations while uninhabited now use '-00', not 'zzz', as a
++ placeholder time zone abbreviation. This is inspired by Internet
++ RFC 3339 and is more consistent with numeric time zone
++ abbreviations already used elsewhere. The change affects several
++ arctic and antarctic locations, e.g., America/Cambridge_Bay before
++ 1920 and Antarctica/Troll before 2005.
++
++ Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
++ at 03:00, not 23:00 the previous day. (Thanks to Michael Deckers.)
++
++ Changes to code
++
++ zic now outputs a dummy transition at time 2**31 - 1 in zones
++ whose POSIX-style TZ strings contain a '<'. This mostly works
++ around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
++ (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm says why governments should give plenty of notice for
++ time zone or DST changes, and refers to Matt Johnson's blog post.
++
++ tz-link.htm mentions Tzdata for Elixir. (Thanks to Matt Johnson.)
++
++
++Release 2016d - 2016-04-17 22:50:29 -0700
++
++ Changes affecting future time stamps
++
++ America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
++ (Thanks to Alexander Krivenyshev for the heads-up.)
++
++ Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
++ (Thanks to Alexander Krivenyshev and Matt Johnson.)
++
++ New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
++ Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
++ at 02:00. (Thanks to Stepan Golosunov.)
++
++ Changes affecting past time stamps
++
++ New zone Europe/Kirov, split off from Europe/Volgograd. It covers
++ Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
++ 1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
++ the same change. (Thanks to Stepan Golosunov.)
++
++ Russia and nearby locations had daylight-saving transitions on
++ 1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
++ 1992-03-28 at 23:00 and 1992-09-26 at 23:00. (Thanks to Stepan
++ Golosunov.)
++
++ Many corrections to historical time in Kazakhstan from 1991
++ through 2005. (Thanks to Stepan Golosunov.) Replace Kazakhstan's
++ invented time zone abbreviations with numeric abbreviations.
++
++ Changes to commentary
++
++ Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
++
++
++Release 2016c - 2016-03-23 00:51:27 -0700
++
++ Changes affecting future time stamps
++
++ Azerbaijan no longer observes DST. (Thanks to Steffen Thorsen.)
++
++ Chile reverts from permanent to seasonal DST. (Thanks to Juan
++ Correa for the heads-up, and to Tim Parenti for corrections.)
++ Guess that future transitions are August's and May's second
++ Saturdays at 24:00 mainland time. Also, call the period from
++ 2014-09-07 through 2016-05-14 daylight saving time instead of
++ standard time, as that seems more appropriate now.
++
++ Changes affecting past time stamps
++
++ Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
++ +02/+03 on 1989-03-26, not 1991-03-31. Europe/Volgograd changed
++ from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to commentary
++
++ Several updates and URLs for historical and proposed Russian changes.
++ (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
++
++
++Release 2016b - 2016-03-12 17:30:14 -0800
++
++ Compatibility note
++
++ Starting with release 2016b, some data entries cause zic implementations
++ derived from tz releases 2005j through 2015e to issue warnings like
++ "time zone abbreviation differs from POSIX standard (+03)".
++ These warnings should not otherwise affect zic's output and can safely be
++ ignored on today's platforms, as the warnings refer to a restriction in
++ POSIX.1-1988 that was removed in POSIX.1-2001. One way to suppress the
++ warnings is to upgrade to zic derived from tz releases 2015f and later.
++
++ Changes affecting future time stamps
++
++ New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
++ Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
++ 2016-03-27 at 02:00 local time. They need distinct zones since their
++ post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and
++ Altai Republic, Russia, which will switch from +06 to +07 on the same date
++ and local time. The Astrakhan change is already official; the others have
++ passed the first reading in the State Duma and are extremely likely.
++ Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
++ and Stepan Golosunov for followup.)
++
++ As a trial of a new system that needs less information to be made up,
++ the new zones use numeric time zone abbreviations like "+04"
++ instead of invented abbreviations like "ASTT".
++
++ Haiti will not observe DST in 2016. (Thanks to Jean Antoine via
++ Steffen Thorsen.)
++
++ Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
++ (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
++ Saturday at 01:00, not March's last Friday at 24:00.
++
++ Changes affecting past time stamps
++
++ Europe/Chisinau observed DST during 1990, and switched from +04 to
++ +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
++ (Thanks to Stepan Golosunov.)
++
++ 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
++ KUYT/KUYST. (Thanks to Stepan Golosunov.)
++
++ Changes to code
++
++ tzselect's diagnostics and checking, and checktab.awk's checking,
++ have been improved. (Thanks to J William Piggott.)
++
++ tzcode now builds under MinGW. (Thanks to Ian Abbott and Esben Haabendal.)
++
++ tzselect now tests Julian-date TZ settings more accurately.
++ (Thanks to J William Piggott.)
++
++ Changes to commentary
++
++ Comments in zone tables have been improved. (Thanks to J William Piggott.)
++
++ tzselect again limits its menu comments so that menus fit on a
++ 24x80 alphanumeric display.
++
++ A new web page tz-how-to.html. (Thanks to Bill Seymour.)
++
++ In the Theory file, the description of possible time zone abbreviations in
++ tzdata has been cleaned up, as the old description was unclear and
++ inconsistent. (Thanks to Alain Mouette for reporting the problem.)
++
++
++Release 2016a - 2016-01-26 23:28:02 -0800
++
++ Changes affecting future time stamps
++
++ America/Cayman will not observe daylight saving this year after all.
++ Revert our guess that it would. (Thanks to Matt Johnson.)
++
++ Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev.)
++
++ Asia/Tehran now has DST predictions for the year 2038 and later,
++ to be March 21 00:00 to September 21 00:00. This is likely better
++ than predicting no DST, albeit off by a day every now and then.
++
++ Changes affecting past and future time stamps
++
++ America/Metlakatla switched from PST all year to AKST/AKDT on
++ 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.)
++
++ America/Santa_Isabel has been removed, and replaced with a
++ backward compatibility link to America/Tijuana. Its contents were
++ apparently based on a misreading of Mexican legislation.
++
++ Changes affecting past time stamps
++
++ Asia/Karachi's two transition times in 2002 were off by a minute.
++ (Thanks to Matt Johnson.)
++
++ Changes affecting build procedure
++
++ An installer can now combine leap seconds with use of the backzone file,
++ e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
++ The old 'make posix_packrat' rule is now marked as obsolescent.
++ (Thanks to Ian Abbott for an initial implementation.)
++
++ Changes affecting documentation and commentary
++
++ A new file LICENSE makes it easier to see that the code and data
++ are mostly public-domain. (Thanks to James Knight.) The three
++ non-public-domain files now use the current (3-clause) BSD license
++ instead of older versions of that license.
++
++ tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
++ CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
++ on editing tz source files (with a mention of Sublime zoneinfo,
++ thanks to Gilmore Davidson).
++
++ The Theory and asia files now mention the 2015 book "The Global
++ Transformation of Time, 1870-1950", and cite a couple of reviews.
++
++ The America/Chicago entry now documents the informal use of US
++ central time in Fort Pierre, South Dakota. (Thanks to Rick
++ McDermid, Matt Johnson, and Steve Jones.)
++
++
++Release 2015g - 2015-10-01 00:39:51 -0700
++
++ Changes affecting future time stamps
++
++ Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
++ (Thanks to Fatih.)
++
++ Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.)
++
++ Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
++ (Thanks to Ken Rylander.)
++
++ Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
++ effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
++ New zone America/Fort_Nelson. (Thanks to Matt Johnson.)
++
++ Changes affecting past time stamps
++
++ Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
++
++ Changes affecting code
++
++ localtime no longer mishandles America/Anchorage after 2037.
++ (Thanks to Bradley White for reporting the bug.)
++
++ On hosts with signed 32-bit time_t, localtime no longer mishandles
++ Pacific/Fiji after 2038-01-16 14:00 UTC.
++
++ The localtime module allows the variables 'timezone', 'daylight',
++ and 'altzone' to be in common storage shared with other modules,
++ and declares them in case the system <time.h> does not.
++ (Problems reported by Kees Dekker.)
++
++ On platforms with tm_zone, strftime.c now assumes it is not NULL.
++ This simplifies the code and is consistent with zdump.c.
++ (Problem reported by Christos Zoulas.)
++
++ Changes affecting documentation
++
++ The tzfile man page now documents that transition times denote the
++ starts (not the ends) of the corresponding time periods.
++ (Ambiguity reported by Bill Seymour.)
++
++
++Release 2015f - 2015-08-10 18:06:56 -0700
++
++ Changes affecting future time stamps
++
++ North Korea switches to +0830 on 2015-08-15. (Thanks to Steffen Thorsen.)
++ The abbreviation remains "KST". (Thanks to Robert Elz.)
++
++ Uruguay no longer observes DST. (Thanks to Steffen Thorsen
++ and Pablo Camargo.)
++
++ Changes affecting past and future time stamps
++
++ Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
++ (Thanks to Roman Tudos.)
++
++ Changes affecting data format and code
++
++ zic's '-y YEARISTYPE' option is no longer documented. The TYPE
++ field of a Rule line should now be '-'; the old values 'even',
++ 'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
++ Although the implementation has not changed, these features do not
++ work in the default installation, they are not used in the data,
++ and they are now considered obsolescent.
++
++ zic now checks that two rules don't take effect at the same time.
++ (Thanks to Jon Skeet and Arthur David Olson.) Constraints on
++ simultaneity are now documented.
++
++ The two characters '%z' in a zone format now stand for the UTC
++ offset, e.g., '-07' for seven hours behind UTC and '+0530' for
++ five hours and thirty minutes ahead. This better supports time
++ zone abbreviations conforming to POSIX.1-2001 and later.
++
++ Changes affecting installed data files
++
++ Comments for America/Halifax and America/Glace_Bay have been improved.
++ (Thanks to Brian Inglis.)
++
++ Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
++ Europe/Sofia, and Europe/Tallinn. This yields slightly smaller
++ installed data files for Europe/Simferopol and Europe/Tallinn.
++ It does not affect timestamps. (Thanks to Howard Hinnant.)
++
++ Changes affecting code
++
++ zdump and zic no longer warn about valid time zone abbreviations
++ like '-05'.
++
++ Some Visual Studio 2013 warnings have been suppressed.
++ (Thanks to Kees Dekker.)
++
++ 'date' no longer sets the time of day and its -a, -d, -n and -t
++ options have been removed. Long obsolescent, the implementation
++ of these features had porting problems. Builders no longer need
++ to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
++ (Thanks to Kees Dekker for pointing out the problem.)
++
++ Changes affecting documentation
++
++ The Theory file mentions naming issues earlier, as these seem to be
++ poorly publicized (thanks to Gilmore Davidson for reporting the problem).
++
++ tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
++
++ Mention that Herbert Samuel introduced the term "Summer Time".
++
++
++Release 2015e - 2015-06-13 10:56:02 -0700
++
++ Changes affecting future time stamps
++
++ Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
++ not 06-13 and 07-18 as we had guessed. (Thanks to Milamber.)
++
++ Assume Cayman Islands will observe DST starting next year, using US rules.
++ Although it isn't guaranteed, it is the most likely.
++
++ Changes affecting data format
++
++ The file 'iso3166.tab' now uses UTF-8, so that its entries can better
++ spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
++
++ Changes affecting code
++
++ When displaying data, tzselect converts it to the current locale's
++ encoding if the iconv command works. (Problem reported by random832.)
++
++ tzselect no longer mishandles Dominica, fixing a bug introduced
++ in Release 2014f. (Problem reported by Owen Leibman.)
++
++ zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
++ This fixes a bug introduced in Release 2014f.
++ (Problem reported by Leonardo Chiquitto.)
++
++
++Release 2015d - 2015-04-24 08:09:46 -0700
++
++ Changes affecting future time stamps
++
++ Egypt will not observe DST in 2015 and will consider canceling it
++ permanently. For now, assume no DST indefinitely.
++ (Thanks to Ahmed Nazmy and Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
++ 1966-07-01. Also, Yukon's time zone history is documented better.
++ (Thanks to Brian Inglis and Dennis Ferguson.)
++
++ Change affecting past and future time zone abbreviations
++
++ The abbreviations for Hawaii-Aleutian standard and daylight times
++ have been changed from HAST/HADT to HST/HDT, as per US Government
++ Printing Office style. This affects only America/Adak since 1983,
++ as America/Honolulu was already using the new style.
++
++ Changes affecting code
++
++ zic has some minor performance improvements.
++
++
++Release 2015c - 2015-04-11 08:55:55 -0700
++
++ Changes affecting future time stamps
++
++ Egypt's spring-forward transition is at 24:00 on April's last Thursday,
++ not 00:00 on April's last Friday. 2015's transition will therefore be on
++ Thursday, April 30 at 24:00, not Friday, April 24 at 00:00. Similar fixes
++ apply to 2026, 2037, 2043, etc. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The following changes affect some pre-1991 Chile-related time stamps
++ in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
++
++ The 1910 transition was January 10, not January 1.
++
++ The 1918 transition was September 10, not September 1.
++
++ The UT -04 time observed from 1932 to 1942 is now considered to
++ be standard time, not year-round DST.
++
++ Santiago observed DST (UT -03) from 1946-07-15 through
++ 1946-08-31, then reverted to standard time, then switched to -05
++ on 1947-04-01.
++
++ Assume transitions before 1968 were at 00:00, since we have no data
++ saying otherwise.
++
++ The spring 1988 transition was 1988-10-09, not 1988-10-02.
++ The fall 1990 transition was 1990-03-11, not 1990-03-18.
++
++ Assume no UTC offset change for Pacific/Easter on 1890-01-01,
++ and omit all transitions on Pacific/Easter from 1942 through 1946
++ since we have no data suggesting that they existed.
++
++ One more zone has been turned into a link, as it differed
++ from an existing zone only for older time stamps. As usual,
++ this change affects UTC offsets in pre-1970 time stamps only.
++ The zone's old contents have been moved to the 'backzone' file.
++ The affected zone is America/Montreal.
++
++ Changes affecting commentary
++
++ Mention the TZUpdater tool.
++
++ Mention "The Time Now". (Thanks to Brandon Ramsey.)
++
++
++Release 2015b - 2015-03-19 23:28:11 -0700
++
++ Changes affecting future time stamps
++
++ Mongolia will start observing DST again this year, from the last
++ Saturday in March at 02:00 to the last Saturday in September at 00:00.
++ (Thanks to Ganbold Tsagaankhuu.)
++
++ Palestine will start DST on March 28, not March 27. Also,
++ correct the fall 2014 transition from September 26 to October 24.
++ Adjust future predictions accordingly. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
++ regression. (Thanks to Stuart Bishop for reporting the problem.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: America/Antigua, America/Cayman,
++ Pacific/Midway, and Pacific/Saipan.
++
++ Changes affecting time zone abbreviations
++
++ Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
++ (Thanks to Hank W.)
++
++ Changes affecting code
++
++ Fix integer overflow bug in reference 'mktime' implementation.
++ (Problem reported by Jörg Richter.)
++
++ Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
++ to be used in the same executable as standard-library time_t functions.
++ (Problems reported by Bradley White.)
++
++ Changes affecting commentary
++
++ Cite the recent Mexican decree changing Quintana Roo's time zone.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Likewise for the recent Chilean decree. (Thanks to Eduardo Romero Urra.)
++
++ Update info about Mars time.
++
++
++Release 2015a - 2015-01-29 22:35:20 -0800
++
++ Changes affecting future time stamps
++
++ The Mexican state of Quintana Roo, represented by America/Cancun,
++ will shift from Central Time with DST to Eastern Time without DST
++ on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
++
++ Chile will not change clocks in April or thereafter; its new standard time
++ will be its old daylight saving time. This affects America/Santiago,
++ Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
++
++ New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
++ (Thanks to Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ Iceland observed DST in 1919 and 1921, and its 1939 fallback
++ transition was Oct. 29, not Nov. 29. Remove incorrect data from
++ Shanks about time in Iceland between 1837 and 1908.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
++ and Asia/Muscat.
++
++ Changes affecting code
++
++ tzalloc now scrubs time zone abbreviations compatibly with the way
++ that tzset always has, by replacing invalid bytes with '_' and by
++ shortening too-long abbreviations.
++
++ tzselect ports to POSIX awk implementations, no longer mishandles
++ POSIX TZ settings when GNU awk is used, and reports POSIX TZ
++ settings to the user. (Thanks to Stefan Kuhn.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks for links to links in the data.
++ One such link (for Africa/Asmera) has been fixed.
++ (Thanks to Stephen Colebourne for pointing out the problem.)
++
++ Changes affecting commentary
++
++ The leapseconds file commentary now mentions the expiration date.
++ (Problem reported by Martin Burnicki.)
++
++ Update Mexican Library of Congress URL.
++
++
++Release 2014j - 2014-11-10 17:37:11 -0800
++
++ Changes affecting current and future time stamps
++
++ Turks & Caicos' switch from US eastern time to UT -04 year-round
++ did not occur on 2014-11-02 at 02:00. It's currently scheduled
++ for 2015-11-01 at 02:00. (Thanks to Chris Walton.)
++
++ Changes affecting past time stamps
++
++ Many pre-1989 time stamps have been corrected for Asia/Seoul and
++ Asia/Pyongyang, based on sources for the Korean-language Wikipedia
++ entry for time in Korea. (Thanks to Sanghyuk Jung.) Also, no
++ longer guess that Pyongyang mimicked Seoul time after World War II,
++ as this is politically implausible.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
++ Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
++ Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
++ Indian/Mayotte.
++
++ Changes affecting commentary
++
++ The commentary is less enthusiastic about Shanks as a source,
++ and is more careful to distinguish UT from UTC.
++
++
++Release 2014i - 2014-10-21 22:04:57 -0700
++
++ Changes affecting future time stamps
++
++ Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
++ (Thanks to Ken Rylander for the heads-up.) Guess that future
++ years will use a similar pattern.
++
++ A new Zone Pacific/Bougainville, for the part of Papua New Guinea
++ that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
++ (Thanks to Kiley Walbom for the heads-up.)
++
++ Changes affecting time zone abbreviations
++
++ Since Belarus is not changing its clocks even though Moscow is,
++ the time zone abbreviation in Europe/Minsk is changing from FET
++ to its more-traditional value MSK on 2014-10-26 at 01:00.
++ (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
++
++ The new abbreviation IDT stands for the pre-1976 use of UT +08 in
++ Indochina, to distinguish it better from ICT (+07).
++
++ Changes affecting past time stamps
++
++ Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
++ (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
++ authoritative book). Asia/Ho_Chi_Minh has been added to
++ zone1970.tab, to give tzselect users in Vietnam two choices,
++ since north and south Vietnam disagreed after our 1970 cutoff.
++
++ Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
++ they differed from existing zones only for older time stamps. As
++ usual, these changes affect pre-1970 time stamps only. Their old
++ contents have been moved to the 'backzone' file.
++
++ Changes affecting code
++
++ The time-related library functions now set errno on failure, and
++ some crashes in the new tzalloc-related library functions have
++ been fixed. (Thanks to Christos Zoulas for reporting most of
++ these problems and for suggesting fixes.)
++
++ If USG_COMPAT is defined and the requested time stamp is standard time,
++ the tz library's localtime and mktime functions now set the extern
++ variable timezone to a value appropriate for that time stamp; and
++ similarly for ALTZONE, daylight saving time, and the altzone variable.
++ This change is a companion to the tzname change in 2014h, and is
++ designed to make timezone and altzone more compatible with tzname.
++
++ The tz library's functions now set errno to EOVERFLOW if they fail
++ because the result cannot be represented. ctime and ctime_r now
++ return NULL and set errno when a time stamp is out of range, rather
++ than having undefined behavior.
++
++ Some bugs associated with the new 2014g functions have been fixed.
++ This includes a bug that largely incapacitated the new functions
++ time2posix_z and posix2time_z. (Thanks to Christos Zoulas.)
++ It also includes some uses of uninitialized variables after tzalloc.
++ The new code uses the standard type 'ssize_t', which the Makefile
++ now gives porting advice about.
++
++ Changes affecting commentary
++
++ Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
++
++
++Release 2014h - 2014-09-25 18:59:03 -0700
++
++ Changes affecting past time stamps
++
++ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
++
++ Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
++ not 1920-01-06. The old entry was based on a misinterpretation of Shanks.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Blantyre, Africa/Bujumbura,
++ Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
++ Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
++
++ Changes affecting code
++
++ zdump -V and -v now output gmtoff= values on all platforms,
++ not merely on platforms defining TM_GMTOFF.
++
++ The tz library's localtime and mktime functions now set tzname to a value
++ appropriate for the requested time stamp, and zdump now uses this
++ on platforms not defining TM_ZONE, fixing a 2014g regression.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ The tz library no longer sets tzname if localtime or mktime fails.
++
++ zdump -c no longer mishandles transitions near year boundaries.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ An access to uninitialized data has been fixed.
++ (Thanks to Jörg Richter for reporting the problem.)
++
++ When THREAD_SAFE is defined, the code ports to the C11 memory model.
++ A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
++ and two threads race to initialize data used by gmtime-like functions.
++ (Thanks to Andy Heninger for reporting the problems.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks better for properly-sorted data.
++
++ Changes affecting documentation and commentary
++
++ zdump's gmtoff=N output is now documented, and its isdst=D output
++ is now documented to possibly output D values other than 0 or 1.
++
++ zdump -c's treatment of years is now documented to use the
++ Gregorian calendar and Universal Time without leap seconds,
++ and its behavior at cutoff boundaries is now documented better.
++ (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
++
++ Programs are now documented to use the proleptic Gregorian calendar.
++ (Thanks to Alan Barrett for the suggestion.)
++
++ Fractional-second GMT offsets have been documented for civil time
++ in 19th-century Chennai, Jakarta, and New York.
++
++
++Release 2014g - 2014-08-28 12:31:23 -0700
++
++ Changes affecting future time stamps
++
++ Turks & Caicos is switching from US eastern time to UT -04
++ year-round, modeled as a switch on 2014-11-02 at 02:00.
++ [As noted in 2014j, this switch was later delayed.]
++
++ Changes affecting past time stamps
++
++ Time in Russia or the USSR before 1926 or so has been corrected by
++ a few seconds in the following zones: Asia/Irkutsk,
++ Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
++ Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
++ Asia/Yekaterinburg the correction is a few minutes. (Thanks to
++ Vladimir Karpinsky.)
++
++ The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
++ This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
++ Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
++ GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
++ (Thanks to Stephen Colebourne for pointing to the decree.)
++
++ Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
++
++ A new file 'backzone' contains data which may appeal to
++ connoisseurs of old time stamps, although it is out of scope for
++ the tz database, is often poorly sourced, and contains some data
++ that is known to be incorrect. The new file is not recommended
++ for ordinary use and its entries are not installed by default.
++ (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
++ Isle of Man entries.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Bangui, Africa/Brazzaville,
++ Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
++ Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
++
++ Changes affecting code
++
++ Unless NETBSD_INSPIRED is defined to 0, the tz library now
++ supplies functions for creating and using objects that represent
++ time zones. The new functions are tzalloc, tzfree, localtime_rz,
++ mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
++ time2posix_z. They are intended for performance: for example,
++ localtime_rz (unlike localtime_r) is trivially thread-safe without
++ locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
++ functions, and to Alan Barrett and Jonathan Lennox for helping to
++ debug the change.)
++
++ zdump now builds with the tz library unless USE_LTZ is defined to 0,
++ This lets zdump use tz features even if the system library lacks them.
++ To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
++ TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
++
++ zdump now uses localtime_rz if available, as it's significantly faster,
++ and it can help zdump better diagnose invalid time zone names.
++ Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
++ defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
++ not available, zdump now uses localtime_r and tzset if available,
++ as this is a bit cleaner and faster than plain localtime. Compile
++ with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
++ lacks these two functions.
++
++ If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
++ Although not needed for tz's own applications, which are single-threaded,
++ this supports POSIX better if the tz library is used in multithreaded apps.
++
++ Some crashes have been fixed when zdump or the tz library is given
++ invalid or outlandish input.
++
++ The tz library no longer mishandles leap seconds on platforms with
++ unsigned time_t in time zones that lack ordinary transitions after 1970.
++
++ The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
++ already defined, to make it easier to configure on common platforms.
++ Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
++
++ Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
++ assumes that reading uninitialized memory yields garbage values
++ but does not cause other problems such as traps.
++
++ If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
++ more likely to guess right for ambiguous time stamps near
++ transitions where tm_isdst does not change.
++
++ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
++ strftime_l for compatibility with recent versions of POSIX.
++ Only the C locale is supported, though. HAVE_STRFTIME_L defaults
++ to 1 on recent POSIX versions, and to 0 otherwise.
++
++ tzselect -c now uses a hybrid distance measure that works better
++ in Africa. (Thanks to Alan Barrett for noting the problem.)
++
++ The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
++ or when time_tz is defined.
++
++ When HAVE_UTMPX_H is set the 'date' command now builds on systems
++ whose <utmpx.h> file does not define WTMPX_FILE, and when setting
++ the date it updates the wtmpx file if _PATH_WTMPX is defined.
++ This affects GNU/Linux and similar systems.
++
++ For easier maintenance later, some C code has been simplified,
++ some lint has been removed, and the code has been tweaked so that
++ plain 'make' is more likely to work.
++
++ The C type 'bool' is now used for boolean values, instead of 'int'.
++
++ The long-obsolete LOCALE_HOME code has been removed.
++
++ The long-obsolete 'gtime' function has been removed.
++
++ Changes affecting build procedure
++
++ 'zdump' no longer links in ialloc.o, as it's not needed.
++
++ 'make check_time_t_alternatives' no longer assumes GNU diff.
++
++ Changes affecting distribution tarballs
++
++ The files checktab.awk and zoneinfo2tdf.pl are now distributed in
++ the tzdata tarball instead of the tzcode tarball, since they help
++ maintain the data. The NEWS and Theory files are now also
++ distributed in the tzdata tarball, as they're relevant for data.
++ (Thanks to Alan Barrett for pointing this out.) Also, the
++ leapseconds.awk file is no longer distributed in the tzcode
++ tarball, since it belongs in the tzdata tarball (where 2014f
++ inadvertently also distributed it).
++
++ Changes affecting documentation and commentary
++
++ A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
++ suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
++ for debugging it.)
++
++ The man pages have been updated to use function prototypes,
++ to document thread-safe variants like localtime_r, and to document
++ the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
++ mktime_z.
++
++ The fields in Link lines have been renamed to be more descriptive
++ and more like the parameters of 'ln'. LINK-FROM has become TARGET,
++ and LINK-TO has become LINK-NAME.
++
++ tz-link.htm mentions the IETF's tzdist working group; Windows
++ Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
++
++ Some broken URLs have been fixed in the commentary. (Thanks to
++ Lester Caine.)
++
++ Commentary about Philippines DST has been updated, and commentary
++ on pre-1970 time in India has been added.
++
++
++Release 2014f - 2014-08-05 17:42:36 -0700
++
++ Changes affecting future time stamps
++
++ Russia will subtract an hour from most of its time zones on 2014-10-26
++ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
++ There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
++ Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
++ (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
++ (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
++ (Europe/Samara) are not changing their clocks. The changed zones are
++ Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
++ Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
++ Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
++ Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
++ subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
++ but not its UTC offset. Two zones are added: Asia/Chita (split
++ from Asia/Yakutsk, and also with two hours subtracted) and
++ Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
++ subtracted). (Thanks to Tim Parenti for much of the above.)
++
++ Changes affecting time zone abbreviations
++
++ Australian eastern time zone abbreviations are now AEST/AEDT not EST,
++ and similarly for the other Australian zones. That is, for eastern
++ standard and daylight saving time the abbreviations are AEST and AEDT
++ instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
++ and AWST/AWDT are now used instead of the former CST, CWST, and WST.
++ This change does not affect UTC offsets, only time zone abbreviations.
++ (Thanks to Rich Tibbett and many others.)
++
++ Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
++ effective 2014-10-26 at 02:00 local time.
++
++ The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
++ has been changed from URUT to XJT. (Thanks to Luther Ma.)
++
++ Prefer MSK/MSD for Moscow time in Russia, even in other cities.
++ Similarly, prefer EET/EEST for eastern European time in Russia.
++
++ Change time zone abbreviations in (western) Samoa to use "ST" and
++ "DT" suffixes, as this is more likely to match common practice.
++ Prefix "W" to (western) Samoa time when its standard-time offset
++ disagrees with that of American Samoa.
++
++ America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
++
++ Time zone abbreviations have been updated for Japan's two time
++ zones used 1896-1937. JWST now stands for Western Standard
++ Time, and JCST for Central Standard Time (formerly this was CJT).
++ These abbreviations are now used for time in Korea, Taiwan,
++ and Sakhalin while controlled by Japan.
++
++ Changes affecting past time stamps
++
++ China's five zones have been simplified to two, since the post-1970
++ differences in the other three seem to have been imaginary. The
++ zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
++ removed; backwards-compatibility links still work, albeit with
++ different behaviors for time stamps before May 1980. Asia/Urumqi's
++ 1980 transition to UT +08 has been removed, so that it is now at
++ +06 and not +08. (Thanks to Luther Ma and to Alois Treindl;
++ Treindl sent helpful translations of two papers by Guo Qingsheng.)
++
++ Some zones have been turned into links, when they differed from existing
++ zones only for older UTC offsets where data entries were likely invented.
++ These changes affect UTC offsets in pre-1970 time stamps only. This is
++ similar to the change in release 2013e, except this time for western
++ Africa. The affected zones are: Africa/Bamako, Africa/Banjul,
++ Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
++ Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
++ Atlantic/St_Helena. This also affects the backwards-compatibility
++ link Africa/Timbuktu. (Thanks to Alan Barrett, Stephen Colebourne,
++ Tim Parenti, and David Patte for reporting problems in earlier
++ versions of this change.)
++
++ Asia/Shanghai's pre-standard-time UT offset has been changed from
++ 8:05:57 to 8:05:43, the location of Xujiahui Observatory. Its
++ transition to standard time has been changed from 1928 to 1901.
++
++ Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
++ then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
++ In 1946 it observed DST from 05-15 through 09-30; in 1947
++ from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
++ (Thanks to Yu-Cheng Chuang.)
++
++ Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
++
++ Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
++ 10-03 at 00:00. (Thanks to Konstantin Hyppönen.)
++
++ Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
++ period from 1911 to 1950.
++
++ Pacific/Chatham has been changed to New Zealand standard time plus
++ 45 minutes for the period before 1957, reflecting a 1956 remark in
++ the New Zealand parliament.
++
++ Europe/Budapest has several pre-1946 corrections: in 1918 the transition
++ out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
++ 1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
++ not 04-06 at 02:00; and there was no DST in 1920.
++
++ Africa/Accra is now assumed to have observed DST from 1920 through 1935.
++
++ Time in Russia before 1927 or so has been corrected by a few seconds in
++ the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
++ Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
++ Europe/Riga. Also, Moscow's location has been changed to its Kilometer 0
++ point. (Thanks to Vladimir Karpinsky for the Moscow changes.)
++
++ Changes affecting data format
++
++ A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
++ The new file's extended format allows multiple country codes per zone.
++ The older file is still installed but is deprecated; its format is
++ not changing and it will still be distributed for a while, but new
++ applications should use the new file.
++
++ The new file format simplifies maintenance of obscure locations.
++ To test this, it adds coverage for the Crozet Islands and the
++ Scattered Islands. (Thanks to Tobias Conradi and Antoine Leca.)
++
++ The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
++ It is still ASCII now, but commentary about the switch has been added.
++ The new file 'zone1970.tab' already uses UTF-8.
++
++ Changes affecting code
++
++ 'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
++ is defined. (Thanks to Elliott Hughes for reporting the problem.)
++
++ 'zic' no longer mishandles input when ignoring case in locales that
++ are not compatible with English, e.g., unibyte Turkish locales when
++ compiled with HAVE_GETTEXT.
++
++ Error diagnostics of 'zic' and 'yearistype' have been reworded so that
++ they no longer use ASCII '-' as if it were a dash.
++
++ 'zic' now rejects output file names that contain '.' or '..' components.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ 'zic -v' now warns about output file names that do not follow
++ POSIX rules, or that contain a digit or '.'. (Thanks to Arthur
++ David Olson for starting the ball rolling on this.)
++
++ Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
++
++ Changes affecting build procedure
++
++ 'zic' no longer links in localtime.o and asctime.o, as they're not needed.
++ (Thanks to John Cochran.)
++
++ Changes affecting documentation and commentary
++
++ The 'Theory' file documents legacy names, the longstanding
++ exceptions to the POSIX-inspired file name rules.
++
++ The 'zic' documentation clarifies the role of time types when
++ interpreting dates. (Thanks to Arthur David Olson.)
++
++ Documentation and commentary now prefer UTF-8 to US-ASCII,
++ allowing the use of proper accents in foreign words and names.
++ Code and data have not changed because of this. (Thanks to
++ Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
++ this.)
++
++ Non-HTML documentation and commentary now use plain-text URLs instead of
++ HTML insertions, and are more consistent about bracketing URLs when they
++ are not already surrounded by white space. (Thanks to suggestions by
++ Steffen Nurpmeso.)
++
++ There is new commentary about Xujiahui Observatory, the five time-zone
++ project in China from 1918 to 1949, timekeeping in Japanese-occupied
++ Shanghai, and Tibet Time in the 1950s. The sharp-eyed can spot the
++ warlord Jin Shuren in the data.
++
++ Commentary about the coverage of each Russian zone has been standardized.
++ (Thanks to Tim Parenti).
++
++ There is new commentary about contemporary timekeeping in Ethiopia.
++
++ Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
++
++ There is new commentary about time in Poland in 1919.
++
++ Proper credit has been given to DST inventor George Vernon Hudson.
++
++ Commentary about time in Metlakatla, AK and Resolute, NU has been
++ improved, with a new source for the former.
++
++ In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
++ is uninhabited.
++
++ Commentary about permanent Antarctic bases has been updated.
++
++ Several typos have been corrected. (Thanks to Tim Parenti for
++ contributing some of these fixes.)
++
++ tz-link.htm now mentions the JavaScript libraries Moment Timezone,
++ TimezoneJS.Date, Walltime-js, and Timezone. (Thanks to a heads-up
++ from Matt Johnson.) Also, it mentions the Go 'latlong' package.
++ (Thanks to a heads-up from Dirkjan Ochtman.)
++
++ The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
++ have been removed. These obsolescent US Naval Observatory entries were no
++ longer helpful for maintenance. (Thanks to Tim Parenti for the suggestion.)
++
++
++Release 2014e - 2014-06-12 21:53:52 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
++ (Thanks to Imed Chihi.) Guess that from 2015 on Egypt will temporarily
++ switch to standard time at 24:00 the last Thursday before Ramadan, and
++ back to DST at 00:00 the first Friday after Ramadan.
++
++ Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00. (Thanks
++ to Milamber Space Network.) Guess that from 2015 on Morocco will
++ temporarily switch to standard time at 03:00 the last Saturday before
++ Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
++
++ Changes affecting past time stamps
++
++ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
++ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
++ "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
++ in 1991. (Thanks to Hank W. for reporting the problems.)
++
++ Changes affecting commentary
++
++ tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
++ draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
++ removes stale pointers to World Time Explorer and WORLDTIME.
++
++
++Release 2014d - 2014-05-27 21:34:40 -0700
++
++ Changes affecting code
++
++ zic no longer generates files containing time stamps before the Big Bang.
++ This works around GNOME bug 730332
++ <https://bugzilla.gnome.org/show_bug.cgi?id=730332>.
++ (Thanks to Leonardo Chiquitto for reporting the bug, and to
++ Arthur David Olson and James Cloos for suggesting improvements to the fix.)
++
++ Changes affecting documentation
++
++ tz-link.htm now mentions GNOME.
++
++
++Release 2014c - 2014-05-13 07:44:13 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt observes DST starting 2014-05-15 at 24:00.
++ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
++ Details have not been announced, except that DST will not be observed
++ during Ramadan. Guess that DST will stop during the same Ramadan dates as
++ Morocco, and that Egypt's future spring and fall transitions will be the
++ same as 2010 when it last observed DST, namely April's last Friday at
++ 00:00 to September's last Thursday at 23:00 standard time. Also, guess
++ that Ramadan transitions will be at 00:00 standard time.
++
++ Changes affecting code
++
++ zic now generates transitions for minimum time values, eliminating guesswork
++ when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++
++ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
++
++ Changes affecting commentary and documentation
++
++ Remove now-confusing comment about Jordan. (Thanks to Oleksii Nochovnyi.)
++
++
++Release 2014b - 2014-03-24 21:28:50 -0700
++
++ Changes affecting near-future time stamps
++
++ Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.) Move its zone.tab entry from UA to RU.
++
++ New entry for Troll station, Antarctica. (Thanks to Paul-Inge Flakstad and
++ Bengt-Inge Larsson.) This is currently an approximation; a better version
++ will require the zic and localtime fixes mentioned below, and the plan is
++ to wait for a while until at least the zic fixes propagate.
++
++ Changes affecting code
++
++ 'zic' and 'localtime' no longer reject locations needing four transitions
++ per year for the foreseeable future. (Thanks to Andrew Main (Zefram).)
++ Also, 'zic' avoids some unlikely failures due to integer overflow.
++
++ Changes affecting build procedure
++
++ 'make check' now detects Rule lines defined but never used.
++ The NZAQ rules, an instance of this problem, have been removed.
++
++ Changes affecting commentary and documentation
++
++ Fix Tuesday/Thursday typo in description of time in Israel.
++ (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
++
++ Microsoft Windows 8.1 doesn't support tz database names. (Thanks
++ to Donald MacQueen.) Instead, the Microsoft Windows Store app
++ library supports them.
++
++ Add comments about Johnston Island time in the 1960s.
++ (Thanks to Lyle McElhaney.)
++
++ Morocco's 2014 DST start will be as predicted.
++ (Thanks to Sebastien Willemijns.)
++
++
++Release 2014a - 2014-03-07 23:30:29 -0800
++
++ Changes affecting near-future time stamps
++
++ Turkey begins DST on 2014-03-31, not 03-30. (Thanks to Faruk Pasin for
++ the heads-up, and to Tim Parenti for simplifying the update.)
++
++ Changes affecting past time stamps
++
++ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
++ (Thanks to Steffen Thorsen.)
++
++ Ukraine switched from Moscow to Eastern European time on 1990-07-01
++ (not 1992-01-01), and observed DST during the entire next winter.
++ (Thanks to Vladimir in Moscow via Alois Treindl.)
++
++ In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
++ (Thanks to Avigdor Finkelstein.)
++
++ Changes affecting code
++
++ A uninitialized-storage bug in 'localtime' has been fixed.
++ (Thanks to Logan Chien.)
++
++ Changes affecting the build procedure
++
++ The settings for 'make check_web' now default to Ubuntu 13.10.
++
++ Changes affecting commentary and documentation
++
++ The boundary of the US Pacific time zone is given more accurately.
++ (Thanks to Alan Mintz.)
++
++ Chile's 2014 DST will be as predicted. (Thanks to José Miguel Garrido.)
++
++ Paraguay's 2014 DST will be as predicted. (Thanks to Carlos Raúl Perasso.)
++
++ Better descriptions of countries with same time zone history as
++ Trinidad and Tobago since 1970. (Thanks to Alan Barrett for suggestion.)
++
++ Several changes affect tz-link.htm, the main web page.
++
++ Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
++ David Braverman).
++
++ Mention xCal (Internet RFC 6321) and jCal.
++
++ Microsoft has some support for tz database names.
++
++ CLDR data formats include both XML and JSON.
++
++ Mention Maggiolo's map of solar vs standard time.
++ (Thanks to Arthur David Olson.)
++
++ Mention TZ4Net. (Thanks to Matt Johnson.)
++
++ Mention the timezone-olson Haskell package.
++
++ Mention zeitverschiebung.net. (Thanks to Martin Jäger.)
++
++ Remove moribund links to daylight-savings-time.info and to
++ Simple Timer + Clocks.
++
++ Update two links. (Thanks to Oscar van Vlijmen.)
++
++ Fix some formatting glitches, e.g., remove random newlines from
++ abbr elements' title attributes.
++
++
++Release 2013i - 2013-12-17 07:25:23 -0800
++
++ Changes affecting near-future time stamps:
++
++ Jordan switches back to standard time at 00:00 on December 20, 2013.
++ The 2006-2011 transition schedule is planned to resume in 2014.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps:
++
++ In 2004, Cuba began DST on March 28, not April 4.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting code
++
++ The compile-time flag NOSOLAR has been removed, as nowadays the
++ benefit of slightly shrinking runtime table size is outweighed by the
++ cost of disallowing potential future updates that exceed old limits.
++
++ Changes affecting documentation and commentary
++
++ The files solar87, solar88, and solar89 are no longer distributed.
++ They were a negative experiment - that is, a demonstration that
++ tz data can represent solar time only with some difficulty and error.
++ Their presence in the distribution caused confusion, as Riyadh
++ civil time was generally not solar time in those years.
++
++ tz-link.htm now mentions Noda Time. (Thanks to Matt Johnson.)
++
++
++Release 2013h - 2013-10-25 15:32:32 -0700
++
++ Changes affecting current and future time stamps:
++
++ Libya has switched its UT offset back to +02 without DST, instead
++ of +01 with DST. (Thanks to Even Scharning.)
++
++ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
++ (Thanks to Gwillim Law.)
++
++ Changes affecting future time stamps:
++
++ Acre and (we guess) western Amazonas will switch from UT -04 to -05
++ on 2013-11-10. This affects America/Rio_Branco and America/Eirunepe.
++ (Thanks to Steffen Thorsen.)
++
++ Add entries for DST transitions in Morocco in the year 2038.
++ This avoids some year-2038 glitches introduced in 2013g.
++ (Thanks to Yoshito Umaoka for reporting the problem.)
++
++ Changes affecting API
++
++ The 'tzselect' command no longer requires the 'select' command,
++ and should now work with /bin/sh on more platforms. It also works
++ around a bug in BusyBox awk before version 1.21.0. (Thanks to
++ Patrick 'P. J.' McDermott and Alan Barrett.)
++
++ Changes affecting code
++
++ Fix localtime overflow bugs with 32-bit unsigned time_t.
++
++ zdump no longer assumes sscanf returns maximal values on overflow.
++
++ Changes affecting the build procedure
++
++ The builder can specify which programs to use, if any, instead of
++ 'ar' and 'ranlib', and libtz.a is now built locally before being
++ installed. (Thanks to Michael Forney.)
++
++ A dependency typo in the 'zdump' rule has been fixed.
++ (Thanks to Andrew Paprocki.)
++
++ The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
++ work as specified by POSIX.2-1992 or later; this is portable nowadays.
++
++ 'make clean' no longer removes 'leapseconds', since it's
++ host-independent and is part of the distribution.
++
++ The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
++ (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
++
++ Update URLs in tz-link page. Add URLs for Microsoft Windows, since
++ 8.1 introduces tz support. Remove URLs for Tru64 and UnixWare (no
++ longer maintained) and for old advisories. SOFA now does C.
++
++Release 2013g - 2013-09-30 21:08:26 -0700
++
++ Changes affecting current and near-future time stamps
++
++ Morocco now observes DST from the last Sunday in March to the last
++ Sunday in October, not April to September respectively. (Thanks
++ to Steffen Thorsen.)
++
++ Changes affecting 'zic'
++
++ 'zic' now runs on platforms that lack both hard links and symlinks.
++ (Thanks to Theo Veenker for reporting the problem, for MinGW.)
++ Also, fix some bugs on platforms that lack hard links but have symlinks.
++
++ 'zic -v' again warns that Asia/Tehran has no POSIX environment variable
++ to predict the far future, fixing a bug introduced in 2013e.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is again put into the tzdata tarball.
++ Also, 'leapseconds.awk', so tzdata is self-contained. (Thanks to
++ Matt Burgess and Ian Abbott.) The timestamps of these and other
++ dependent files in tarballs are adjusted more consistently.
++
++ Changes affecting documentation and commentary
++
++ The README file is now part of the data tarball as well as the code.
++ It now states that files are public domain unless otherwise specified.
++ (Thanks to Andrew Main (Zefram) for asking for clarifications.)
++ Its details about the 1989 release moved to a place of honor near
++ the end of NEWS.
++
++
++Release 2013f - 2013-09-24 23:37:36 -0700
++
++ Changes affecting near-future time stamps
++
++ Tocantins will very likely not observe DST starting this spring.
++ (Thanks to Steffen Thorsen.)
++
++ Jordan will likely stay at UT +03 indefinitely, and will not fall
++ back this fall.
++
++ Palestine will fall back at 00:00, not 01:00. (Thanks to Steffen Thorsen.)
++
++ Changes affecting API
++
++ The types of the global variables 'timezone' and 'altzone' (if present)
++ have been changed back to 'long'. This is required for 'timezone'
++ by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
++ These variables were originally 'long' in the tz code, but were
++ mistakenly changed to 'time_t' in 1987; nobody reported the
++ incompatibility until now. The difference matters on x32, where
++ 'long' is 32 bits and 'time_t' is 64. (Thanks to Elliott Hughes.)
++
++ Changes affecting the build procedure
++
++ Avoid long strings in leapseconds.awk to work around a mawk bug.
++ (Thanks to Cyril Baurand.)
++
++ Changes affecting documentation and commentary
++
++ New file 'NEWS' that contains release notes like this one.
++
++ Paraguay's law does not specify DST transition time; 00:00 is customary.
++ (Thanks to Waldemar Villamayor-Venialbo.)
++
++ Minor capitalization fixes.
++
++ Changes affecting version-control only
++
++ The experimental GitHub repository now contains annotated and
++ signed tags for recent releases, e.g., '2013e' for Release 2013e.
++ Releases are tagged starting with 2012e; earlier releases were
++ done differently, and tags would either not have a simple name or
++ not exactly match what was released.
++
++ 'make set-timestamps' is now simpler and a bit more portable.
++
++
++Release 2013e - 2013-09-19 23:50:04 -0700
++
++ Changes affecting near-future time stamps
++
++ This year Fiji will start DST on October 27, not October 20.
++ (Thanks to David Wheeler for the heads-up.) For now, guess that
++ Fiji will continue to spring forward the Sunday before the fourth
++ Monday in October.
++
++ Changes affecting current and future time zone abbreviations
++
++ Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
++ time zone abbreviations since 1932. (Thanks to George Ziegler,
++ Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
++ Benny Lin.) This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
++ Asia/Makassar, and Asia/Pontianak.
++
++ Use ART (UT -03, standard time), rather than WARST (also -03, but
++ daylight saving time) for San Luis, Argentina since 2009.
++
++ Changes affecting Godthåb time stamps after 2037 if version mismatch
++
++ Allow POSIX-like TZ strings where the transition time's hour can
++ range from -167 through 167, instead of the POSIX-required 0
++ through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
++ new Fiji rules. This is a more-compact way to represent
++ far-future time stamps for America/Godthab, America/Santiago,
++ Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
++ Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
++ this change. (Derived from a suggestion by Arthur David Olson.)
++
++ Allow POSIX-like TZ strings where daylight saving time is in
++ effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
++ Argentina Summer Time all year. This supports a more-compact way
++ to represent the 2013d data for America/Argentina/San_Luis.
++ Because of the change for San Luis noted above this change does not
++ affect the current data. (Thanks to Andrew Main (Zefram) for
++ suggestions that improved this change.)
++
++ Where these two TZ changes take effect, there is a minor extension
++ to the tz file format in that it allows new values for the
++ embedded TZ-format string, and the tz file format version number
++ has therefore been increased from 2 to 3 as a precaution.
++ Version-2-based client code should continue to work as before for
++ all time stamps before 2038. Existing version-2-based client code
++ (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
++ files, and typically works in practice even for time stamps after
++ 2037; the only known exception is America/Godthab.
++
++ Changes affecting time stamps before 1970
++
++ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
++ some errors before 1947.
++
++ Some zones have been turned into links, when they differ from existing
++ zones only in older data entries that were likely invented or that
++ differ only in LMT or transitions from LMT. These changes affect
++ only time stamps before 1943. The affected zones are:
++ Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
++ America/Grenada, America/Guadeloupe, America/Marigot,
++ America/Montserrat, America/St_Barthelemy, America/St_Kitts,
++ America/St_Lucia, America/St_Thomas, America/St_Vincent,
++ America/Tortola, and Europe/Vaduz. (Thanks to Alois Treindl for
++ confirming that the old Europe/Vaduz zone was wrong and the new
++ link is better for WWII-era times.)
++
++ Change Kingston Mean Time from -5:07:12 to -5:07:11. This affects
++ America/Cayman, America/Jamaica and America/Grand_Turk time stamps
++ from 1890 to 1912.
++
++ Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
++ This affects Europe/Zurich time stamps from 1853 to 1894. (Thanks
++ to Alois Treindl).
++
++ Change the date of the circa-1850 Zurich transition from 1849-09-12
++ to 1853-07-16, overriding Shanks with data from Messerli about
++ postal and telegraph time in Switzerland.
++
++ Changes affecting time zone abbreviations before 1970
++
++ For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
++ as Jakarta was called Batavia back then.
++
++ Changes affecting API
++
++ The 'zic' command now outputs a dummy transition when far-future
++ data can't be summarized using a TZ string, and uses a 402-year
++ window rather than a 400-year window. For the current data, this
++ affects only the Asia/Tehran file. It does not affect any of the
++ time stamps that this file represents, so zdump outputs the same
++ information as before. (Thanks to Andrew Main (Zefram).)
++
++ The 'date' command has a new '-r' option, which lets you specify
++ the integer time to display, a la FreeBSD.
++
++ The 'tzselect' command has two new options '-c' and '-n', which lets you
++ select a zone based on latitude and longitude.
++
++ The 'zic' command's '-v' option now warns about constructs that
++ require the new version-3 binary file format. (Thanks to Arthur
++ David Olson for the suggestion.)
++
++ Support for floating-point time_t has been removed.
++ It was always dicey, and POSIX no longer requires it.
++ (Thanks to Eric Blake for suggesting to the POSIX committee to
++ remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
++ Heninger, Arthur David Olson, and Alois Treindl, for reporting
++ bugs and elucidating some of the corners of the old floating-point
++ implementation.)
++
++ The signatures of 'offtime', 'timeoff', and 'gtime' have been
++ changed back to the old practice of using 'long' to represent UT
++ offsets. This had been inadvertently and mistakenly changed to
++ 'int_fast32_t'. (Thanks to Christos Zoulas.)
++
++ The code avoids undefined behavior on integer overflow in some
++ more places, including gmtime, localtime, mktime and zdump.
++
++ Changes affecting the zdump utility
++
++ zdump now outputs "UT" when referring to Universal Time, not "UTC".
++ "UTC" does not make sense for time stamps that predate the introduction
++ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
++ for clarifying UT vs UTC.)
++
++ Data changes affecting behavior of tzselect and similar programs
++
++ Country code BQ is now called the more-common name "Caribbean Netherlands"
++ rather than the more-official "Bonaire, St Eustatius & Saba".
++
++ Remove from zone.tab the names America/Montreal, America/Shiprock,
++ and Antarctica/South_Pole, as they are equivalent to existing
++ same-country-code zones for post-1970 time stamps. The data entries for
++ these names are unchanged, so the names continue to work as before.
++
++ Changes affecting code internals
++
++ zic -c now runs way faster on 64-bit hosts when given large numbers.
++
++ zic now uses vfprintf to avoid allocating and freeing some memory.
++
++ tzselect now computes the list of continents from the data,
++ rather than have it hard-coded.
++
++ Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is now generated automatically from a
++ new file 'leap-seconds.list', which is a copy of
++ <ftp://time.nist.gov/pub/leap-seconds.list>.
++ A new source file 'leapseconds.awk' implements this.
++ The goal is simplification of the future maintenance of 'leapseconds'.
++
++ When building the 'posix' or 'right' subdirectories, if the
++ subdirectory would be a copy of the default subdirectory, it is
++ now made a symbolic link if that is supported. This saves about
++ 2 MB of file system space.
++
++ The links America/Shiprock and Antarctica/South_Pole have been
++ moved to the 'backward' file. This affects only nondefault builds
++ that omit 'backward'.
++
++ Changes affecting version-control only
++
++ .gitignore now ignores 'date'.
++
++ Changes affecting documentation and commentary
++
++ Changes to the 'tzfile' man page
++
++ It now mentions that the binary file format may be extended in
++ future versions by appending data.
++
++ It now refers to the 'zdump' and 'zic' man pages.
++
++ Changes to the 'zic' man page
++
++ It lists conditions that elicit a warning with '-v'.
++
++ It says that the behavior is unspecified when duplicate names
++ are given, or if the source of one link is the target of another.
++
++ Its examples are updated to match the latest data.
++
++ The definition of white space has been clarified slightly.
++ (Thanks to Michael Deckers.)
++
++ Changes to the 'Theory' file
++
++ There is a new section about the accuracy of the tz database,
++ describing the many ways that errors can creep in, and
++ explaining why so many of the pre-1970 time stamps are wrong or
++ misleading (thanks to Steve Allen, Lester Caine, and Garrett
++ Wollman for discussions that contributed to this).
++
++ The 'Theory' file describes LMT better (this follows a
++ suggestion by Guy Harris).
++
++ It refers to the 2013 edition of POSIX rather than the 2004 edition.
++
++ It's mentioned that excluding 'backward' should not affect the
++ other data, and it suggests at least one zone.tab name per
++ inhabited country (thanks to Stephen Colebourne).
++
++ Some longstanding restrictions on names are documented, e.g.,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++
++ It gives more reasons for the 1970 cutoff.
++
++ It now mentions which time_t variants are supported, such as
++ signed integer time_t. (Thanks to Paul Goyette for reporting
++ typos in an experimental version of this change.)
++
++ (Thanks to Philip Newton for correcting typos in these changes.)
++
++ Documentation and commentary is more careful to distinguish UT in
++ general from UTC in particular. (Thanks to Steve Allen.)
++
++ Add a better source for the Zurich 1894 transition.
++ (Thanks to Pierre-Yves Berger.)
++
++ Update shapefile citations in tz-link.htm. (Thanks to Guy Harris.)
++
++
++Release 2013d - 2013-07-05 07:38:01 -0700
++
++ Changes affecting future time stamps:
++
++ Morocco's midsummer transitions this year are July 7 and August 10,
++ not July 9 and August 8. (Thanks to Andrew Paprocki.)
++
++ Israel now falls back on the last Sunday of October.
++ (Thanks to Ephraim Silverberg.)
++
++ Changes affecting past time stamps:
++
++ Specify Jerusalem's location more precisely; this changes the pre-1880
++ times by 2 s.
++
++ Changing affecting metadata only:
++
++ Fix typos in the entries for country codes BQ and SX.
++
++ Changes affecting code:
++
++ Rework the code to fix a bug with handling Australia/Macquarie on
++ 32-bit hosts (thanks to Arthur David Olson).
++
++ Port to platforms like NetBSD, where time_t can be wider than long.
++
++ Add support for testing time_t types other than the system's.
++ Run 'make check_time_t_alternatives' to try this out.
++ Currently, the tests fail for unsigned time_t;
++ this should get fixed at some point.
++
++ Changes affecting documentation and commentary:
++
++ Deemphasize the significance of national borders.
++
++ Update the zdump man page.
++
++ Remove obsolete NOID comment (thanks to Denis Excoffier).
++
++ Update several URLs and comments in the web pages.
++
++ Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
++
++ Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
++
++
++Release 2013c - 2013-04-19 16:17:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Palestine observed DST starting March 29, 2013. (Thanks to
++ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
++ with the predicted rules being the last Thursday in March at 24:00
++ to the first Friday on or after September 21 at 01:00.
++
++ Assume that the recent change to Paraguay's DST rules is permanent,
++ by moving the end of DST to the 4th Sunday in March every year.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Changes affecting past time stamps:
++
++ Fix some historical data for Palestine to agree with that of
++ timeanddate.com, as follows:
++
++ The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
++ 00:00 Apr 1.
++
++ The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
++ 02:00.
++
++ The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
++
++ The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
++
++ The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
++
++ The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
++
++ Fix times of habitation for Macquarie to agree with the Tasmania
++ Parks & Wildlife Service history, which indicates that permanent
++ habitation was 1899-1919 and 1948 on.
++
++ Changing affecting metadata only:
++
++ Macquarie Island is politically part of Australia, not Antarctica.
++ (Thanks to Tobias Conradi.)
++
++ Sort Macquarie more-consistently with other parts of Australia.
++ (Thanks to Tim Parenti.)
++
++
++Release 2013b - 2013-03-10 22:33:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Haiti uses US daylight-saving rules this year, and presumably future years.
++ This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++
++ Paraguay will end DST on March 24 this year.
++ (Thanks to Steffen Thorsen.) For now, assume it's just this year.
++
++ Morocco does not observe DST during Ramadan;
++ try to predict Ramadan in Morocco as best we can.
++ (Thanks to Erik Homoet for the heads-up.)
++
++ Changes affecting commentary:
++
++ Update URLs in tz-link page. Add URLs for webOS, BB10, iOS.
++ Update URL for Solaris. Mention Internet RFC 6557.
++ Update Internet RFCs 2445->5545, 2822->5322.
++ Switch from FTP to HTTP for Internet RFCs.
++
++
++Release 2013a - 2013-02-27 09:20:35 -0800
++
++ Change affecting binary data format:
++
++ The zone offset at the end of version-2-format zone files is now
++ allowed to be 24:00, as per POSIX.1-2008. (Thanks to Arthur David Olson.)
++
++ Changes affecting current and future time stamps:
++
++ Chile's 2013 rules, and we guess rules for 2014 and later, will be
++ the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
++ (Thanks to Steffen Thorsen and Robert Elz.)
++
++ New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
++ (Thanks to Tobias Conradi and Arthur David Olson.)
++
++ Many changes affect historical time stamps before 1940.
++ These were deduced from: Milne J. Civil time. Geogr J. 1899
++ Feb;13(2):173-94 <http://www.jstor.org/stable/1774359>.
++
++ Changes affecting the code:
++
++ Fix zic bug that mishandled Egypt's 2010 changes (this also affected
++ the data). (Thanks to Arthur David Olson.)
++
++ Fix localtime bug when time_t is unsigned and data files were generated
++ by a signed time_t system. (Thanks to Doug Bailey for reporting and
++ to Arthur David Olson for fixing.)
++
++ Allow the email address for bug reports to be set by the packager.
++ The default is tz@iana.org, as before. (Thanks to Joseph S. Myers.)
++
++ Update HTML checking to be compatible with Ubuntu 12.10.
++
++ Check that files are a safe subset of ASCII. At some point we may
++ relax this requirement to a safe subset of UTF-8. Without the
++ check, some non-UTF-8 encodings were leaking into the distribution.
++
++ Commentary changes:
++
++ Restore a comment about copyright notices that was inadvertently deleted.
++ (Thanks to Arthur David Olson.)
++
++ Improve the commentary about which districts observe what times
++ in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
++
++ Add web page links to tz.js.
++
++ Add "Run by the Monkeys" to tz-art. (Thanks to Arthur David Olson.)
++
++
++Release 2012j - 2012-11-12 18:34:49 -0800
++
++ Libya moved to CET this weekend, but with DST planned next year.
++ (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
++
++ Signatures now have the extension .asc, not .sign, as that's more
++ standard. (Thanks to Phil Pennock.)
++
++ The output of 'zdump --version', and of 'zic --version', now
++ uses a format that is more typical for --version.
++ (Thanks to Joseph S. Myers.)
++
++ The output of 'tzselect --help', 'zdump --help', and 'zic --help'
++ now uses tz@iana.org rather than the old elsie address.
++
++ zic -v now complains about abbreviations that are less than 3
++ or more than 6 characters, as per Posix. Formerly, it checked
++ for abbreviations that were more than 3.
++
++ 'make public' no longer puts its temporary directory under /tmp,
++ and uses the just-built zic rather than the system zic.
++
++ Various fixes to documentation and commentary.
++
++
++Release 2012i - 2012-11-03 12:57:09 -0700
++
++ Cuba switches from DST tomorrow at 01:00. (Thanks to Steffen Thorsen.)
++
++ Linker flags can now be specified via LDFLAGS.
++ AWK now defaults to 'awk', not 'nawk'.
++ The shell in tzselect now defaults to /bin/bash, but this can
++ be overridden by specifying KSHELL.
++ The main web page now mentions the unofficial GitHub repository.
++ (Thanks to Mike Frysinger.)
++
++ Tarball signatures can now be built by running 'make signatures'.
++ There are also new makefile rules 'tarballs', 'check_public', and
++ separate makefile rules for each tarball and signature file.
++ A few makefile rules are now more portable to strict POSIX.
++
++ The main web page now lists the canonical IANA URL.
++
++
++Release 2012h - 2012-10-26 22:49:10 -0700
++
++ Bahia no longer has DST. (Thanks to Kelley Cook.)
++
++ Tocantins has DST. (Thanks to Rodrigo Severo.)
++
++ Israel has new DST rules next year. (Thanks to Ephraim Silverberg.)
++
++ Jordan stays on DST this winter. (Thanks to Steffen Thorsen.)
++
++ Web page updates.
++
++ More C modernization, except that at Arthur David Olson's suggestion
++ the instances of 'register' were kept.
++
++
++Release 2012g - 2012-10-17 20:59:45 -0700
++
++ Samoa fall 2012 and later. (Thanks to Nicholas Pereira and Robert Elz.)
++
++ Palestine fall 2012. (Thanks to Steffen Thorsen.)
++
++ Assume C89.
++
++ To attack the version-number problem, this release ships the file
++ 'Makefile' (which contains the release number) in both the tzcode and
++ the tzdata tarballs. The two Makefiles are identical, and should be
++ identical in any matching pair of tarballs, so it shouldn't matter
++ which order you extract the tarballs. Perhaps we can come up with a
++ better version-number scheme at some point; this scheme does have the
++ virtue of not adding more files.
++
++
++Release 2012f - 2012-09-12 23:17:03 -0700
++
++ * australasia (Pacific/Fiji): Fiji DST is October 21 through January
++ 20 this year. (Thanks to Steffen Thorsen.)
++
++
++Release 2012e - 2012-08-02 20:44:55 -0700
++
++ * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
++ (Thanks to Steffen Thorsen.)
++
++ * Use a single version number for both code and data.
++
++ * .gitignore: New file.
++
++ * Remove trailing white space.
++
++
++Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
++
++ Changes for Morocco's time stamps, which take effect in a couple of
++ hours, along with infrastructure changes to accommodate how the tz
++ code and data are released on IANA.
++
++
++Release data2012c - 2012-03-27 12:17:25 -0400
++
++ africa
++ Summer time changes for Morocco (to start late April 2012)
++
++ asia
++ Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
++
++ northamerica
++ Haiti following US/Canada rules for 2012 (and we're assuming,
++ for now anyway, for the future).
++
++
++Release 2012b - 2012-03-02 12:29:15 +0700
++
++ There is just one change to tzcode2012b (compared with 2012a):
++ the Makefile that was accidentally included with 2012a has been
++ replaced with the version that should have been there, which is
++ identical with the previous version (from tzcode2011i).
++
++ There are just two changes in tzdata2012b compared with 2012a.
++
++ Most significantly, summer time in Cuba has been delayed 3 weeks
++ (now starts April 1 rather than March 11). Since Mar 11 (the old start
++ date, as listed in 2012a) is just a little over a week away, this
++ change is urgent.
++
++ Less importantly, an excess tab in one of the changes in zone.tab
++ in 2012a has been removed.
++
++
++Release 2012a - 2012-03-01 18:28:10 +0700
++
++ The changes in tzcode2012a (compared to the previous version, 2011i)
++ are entirely to the README and tz-art.htm and tz-link.htm files, if
++ none of those concern you, you can ignore the code update. The changes
++ reflect the changed addresses for the mailing list and the code and
++ data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
++ has been added to tz-link.htm).
++
++ In tzdata2012a (compared to the previous release, which was 2011n)
++ the major changes are:
++ Chile 2011/2012 and 2012/2013 summer time date adjustments.
++ Falkland Islands onto permanent summer time (we're assuming for the
++ foreseeable future, though 2012 is all we're fairly certain of.)
++ Armenia has abolished Summer Time.
++ Tokelau jumped the International Date Line back last December
++ (just the same as their near neighbour, Samoa).
++ America/Creston is a new zone for a small area of British Columbia
++ There will be a leapsecond 2012-06-30 23:59:60 UTC.
++
++ Other minor changes are:
++ Corrections to 1918 Canadian summer time end dates.
++ Updated URL for UK time zone history (in comments)
++ A few typos in Le Corre's list of free French place names (comments)
++
++
++Release data2011n - 2011-10-30 14:57:54 +0700
++
++ There are three changes of note - most urgently, Cuba (America/Havana)
++ has extended summer time by two weeks, now to end on Nov 13, rather than
++ the (already past) Oct 30. Second, the Pridnestrovian Moldavian Republic
++ (Europe/Tiraspol) decided not to split from the rest of Moldova after
++ all, and consequently that zone has been removed (again) and reinstated
++ in the "backward" file as a link to Europe/Chisinau. And third, the
++ end date for Fiji's summer time this summer was moved forward from the
++ earlier planned Feb 26, to Jan 22.
++
++ Apart from that, Moldova (MD) returns to a single entry in zone.tab
++ (and the incorrect syntax that was in the 2011m version of that file
++ is so fixed - it would have been fixed in a different way had this
++ change not happened - that's the "missing" sccs version id).
++
++
++Release data2011m - 2011-10-24 21:42:16 +0700
++
++ In particular, the typos in comments in the data (2011-11-17 should have
++ been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
++ Tim Parenti noted) have been fixed, and the change for Ukraine has been
++ made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
++ Tim Parenti, and also Denys Gavrysh)
++
++ In addition, I added Europe/Tiraspol to zone.tab.
++
++ This time, all the files have new version numbers... (including the files
++ otherwise unchanged in 2011m that were changed in 2011l but didn't get new
++ version numbers there...)
++
++
++Release data2011l - 2011-10-10 11:15:43 +0700
++
++ There are just 2 changes that cause different generated tzdata files from
++ zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
++ is included, but commented out. Compared with the diff I sent out last week,
++ this version also includes attributions for the sources for the changes
++ (in much the same format as ado used, but the html tags have not been
++ checked, verified, or used in any way at all, so if there are errors there,
++ please let me know.)
++
++
++Release data2011k - 2011-09-20 17:54:03 -0400
++
++ [not summarized]
++
++
++Release data2011j - 2011-09-12 09:22:49 -0400
++
++ (contemporary changes for Samoa; past changes for Kenya, Uganda, and
++ Tanzania); there are also two spelling corrections to comments in
++ the australasia file (with thanks to Christos Zoulas).
++
++
++Release 2011i - 2011-08-29 05:56:32 -0400
++
++ [not summarized]
++
++
++Release data2011h - 2011-06-15 18:41:48 -0400
++
++ Russia and Curaçao changes
++
++
++Release 2011g - 2011-04-25 09:07:22 -0400
++
++ update the rules for Egypt to reflect its abandonment of DST this year
++
++
++Release 2011f - 2011-04-06 17:14:53 -0400
++
++ [not summarized]
++
++
++Release 2011e - 2011-03-31 16:04:38 -0400
++
++ Morocco, Chile, and tz-link changes
++
++
++Release 2011d - 2011-03-14 09:18:01 -0400
++
++ changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++
++
++Release 2011c - 2011-03-07 09:30:09 -0500
++
++ These do affect current time stamps in Chile and Annette Island, Canada.
++
++
++Release 2011b - 2011-02-07 08:44:50 -0500
++
++ [not summarized]
++
++
++Release 2011a - 2011-01-24 10:30:16 -0500
++
++ [not summarized]
++
++
++Release data2010o - 2010-11-01 09:18:23 -0400
++
++ change to the end of DST in Fiji in 2011
++
++
++Release 2010n - 2010-10-25 08:19:17 -0400
++
++ [not summarized]
++
++
++Release 2010m - 2010-09-27 09:24:48 -0400
++
++ Hong Kong, Vostok, and zic.c changes
++
++
++Release 2010l - 2010-08-16 06:57:25 -0400
++
++ [not summarized]
++
++
++Release 2010k - 2010-07-26 10:42:27 -0400
++
++ [not summarized]
++
++
++Release 2010j - 2010-05-10 09:07:48 -0400
++
++ changes for Bahía de Banderas and for version naming
++
++
++Release data2010i - 2010-04-16 18:50:45 -0400
++
++ the end of DST in Morocco on 2010-08-08
++
++
++Release data2010h - 2010-04-05 09:58:56 -0400
++
++ [not summarized]
++
++
++Release data2010g - 2010-03-24 11:14:53 -0400
++
++ [not summarized]
++
++
++Release 2010f - 2010-03-22 09:45:46 -0400
++
++ [not summarized]
++
++
++Release data2010e - 2010-03-08 14:24:27 -0500
++
++ corrects the Dhaka bug found by Danvin Ruangchan
++
++
++Release data2010d - 2010-03-06 07:26:01 -0500
++
++ [not summarized]
++
++
++Release 2010c - 2010-03-01 09:20:58 -0500
++
++ changes including KRE's suggestion for earlier initialization of
++ "goahead" and "goback" structure elements
++
++
++Release code2010a - 2010-02-16 10:40:04 -0500
++
++ [not summarized]
++
++
++Release data2010b - 2010-01-20 12:37:01 -0500
++
++ Mexico changes
++
++
++Release data2010a - 2010-01-18 08:30:04 -0500
++
++ changes to Dhaka
++
++
++Release data2009u - 2009-12-26 08:32:28 -0500
++
++ changes to DST in Bangladesh
++
++
++Release 2009t - 2009-12-21 13:24:27 -0500
++
++ [not summarized]
++
++
++Release data2009s - 2009-11-14 10:26:32 -0500
++
++ (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
++
++
++Release 2009r - 2009-11-09 10:10:31 -0500
++
++ "antarctica" and "tz-link.htm" changes
++
++
++Release 2009q - 2009-11-02 09:12:40 -0500
++
++ with two corrections as reported by Eric Muller and Philip Newton
++
++
++Release data2009p - 2009-10-23 15:05:27 -0400
++
++ Argentina (including San Luis) changes (with the correction from
++ Mariano Absatz)
++
++
++Release data2009o - 2009-10-14 16:49:38 -0400
++
++ Samoa (commentary only), Pakistan, and Bangladesh changes
++
++
++Release data2009n - 2009-09-22 15:13:38 -0400
++
++ added commentary for Argentina and a change to the end of DST in
++ 2009 in Pakistan
++
++
++Release data2009m - 2009-09-03 10:23:43 -0400
++
++ Samoa and Palestine changes
++
++
++Release data2009l - 2009-08-14 09:13:07 -0400
++
++ Samoa (comments only) and Egypt
++
++
++Release 2009k - 2009-07-20 09:46:08 -0400
++
++ [not summarized]
++
++
++Release data2009j - 2009-06-15 06:43:59 -0400
++
++ Bangladesh change (with a short turnaround since the DST change is
++ impending)
++
++
++Release 2009i - 2009-06-08 09:21:22 -0400
++
++ updating for DST in Bangladesh this year
++
++
++Release 2009h - 2009-05-26 09:19:14 -0400
++
++ [not summarized]
++
++
++Release data2009g - 2009-04-20 16:34:07 -0400
++
++ Cairo
++
++
++Release data2009f - 2009-04-10 11:00:52 -0400
++
++ correct DST in Pakistan
++
++
++Release 2009e - 2009-04-06 09:08:11 -0400
++
++ [not summarized]
++
++
++Release 2009d - 2009-03-23 09:38:12 -0400
++
++ Morocco, Tunisia, Argentina, and American Astronomical Society changes
++
++
++Release data2009c - 2009-03-16 09:47:51 -0400
++
++ change to the start of Cuban DST
++
++
++Release 2009b - 2009-02-09 11:15:22 -0500
++
++ [not summarized]
++
++
++Release 2009a - 2009-01-21 10:09:39 -0500
++
++ [not summarized]
++
++
++Release data2008i - 2008-10-21 12:10:25 -0400
++
++ southamerica and zone.tab files, with Argentina DST rule changes and
++ United States zone reordering and recommenting
++
++
++Release 2008h - 2008-10-13 07:33:56 -0400
++
++ [not summarized]
++
++
++Release 2008g - 2008-10-06 09:03:18 -0400
++
++ Fix a broken HTML anchor and update Brazil's DST transitions;
++ there's also a slight reordering of information in tz-art.htm.
++
++
++Release data2008f - 2008-09-09 22:33:26 -0400
++
++ [not summarized]
++
++
++Release 2008e - 2008-07-28 14:11:17 -0400
++
++ changes by Arthur David Olson and Jesper Nørgaard Welen
++
++
++Release data2008d - 2008-07-07 09:51:38 -0400
++
++ changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
++
++
++Release data2008c - 2008-05-19 17:48:03 -0400
++
++ Pakistan, Morocco, and Mongolia
++
++
++Release data2008b - 2008-03-24 08:30:59 -0400
++
++ including renaming Asia/Calcutta to Asia/Kolkata, with a backward
++ link provided
++
++
++Release 2008a - 2008-03-08 05:42:16 -0500
++
++ [not summarized]
++
++
++Release 2007k - 2007-12-31 10:25:22 -0500
++
++ most importantly, changes to the "southamerica" file based on
++ Argentina's readoption of daylight saving time
++
++
++Release 2007j - 2007-12-03 09:51:01 -0500
++
++ 1. eliminate the "P" (parameter) macro;
++
++ 2. the "noncontroversial" changes circulated on the time zone
++ mailing list (less the changes to "logwtmp.c");
++
++ 3. eliminate "too many transition" errors when "min" is used in time
++ zone rules;
++
++ 4. changes by Paul Eggert (including updated information for Venezuela).
++
++
++Release data2007i - 2007-10-30 10:28:11 -0400
++
++ changes for Cuba and Syria
++
++
++Release 2007h - 2007-10-01 10:05:51 -0400
++
++ changes by Paul Eggert, as well as an updated link to the ICU
++ project in tz-link.htm
++
++
++Release 2007g - 2007-08-20 10:47:59 -0400
++
++ changes by Paul Eggert
++
++ The "leapseconds" file has been updated to incorporate the most
++ recent International Earth Rotation and Reference Systems Service
++ (IERS) bulletin.
++
++ There's an addition to tz-art.htm regarding the television show "Medium".
++
++
++Release 2007f - 2007-05-07 10:46:46 -0400
++
++ changes by Paul Eggert (including Haiti, Turks and Caicos, and New
++ Zealand)
++
++ changes to zic.c to allow hour values greater than 24 (along with
++ Paul's improved time value overflow checking)
++
++
++Release 2007e - 2007-04-02 10:11:52 -0400
++
++ Syria and Honduras changes by Paul Eggert
++
++ zic.c variable renaming changes by Arthur David Olson
++
++
++Release 2007d - 2007-03-20 08:48:30 -0400
++
++ changes by Paul Eggert
++
++ the elimination of white space at the ends of lines
++
++
++Release 2007c - 2007-02-26 09:09:37 -0500
++
++ changes by Paul Eggert
++
++
++Release 2007b - 2007-02-12 09:34:20 -0500
++
++ Paul Eggert's proposed change to the quotation handling logic in zic.c.
++
++ changes to the commentary in "leapseconds" reflecting the IERS
++ announcement that there is to be no positive leap second at the end
++ of June 2007.
++
++
++Release 2007a - 2007-01-08 12:28:29 -0500
++
++ changes by Paul Eggert
++
++ Derick Rethan's Asmara change
++
++ Oscar van Vlijmen's Easter Island local mean time change
++
++ symbolic link changes
++
++
++Release 2006p - 2006-11-27 08:54:27 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006o - 2006-11-06 09:18:07 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006n - 2006-10-10 11:32:06 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006m - 2006-10-02 15:32:35 -0400
++
++ changes for Uruguay, Palestine, and Egypt by Paul Eggert
++
++ (minimalist) changes to zic.8 to clarify "until" information
++
++
++Release data2006l - 2006-09-18 12:58:11 -0400
++
++ Paul's best-effort work on this coming weekend's Egypt time change
++
++
++Release 2006k - 2006-08-28 12:19:09 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006j - 2006-08-21 09:56:32 -0400
++
++ changes by Paul Eggert
++
++
++Release code2006i - 2006-08-07 12:30:55 -0400
++
++ localtime.c fixes
++
++ Ken Pizzini's conversion script
++
++
++Release code2006h - 2006-07-24 09:19:37 -0400
++
++ adds public domain notices to four files
++
++ includes a fix for transition times being off by a second
++
++ adds a new recording to the "arts" file (information courtesy Colin Bowern)
++
++
++Release 2006g - 2006-05-08 17:18:09 -0400
++
++ northamerica changes by Paul Eggert
++
++
++Release 2006f - 2006-05-01 11:46:00 -0400
++
++ a missing version number problem is fixed (with thanks to Bradley
++ White for catching the problem)
++
++
++Release 2006d - 2006-04-17 14:33:43 -0400
++
++ changes by Paul Eggert
++
++ added new items to tz-arts.htm that were found by Paul
++
++
++Release 2006c - 2006-04-03 10:09:32 -0400
++
++ two sets of data changes by Paul Eggert
++
++ a fencepost error fix in zic.c
++
++ changes to zic.c and the "europe" file to minimize differences
++ between output produced by the old 32-bit zic and the new 64-bit
++ version
++
++
++Release 2006b - 2006-02-20 10:08:18 -0500
++ [tz32code2006b + tz64code2006b + tzdata2006b]
++
++ 64-bit code
++
++ All SCCS IDs were bumped to "8.1" for this release.
++
++
++Release 2006a - 2006-01-30 08:59:31 -0500
++
++ changes by Paul Eggert (in particular, Indiana time zone moves)
++
++ an addition to the zic manual page to describe how special-case
++ transitions are handled
++
++
++Release 2005r - 2005-12-27 09:27:13 -0500
++
++ Canadian changes by Paul Eggert
++
++ They also add "<pre>" directives to time zone data files and reflect
++ changes to warning message logic in "zdump.c" (but with calls to
++ "gettext" kept unbundled at the suggestion of Ken Pizzini).
++
++
++Release 2005q - 2005-12-13 09:17:09 -0500
++
++ Nothing earth-shaking here:
++ 1. Electronic mail addresses have been removed.
++ 2. Casts of the return value of exit have been removed.
++ 3. Casts of the argument of is.* macros have been added.
++ 4. Indentation in one section of zic.c has been fixed.
++ 5. References to dead URLs in the data files have been dealt with.
++
++
++Release 2005p - 2005-12-05 10:30:53 -0500
++
++ "systemv", "tz-link.htm", and "zdump.c" changes
++ (less the casts of arguments to the is* macros)
++
++
++Release 2005o - 2005-11-28 10:55:26 -0500
++
++ Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
++
++ zdump.c lint fixes by Arthur David Olson
++
++
++Release 2005n - 2005-10-03 09:44:09 -0400
++
++ changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
++ et al. changes)
++
++
++Release 2005m - 2005-08-29 12:15:40 -0400
++
++ changes by Paul Eggert (with a small tweak to the tz-art change)
++
++ a declaration of an unused variable has been removed from zdump.c
++
++
++Release 2005l - 2005-08-22 12:06:39 -0400
++
++ changes by Paul Eggert
++
++ overflow/underflow checks by Arthur David Olson, minus changes to
++ the "Theory" file about the pending addition of 64-bit data (I grow
++ less confident of the changes being accepted with each passing day,
++ and the changes no longer increase the data files nine-fold--there's
++ less than a doubling in size by my local Sun's reckoning)
++
++
++Release 2005k - 2005-07-14 14:14:24 -0400
++
++ The "leapseconds" file has been edited to reflect the recently
++ announced leap second at the end of 2005.
++
++ I've also deleted electronic mail addresses from the files as an
++ anti-spam measure.
++
++
++Release 2005j - 2005-06-13 14:34:13 -0400
++
++ These reflect changes to limit the length of time zone abbreviations
++ and the characters used in those abbreviations.
++
++ There are also changes to handle POSIX-style "quoted" time zone
++ environment variables.
++
++ The changes were circulated on the time zone mailing list; the only
++ change since then was the removal of a couple of minimum-length of
++ abbreviation checks.
++
++
++Release data2005i - 2005-04-21 15:04:16 -0400
++
++ changes (most importantly to Nicaragua and Haiti) by Paul Eggert
++
++
++Release 2005h - 2005-04-04 11:24:47 -0400
++
++ changes by Paul Eggert
++
++ minor changes to Makefile and zdump.c to produce more useful output
++ when doing a "make typecheck"
++
++
++Release 2005g - 2005-03-14 10:11:21 -0500
++
++ changes by Paul Eggert (a change to current DST rules in Uruguay and
++ an update to a link to time zone software)
++
++
++Release 2005f - 2005-03-01 08:45:32 -0500
++
++ data and documentation changes by Paul Eggert
++
++
++Release 2005e - 2005-02-10 15:59:44 -0500
++
++ [not summarized]
++
++
++Release code2005d - 2005-01-31 09:21:47 -0500
++
++ make zic complain about links to links if the -v flag is used
++
++ have "make public" do more code checking
++
++ add an include to "localtime.c" for the benefit of gcc systems
++
++
++Release 2005c - 2005-01-17 18:36:29 -0500
++
++ get better results when mktime runs on a system where time_t is double
++
++ changes to the data files (most importantly to Paraguay)
++
++
++Release 2005b - 2005-01-10 09:19:54 -0500
++
++ Get localtime and gmtime working on systems with exotic time_t types.
++
++ Update the leap second commentary in the "leapseconds" file.
++
++
++Release 2005a - 2005-01-01 13:13:44 -0500
++
++ [not summarized]
++
++
++Release code2004i - 2004-12-14 13:42:58 -0500
++
++ Deal with systems where time_t is unsigned.
++
++
++Release code2004h - 2004-12-07 11:40:18 -0500
++
++ 64-bit-time_t changes
++
++
++Release 2004g - 2004-11-02 09:06:01 -0500
++
++ update to Cuba (taking effect this weekend)
++
++ other changes by Paul Eggert
++
++ correction of the spelling of Oslo
++
++ changed versions of difftime.c and private.h
++
++
++Release code2004f - 2004-10-21 10:25:22 -0400
++
++ Cope with wide-ranging tm_year values.
++
++
++Release 2004e - 2004-10-11 14:47:21 -0400
++
++ Brazil/Argentina/Israel changes by Paul Eggert
++
++ changes to tz-link.htm by Paul
++
++ one small fix to Makefile
++
++
++Release 2004d - 2004-09-22 08:27:29 -0400
++
++ Avoid overflow problems when TM_YEAR_BASE is added to an integer.
++
++
++Release 2004c - 2004-08-11 12:06:26 -0400
++
++ asctime-related changes
++
++ (variants of) some of the documentation changes suggested by Paul Eggert
++
++
++Release 2004b - 2004-07-19 14:33:35 -0400
++
++ data changes by Paul Eggert - most importantly, updates for Argentina
++
++
++Release 2004a - 2004-05-27 12:00:47 -0400
++
++ changes by Paul Eggert
++
++ Handle DST transitions that occur at the end of a month in some
++ years but at the start of the following month in other years.
++
++ Add a copy of the correspondence that's the basis for claims about
++ DST in the Navajo Nation.
++
++
++Release 2003e - 2003-12-15 09:36:47 -0500
++
++ changes by Arthur David Olson (primarily code changes)
++
++ changes by Paul Eggert (primarily data changes)
++
++ minor changes to "Makefile" and "northamerica" (in the latter case,
++ optimization of the "Toronto" rules)
++
++
++Release 2003d - 2003-10-06 09:34:44 -0400
++
++ changes by Paul Eggert
++
++
++Release 2003c - 2003-09-16 10:47:05 -0400
++
++ Fix bad returns in zic.c's inleap function.
++ Thanks to Bradley White for catching the problem!
++
++
++Release 2003b - 2003-09-16 07:13:44 -0400
++
++ Add a "--version" option (and documentation) to the zic and zdump commands.
++
++ changes to overflow/underflow checking in zic
++
++ a localtime typo fix.
++
++ Update the leapseconds and tz-art.htm files.
++
++
++Release 2003a - 2003-03-24 09:30:54 -0500
++
++ changes by Paul Eggert
++
++ a few additions and modifications to the tz-art.htm file
++
++
++Release 2002d - 2002-10-15 13:12:42 -0400
++
++ changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
++
++ There's also a new time zone quote in "tz-art.htm".
++
++
++Release 2002c - 2002-04-04 11:55:20 -0500
++
++ changes by Paul Eggert
++
++ Change zic.c to avoid creating symlinks to files that don't exist.
++
++
++Release 2002b - 2002-01-28 12:56:03 -0500
++
++ [These change notes are for Release 2002a, which was corrupted.
++ 2002b was a corrected version of 2002a.]
++
++ changes by Paul Eggert
++
++ Update the "leapseconds" file to note that there'll be no leap
++ second at the end of June, 2002.
++
++ Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
++
++ Change to "difftime.c" to avoid sizeof problems.
++
++
++Release 2001d - 2001-10-09 13:31:32 -0400
++
++ changes by Paul Eggert
++
++
++Release 2001c - 2001-06-05 13:59:55 -0400
++
++ changes by Paul Eggert and Andrew Brown
++
++
++Release 2001b - 2001-04-05 16:44:38 -0400
++
++ changes by Paul Eggert (modulo jnorgard's typo fix)
++
++ tz-art.htm has been HTMLified.
++
++
++Release 2001a - 2001-03-13 12:57:44 -0500
++
++ changes by Paul Eggert
++
++ An addition to the "leapseconds" file: comments with the text of the
++ latest IERS leap second notice.
++
++ Trailing white space has been removed from data file lines, and
++ repeated spaces in "Rule Jordan" lines in the "asia" file have been
++ converted to tabs.
++
++
++Release 2000h - 2000-12-14 15:33:38 -0500
++
++ changes by Paul Eggert
++
++ one typo fix in the "art" file
++
++ With providence, this is the last update of the millennium.
++
++
++Release 2000g - 2000-10-10 11:35:22 -0400
++
++ changes by Paul Eggert
++
++ correction of John Mackin's name submitted by Robert Elz
++
++ Garry Shandling's Daylight Saving Time joke (!?!) from the recent
++ Emmy Awards broadcast.
++
++
++Release 2000f - 2000-08-10 09:31:58 -0400
++
++ changes by Paul Eggert
++
++ Added information in "tz-art.htm" on a Seinfeld reference to DST.
++
++ Error checking and messages in the "yearistype" script have been
++ improved.
++
++
++Release 2000e - 2000-07-31 09:27:54 -0400
++
++ data changes by Paul Eggert
++
++ a change to the default value of the defined constant HAVE_STRERROR
++
++ the addition of a Dave Barry quote on DST to the tz-arts file
++
++
++Release 2000d - 2000-04-20 15:43:04 -0400
++
++ changes to the documentation and code of strftime for C99 conformance
++
++ a bug fix for date.c
++
++ These are based on (though modified from) changes by Paul Eggert.
++
++
++Release 2000c - 2000-03-04 10:31:43 -0500
++
++ changes by Paul Eggert
++
++
++Release 2000b - 2000-02-21 12:16:29 -0500
++
++ changes by Paul Eggert and Joseph Myers
++
++ modest tweaks to the tz-art.htm and tz-link.htm files
++
++
++Release 2000a - 2000-01-18 09:21:26 -0500
++
++ changes by Paul Eggert
++
++ The two hypertext documents have also been renamed.
++
++
++Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
++
++ Paul Eggert's changes
++
++ additions to the "zic" manual page and the "Arts.htm" file
++
++
++Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
++
++ [not summarized]
++
++
++Release data1999h - 1999-10-07 03:50:29 -0400
++
++ changes by Paul Eggert to "europe" (most importantly, fixing
++ Lithuania and Estonia)
++
++
++Release 1999g - 1999-09-28 11:06:18 -0400
++
++ data changes by Paul Eggert (most importantly, the change for
++ Lebanon that buys correctness for this coming Sunday)
++
++ The "code" file contains changes to "Makefile" and "checktab.awk" to
++ allow better checking of time zone files before they are published.
++
++
++Release 1999f - 1999-09-23 09:48:14 -0400
++
++ changes by Arthur David Olson and Paul Eggert
++
++
++Release 1999e - 1999-08-17 15:20:54 -0400
++
++ changes circulated by Paul Eggert, although the change to handling
++ of DST-specifying time zone names has been commented out for now
++ (search for "XXX" in "localtime.c" for details). These files also
++ do not make any changes to the start of DST in Brazil.
++
++ In addition to Paul's changes, there are updates to "Arts.htm" and
++ cleanups of URLs.
++
++
++Release 1999d - 1999-03-30 11:31:07 -0500
++
++ changes by Paul Eggert
++
++ The Makefile's "make public" rule has also been changed to do a test
++ compile of each individual time zone data file (which should help
++ avoid problems such as the one we had with Nicosia).
++
++
++Release 1999c - 1999-03-25 09:47:47 -0500
++
++ changes by Paul Eggert, most importantly the change for Chile.
++
++
++Release 1999b - 1999-02-01 17:51:44 -0500
++
++ changes by Paul Eggert
++
++ code changes (suggested by Mani Varadarajan, mani at be.com) for
++ correct handling of symbolic links when building using a relative directory
++
++ code changes to generate correct messages for failed links
++
++ updates to the URLs in Arts.htm
++
++
++Release 1999a - 1999-01-19 16:20:29 -0500
++
++ error message internationalizations and corrections in zic.c and
++ zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
++ to whom thanks!)
++
++
++Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
++
++ changes for Brazil, Chile, and Germany
++
++ support for use of "24:00" in the input files for the time zone compiler
++
++
++Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
++
++ changes by Paul Eggert
++
++ correction to a define in the "private.h" file
++
++
++Release data1998g - 1998-08-11 03:28:35 -0000
++ [tzdata1998g.tar.gz is missing!]
++
++ Lithuanian change provided by mgedmin at pub.osf.it
++
++ Move creation of the GMT link with Etc/GMT to "etcetera" (from
++ "backward") to ensure that the GMT file is created even where folks
++ don't want the "backward" links (as suggested by Paul Eggert).
++
++
++Release data1998f - 1998-07-20 13:50:00 -0000
++ [tzdata1998f.tar.gz is missing!]
++
++ Update the "leapseconds" file to include the newly-announced
++ insertion at the end of 1998.
++
++
++Release code1998f - 1998-06-01 10:18:31 -0400
++
++ addition to localtime.c by Guy Harris
++
++
++Release 1998e - 1998-05-28 09:56:26 -0400
++
++ The Makefile is changed to produce zoneinfo-posix rather than
++ zoneinfo/posix, and to produce zoneinfo-leaps rather than
++ zoneinfo/right.
++
++ data changes by Paul Eggert
++
++ changes from Guy Harris to provide asctime_r and ctime_r
++
++ A usno1998 file (substantially identical to usno1997) has been added.
++
++
++Release 1998d - 1998-05-14 11:58:34 -0400
++
++ changes to comments (in particular, elimination of references to CIA maps).
++ "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
++ where changes occur.
++
++
++Release 1998c - 1998-02-28 12:32:26 -0500
++
++ changes by Paul Eggert (save the "French correction," on which I'll
++ wait for the dust to settle)
++
++ symlink changes
++
++ changes and additions to Arts.htm
++
++
++Release 1998b - 1998-01-17 14:31:51 -0500
++
++ URL cleanups and additions
++
++
++Release 1998a - 1998-01-13 12:37:35 -0500
++
++ changes by Paul Eggert
++
++
++Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
++
++ changes by Paul Eggert, with minor modifications from Arthur David
++ Olson to make the files more browser friendly
++
++
++Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
++
++ minor changes to put "TZif" at the start of each time zone information file
++
++ a rule has also been added to the Makefile so you can
++ make zones
++ to just recompile the zone information files (rather than doing a
++ full "make install" with its other effects).
++
++
++Release data1997i - 1997-10-07 08:45:38 -0400
++
++ changes to Africa by Paul Eggert
++
++
++Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
++
++ corrections for Uruguay (and other locations)
++
++ Arthur David Olson's simple-minded fix allowing mktime to both
++ correctly handle leap seconds and correctly handle tm_sec values
++ upon which arithmetic has been performed.
++
++
++Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
++
++ Paul Eggert's updates
++
++ a small change to a function prototype;
++
++ "Music" has been renamed "Arts.htm", HTMLified, and augmented to
++ include information on Around the World in Eighty Days.
++
++
++Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
++
++ fixes to zic's error handling
++
++ changes inspired by the item circulated on Slovenia
++
++ The description of Web resources has been HTMLified for browsing
++ convenience.
++
++ A new piece of tz-related music has been added to the "Music" file.
++
++
++Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
++
++ Paul Eggert's latest suggestions
++
++
++Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
++
++ changes to "zic.c" to correct performance of the "-s" option
++
++ a new file "usno1997"
++
++
++Release data1997c - 1997-03-04 09:58:18 -0500
++
++ changes in Israel
++
++
++Release 1997b - 1997-02-27 18:34:19 -0500
++
++ The data file incorporates the 1997 leap second.
++
++ The code file incorporates Arthur David Olson's take on the
++ zic/multiprocessor/directory-creation situation.
++
++
++Release 1997a - 1997-01-21 09:11:10 -0500
++
++ Paul Eggert's Antarctica (and other changes)
++
++ Arthur David Olson finessed the "getopt" issue by checking against
++ both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
++ is returned while SunOS 5.5's manual says EOF is returned).
++
++
++Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
++
++ Paul Eggert's latest changes
++
++
++Release code1996n - 1996-12-16 09:42:02 -0500
++
++ link snapping fix from Bruce Evans (via Garrett Wollman)
++
++
++Release data1996m - 1996-11-24 02:37:34 -0000
++ [tzdata1996m.tar.gz is missing!]
++
++ Paul Eggert's batch of changes
++
++
++Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
++
++ No functional changes here; the files have simply been changed to
++ make more use of ISO style dates in comments. The names of the above
++ files now include the year in full.
++
++
++Release code96l - 1996-09-08 17:12:20 -0400
++
++ tzcode96k was missing a couple of pieces.
++
++
++Release 96k - 1996-09-08 16:06:22 -0400
++
++ the latest round of changes from Paul Eggert
++
++ the recent Year 2000 material
++
++
++Release code96j - 1996-07-30 13:18:53 -0400
++
++ Set sp->typecnt as suggested by Timothy Patrick Murphy.
++
++
++Release code96i - 1996-07-27 20:11:35 -0400
++
++ Paul's suggested patch for strftime %V week numbers
++
++
++Release data96i - 1996-07-01 18:13:04 -0400
++
++ "northamerica" and "europe" changes by Paul Eggert
++
++
++Release code96h - 1996-06-05 08:02:21 -0400
++
++ fix for handling transitions specified in Universal Time
++
++ Some "public domain" notices have also been added.
++
++
++Release code96g - 1996-05-16 14:00:26 -0400
++
++ fix for the simultaneous-DST-and-zone-change challenge
++
++
++Release data96h - 1996-05-09 17:40:51 -0400
++
++ changes by Paul Eggert
++
++
++Release code96f-data96g - 1996-05-03 03:09:59 -0000
++ [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
++
++ The changes get us some of the way to fixing the problems noted in Paul
++ Eggert's letter yesterday (in addition to a few others). The approach
++ has been to make zic a bit smarter about figuring out what time zone
++ abbreviations apply just after the time specified in the "UNTIL" part
++ of a zone line. Putting the smarts in zic means avoiding having
++ transition times show up in both "Zone" lines and "Rule" lines, which
++ in turn avoids multiple transition time entries in time zone files.
++ (This also makes the zic input files such as "europe" a bit shorter and
++ should ease maintenance.)
++
++
++Release data96f - 1996-04-19 19:20:03 -0000
++ [tzdata96f.tar.gz is missing!]
++
++ The only changes are to the "northamerica" file; the time zone
++ abbreviation for Denver is corrected to MST (and MDT), and the
++ comments for Mexico have been updated.
++
++
++Release data96e - 1996-03-19 17:37:26 -0500
++
++ Proposals by Paul Eggert, in particular the Portugal change that
++ comes into play at the end of this month.
++
++
++Release data96d - 1996-03-18 20:49:39 -0500
++
++ [not summarized]
++
++
++Release code96e - 1996-02-29 15:43:27 -0000
++ [tzcode96e.tar.gz is missing!]
++
++ internationalization changes and the fix to the documentation for strftime
++
++
++Release code96d-data96c - 1996-02-12 11:05:27 -0500
++
++ The "code" file simply updates Bob Kridle's electronic address.
++
++ The "data" file updates rules for Mexico.
++
++
++Release data96b - 1996-01-27 15:44:42 -0500
++
++ Kiribati change
++
++
++Release code96c - 1996-01-16 16:58:15 -0500
++
++ leap-year streamlining and binary-search changes
++
++ fix to newctime.3
++
++
++Release code96b - 1996-01-10 20:42:39 -0500
++
++ fixes and enhancements from Paul Eggert, including code that
++ emulates the behavior of recent versions of the SunOS "date"
++ command.
++
++
++Release 96a - 1996-01-06 09:08:24 -0500
++
++ Israel updates
++
++ fixes to strftime.c for correct ISO 8601 week number generation,
++ plus support for two new formats ('G' and 'g') to give ISO 8601 year
++ numbers (which are not necessarily the same as calendar year numbers)
++
++
++Release code95i-data95m - 1995-12-21 12:46:47 -0500
++
++ The latest revisions from Paul Eggert are included, the usno1995
++ file has been updated, and a new file ("WWW") covering useful URLs
++ has been added.
++
++
++Release code95h-data95l - 1995-12-19 18:10:12 -0500
++
++ A simplification of a macro definition, a change to data for Sudan,
++ and (for last minute shoppers) notes in the "Music" file on the CD
++ "Old Man Time".
++
++
++Release code95g-data95k - 1995-10-30 10:32:47 -0500
++
++ (slightly reformatted) 8-bit-clean proposed patch
++
++ minor patch: US/Eastern -> America/New_York
++
++ snapshot of the USNO's latest data ("usno1995")
++
++ some other minor cleanups
++
++
++Release code95f-data95j - 1995-10-28 21:01:34 -0000
++ [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
++
++ European cleanups
++
++ support for 64-bit time_t's
++
++ optimization in localtime.c
++
++
++Release code95e - 1995-10-13 13:23:57 -0400
++
++ the mktime change to scan from future to past when trying to find time zone
++ offsets
++
++
++Release data95i - 1995-09-26 10:43:26 -0400
++
++ For Canada/Central, guess that the Sun customer's "one week too
++ early" was just a approximation, and the true error is one month
++ too early. This is consistent with the rest of Canada.
++
++
++Release data95h - 1995-09-21 11:26:48 -0400
++
++ latest changes from Paul Eggert
++
++
++Release code95d - 1995-09-14 11:14:45 -0400
++
++ the addition of a "Music" file, which documents four recorded
++ versions of the tune "Save That Time".
++
++
++Release data95g - 1995-09-01 17:21:36 -0400
++
++ "yearistype" correction
++
++
++Release data95f - 1995-08-28 20:46:56 -0400
++
++ Paul Eggert's change to the australasia file
++
++
++Release data95e - 1995-07-08 18:02:34 -0400
++
++ The only change is a leap second at the end of this year.
++ Thanks to Bradley White for forwarding news on the leap second.
++
++
++Release data95d - 1995-07-03 13:26:22 -0400
++
++ Paul Eggert's changes
++
++
++Release data95c - 1995-07-02 19:19:28 -0400
++
++ changes to "asia", "backward", "europe", and "southamerica"
++ (read: northamericacentrics need not apply)
++
++
++Release code95c - 1995-03-13 14:00:46 -0500
++
++ one-line fix for sign extension problems in detzcode
++
++
++Release 95b - 1995-03-04 11:22:38 -0500
++
++ Minor changes in both:
++
++ The "code" file contains a workaround for the lack of "unistd.h" in
++ Microsoft C++ version 7.
++
++ The "data" file contains a fixed "Link" for America/Shiprock.
++
++
++Release 94h - 1994-12-10 12:51:14 -0500
++
++ The files:
++
++ * incorporate the changes to "zdump" and "date" to make changes to
++ the "TZ" environment variable permanent;
++
++ * incorporate the table changes by Paul Eggert;
++
++ * include (and document) support for universal time specifications in
++ data files - but do not (yet) include use of this feature in the
++ data files.
++
++ Think of this as "TZ Classic" - the software has been set up not to break if
++ universal time shows up in its input, and data entries have been
++ left as is so as not to break existing implementations.
++
++
++Release data94f - 1994-08-20 12:56:09 -0400
++
++ (with thanks!) the latest data updates from Paul Eggert
++
++
++Release data94e - 1994-06-04 13:13:53 -0400
++
++ [not summarized]
++
++
++Release code94g - 1994-05-05 12:14:07 -0400
++
++ fix missing "optind.c" and a reference to it in the Makefile
++
++
++Release code94f - 1994-05-05 13:00:33 -0000
++ [tzcode94f.tar.gz is missing!]
++
++ changes to avoid overflow in difftime, as well as changes to cope
++ with the 52/53 challenge in strftime
++
++
++Release code94e - 1994-03-30 23:32:59 -0500
++
++ change for the benefit of PCTS
++
++
++Release 94d - 1994-02-24 15:42:25 -0500
++
++ Avoid clashes with POSIX semantics for zones such as GMT+4.
++
++ Some other very minor housekeeping is also present.
++
++
++Release code94c - 1994-02-10 08:52:40 -0500
++
++ Fix bug where mkdirs was broken unless you compile with
++ -fwritable-strings (which is generally losing to do).
++
++
++Release 94b - 1994-02-07 10:04:33 -0500
++
++ work by Paul Eggert who notes:
++
++ I found another book of time zone histories by E W Whitman; it's not
++ as extensive as Shanks but has a few goodies of its own. I used it
++ to update the tables. I also fixed some more as a result of
++ correspondence with Adam David and Peter Ilieve, and move some stray
++ links from 'europe' to 'backward'. I corrected some scanning errors
++ in usno1989.
++
++ As far as the code goes, I fixed zic to allow years in the range
++ INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
++ And I cleaned up the zic documentation a little bit.
++
++
++Release data94a - 1994-02-03 08:58:54 -0500
++
++ It simply incorporates the recently announced leap second into the
++ "leapseconds" file.
++
++
++Release 93g - 1993-11-22 17:28:27 -0500
++
++ Paul Eggert has provided a good deal of historic information (based
++ on Shanks), and there are some code changes to deal with the buglets
++ that crawled out in dealing with the new information.
++
++
++Release 93f - 1993-10-15 12:27:46 -0400
++
++ Paul Eggert's changes
++
++
++Release 93e - 1993-09-05 21:21:44 -0400
++
++ This has updated data for Israel, England, and Kwajalein. There's
++ also an update to "zdump" to cope with Kwajalein's 24-hour jump.
++ Thanks to Paul Eggert and Peter Ilieve for the changes.
++
++
++Release 93d - 1993-06-17 23:34:17 -0400
++
++ new fix and new data on Israel
++
++
++Release 93c - 1993-06-06 19:31:55 -0400
++
++ [not summarized]
++
++
++Release 93b - 1993-02-02 14:53:58 -0500
++
++ updated "leapseconds" file
++
++
++Release 93 - 1993-01-08 07:01:06 -0500
++
++ At kre's suggestion, the package has been split in two - a code piece
++ (which also includes documentation) that's only of use to folks who
++ want to recompile things and a data piece useful to anyone who can
++ run "zic".
++
++ The new version has a few changes to the data files, a few
++ portability changes, and an off-by-one fix (with thanks to
++ Tom Karzes at deshaw.com for providing a description and a
++ solution).
++
++
++Release 92c - 1992-11-21 17:35:36 -0000
++ [tz92c.tar.Z is missing!]
++
++ The fallout from the latest round of DST transitions.
++
++ There are changes for Portugal, Saskatchewan, and "Pacific-New";
++ there's also a change to "zic.c" that makes it portable to more systems.
++
++
++Release 92 - 1992-04-25 18:17:03 -0000
++ [tz92.tar.Z is missing!]
++
++ By popular demand (well, at any rate, following a request by kre at munnari)
++
++
++The 1989 update of the time zone package featured:
++
++ * POSIXization (including interpretation of POSIX-style TZ environment
++ variables, provided by Guy Harris),
++ * ANSIfication (including versions of "mktime" and "difftime"),
++ * SVIDulation (an "altzone" variable)
++ * MACHination (the "gtime" function)
++ * corrections to some time zone data (including corrections to the rules
++ for Great Britain and New Zealand)
++ * reference data from the United States Naval Observatory for folks who
++ want to do additional time zones
++ * and the 1989 data for Saudi Arabia.
++
++ (Since this code will be treated as "part of the implementation" in some
++ places and as "part of the application" in others, there's no good way to
++ name functions, such as timegm, that are not part of the proposed ANSI C
++ standard; such functions have kept their old, underscore-free names in this
++ update.)
++
++ And the "dysize" function has disappeared; it was present to allow
++ compilation of the "date" command on old BSD systems, and a version of "date"
++ is now provided in the package. The "date" command is not created when you
++ "make all" since it may lack options provided by the version distributed with
++ your operating system, or may not interact with the system in the same way
++ the native version does.
++
++ Since POSIX frowns on correct leap second handling, the default behavior of
++ the "zic" command (in the absence of a "-L" option) has been changed to omit
++ leap second information from its output files.
++
++
++-----
++Notes
++
++This file contains copies of the part of each release announcement
++that talks about the changes in that release. The text has been
++adapted and reformatted for the purposes of this file.
++
++Traditionally a release R consists of a pair of tarball files,
++tzcodeR.tar.gz and tzdataR.tar.gz. However, some releases (e.g.,
++code2010a, data2012c) consist of just one or the other tarball, and a
++few (e.g., code2012c-data2012d) have tarballs with mixed version
++numbers. Recent releases also come in an experimental format
++consisting of a single tarball tzdb-R.tar.lz with extra data.
++
++Release time stamps are taken from the release's commit (for newer,
++Git-based releases), from the newest file in the tarball (for older
++releases, where this info is available) or from the email announcing
++the release (if all else fails; these are marked with a time zone of
++-0000 and an "is missing!" comment).
++
++Earlier versions of the code and data were not announced on the tz
++list and are not summarized here.
++
++This file is in the public domain.
++
++Local Variables:
++coding: utf-8
++End:
+Index: contrib/tzdata/README
+===================================================================
+--- contrib/tzdata/README (nonexistent)
++++ contrib/tzdata/README (working copy)
+@@ -0,0 +1,71 @@
++README for the tz distribution
++
++"What time is it?" -- Richard Deacon as The King
++"Any time you want it to be." -- Frank Baxter as The Scientist
++ (from the Bell System film "About Time")
++
++The Time Zone Database (often called tz or zoneinfo) contains code and
++data that represent the history of local time for many representative
++locations around the globe. It is updated periodically to reflect
++changes made by political bodies to time zone boundaries, UTC offsets,
++and daylight-saving rules.
++
++Here is a recipe for acquiring, building, installing, and testing the
++tz distribution on a GNU/Linux or similar host.
++
++To acquire the distribution, run the following shell commands:
++
++ mkdir tz
++ cd tz
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tz*-latest.tar.gz'
++ gzip -dc tzcode-latest.tar.gz | tar -xf -
++ gzip -dc tzdata-latest.tar.gz | tar -xf -
++
++Alternatively, the following shell commands acquire the same
++distribution, with extra data useful for regression testing:
++
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tzdb-latest.tar.lz'
++ lzip -dc tzdb-latest.tar.lz | tar -xf -
++
++Be sure to read the comments in "Makefile" and make any changes needed
++to make things right for your system, especially if you are using some
++platform other than GNU/Linux. Then run the following commands,
++substituting your desired installation directory for "$HOME/tzdir":
++
++ make TOPDIR=$HOME/tzdir install
++ $HOME/tzdir/etc/zdump -v America/Los_Angeles
++
++Historical local time information has been included here to:
++
++* provide a compendium of data about the history of civil time
++ that is useful even if not 100% accurate;
++
++* give an idea of the variety of local time rules that have
++ existed in the past and thus an idea of the variety that may be
++ expected in the future;
++
++* provide a test of the generality of the local time rule description
++ system.
++
++The information in the time zone data files is by no means authoritative;
++fixes and enhancements are welcome. Please see the file CONTRIBUTING
++for details.
++
++Thanks to these Time Zone Caballeros who've made major contributions to the
++time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz;
++Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to
++Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales
++for testing work, and to Gwillim Law for checking local mean time data.
++Thanks in particular to Arthur David Olson, the project's founder and first
++maintainer, to whom the time zone community owes the greatest debt of all.
++None of them are responsible for remaining errors.
++
++Look in <ftp://ftp.iana.org/tz/releases/> for updated versions of these files.
++
++Please send comments or information to tz@iana.org.
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson. The other files in this distribution are either
++public domain or BSD licensed; see the file LICENSE for details.
+Index: contrib/tzdata/Theory
+===================================================================
+--- contrib/tzdata/Theory (nonexistent)
++++ contrib/tzdata/Theory (working copy)
+@@ -0,0 +1,840 @@
++Theory and pragmatics of the tz code and data
++
++
++----- Outline -----
++
++ Scope of the tz database
++ Names of time zone rules
++ Time zone abbreviations
++ Accuracy of the tz database
++ Time and date functions
++ Calendrical issues
++ Time and time zones on Mars
++
++
++----- Scope of the tz database -----
++
++The tz database attempts to record the history and predicted future of
++all computer-based clocks that track civil time. To represent this
++data, the world is partitioned into regions whose clocks all agree
++about time stamps that occur after the somewhat-arbitrary cutoff point
++of the POSIX Epoch (1970-01-01 00:00:00 UTC). For each such region,
++the database records all known clock transitions, and labels the region
++with a notable location. Although 1970 is a somewhat-arbitrary
++cutoff, there are significant challenges to moving the cutoff earlier
++even by a decade or two, due to the wide variety of local practices
++before computer timekeeping became prevalent.
++
++Clock transitions before 1970 are recorded for each such location,
++because most systems support time stamps before 1970 and could
++misbehave if data entries were omitted for pre-1970 transitions.
++However, the database is not designed for and does not suffice for
++applications requiring accurate handling of all past times everywhere,
++as it would take far too much effort and guesswork to record all
++details of pre-1970 civil timekeeping.
++
++As described below, reference source code for using the tz database is
++also available. The tz code is upwards compatible with POSIX, an
++international standard for UNIX-like systems. As of this writing, the
++current edition of POSIX is:
++
++ The Open Group Base Specifications Issue 7
++ IEEE Std 1003.1, 2013 Edition
++ <http://pubs.opengroup.org/onlinepubs/9699919799/>
++
++
++
++----- Names of time zone rules -----
++
++Each of the database's time zone rules has a unique name.
++Inexperienced users are not expected to select these names unaided.
++Distributors should provide documentation and/or a simple selection
++interface that explains the names; for one example, see the 'tzselect'
++program in the tz code. The Unicode Common Locale Data Repository
++<http://cldr.unicode.org/> contains data that may be useful for other
++selection interfaces.
++
++The time zone rule naming conventions attempt to strike a balance
++among the following goals:
++
++ * Uniquely identify every region where clocks have agreed since 1970.
++ This is essential for the intended use: static clocks keeping local
++ civil time.
++
++ * Indicate to experts where that region is.
++
++ * Be robust in the presence of political changes. For example, names
++ of countries are ordinarily not used, to avoid incompatibilities
++ when countries change their name (e.g. Zaire->Congo) or when
++ locations change countries (e.g. Hong Kong from UK colony to
++ China).
++
++ * Be portable to a wide variety of implementations.
++
++ * Use a consistent naming conventions over the entire world.
++
++Names normally have the form AREA/LOCATION, where AREA is the name
++of a continent or ocean, and LOCATION is the name of a specific
++location within that region. North and South America share the same
++area, 'America'. Typical names are 'Africa/Cairo', 'America/New_York',
++and 'Pacific/Honolulu'.
++
++Here are the general rules used for choosing location names,
++in decreasing order of importance:
++
++ Use only valid POSIX file name components (i.e., the parts of
++ names other than '/'). Do not use the file name
++ components '.' and '..'. Within a file name component,
++ use only ASCII letters, '.', '-' and '_'. Do not use
++ digits, as that might create an ambiguity with POSIX
++ TZ strings. A file name component must not exceed 14
++ characters or start with '-'. E.g., prefer 'Brunei'
++ to 'Bandar_Seri_Begawan'. Exceptions: see the discussion
++ of legacy names below.
++ A name must not be empty, or contain '//', or start or end with '/'.
++ Do not use names that differ only in case. Although the reference
++ implementation is case-sensitive, some other implementations
++ are not, and they would mishandle names differing only in case.
++ If one name A is an initial prefix of another name AB (ignoring case),
++ then B must not start with '/', as a regular file cannot have
++ the same name as a directory in POSIX. For example,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++ Uninhabited regions like the North Pole and Bouvet Island
++ do not need locations, since local time is not defined there.
++ There should typically be at least one name for each ISO 3166-1
++ officially assigned two-letter code for an inhabited country
++ or territory.
++ If all the clocks in a region have agreed since 1970,
++ don't bother to include more than one location
++ even if subregions' clocks disagreed before 1970.
++ Otherwise these tables would become annoyingly large.
++ If a name is ambiguous, use a less ambiguous alternative;
++ e.g. many cities are named San José and Georgetown, so
++ prefer 'Costa_Rica' to 'San_Jose' and 'Guyana' to 'Georgetown'.
++ Keep locations compact. Use cities or small islands, not countries
++ or regions, so that any future time zone changes do not split
++ locations into different time zones. E.g. prefer 'Paris'
++ to 'France', since France has had multiple time zones.
++ Use mainstream English spelling, e.g. prefer 'Rome' to 'Roma', and
++ prefer 'Athens' to the Greek 'Αθήνα' or the Romanized 'Athína'.
++ The POSIX file name restrictions encourage this rule.
++ Use the most populous among locations in a zone,
++ e.g. prefer 'Shanghai' to 'Beijing'. Among locations with
++ similar populations, pick the best-known location,
++ e.g. prefer 'Rome' to 'Milan'.
++ Use the singular form, e.g. prefer 'Canary' to 'Canaries'.
++ Omit common suffixes like '_Islands' and '_City', unless that
++ would lead to ambiguity. E.g. prefer 'Cayman' to
++ 'Cayman_Islands' and 'Guatemala' to 'Guatemala_City',
++ but prefer 'Mexico_City' to 'Mexico' because the country
++ of Mexico has several time zones.
++ Use '_' to represent a space.
++ Omit '.' from abbreviations in names, e.g. prefer 'St_Helena'
++ to 'St._Helena'.
++ Do not change established names if they only marginally
++ violate the above rules. For example, don't change
++ the existing name 'Rome' to 'Milan' merely because
++ Milan's population has grown to be somewhat greater
++ than Rome's.
++ If a name is changed, put its old spelling in the 'backward' file.
++ This means old spellings will continue to work.
++
++The file 'zone1970.tab' lists geographical locations used to name time
++zone rules. It is intended to be an exhaustive list of names for
++geographic regions as described above; this is a subset of the names
++in the data. Although a 'zone1970.tab' location's longitude
++corresponds to its LMT offset with one hour for every 15 degrees east
++longitude, this relationship is not exact.
++
++Older versions of this package used a different naming scheme,
++and these older names are still supported.
++See the file 'backward' for most of these older names
++(e.g., 'US/Eastern' instead of 'America/New_York').
++The other old-fashioned names still supported are
++'WET', 'CET', 'MET', and 'EET' (see the file 'europe').
++
++Older versions of this package defined legacy names that are
++incompatible with the first rule of location names, but which are
++still supported. These legacy names are mostly defined in the file
++'etcetera'. Also, the file 'backward' defines the legacy names
++'GMT0', 'GMT-0', 'GMT+0' and 'Canada/East-Saskatchewan', and the file
++'northamerica' defines the legacy names 'EST5EDT', 'CST6CDT',
++'MST7MDT', and 'PST8PDT'.
++
++Excluding 'backward' should not affect the other data. If
++'backward' is excluded, excluding 'etcetera' should not affect the
++remaining data.
++
++
++----- Time zone abbreviations -----
++
++When this package is installed, it generates time zone abbreviations
++like 'EST' to be compatible with human tradition and POSIX.
++Here are the general rules used for choosing time zone abbreviations,
++in decreasing order of importance:
++
++ Use three or more characters that are ASCII alphanumerics or '+' or '-'.
++ Previous editions of this database also used characters like
++ ' ' and '?', but these characters have a special meaning to
++ the shell and cause commands like
++ set `date`
++ to have unexpected effects.
++ Previous editions of this rule required upper-case letters,
++ but the Congressman who introduced Chamorro Standard Time
++ preferred "ChST", so lower-case letters are now allowed.
++ Also, POSIX from 2001 on relaxed the rule to allow '-', '+',
++ and alphanumeric characters from the portable character set
++ in the current locale. In practice ASCII alphanumerics and
++ '+' and '-' are safe in all locales.
++
++ In other words, in the C locale the POSIX extended regular
++ expression [-+[:alnum:]]{3,} should match the abbreviation.
++ This guarantees that all abbreviations could have been
++ specified by a POSIX TZ string.
++
++ Use abbreviations that are in common use among English-speakers,
++ e.g. 'EST' for Eastern Standard Time in North America.
++ We assume that applications translate them to other languages
++ as part of the normal localization process; for example,
++ a French application might translate 'EST' to 'HNE'.
++
++ For zones whose times are taken from a city's longitude, use the
++ traditional xMT notation, e.g. 'PMT' for Paris Mean Time.
++ The only name like this in current use is 'GMT'.
++
++ Use 'LMT' for local mean time of locations before the introduction
++ of standard time; see "Scope of the tz database".
++
++ If there is no common English abbreviation, use numeric offsets like
++ -05 and +0830 that are generated by zic's %z notation.
++
++ [The remaining guidelines predate the introduction of %z.
++ They are problematic as they mean tz data entries invent
++ notation rather than record it. These guidelines are now
++ deprecated and the plan is to gradually move to %z for
++ inhabited locations and to "-00" for uninhabited locations.]
++
++ If there is no common English abbreviation, abbreviate the English
++ translation of the usual phrase used by native speakers.
++ If this is not available or is a phrase mentioning the country
++ (e.g. "Cape Verde Time"), then:
++
++ When a country is identified with a single or principal zone,
++ append 'T' to the country's ISO code, e.g. 'CVT' for
++ Cape Verde Time. For summer time append 'ST';
++ for double summer time append 'DST'; etc.
++ Otherwise, take the first three letters of an English place
++ name identifying each zone and append 'T', 'ST', etc.
++ as before; e.g. 'VLAST' for VLAdivostok Summer Time.
++
++ Use UT (with time zone abbreviation '-00') for locations while
++ uninhabited. The leading '-' is a flag that the time
++ zone is in some sense undefined; this notation is
++ derived from Internet RFC 3339.
++
++Application writers should note that these abbreviations are ambiguous
++in practice: e.g. 'CST' has a different meaning in China than
++it does in the United States. In new applications, it's often better
++to use numeric UT offsets like '-0600' instead of time zone
++abbreviations like 'CST'; this avoids the ambiguity.
++
++
++----- Accuracy of the tz database -----
++
++The tz database is not authoritative, and it surely has errors.
++Corrections are welcome and encouraged; see the file CONTRIBUTING.
++Users requiring authoritative data should consult national standards
++bodies and the references cited in the database's comments.
++
++Errors in the tz database arise from many sources:
++
++ * The tz database predicts future time stamps, and current predictions
++ will be incorrect after future governments change the rules.
++ For example, if today someone schedules a meeting for 13:00 next
++ October 1, Casablanca time, and tomorrow Morocco changes its
++ daylight saving rules, software can mess up after the rule change
++ if it blithely relies on conversions made before the change.
++
++ * The pre-1970 entries in this database cover only a tiny sliver of how
++ clocks actually behaved; the vast majority of the necessary
++ information was lost or never recorded. Thousands more zones would
++ be needed if the tz database's scope were extended to cover even
++ just the known or guessed history of standard time; for example,
++ the current single entry for France would need to split into dozens
++ of entries, perhaps hundreds. And in most of the world even this
++ approach would be misleading due to widespread disagreement or
++ indifference about what times should be observed. In her 2015 book
++ "The Global Transformation of Time, 1870-1950", Vanessa Ogle writes
++ "Outside of Europe and North America there was no system of time
++ zones at all, often not even a stable landscape of mean times,
++ prior to the middle decades of the twentieth century". See:
++ Timothy Shenk, Booked: A Global History of Time. Dissent 2015-12-17
++ https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanessa-ogle
++
++ * Most of the pre-1970 data entries come from unreliable sources, often
++ astrology books that lack citations and whose compilers evidently
++ invented entries when the true facts were unknown, without
++ reporting which entries were known and which were invented.
++ These books often contradict each other or give implausible entries,
++ and on the rare occasions when they are checked they are
++ typically found to be incorrect.
++
++ * For the UK the tz database relies on years of first-class work done by
++ Joseph Myers and others; see <http://www.polyomino.org.uk/british-time/>.
++ Other countries are not done nearly as well.
++
++ * Sometimes, different people in the same city would maintain clocks
++ that differed significantly. Railway time was used by railroad
++ companies (which did not always agree with each other),
++ church-clock time was used for birth certificates, etc.
++ Often this was merely common practice, but sometimes it was set by law.
++ For example, from 1891 to 1911 the UT offset in France was legally
++ 0:09:21 outside train stations and 0:04:21 inside.
++
++ * Although a named location in the tz database stands for the
++ containing region, its pre-1970 data entries are often accurate for
++ only a small subset of that region. For example, Europe/London
++ stands for the United Kingdom, but its pre-1847 times are valid
++ only for locations that have London's exact meridian, and its 1847
++ transition to GMT is known to be valid only for the L&NW and the
++ Caledonian railways.
++
++ * The tz database does not record the earliest time for which a zone's
++ data entries are thereafter valid for every location in the region.
++ For example, Europe/London is valid for all locations in its
++ region after GMT was made the standard time, but the date of
++ standardization (1880-08-02) is not in the tz database, other than
++ in commentary. For many zones the earliest time of validity is
++ unknown.
++
++ * The tz database does not record a region's boundaries, and in many
++ cases the boundaries are not known. For example, the zone
++ America/Kentucky/Louisville represents a region around the city of
++ Louisville, the boundaries of which are unclear.
++
++ * Changes that are modeled as instantaneous transitions in the tz
++ database were often spread out over hours, days, or even decades.
++
++ * Even if the time is specified by law, locations sometimes
++ deliberately flout the law.
++
++ * Early timekeeping practices, even assuming perfect clocks, were
++ often not specified to the accuracy that the tz database requires.
++
++ * Sometimes historical timekeeping was specified more precisely
++ than what the tz database can handle. For example, from 1909 to
++ 1937 Netherlands clocks were legally UT +00:19:32.13, but the tz
++ database cannot represent the fractional second.
++
++ * Even when all the timestamp transitions recorded by the tz database
++ are correct, the tz rules that generate them may not faithfully
++ reflect the historical rules. For example, from 1922 until World
++ War II the UK moved clocks forward the day following the third
++ Saturday in April unless that was Easter, in which case it moved
++ clocks forward the previous Sunday. Because the tz database has no
++ way to specify Easter, these exceptional years are entered as
++ separate tz Rule lines, even though the legal rules did not change.
++
++ * The tz database models pre-standard time using the proleptic Gregorian
++ calendar and local mean time (LMT), but many people used other
++ calendars and other timescales. For example, the Roman Empire used
++ the Julian calendar, and had 12 varying-length daytime hours with a
++ non-hour-based system at night.
++
++ * Early clocks were less reliable, and data entries do not represent
++ this unreliability.
++
++ * As for leap seconds, civil time was not based on atomic time before
++ 1972, and we don't know the history of earth's rotation accurately
++ enough to map SI seconds to historical solar time to more than
++ about one-hour accuracy. See: Morrison LV, Stephenson FR.
++ Historical values of the Earth's clock error Delta T and the
++ calculation of eclipses. J Hist Astron. 2004;35:327-36
++ <http://adsabs.harvard.edu/full/2004JHA....35..327M>;
++ Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
++ <http://adsabs.harvard.edu/full/2005JHA....36..339M>.
++
++ * The relationship between POSIX time (that is, UTC but ignoring leap
++ seconds) and UTC is not agreed upon after 1972. Although the POSIX
++ clock officially stops during an inserted leap second, at least one
++ proposed standard has it jumping back a second instead; and in
++ practice POSIX clocks more typically either progress glacially during
++ a leap second, or are slightly slowed while near a leap second.
++
++ * The tz database does not represent how uncertain its information is.
++ Ideally it would contain information about when data entries are
++ incomplete or dicey. Partial temporal knowledge is a field of
++ active research, though, and it's not clear how to apply it here.
++
++In short, many, perhaps most, of the tz database's pre-1970 and future
++time stamps are either wrong or misleading. Any attempt to pass the
++tz database off as the definition of time should be unacceptable to
++anybody who cares about the facts. In particular, the tz database's
++LMT offsets should not be considered meaningful, and should not prompt
++creation of zones merely because two locations differ in LMT or
++transitioned to standard time at different dates.
++
++
++----- Time and date functions -----
++
++The tz code contains time and date functions that are upwards
++compatible with those of POSIX.
++
++POSIX has the following properties and limitations.
++
++* In POSIX, time display in a process is controlled by the
++ environment variable TZ. Unfortunately, the POSIX TZ string takes
++ a form that is hard to describe and is error-prone in practice.
++ Also, POSIX TZ strings can't deal with other (for example, Israeli)
++ daylight saving time rules, or situations where more than two
++ time zone abbreviations are used in an area.
++
++ The POSIX TZ string takes the following form:
++
++ stdoffset[dst[offset][,date[/time],date[/time]]]
++
++ where:
++
++ std and dst
++ are 3 or more characters specifying the standard
++ and daylight saving time (DST) zone names.
++ Starting with POSIX.1-2001, std and dst may also be
++ in a quoted form like "<UTC+10>"; this allows
++ "+" and "-" in the names.
++ offset
++ is of the form '[+-]hh:[mm[:ss]]' and specifies the
++ offset west of UT. 'hh' may be a single digit; 0<=hh<=24.
++ The default DST offset is one hour ahead of standard time.
++ date[/time],date[/time]
++ specifies the beginning and end of DST. If this is absent,
++ the system supplies its own rules for DST, and these can
++ differ from year to year; typically US DST rules are used.
++ time
++ takes the form 'hh:[mm[:ss]]' and defaults to 02:00.
++ This is the same format as the offset, except that a
++ leading '+' or '-' is not allowed.
++ date
++ takes one of the following forms:
++ Jn (1<=n<=365)
++ origin-1 day number not counting February 29
++ n (0<=n<=365)
++ origin-0 day number counting February 29 if present
++ Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)
++ for the dth day of week n of month m of the year,
++ where week 1 is the first week in which day d appears,
++ and '5' stands for the last week in which day d appears
++ (which may be either the 4th or 5th week).
++ Typically, this is the only useful form;
++ the n and Jn forms are rarely used.
++
++ Here is an example POSIX TZ string, for US Pacific time using rules
++ appropriate from 1987 through 2006:
++
++ TZ='PST8PDT,M4.1.0/02:00,M10.5.0/02:00'
++
++ This POSIX TZ string is hard to remember, and mishandles time stamps
++ before 1987 and after 2006. With this package you can use this
++ instead:
++
++ TZ='America/Los_Angeles'
++
++* POSIX does not define the exact meaning of TZ values like "EST5EDT".
++ Typically the current US DST rules are used to interpret such values,
++ but this means that the US DST rules are compiled into each program
++ that does time conversion. This means that when US time conversion
++ rules change (as in the United States in 1987), all programs that
++ do time conversion must be recompiled to ensure proper results.
++
++* The TZ environment variable is process-global, which makes it hard
++ to write efficient, thread-safe applications that need access
++ to multiple time zones.
++
++* In POSIX, there's no tamper-proof way for a process to learn the
++ system's best idea of local wall clock. (This is important for
++ applications that an administrator wants used only at certain times -
++ without regard to whether the user has fiddled the "TZ" environment
++ variable. While an administrator can "do everything in UTC" to get
++ around the problem, doing so is inconvenient and precludes handling
++ daylight saving time shifts - as might be required to limit phone
++ calls to off-peak hours.)
++
++* POSIX provides no convenient and efficient way to determine the UT
++ offset and time zone abbreviation of arbitrary time stamps,
++ particularly for time zone settings that do not fit into the
++ POSIX model.
++
++* POSIX requires that systems ignore leap seconds.
++
++* The tz code attempts to support all the time_t implementations
++ allowed by POSIX. The time_t type represents a nonnegative count of
++ seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds.
++ In practice, time_t is usually a signed 64- or 32-bit integer; 32-bit
++ signed time_t values stop working after 2038-01-19 03:14:07 UTC, so
++ new implementations these days typically use a signed 64-bit integer.
++ Unsigned 32-bit integers are used on one or two platforms,
++ and 36-bit and 40-bit integers are also used occasionally.
++ Although earlier POSIX versions allowed time_t to be a
++ floating-point type, this was not supported by any practical
++ systems, and POSIX.1-2013 and the tz code both require time_t
++ to be an integer type.
++
++These are the extensions that have been made to the POSIX functions:
++
++* The "TZ" environment variable is used in generating the name of a file
++ from which time zone information is read (or is interpreted a la
++ POSIX); "TZ" is no longer constrained to be a three-letter time zone
++ name followed by a number of hours and an optional three-letter
++ daylight time zone name. The daylight saving time rules to be used
++ for a particular time zone are encoded in the time zone file;
++ the format of the file allows U.S., Australian, and other rules to be
++ encoded, and allows for situations where more than two time zone
++ abbreviations are used.
++
++ It was recognized that allowing the "TZ" environment variable to
++ take on values such as "America/New_York" might cause "old" programs
++ (that expect "TZ" to have a certain form) to operate incorrectly;
++ consideration was given to using some other environment variable
++ (for example, "TIMEZONE") to hold the string used to generate the
++ time zone information file name. In the end, however, it was decided
++ to continue using "TZ": it is widely used for time zone purposes;
++ separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;
++ and systems where "new" forms of "TZ" might cause problems can simply
++ use TZ values such as "EST5EDT" which can be used both by
++ "new" programs (a la POSIX) and "old" programs (as zone names and
++ offsets).
++
++* The code supports platforms with a UT offset member in struct tm,
++ e.g., tm_gmtoff.
++
++* The code supports platforms with a time zone abbreviation member in
++ struct tm, e.g., tm_zone.
++
++* Since the "TZ" environment variable can now be used to control time
++ conversion, the "daylight" and "timezone" variables are no longer
++ needed. (These variables are defined and set by "tzset"; however, their
++ values will not be used by "localtime.")
++
++* Functions tzalloc, tzfree, localtime_rz, and mktime_z for
++ more-efficient thread-safe applications that need to use
++ multiple time zones. The tzalloc and tzfree functions
++ allocate and free objects of type timezone_t, and localtime_rz
++ and mktime_z are like localtime_r and mktime with an extra
++ timezone_t argument. The functions were inspired by NetBSD.
++
++* A function "tzsetwall" has been added to arrange for the system's
++ best approximation to local wall clock time to be delivered by
++ subsequent calls to "localtime." Source code for portable
++ applications that "must" run on local wall clock time should call
++ "tzsetwall();" if such code is moved to "old" systems that don't
++ provide tzsetwall, you won't be able to generate an executable program.
++ (These time zone functions also arrange for local wall clock time to be
++ used if tzset is called - directly or indirectly - and there's no "TZ"
++ environment variable; portable applications should not, however, rely
++ on this behavior since it's not the way SVR2 systems behave.)
++
++* Negative time_t values are supported, on systems where time_t is signed.
++
++* These functions can account for leap seconds, thanks to Bradley White.
++
++Points of interest to folks with other systems:
++
++* Code compatible with this package is already part of many platforms,
++ including GNU/Linux, Android, the BSDs, Chromium OS, Cygwin, AIX, iOS,
++ BlackBery 10, macOS, Microsoft Windows, OpenVMS, and Solaris.
++ On such hosts, the primary use of this package
++ is to update obsolete time zone rule tables.
++ To do this, you may need to compile the time zone compiler
++ 'zic' supplied with this package instead of using the system 'zic',
++ since the format of zic's input is occasionally extended,
++ and a platform may still be shipping an older zic.
++
++* The UNIX Version 7 "timezone" function is not present in this package;
++ it's impossible to reliably map timezone's arguments (a "minutes west
++ of GMT" value and a "daylight saving time in effect" flag) to a
++ time zone abbreviation, and we refuse to guess.
++ Programs that in the past used the timezone function may now examine
++ tzname[localtime(&clock)->tm_isdst] to learn the correct time
++ zone abbreviation to use. Alternatively, use
++ localtime(&clock)->tm_zone if this has been enabled.
++
++* The 4.2BSD gettimeofday function is not used in this package.
++ This formerly let users obtain the current UTC offset and DST flag,
++ but this functionality was removed in later versions of BSD.
++
++* In SVR2, time conversion fails for near-minimum or near-maximum
++ time_t values when doing conversions for places that don't use UT.
++ This package takes care to do these conversions correctly.
++ A comment in the source code tells how to get compatibly wrong
++ results.
++
++The functions that are conditionally compiled if STD_INSPIRED is defined
++should, at this point, be looked on primarily as food for thought. They are
++not in any sense "standard compatible" - some are not, in fact, specified in
++*any* standard. They do, however, represent responses of various authors to
++standardization proposals.
++
++Other time conversion proposals, in particular the one developed by folks at
++Hewlett Packard, offer a wider selection of functions that provide capabilities
++beyond those provided here. The absence of such functions from this package
++is not meant to discourage the development, standardization, or use of such
++functions. Rather, their absence reflects the decision to make this package
++contain valid extensions to POSIX, to ensure its broad acceptability. If
++more powerful time conversion functions can be standardized, so much the
++better.
++
++
++----- Interface stability -----
++
++The tz code and data supply the following interfaces:
++
++ * A set of zone names as per "Names of time zone rules" above.
++
++ * Library functions described in "Time and date functions" above.
++
++ * The programs tzselect, zdump, and zic, documented in their man pages.
++
++ * The format of zic input files, documented in the zic man page.
++
++ * The format of zic output files, documented in the tzfile man page.
++
++ * The format of zone table files, documented in zone1970.tab.
++
++ * The format of the country code file, documented in iso3166.tab.
++
++When these interfaces are changed, an effort is made to preserve
++backward compatibility. For example, tz data files typically do not
++rely on recently-added zic features, so that users can run older zic
++versions to process newer data files.
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for time
++stamps, as data entries are often based on guesswork and these guesses
++may be corrected or improved.
++
++
++----- Calendrical issues -----
++
++Calendrical issues are a bit out of scope for a time zone database,
++but they indicate the sort of problems that we would run into if we
++extended the time zone database further into the past. An excellent
++resource in this area is Nachum Dershowitz and Edward M. Reingold,
++Calendrical Calculations: Third Edition, Cambridge University Press (2008)
++<http://emr.cs.iit.edu/home/reingold/calendar-book/third-edition/>.
++Other information and sources are given below. They sometimes disagree.
++
++
++France
++
++Gregorian calendar adopted 1582-12-20.
++French Revolutionary calendar used 1793-11-24 through 1805-12-31,
++and (in Paris only) 1871-05-06 through 1871-05-23.
++
++
++Russia
++
++From Chris Carrier (1996-12-02):
++On 1929-10-01 the Soviet Union instituted an "Eternal Calendar"
++with 30-day months plus 5 holidays, with a 5-day week.
++On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the
++Gregorian calendar while retaining the 6-day week; on 1940-06-27 it
++reverted to the 7-day week. With the 6-day week the usual days
++off were the 6th, 12th, 18th, 24th and 30th of the month.
++(Source: Evitiar Zerubavel, _The Seven Day Circle_)
++
++
++Mark Brader reported a similar story in "The Book of Calendars", edited
++by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
++
++From: Petteri Sulonen (via Usenet)
++Date: 14 Jan 1999 00:00:00 GMT
++...
++
++If your source is correct, how come documents between 1929 and 1940 were
++still dated using the conventional, Gregorian calendar?
++
++I can post a scan of a document dated December 1, 1934, signed by
++Yenukidze, the secretary, on behalf of Kalinin, the President of the
++Executive Committee of the Supreme Soviet, if you like.
++
++
++
++Sweden (and Finland)
++
++From: Mark Brader
++Subject: Re: Gregorian reform - a part of locale?
++<news:1996Jul6.012937.29190@sq.com>
++Date: 1996-07-06
++
++In 1700, Denmark made the transition from Julian to Gregorian. Sweden
++decided to *start* a transition in 1700 as well, but rather than have one of
++those unsightly calendar gaps :-), they simply decreed that the next leap
++year after 1696 would be in 1744 - putting the whole country on a calendar
++different from both Julian and Gregorian for a period of 40 years.
++
++However, in 1704 something went wrong and the plan was not carried through;
++they did, after all, have a leap year that year. And one in 1708. In 1712
++they gave it up and went back to Julian, putting 30 days in February that
++year!...
++
++Then in 1753, Sweden made the transition to Gregorian in the usual manner,
++getting there only 13 years behind the original schedule.
++
++(A previous posting of this story was challenged, and Swedish readers
++produced the following references to support it: "Tideräkning och historia"
++by Natanael Beckman (1924) and "Tid, en bok om tideräkning och
++kalenderväsen" by Lars-Olof Lodén (1968).
++
++
++Grotefend's data
++
++From: "Michael Palmer" [with one obvious typo fixed]
++Subject: Re: Gregorian Calendar (was Re: Another FHC related question
++Newsgroups: soc.genealogy.german
++Date: Tue, 9 Feb 1999 02:32:48 -800
++...
++
++The following is a(n incomplete) listing, arranged chronologically, of
++European states, with the date they converted from the Julian to the
++Gregorian calendar:
++
++04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman
++ Catholics and Danzig only)
++09/20 Dec 1582 - France, Lorraine
++
++21 Dec 1582/
++ 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau
++10/21 Feb 1583 - bishopric of Liege (Lüttich)
++13/24 Feb 1583 - bishopric of Augsburg
++04/15 Oct 1583 - electorate of Trier
++05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,
++ Salzburg, Brixen
++13/24 Oct 1583 - Austrian Oberelsaß and Breisgau
++20/31 Oct 1583 - bishopric of Basel
++02/13 Nov 1583 - duchy of Jülich-Berg
++02/13 Nov 1583 - electorate and city of Köln
++04/15 Nov 1583 - bishopric of Würzburg
++11/22 Nov 1583 - electorate of Mainz
++16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden
++17/28 Nov 1583 - bishopric of Münster and duchy of Cleve
++14/25 Dec 1583 - Steiermark
++
++06/17 Jan 1584 - Austria and Bohemia
++11/22 Jan 1584 - Lucerne, Uri, Schwyz, Zug, Freiburg, Solothurn
++12/23 Jan 1584 - Silesia and the Lausitz
++22 Jan/
++ 02 Feb 1584 - Hungary (legally on 21 Oct 1587)
++ Jun 1584 - Unterwalden
++01/12 Jul 1584 - duchy of Westfalen
++
++16/27 Jun 1585 - bishopric of Paderborn
++
++14/25 Dec 1590 - Transylvania
++
++22 Aug/
++ 02 Sep 1612 - duchy of Prussia
++
++13/24 Dec 1614 - Pfalz-Neuburg
++
++ 1617 - duchy of Kurland (reverted to the Julian calendar in
++ 1796)
++
++ 1624 - bishopric of Osnabrück
++
++ 1630 - bishopric of Minden
++
++15/26 Mar 1631 - bishopric of Hildesheim
++
++ 1655 - Kanton Wallis
++
++05/16 Feb 1682 - city of Strassburg
++
++18 Feb/
++ 01 Mar 1700 - Protestant Germany (including Swedish possessions in
++ Germany), Denmark, Norway
++30 Jun/
++ 12 Jul 1700 - Gelderland, Zutphen
++10 Nov/
++ 12 Dec 1700 - Utrecht, Overijssel
++
++31 Dec 1700/
++ 12 Jan 1701 - Friesland, Groningen, Zürich, Bern, Basel, Geneva,
++ Turgau, and Schaffhausen
++
++ 1724 - Glarus, Appenzell, and the city of St. Gallen
++
++01 Jan 1750 - Pisa and Florence
++
++02/14 Sep 1752 - Great Britain
++
++17 Feb/
++ 01 Mar 1753 - Sweden
++
++1760-1812 - Graubünden
++
++The Russian empire (including Finland and the Baltic states) did not
++convert to the Gregorian calendar until the Soviet revolution of 1917.
++
++Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen
++Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend
++(Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.
++
++
++----- Time and time zones on Mars -----
++
++Some people's work schedules use Mars time. Jet Propulsion Laboratory
++(JPL) coordinators have kept Mars time on and off at least since 1997
++for the Mars Pathfinder mission. Some of their family members have
++also adapted to Mars time. Dozens of special Mars watches were built
++for JPL workers who kept Mars time during the Mars Exploration
++Rovers mission (2004). These timepieces look like normal Seikos and
++Citizens but use Mars seconds rather than terrestrial seconds.
++
++A Mars solar day is called a "sol" and has a mean period equal to
++about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is
++divided into a conventional 24-hour clock, so each Mars second equals
++about 1.02749125 terrestrial seconds.
++
++The prime meridian of Mars goes through the center of the crater
++Airy-0, named in honor of the British astronomer who built the
++Greenwich telescope that defines Earth's prime meridian. Mean solar
++time on the Mars prime meridian is called Mars Coordinated Time (MTC).
++
++Each landed mission on Mars has adopted a different reference for
++solar time keeping, so there is no real standard for Mars time zones.
++For example, the Mars Exploration Rover project (2004) defined two
++time zones "Local Solar Time A" and "Local Solar Time B" for its two
++missions, each zone designed so that its time equals local true solar
++time at approximately the middle of the nominal mission. Such a "time
++zone" is not particularly suited for any application other than the
++mission itself.
++
++Many calendars have been proposed for Mars, but none have achieved
++wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a
++sequential count of Mars solar days elapsed since about 1873-12-29
++12:00 GMT.
++
++The tz database does not currently support Mars time, but it is
++documented here in the hopes that support will be added eventually.
++
++Sources:
++
++Michael Allison and Robert Schmunk,
++"Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
++<http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2012-08-08).
++
++Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
++<http://articles.latimes.com/2004/jan/14/science/sci-marstime14>
++(2004-01-14), pp A1, A20-A21.
++
++Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
++<http://www.theatlantic.com/technology/archive/2015/02/jet-lag-is-worse-on-mars/386033/>
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson.
++
++-----
++Local Variables:
++coding: utf-8
++End:
+Index: contrib/tzdata/africa
+===================================================================
+--- contrib/tzdata/africa (revision 309576)
++++ contrib/tzdata/africa (working copy)
+@@ -343,6 +343,12 @@ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
+ # decision to abandon DST permanently. See Ahram Online 2015-04-24.
+ # http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx
+
++# From Steffen Thorsen (2016-04-29):
++# Egypt will have DST from July 7 until the end of October....
++# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx
++# From Mina Samuel (2016-07-04):
++# Egyptian government took the decision to cancel the DST,
++
+ Rule Egypt 2008 only - Aug lastThu 24:00 0 -
+ Rule Egypt 2009 only - Aug 20 24:00 0 -
+ Rule Egypt 2010 only - Aug 10 24:00 0 -
+@@ -458,7 +464,7 @@ Zone Africa/Monrovia -0:43:08 - LMT 1882
+ # http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
+ #
+ # From Paul Eggert (2013-10-25):
+-# For now, assume they're reverting to the pre-2012 rules of permanent UTC+2.
++# For now, assume they're reverting to the pre-2012 rules of permanent UT +02.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Libya 1951 only - Oct 14 2:00 1:00 S
+@@ -858,11 +864,11 @@ Rule Morocco 2009 only - Aug 21 0:00 0 -
+ Rule Morocco 2010 only - May 2 0:00 1:00 S
+ Rule Morocco 2010 only - Aug 8 0:00 0 -
+ Rule Morocco 2011 only - Apr 3 0:00 1:00 S
+-Rule Morocco 2011 only - Jul 31 0 0 -
++Rule Morocco 2011 only - Jul 31 0:00 0 -
+ Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S
+-Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2012 only - Jul 20 3:00 0 -
+ Rule Morocco 2012 only - Aug 20 2:00 1:00 S
++Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2013 only - Jul 7 3:00 0 -
+ Rule Morocco 2013 only - Aug 10 2:00 1:00 S
+ Rule Morocco 2013 max - Oct lastSun 3:00 0 -
+Index: contrib/tzdata/antarctica
+===================================================================
+--- contrib/tzdata/antarctica (revision 309576)
++++ contrib/tzdata/antarctica (working copy)
+@@ -10,11 +10,9 @@
+ # http://www.spri.cam.ac.uk/bob/periant.htm
+ # for information.
+ # Unless otherwise specified, we have no time zone information.
+-#
+-# Except for the French entries,
+-# I made up all time zone abbreviations mentioned here; corrections welcome!
+-# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
+
++# FORMAT is '-00' and GMTOFF is 0 for locations while uninhabited.
++
+ # Argentina - year-round bases
+ # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+ # Carlini, Potter Cove, King George Island, -6414-0602320, since 1982-01
+@@ -29,7 +27,7 @@
+ # previously sealers and scientific personnel wintered
+ # Margaret Turner reports
+ # http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html
+-# (1999-09-30) that they're UTC+5, with no DST;
++# (1999-09-30) that they're UT +05, with no DST;
+ # presumably this is when they have visitors.
+ #
+ # year-round bases
+@@ -66,25 +64,29 @@
+ # Background:
+ # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
+
++# From Steffen Thorsen (2016-10-28):
++# Australian Antarctica Division informed us that Casey changed time
++# zone to UTC+11 in "the morning of 22nd October 2016".
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Casey 0 - zzz 1969
+- 8:00 - AWST 2009 Oct 18 2:00
+- # Australian Western Std Time
+- 11:00 - CAST 2010 Mar 5 2:00 # Casey Time
+- 8:00 - AWST 2011 Oct 28 2:00
+- 11:00 - CAST 2012 Feb 21 17:00u
+- 8:00 - AWST
+-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+- 7:00 - DAVT 1964 Nov # Davis Time
+- 0 - zzz 1969 Feb
+- 7:00 - DAVT 2009 Oct 18 2:00
+- 5:00 - DAVT 2010 Mar 10 20:00u
+- 7:00 - DAVT 2011 Oct 28 2:00
+- 5:00 - DAVT 2012 Feb 21 20:00u
+- 7:00 - DAVT
+-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+- 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time
+- 5:00 - MAWT
++Zone Antarctica/Casey 0 - -00 1969
++ 8:00 - +08 2009 Oct 18 2:00
++ 11:00 - +11 2010 Mar 5 2:00
++ 8:00 - +08 2011 Oct 28 2:00
++ 11:00 - +11 2012 Feb 21 17:00u
++ 8:00 - +08 2016 Oct 22
++ 11:00 - +11
++Zone Antarctica/Davis 0 - -00 1957 Jan 13
++ 7:00 - +07 1964 Nov
++ 0 - -00 1969 Feb
++ 7:00 - +07 2009 Oct 18 2:00
++ 5:00 - +05 2010 Mar 10 20:00u
++ 7:00 - +07 2011 Oct 28 2:00
++ 5:00 - +05 2012 Feb 21 20:00u
++ 7:00 - +07
++Zone Antarctica/Mawson 0 - -00 1954 Feb 13
++ 6:00 - +06 2009 Oct 18 2:00
++ 5:00 - +05
+ # References:
+ # Casey Weather (1998-02-26)
+ # http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html
+@@ -137,8 +139,8 @@
+ # fishing stations operated variously 1819/1931
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
+- 5:00 - TFT # ISO code TF Time
++Zone Indian/Kerguelen 0 - -00 1950 # Port-aux-Français
++ 5:00 - +05
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+@@ -148,10 +150,10 @@
+ # It was destroyed by fire on 1952-01-14.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/DumontDUrville 0 - zzz 1947
+- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+- 0 - zzz 1956 Nov
+- 10:00 - DDUT # Dumont-d'Urville Time
++Zone Antarctica/DumontDUrville 0 - -00 1947
++ 10:00 - +10 1952 Jan 14
++ 0 - -00 1956 Nov
++ 10:00 - +10
+
+ # France & Italy - year-round base
+ # Concordia, -750600+1232000, since 2005
+@@ -176,8 +178,8 @@
+ # was established on 1957-01-29. Since Syowa station is still the main
+ # station of Japan, it's appropriate for the principal location.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+- 3:00 - SYOT # Syowa Time
++Zone Antarctica/Syowa 0 - -00 1957 Jan 29
++ 3:00 - +03
+ # See:
+ # NIPR Antarctic Research Activities (1999-08-17)
+ # http://www.nipr.ac.jp/english/ara01.html
+@@ -214,19 +216,19 @@
+ # correct, but they should be quite close to the actual dates.
+ #
+ # From Paul Eggert (2014-03-21):
+-# The CET-switching Troll rules require zic from tzcode 2014b or later, so as
++# The CET-switching Troll rules require zic from tz 2014b or later, so as
+ # suggested by Bengt-Inge Larsson comment them out for now, and approximate
+ # with only UTC and CEST. Uncomment them when 2014b is more prevalent.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET
+-Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST
+-#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET
+-#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC
++#Rule Troll 2005 max - Mar 1 1:00u 1:00 +01
++Rule Troll 2005 max - Mar lastSun 1:00u 2:00 +02
++#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 +01
++#Rule Troll 2004 max - Nov 7 1:00u 0:00 +00
+ # Remove the following line when uncommenting the above '#Rule' lines.
+-Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC
++Rule Troll 2004 max - Oct lastSun 1:00u 0:00 +00
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Troll 0 - zzz 2005 Feb 12
++Zone Antarctica/Troll 0 - -00 2005 Feb 12
+ 0:00 Troll %s
+
+ # Poland - year-round base
+@@ -265,10 +267,10 @@
+ # changes during the year and does not necessarily correspond to mean
+ # solar noon. So the Vostok time might have been whatever the clocks
+ # happened to be during their visit. So we still don't really know what time
+-# it is at Vostok. But we'll guess UTC+6.
++# it is at Vostok. But we'll guess +06.
+ #
+-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+- 6:00 - VOST # Vostok time
++Zone Antarctica/Vostok 0 - -00 1957 Dec 16
++ 6:00 - +06
+
+ # S Africa - year-round bases
+ # Marion Island, -4653+03752
+@@ -300,8 +302,8 @@
+ # <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+- -3:00 - ROTT # Rothera time
++Zone Antarctica/Rothera 0 - -00 1976 Dec 1
++ -3:00 - -03
+
+ # Uruguay - year round base
+ # Artigas, King George Island, -621104-0585107
+Index: contrib/tzdata/asia
+===================================================================
+--- contrib/tzdata/asia (revision 309576)
++++ contrib/tzdata/asia (working copy)
+@@ -79,13 +79,9 @@ Rule E-EurAsia 1979 1995 - Sep lastSun 0:00 0 -
+ Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
++Rule RussiaAsia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule RussiaAsia 1985 2011 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2011 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -120,31 +116,37 @@ Zone Asia/Kabul 4:36:48 - LMT 1890
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+- 3:00 - YERT 1957 Mar # Yerevan Time
+- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+- 3:00 1:00 YERST 1991 Sep 23 # independence
+- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+- 4:00 - AMT 1997
+- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s
+- 4:00 - AMT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
++ 4:00 - +04 1997
++ 4:00 RussiaAsia +04/+05
+
+ # Azerbaijan
++
+ # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+ # According to the resolution of Cabinet of Ministers, 1997
+ # From Paul Eggert (2015-09-17): It was Resolution No. 21 (1997-03-17).
+ # http://code.az/files/daylight_res.pdf
++
++# From Steffen Thorsen (2016-03-17):
++# ... the Azerbaijani Cabinet of Ministers has cancelled switching to
++# daylight saving time....
++# http://www.azernews.az/azerbaijan/94137.html
++# http://vestnikkavkaza.net/news/Azerbaijani-Cabinet-of-Ministers-cancels-daylight-saving-time.html
++# http://en.apa.az/xeber_azerbaijan_abolishes_daylight_savings_ti_240862.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+-Rule Azer 1997 max - Oct lastSun 5:00 0 -
++Rule Azer 1997 2015 - Mar lastSun 4:00 1:00 S
++Rule Azer 1997 2015 - Oct lastSun 5:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+- 3:00 - BAKT 1957 Mar # Baku Time
+- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+- 3:00 1:00 BAKST 1991 Aug 30 # independence
+- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+- 4:00 - AZT 1996 # Azerbaijan Time
+- 4:00 EUAsia AZ%sT 1997
+- 4:00 Azer AZ%sT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
++ 4:00 - +04 1996
++ 4:00 EUAsia +04/+05 1997
++ 4:00 Azer +04/+05
+
+ # Bahrain
+ # See Asia/Qatar.
+@@ -263,7 +265,7 @@ Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar S
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
++Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
+ 6:24:40 - RMT 1920 # Rangoon Mean Time?
+ 6:30 - BURT 1942 May # Burma Time
+ 9:00 - JST 1945 May 3
+@@ -378,7 +380,7 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is
+ # different - the occupied districts going by Tokyo time, an hour
+ # ahead of that prevailing in the rest of Shanghai." Guess that the
+-# Xujiahui Observatory was under French control and stuck with UT+8.
++# Xujiahui Observatory was under French control and stuck with UT +08.
+ #
+ # In earlier versions of this file, China had many separate Zone entries, but
+ # this was based on what were apparently incorrect data in Shanks & Pottenger.
+@@ -387,19 +389,19 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # Proposed in 1918 and theoretically in effect until 1949 (although in practice
+ # mainly observed in coastal areas), the five zones were:
+ #
+-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+ # Asia/Harbin (currently a link to Asia/Shanghai)
+ # Heilongjiang (except Mohe county), Jilin
+ #
+-# Zhongyuan Time ("Central plain Time") UT+8
++# Zhongyuan Time ("Central plain Time") UT +08
+ # Asia/Shanghai
+ # most of China
+ # This currently represents most other zones as well,
+ # as apparently these regions have been the same since 1970.
+ # Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest.
+-# Guo says Shanghai switched to UT+8 "from the end of the 19th century".
++# Guo says Shanghai switched to UT +08 "from the end of the 19th century".
+ #
+-# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7
++# Long-shu Time (probably due to Long and Shu being two names of the area) UT +07
+ # Asia/Chongqing (currently a link to Asia/Shanghai)
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+ # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+@@ -406,7 +408,7 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+-# Xin-zang Time ("Xinjiang-Tibet Time") UT+6
++# Xin-zang Time ("Xinjiang-Tibet Time") UT +06
+ # Asia/Urumqi
+ # This currently represents Kunlun Time as well,
+ # as apparently the two regions have been the same since 1970.
+@@ -419,7 +421,7 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+-# Kunlun Time UT+5.5
++# Kunlun Time UT +05:30
+ # Asia/Kashgar (currently a link to Asia/Urumqi)
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+@@ -435,7 +437,7 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ #
+ # On the other hand, ethnic Uyghurs, who make up about half the
+ # population of Xinjiang, typically use "Xinjiang time" which is two
+-# hours behind Beijing time, or UTC +0600. The government of the Xinjiang
++# hours behind Beijing time, or UT +06. The government of the Xinjiang
+ # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as
+ # local governments such as the Ürümqi city government use both times in
+ # publications, referring to what is popularly called Xinjiang time as
+@@ -491,8 +493,8 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # having the same time as Beijing.
+
+ # From Paul Eggert (2014-06-30):
+-# In the early days of the PRC, Tibet was given its own time zone (UT+6) but
+-# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
++# In the early days of the PRC, Tibet was given its own time zone (UT +06)
++# but this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
+ # Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN
+ # 978-0231142861 (2008), translator's introduction by Matthew Akester, p x.
+ # As this is before our 1970 cutoff, Tibet doesn't need a separate zone.
+@@ -506,12 +508,12 @@ Rule PRC 1987 1991 - Apr Sun>=10 0:00 1:00 D
+ # Republics, the Soviet Union, the Kuomintang, and the People's Republic of
+ # China, and tracking down all these organizations' timekeeping rules would be
+ # quite a trick. Approximate this lost history by a transition from LMT to
+-# XJT at the start of 1928, the year of accession of the warlord Jin Shuren,
++# UT +06 at the start of 1928, the year of accession of the warlord Jin Shuren,
+ # which happens to be the date given by Shanks & Pottenger (no doubt as a
+-# guess) as the transition from LMT. Ignore the usage of UT+8 before
+-# 1986-02-01 under the theory that the transition date to UT+8 is unknown and
++# guess) as the transition from LMT. Ignore the usage of +08 before
++# 1986-02-01 under the theory that the transition date to +08 is unknown and
+ # that the sort of users who prefer Asia/Urumqi now typically ignored the
+-# UT+8 mandate back then.
++# +08 mandate back then.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Beijing time, used throughout China; represented by Shanghai.
+@@ -716,7 +718,7 @@ Zone Asia/Hong_Kong 7:36:42 - LMT 1904 Oct 30
+ # be found from historical government announcement database.
+
+ # From Paul Eggert (2014-07-03):
+-# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01
++# As per Yu-Cheng Chuang, say that Taiwan was at UT +09 from 1937-10-01
+ # until 1945-09-21 at 01:00, overriding Shanks & Pottenger.
+ # Likewise, use Yu-Cheng Chuang's data for DST in Taiwan.
+
+@@ -769,9 +771,19 @@ Zone Asia/Macau 7:34:20 - LMT 1912 Jan 1
+ ###############################################################################
+
+ # Cyprus
+-#
++
+ # Milne says the Eastern Telegraph Company used 2:14:00. Stick with LMT.
++# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++
++# From Paul Eggert (2016-09-09):
++# Yesterday's Cyprus Mail reports that Northern Cyprus followed Turkey's
++# lead and switched from +02/+03 to +03 year-round.
++# http://cyprus-mail.com/2016/09/08/two-time-zones-cyprus-turkey-will-not-turn-clocks-back-next-month/
+ #
++# From Even Scharning (2016-10-31):
++# Looks like the time zone split in Cyprus went through last night.
++# http://cyprus-mail.com/2016/10/30/cyprus-new-division-two-time-zones-now-reality/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+ Rule Cyprus 1975 only - Oct 12 0:00 0 -
+@@ -786,7 +798,10 @@ Rule Cyprus 1981 1998 - Mar lastSun 0:00 1:00 S
+ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14
++ 2:00 Cyprus EE%sT 1998 Sep
++ 2:00 EUAsia EE%sT 2016 Sep 8
++ 3:00 - +03
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -830,16 +845,15 @@ Link Asia/Nicosia Europe/Nicosia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tbilisi 2:59:11 - LMT 1880
+ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time
+- 3:00 - TBIT 1957 Mar # Tbilisi Time
+- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+- 3:00 1:00 TBIST 1991 Apr 9 # independence
+- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+- 4:00 1:00 GEST 1997 Mar lastSun
+- 4:00 E-EurAsia GE%sT 2004 Jun 27
+- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+- 4:00 - GET
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992
++ 3:00 E-EurAsia +03/+04 1994 Sep lastSun
++ 4:00 E-EurAsia +04/+05 1996 Oct lastSun
++ 4:00 1:00 +05 1997 Mar lastSun
++ 4:00 E-EurAsia +04/+05 2004 Jun 27
++ 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
++ 4:00 - +04
+
+ # East Timor
+
+@@ -874,6 +888,15 @@ Zone Asia/Dili 8:22:20 - LMT 1912 Jan 1
+ 9:00 - TLT
+
+ # India
++
++# From Ian P. Beacock, in "A brief history of (modern) time", The Atlantic
++# http://www.theatlantic.com/technology/archive/2015/12/the-creation-of-modern-time/421419/
++# (2015-12-22):
++# In January 1906, several thousand cotton-mill workers rioted on the
++# outskirts of Bombay.... They were protesting the proposed abolition of
++# local time in favor of Indian Standard Time.... Journalists called this
++# dispute the "Battle of the Clocks." It lasted nearly half a century.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+@@ -907,7 +930,7 @@ Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolk
+ # These would be the earliest possible times for a change.
+ # Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions
+ # Traditionnelles, 1987, Paris) says that Java and Madura switched
+-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
++# from UT +09 to +07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+ # (Hollandia). For now, assume all Indonesian locations other than Jayapura
+ # switched on 1945-09-23.
+ #
+@@ -918,11 +941,11 @@ Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolk
+ # summary published by the Time and Frequency Laboratory of the
+ # Research Center for Calibration, Instrumentation and Metrology,
+ # Indonesia, <http://time.kim.lipi.go.id/time-eng.php> (2006-09-29).
+-# The abbreviations are:
++# The time zone abbreviations and UT offsets are:
+ #
+-# WIB - UTC+7 - Waktu Indonesia Barat (Indonesia western time)
+-# WITA - UTC+8 - Waktu Indonesia Tengah (Indonesia central time)
+-# WIT - UTC+9 - Waktu Indonesia Timur (Indonesia eastern time)
++# WIB - +07 - Waktu Indonesia Barat (Indonesia western time)
++# WITA - +08 - Waktu Indonesia Tengah (Indonesia central time)
++# WIT - +09 - Waktu Indonesia Timur (Indonesia eastern time)
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Java, Sumatra
+@@ -1084,8 +1107,15 @@ Rule Iran 2032 2033 - Mar 21 0:00 1:00 D
+ Rule Iran 2032 2033 - Sep 21 0:00 0 S
+ Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+ Rule Iran 2034 2035 - Sep 22 0:00 0 S
+-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+-Rule Iran 2036 2037 - Sep 21 0:00 0 S
++#
++# The following rules are approximations starting in the year 2038.
++# These are the best post-2037 approximations available, given the
++# restrictions of a single rule using a Gregorian-based data format.
++# At some point this table will need to be extended, though quite
++# possibly Iran will change the rules first.
++Rule Iran 2036 max - Mar 21 0:00 1:00 D
++Rule Iran 2036 max - Sep 21 0:00 0 S
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+@@ -1542,23 +1572,6 @@ Zone Asia/Amman 2:23:44 - LMT 1931
+
+ # Kazakhstan
+
+-# From Paul Eggert (1996-11-22):
+-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+-# IATA SSIM mentions a third time zone in Kazakhstan.
+-
+-# From Paul Eggert (2006-03-22):
+-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+-# Also go with the following claims of Shanks & Pottenger:
+-#
+-# - Kazakhstan did not observe DST in 1991.
+-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+-# - Oral switched from +5:00 to +4:00 in spring 1989.
+-
+ # From Kazakhstan Embassy's News Bulletin No. 11
+ # <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21):
+ # The Government of Kazakhstan passed a resolution March 15 abolishing
+@@ -1575,61 +1588,232 @@ Zone Asia/Amman 2:23:44 - LMT 1931
+ # everything else.... I guess that would make Kazakhstan time zones
+ # de jure UTC+5 and UTC+6 respectively.
+
++# From Stepan Golosunov (2016-03-27) ([*] means see later comments below):
++# Review of the linked documents from http://adilet.zan.kz/
++# produced the following data for post-1991 Kazakhstan:
+ #
++# 0. Act of the Cabinet of Ministers of the USSR
++# from 1991-02-04 No. 20
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102010545
++# removed the extra hour ("decree time") on the territory of the USSR
++# starting with the last Sunday of March 1991.
++# It also allowed (but not mandated) Kazakh SSR, Kirghiz SSR, Tajik SSR,
++# Turkmen SSR and Uzbek SSR to not have "summer" time.
++#
++# The 1992-01-13 act also refers to the act of the Cabinet of Ministers
++# of the Kazakh SSR from 1991-03-20 No. 170 "About the act of the Cabinet
++# of Ministers of the USSR from 1991-02-04 No. 20" but I didn't found its
++# text.
++#
++# According to Izvestia newspaper No. 68 (23334) from 1991-03-20
++# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# transition to "summer" time:
++# Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
++# Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
++# were to move clocks 1 hour forward.
++# Kazakh SSR (excluding Uralsk oblast); Republic of Kyrgyzstan, Tajik
++# SSR; Andijan, Jizzakh, Namangan, Sirdarya, Tashkent, Fergana oblasts
++# of the Uzbek SSR were to move clocks 1 hour backwards.
++# Other territories were to not move clocks.
++# When the "summer" time would end on 1991-09-29, clocks were to be
++# moved 1 hour backwards on the territory of the USSR excluding
++# Kazakhstan, Kirghizia, Uzbekistan, Turkmenia, Tajikistan.
++#
++# Apparently there were last minute changes. Apparently Kazakh act No. 170
++# was one of such changes.
++#
++# https://ru.wikipedia.org/wiki/Декретное время
++# claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
++# Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
++# were to not move clocks and Uralsk oblast was to move clocks
++# forward; on 1991-09-29 Kazakhstan was to move clocks backwards.
++# (Probably there were changes even after that publication. There is an
++# article claiming that Kaliningrad oblast decided on 1991-03-29 to not
++# move clocks.)
++#
++# This implies that on 1991-03-31 Asia/Oral remained on +04/+05 while
++# the rest of Kazakhstan switched from +06/+07 to +05/06 or from +05/06
++# to +04/+05. It's unclear how Kzyl-Orda oblast moved into the fifth
++# time belt. (By switching from +04/+05 to +05/+06 on 1991-09-29?) ...
++#
++# 1. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-01-13 No. 28
++# http://adilet.zan.kz/rus/docs/P920000028_
++# (text includes modification from the 1996 act)
++# introduced new rules for calculation of time, mirroring Russian
++# 1992-01-08 act. It specified that time would be calculated
++# according to time belts plus extra hour ("decree time"), moved clocks
++# on the whole territory of Kazakhstan 1 hour forward on 1992-01-19 at
++# 2:00, specified DST rules. It acknowledged that Kazakhstan was
++# located in the fourth and the fifth time belts and specified the
++# border between them to be located east of Kustanay and Aktyubinsk
++# oblasts (notably including Turgai and Kzyl-Orda oblasts into the fifth
++# time belt).
++#
++# This means switch on 1992-01-19 at 2:00 from +04/+05 to +05/+06 for
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyrau and Kustanay oblasts; from
++# +05/+06 to +06/+07 for Asia/Almaty and Asia/Qyzylorda (and Arkalyk) [*]....
++#
++# 2. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-03-27 No. 284
++# http://adilet.zan.kz/rus/docs/P920000284_
++# cancels extra hour ("decree time") for Uralsk and Kzyl-Orda oblasts
++# since the last Sunday of March 1992, while keeping them in the fourth
++# and the fifth time belts respectively.
++#
++# 3. Order of the Prime Minister of the Republic of Kazakhstan
++# from 1994-09-23 No. 384
++# http://adilet.zan.kz/rus/docs/R940000384_
++# cancels the extra hour ("decree time") on the territory of Mangystau
++# oblast since the last Sunday of September 1994 (saying that time on
++# the territory would correspond to the third time belt as a
++# result)....
++#
++# 4. Act of the Government of the Republic of Kazakhstan
++# from 1996-05-08 No. 575
++# http://adilet.zan.kz/rus/docs/P960000575_
++# amends the 1992-01-13 act to end summer time in October instead
++# of September, mirroring identical Russian change from 1996-04-23 act.
++#
++# 5. Act of the Government of the Republic of Kazakhstan
++# from 1999-03-26 No. 305
++# http://adilet.zan.kz/rus/docs/P990000305_
++# cancels the extra hour ("decree time") for Atyrau oblast since the
++# last Sunday of March 1999 while retaining the oblast in the fourth
++# time belt.
++#
++# This means change from +05/+06 to +04/+05.
++#
++# There is no zone for Atyrau currently (listed under Asia/Aqtau in
++# zone1970.tab).[*]
++#
++# 6. Act of the Government of the Republic of Kazakhstan
++# from 2000-11-23 No. 1749
++# http://adilet.zan.kz/rus/archive/docs/P000001749_/23.11.2000
++# replaces the previous five documents.
++#
++# The only changes I noticed are in definition of the border between the
++# fourth and the fifth time belts. They account for changes in spelling
++# and administrative division (splitting of Turgai oblast in 1997
++# probably changed time in territories incorporated into Kostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Kyzylorda oblast
++# from being in the fifth time belt and not using decree time into the
++# fourth time belt (no change in practice).[*]
++#
++# 7. Act of the Government of the Republic of Kazakhstan
++# from 2003-12-29 No. 1342
++# http://adilet.zan.kz/rus/docs/P030001342_
++# modified the 2000-11-23 act. No relevant changes, apparently.
++#
++# 8. Act of the Government of the Republic of Kazakhstan
++# from 2004-07-20 No. 775
++# http://adilet.zan.kz/rus/archive/docs/P040000775_/20.07.2004
++# modified the 2000-11-23 act to move Kostanay and Kyzylorda oblasts into
++# the fifth time belt and add Aktobe oblast to the list of regions not
++# using extra hour ("decree time"), leaving Kazakhstan with only 2 time
++# zones (+04/+05 and +06/+07). The changes were to be implemented
++# during DST transitions in 2004 and 2005 but the acts got radically
++# amended before implementation happened.
++#
++# 9. Act of the Government of the Republic of Kazakhstan
++# from 2004-09-15 No. 1059
++# http://adilet.zan.kz/rus/docs/P040001059_
++# modified the 2000-11-23 act to remove exceptions from the "decree time"
++# (leaving Kazakhstan in +05/+06 and +06/+07 zones), amended the
++# 2004-07-20 act to implement changes for Atyrau, West Kazakhstan,
++# Kostanay, Kyzylorda and Mangystau oblasts by not moving clocks
++# during the 2014 transition to "winter" time.
++#
++# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# zone currently), Asia/Oral, Asia/Aqtau and transition from +05/+06 to
++# +06/+07 for Kostanay oblast (Kostanay and Arkalyk, no zones currently)
++# and Asia/Qyzylorda on 2004-10-31 at 3:00....[*]
++#
++# 10. Act of the Government of the Republic of Kazakhstan
++# from 2005-03-15 No. 231
++# http://adilet.zan.kz/rus/docs/P050000231_
++# removes DST provisions from the 2000-11-23 act, removes most of the
++# (already implemented) provisions from the 2004-07-20 and 2004-09-15
++# acts, comes into effect 10 days after official publication.
++# The only practical effect seems to be the abolition of the summer
++# time.
++#
++# Unamended version of the act of the Government of the Russian Federation
++# No. 23 from 1992-01-08 [See 'europe' file for details].
++# Kazakh 1992-01-13 act appears to provide the same rules and 1992-03-27
++# act was to be enacted on the last Sunday of March 1992.
++
++# From Paul Eggert (2016-04-15):
++# The tables below should reflect Stepan Golosunov's remarks above,
++# except for the items marked "[*]" which I haven't gotten to yet.
++# It looks like we will need new zones Asia/Atyrau and Asia/Qostanay
++# to handle changes from 1992 through 2004 that we did not previously
++# know about.
++
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
++# This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
++# KZ-KAR, KZ-SEV, KZ-PAV, and KZ-YUZ.
+ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+- 6:00 RussiaAsia ALM%sT 1991
+- 6:00 - ALMT 1992
+- 6:00 RussiaAsia ALM%sT 2005 Mar 15
+- 6:00 - ALMT
+-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
++ 6:00 - +06
++# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+- 5:00 - KIZT 1981 Apr 1
+- 5:00 1:00 KIZST 1981 Oct 1
+- 6:00 - KIZT 1982 Apr 1
+- 5:00 RussiaAsia KIZ%sT 1991
+- 5:00 - KIZT 1991 Dec 16 # independence
+- 5:00 - QYZT 1992 Jan 19 2:00
+- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+- 6:00 - QYZT
+-# Aqtobe (aka Aktobe, formerly Aktyubinsk)
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 6:00 - +06
++# Aqtobe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+- 5:00 - AKTT 1981 Apr 1
+- 5:00 1:00 AKTST 1981 Oct 1
+- 6:00 - AKTT 1982 Apr 1
+- 5:00 RussiaAsia AKT%sT 1991
+- 5:00 - AKTT 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+- 5:00 - AQTT
+-# Mangghystau
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 5:00 - +05
++# Qostanay (KZ-KUS)
++
++# Mangghystau (KZ-MAN)
+ # Aqtau was not founded until 1963, but it represents an inhabited region,
+ # so include time stamps before 1963.
+ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+- 5:00 - FORT 1963
+- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+- 6:00 - SHET 1982 Apr 1
+- 5:00 RussiaAsia SHE%sT 1991
+- 5:00 - SHET 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+- 4:00 RussiaAsia AQT%sT 2005 Mar 15
+- 5:00 - AQTT
+-# West Kazakhstan
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1963
++ 5:00 - +05 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
++
++# West Kazakhstan (KZ-ZAP)
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+- 4:00 - URAT 1930 Jun 21 # Ural'sk time
+- 5:00 - URAT 1981 Apr 1
+- 5:00 1:00 URAST 1981 Oct 1
+- 6:00 - URAT 1982 Apr 1
+- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+- 4:00 RussiaAsia URA%sT 1991
+- 4:00 - URAT 1991 Dec 16 # independence
+- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+- 5:00 - ORAT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
+
+ # Kyrgyzstan (Kirgizstan)
+ # Transitions through 1991 are from Shanks & Pottenger.
+@@ -1650,11 +1834,11 @@ Rule Kyrgyz 1997 2005 - Mar lastSun 2:30 1:00 S
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+- 5:00 - FRUT 1930 Jun 21 # Frunze Time
+- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+- 6:00 - KGT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
++ 5:00 Kyrgyz +05/+06 2005 Aug 12
++ 6:00 - +06
+
+ ###############################################################################
+
+@@ -1693,25 +1877,24 @@ Rule ROK 1957 1960 - Sep Sun>=18 0:00 0 S
+ Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D
+ Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
+
+-# From Paul Eggert (2014-10-30):
++# From Paul Eggert (2016-08-23):
+ # The Korean Wikipedia entry gives the following sources for UT offsets:
+ #
+-# 1908: Official Journal Article No. 3994 (Edict No. 5)
++# 1908: Official Journal Article No. 3994 (decree No. 5)
+ # 1912: Governor-General of Korea Official Gazette Issue No. 367
+ # (Announcement No. 338)
+ # 1954: Presidential Decree No. 876 (1954-03-17)
+ # 1961: Law No. 676 (1961-08-07)
+-# 1987: Law No. 3919 (1986-12-31)
+ #
+-# The Wikipedia entry also has confusing information about a change
+-# to UT+9 in April 1910, but then what would be the point of the later change
+-# to UT+9 on 1912-01-01? Omit the 1910 change for now.
++# (Another source "1987: Law No. 3919 (1986-12-31)" was in the 2014-10-30
++# edition of the Korean Wikipedia entry.)
+ #
+ # I guessed that time zone abbreviations through 1945 followed the same
+ # rules as discussed under Taiwan, with nominal switches from JST to KST
+ # when the respective cities were taken over by the Allies after WWII.
+ #
+-# For Pyongyang we have no information; guess no changes since World War II.
++# For Pyongyang, guess no changes from World War II until 2015, as we
++# have no information otherwise.
+
+ # From Steffen Thorsen (2015-08-07):
+ # According to many news sources, North Korea is going to change to
+@@ -1871,7 +2054,7 @@ Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
+ # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+ # there is only one time zone and that DST is observed, citing Microsoft
+ # Windows XP as the source. Risto Nykänen (2005-05-16) reports that
+-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
++# travelmongolia.org says there are two time zones (UT +07, +08) with no DST.
+ # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+ # Washington, DC says there are two time zones, with DST observed.
+ # He also found
+@@ -2111,8 +2294,8 @@ Zone Asia/Kathmandu 5:41:16 - LMT 1920
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
++Rule Pakistan 2002 only - Apr Sun>=2 0:00 1:00 S
++Rule Pakistan 2002 only - Oct Sun>=2 0:00 0 -
+ Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+ Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+@@ -2374,9 +2557,28 @@ Zone Asia/Karachi 4:28:12 - LMT 1907
+ # From Paul Eggert (2015-03-03):
+ # http://www.timeanddate.com/time/change/west-bank/ramallah?year=2014
+ # says that the fall 2014 transition was Oct 23 at 24:00.
+-# For future dates, guess the last Friday in March at 24:00 through
+-# the first Friday on or after October 21 at 00:00. This is consistent with
+-# the predictions in today's editions of the following URLs:
++
++# From Hannah Kreitem (2016-03-09):
++# http://www.palestinecabinet.gov.ps/WebSite/ar/ViewDetails?ID=31728
++# [Google translation]: "The Council also decided to start daylight
++# saving in Palestine as of one o'clock on Saturday morning,
++# 2016-03-26, to provide the clock 60 minutes ahead."
++#
++# From Paul Eggert (2016-03-12):
++# Predict spring transitions on March's last Saturday at 01:00 from now on.
++
++# From Sharef Mustafa (2016-10-19):
++# [T]he Palestinian cabinet decision (Mar 8th 2016) published on
++# http://www.palestinecabinet.gov.ps/WebSite/Upload/Decree/GOV_17/16032016134830.pdf
++# states that summer time will end on Oct 29th at 01:00.
++#
++# From Tim Parenti (2016-10-19):
++# Predict fall transitions on October's last Saturday at 01:00 from now on.
++# This is consistent with the 2016 transition as well as our spring
++# predictions.
++#
++# From Paul Eggert (2016-10-19):
++# It's also consistent with predictions in the following URLs today:
+ # http://www.timeanddate.com/time/change/gaza-strip/gaza
+ # http://www.timeanddate.com/time/change/west-bank/hebron
+
+@@ -2407,8 +2609,10 @@ Rule Palestine 2011 only - Sep 30 0:00 0 -
+ Rule Palestine 2012 2014 - Mar lastThu 24:00 1:00 S
+ Rule Palestine 2012 only - Sep 21 1:00 0 -
+ Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
+-Rule Palestine 2014 max - Oct Fri>=21 0:00 0 -
+-Rule Palestine 2015 max - Mar lastFri 24:00 1:00 S
++Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
++Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
++Rule Palestine 2016 max - Mar lastSat 1:00 1:00 S
++Rule Palestine 2016 max - Oct lastSat 1:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+@@ -2496,7 +2700,7 @@ Link Asia/Qatar Asia/Bahrain
+ # earlier date.
+ #
+ # Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two
+-# time zones; the other zone, at UTC+4, was in the far eastern part of
++# time zones; the other zone, at UT +04, was in the far eastern part of
+ # the country. Ignore this, as it's before our 1970 cutoff.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2558,45 +2762,31 @@ Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
+ # People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+ # as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+-# From K Sethu (2006-04-25):
+-# I think the abbreviation LKT originated from the world of computers at
+-# the time of or subsequent to the time zone changes by SL Government
+-# twice in 1996 and probably SL Government or its standardization
+-# agencies never declared an abbreviation as a national standard.
++# From Sadika Sumanapala (2016-10-19):
++# According to http://www.sltime.org (maintained by Measurement Units,
++# Standards & Services Department, Sri Lanka) abbreviation for Sri Lanka
++# standard time is SLST.
+ #
+-# I recollect before the recent change the government announcements
+-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+-# Time and no mention was made about the abbreviation.
+-#
+-# If we look at Sri Lanka Department of Government's "Official News
+-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+-# use SLT as abbreviation in time stamp at the beginning of each news
+-# item....
+-#
+-# Within Sri Lanka I think LKT is well known among computer users and
+-# administrators. In my opinion SLT may not be a good choice because the
+-# nation's largest telcom / internet operator Sri Lanka Telcom is well
+-# known by that abbreviation - simply as SLT (there IP domains are
+-# slt.lk and sltnet.lk).
+-#
+-# But if indeed our government has adopted SLT as standard abbreviation
+-# (that we have not known so far) then it is better that it be used for
+-# all computers.
++# From Paul Eggert (2016-10-18):
++# "SLST" seems to be reasonably recent and rarely-used outside time
++# zone nerd sources. I searched Google News and found three uses of
++# it in the International Business Times of India in February and
++# March of this year when discussing cricket match times, but nothing
++# since then (though there has been a lot of cricket) and nothing in
++# other English-language news sources. Our old abbreviation "LKT" is
++# even worse. For now, let's use a numeric abbreviation; we can
++# switch to "SLST" if it catches on.
+
+-# From Paul Eggert (2006-04-25):
+-# One possibility is that we wait for a bit for the dust to settle down
+-# and then see what people actually say in practice.
+-
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 5:19:32 - MMT 1906 # Moratuwa Mean Time
+- 5:30 - IST 1942 Jan 5
+- 5:30 0:30 IHST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 16 2:00
+- 5:30 - IST 1996 May 25 0:00
+- 6:30 - LKT 1996 Oct 26 0:30
+- 6:00 - LKT 2006 Apr 15 0:30
+- 5:30 - IST
++ 5:30 - +0530 1942 Jan 5
++ 5:30 0:30 +0530/+06 1942 Sep
++ 5:30 1:00 +0530/+0630 1945 Oct 16 2:00
++ 5:30 - +0530 1996 May 25 0:00
++ 6:30 - +0630 1996 Oct 26 0:30
++ 6:00 - +06 2006 Apr 15 0:30
++ 5:30 - +0530
+
+ # Syria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -2765,10 +2955,10 @@ Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+- 5:00 1:00 DUSST 1991 Sep 9 2:00s
+- 5:00 - TJT # Tajikistan Time
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 1:00 +05/+06 1991 Sep 9 2:00s
++ 5:00 - +05
+
+ # Thailand
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2782,11 +2972,10 @@ Link Asia/Bangkok Asia/Vientiane # Laos
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+- 5:00 - TMT
++ 4:00 - +04 1930 Jun 21
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
++ 5:00 - +05
+
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2798,20 +2987,18 @@ Link Asia/Dubai Asia/Muscat # Oman
+ # Byalokoz 1919 says Uzbekistan was 4:27:53.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
+- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+- 5:00 - SAMT 1981 Apr 1
+- 5:00 1:00 SAMST 1981 Oct 1
+- 6:00 - TAST 1982 Apr 1 # Tashkent Time
+- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+ # Milne says Tashkent was 4:37:10.8; round to nearest.
+ Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2
+- 5:00 - TAST 1930 Jun 21 # Tashkent Time
+- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+
+ # Vietnam
+
+Index: contrib/tzdata/australasia
+===================================================================
+--- contrib/tzdata/australasia (revision 309576)
++++ contrib/tzdata/australasia (working copy)
+@@ -60,6 +60,14 @@ Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
+ # Hamilton is the largest, but there is also a Hamilton in Victoria,
+ # so use Lindeman.
+ #
++# From J William Piggott (2016-02-20):
++# There is no location named Holiday Islands in Queensland Australia; holiday
++# islands is a colloquial term used globally. Hayman and Lindeman are at the
++# north and south extremes of the Whitsunday Islands archipelago, and
++# Hamilton is in between; it is reasonable to believe that this time zone
++# applies to all of the Whitsundays.
++# http://www.australia.gov.au/about-australia/australian-story/austn-islands
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D
+ Rule AQ 1972 only - Feb lastSun 2:00s 0 S
+@@ -235,11 +243,11 @@ Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
+ # will produce a binary file with an [A]EST-type as the first 32-bit type;
+ # this is required for correct handling of times before 1916 by
+ # pre-2013 versions of localtime.
+-Zone Antarctica/Macquarie 0 - zzz 1899 Nov
++Zone Antarctica/Macquarie 0 - -00 1899 Nov
+ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1919 Apr 1 0:00s
+- 0 - zzz 1948 Mar 25
++ 0 - -00 1948 Mar 25
+ 10:00 Aus AE%sT 1967
+ 10:00 AT AE%sT 2010 Apr 4 3:00
+ 11:00 - MIST # Macquarie I Standard Time
+@@ -342,7 +350,13 @@ Zone Indian/Cocos 6:27:40 - LMT 1900
+ # commencing at 2.00 am on Sunday 1st November, 2015 and ending at
+ # 3.00 am on Sunday 17th January, 2016.
+
+-# From Paul Eggert (2015-09-01):
++# From Raymond Kumar (2016-10-04):
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-6th-NOVEMBER,-2016.aspx
++# "Fiji's daylight savings will begin on Sunday, 6 November 2016, when
++# clocks go forward an hour at 2am to 3am.... Daylight Saving will
++# end at 3.00am on Sunday 15th January 2017."
++
++# From Paul Eggert (2016-10-03):
+ # For now, guess DST from 02:00 the first Sunday in November to
+ # 03:00 the third Sunday in January. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+@@ -537,7 +551,7 @@ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+ # Base the Bougainville entry on the Arawa-Kieta region, which appears to have
+ # the most people even though it was devastated in the Bougainville Civil War.
+ #
+-# Although Shanks gives 1942-03-15 / 1943-11-01 for JST, these dates
++# Although Shanks gives 1942-03-15 / 1943-11-01 for UT +09, these dates
+ # are apparently rough guesswork from the starts of military campaigns.
+ # The World War II entries below are instead based on Arawa-Kieta.
+ # The Japanese occupied Kieta in July 1942,
+@@ -545,8 +559,8 @@ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+ # http://pwencycl.kgbudge.com/B/o/Bougainville.htm
+ # and seem to have controlled it until their 1945-08-21 surrender.
+ #
+-# The Autonomous Region of Bougainville plans to switch from UTC+10 to UTC+11
+-# on 2014-12-28 at 02:00. They call UTC+11 "Bougainville Standard Time";
++# The Autonomous Region of Bougainville switched from UT +10 to +11
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
+ # abbreviate this as BST. See:
+ # http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
+ #
+@@ -612,7 +626,7 @@ Link Pacific/Pago_Pago Pacific/Midway # in US mino
+ # From Paul Eggert (2014-06-27):
+ # The International Date Line Act 2011
+ # http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf
+-# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on
++# changed Samoa from UT -11 to +13, effective "12 o'clock midnight, on
+ # Thursday 29th December 2011". The International Date Line was adjusted
+ # accordingly.
+
+@@ -688,11 +702,13 @@ Rule Tonga 1999 only - Oct 7 2:00s 1:00 S
+ Rule Tonga 2000 only - Mar 19 2:00s 0 -
+ Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
++Rule Tonga 2016 max - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+- 12:20 - TOT 1941 # Tonga Time
+- 13:00 - TOT 1999
+- 13:00 Tonga TO%sT
++ 12:20 - +1220 1941
++ 13:00 - +13 1999
++ 13:00 Tonga +13/+14
+
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -707,7 +723,7 @@ Zone Pacific/Funafuti 11:56:52 - LMT 1901
+ # 1886-1891; Baker was similar but exact dates are not known.
+ # Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+ # uninhabited thereafter.
+-# Howland observed Hawaii Standard Time (UT-10:30) in 1937;
++# Howland observed Hawaii Standard Time (UT -10:30) in 1937;
+ # see page 206 of Elgen M. Long and Marie K. Long,
+ # Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+ # So most likely Howland and Baker observed Hawaii Time from 1935
+@@ -1465,7 +1481,7 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # Zealand time. I understand that is the time they keep locally, anyhow."
+ # For now, assume this practice goes back to the introduction of standard time
+ # in New Zealand, as this would make Chatham Islands time almost exactly match
+-# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did
++# LMT back when New Zealand was at UT +11:30; also, assume Chatham Islands did
+ # not observe New Zealand's prewar DST.
+
+ ###############################################################################
+@@ -1521,7 +1537,7 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # For now, we assume the Ladrones switched at the same time as the Philippines;
+ # see Asia/Manila.
+
+-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
++# US Public Law 106-564 (2000-12-23) made UT +10 the official standard time,
+ # under the name "Chamorro Standard Time". There is no official abbreviation,
+ # but Congressman Robert A. Underwood, author of the bill that became law,
+ # wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+@@ -1533,7 +1549,7 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # "I am certain, having lived there for the past decade, that 'Truk'
+ # (now properly known as Chuuk) ... is in the time zone GMT+10."
+ #
+-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
++# Shanks & Pottenger write that Truk switched from UT +10 to +11
+ # on 1978-10-01; ignore this for now.
+
+ # From Paul Eggert (1999-10-29):
+@@ -1540,8 +1556,8 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # The Federated States of Micronesia Visitors Board writes in
+ # The Federated States of Micronesia - Visitor Information (1999-01-26)
+ # http://www.fsmgov.org/info/clocks.html
+-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
++# that Truk and Yap are UT +10, and Ponape and Kosrae are +11.
++# We don't know when Kosrae switched from +12; assume January 1 for now.
+
+
+ # Midway
+@@ -1607,11 +1623,11 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
+
+-# Although Shanks & Pottenger says they both switched to UTC-11:30
+-# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11
++# Although Shanks & Pottenger says they both switched to UT -11:30
++# in 1911, and to -11 in 1950. many earlier sources give -11
+ # for American Samoa, e.g., the US National Bureau of Standards
+ # circular "Standard Time Throughout the World", 1932.
+-# Assume American Samoa switched to UTC-11 in 1911, not 1950,
++# Assume American Samoa switched to -11 in 1911, not 1950,
+ # and that after 1950 they agreed until (western) Samoa skipped a
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+@@ -1698,9 +1714,17 @@ Zone Pacific/Wallis 12:15:20 - LMT 1901
+ # of January the standard time in the Kingdom shall be moved backward by one
+ # hour to 1:00am.
+
+-# From Pulu 'Anau (2002-11-05):
++# From Pulu ʻAnau (2002-11-05):
+ # The law was for 3 years, supposedly to get renewed. It wasn't.
+
++# From Pulu ʻAnau (2016-10-27):
++# http://mic.gov.to/news-today/press-releases/6375-daylight-saving-set-to-run-from-6-november-2016-to-15-january-2017
++# Cannot find anyone who knows the rules, has seen the duration or has seen
++# the cabinet decision, but it appears we are following Fiji's rule set.
++#
++# From Tim Parenti (2016-10-26):
++# Assume Tonga will observe DST from the first Sunday in November at 02:00
++# through the third Sunday in January at 03:00, like Fiji, for now.
+
+ # Wake
+
+Index: contrib/tzdata/backward
+===================================================================
+--- contrib/tzdata/backward (revision 309576)
++++ contrib/tzdata/backward (working copy)
+@@ -23,6 +23,7 @@ Link America/Argentina/Mendoza America/Mendoza
+ Link America/Toronto America/Montreal
+ Link America/Rio_Branco America/Porto_Acre
+ Link America/Argentina/Cordoba America/Rosario
++Link America/Tijuana America/Santa_Isabel
+ Link America/Denver America/Shiprock
+ Link America/Port_of_Spain America/Virgin
+ Link Pacific/Auckland Antarctica/South_Pole
+@@ -35,6 +36,7 @@ Link Asia/Shanghai Asia/Harbin
+ Link Asia/Urumqi Asia/Kashgar
+ Link Asia/Kathmandu Asia/Katmandu
+ Link Asia/Macau Asia/Macao
++Link Asia/Yangon Asia/Rangoon
+ Link Asia/Ho_Chi_Minh Asia/Saigon
+ Link Asia/Jerusalem Asia/Tel_Aviv
+ Link Asia/Thimphu Asia/Thimbu
+Index: contrib/tzdata/backzone
+===================================================================
+--- contrib/tzdata/backzone (nonexistent)
++++ contrib/tzdata/backzone (working copy)
+@@ -0,0 +1,677 @@
++# Zones that go back beyond the scope of the tz database
++
++# This file is in the public domain.
++
++# This file is by no means authoritative; if you think you know
++# better, go ahead and edit it (and please send any changes to
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
++
++
++# From Paul Eggert (2014-10-31):
++
++# This file contains data outside the normal scope of the tz database,
++# in that its zones do not differ from normal tz zones after 1970.
++# Links in this file point to zones in this file, superseding links in
++# the file 'backward'.
++
++# Although zones in this file may be of some use for analyzing
++# pre-1970 time stamps, they are less reliable, cover only a tiny
++# sliver of the pre-1970 era, and cannot feasibly be improved to cover
++# most of the era. Because the zones are out of normal scope for the
++# database, less effort is put into maintaining this file. Many of
++# the zones were formerly in other source files, but were removed or
++# replaced by links as their data entries were questionable and/or they
++# differed from other zones only in pre-1970 time stamps.
++
++# Unless otherwise specified, the source for data through 1990 is:
++# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
++# San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
++
++# This file is not intended to be compiled standalone, as it
++# assumes rules from other files. In the tz distribution, use
++# 'make PACKRATDATA=backzone zones' to compile and install this file.
++
++# Zones are sorted by zone name. Each zone is preceded by the
++# name of the country that the zone is in, along with any other
++# commentary and rules associated with the entry.
++#
++# As explained in the zic man page, the zone columns are:
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++
++# Ethiopia
++# From Paul Eggert (2014-07-31):
++# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
++# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
++# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
++#
++# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
++# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
++# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
++# was for Adis Dera. Quite likely the Shanks data entries are wrong
++# anyway.
++Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++
++# Eritrea
++Zone Africa/Asmara 2:35:32 - LMT 1870
++ 2:35:32 - AMT 1890 # Asmara Mean Time
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++Link Africa/Asmara Africa/Asmera
++
++# Mali (southern)
++Zone Africa/Bamako -0:32:00 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Jun 20
++ 0:00 - GMT
++
++# Central African Republic
++Zone Africa/Bangui 1:14:20 - LMT 1912
++ 1:00 - WAT
++
++# Gambia
++Zone Africa/Banjul -1:06:36 - LMT 1912
++ -1:06:36 - BMT 1935 # Banjul Mean Time
++ -1:00 - WAT 1964
++ 0:00 - GMT
++
++# Malawi
++Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Republic of the Congo
++Zone Africa/Brazzaville 1:01:08 - LMT 1912
++ 1:00 - WAT
++
++# Burundi
++Zone Africa/Bujumbura 1:57:28 - LMT 1890
++ 2:00 - CAT
++
++# Guinea
++Zone Africa/Conakry -0:54:52 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960
++ 0:00 - GMT
++
++# Senegal
++Zone Africa/Dakar -1:09:44 - LMT 1912
++ -1:00 - WAT 1941 Jun
++ 0:00 - GMT
++
++# Tanzania
++Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
++ 3:00 - EAT 1948
++ 2:45 - BEAUT 1961
++ 3:00 - EAT
++
++# Djibouti
++Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
++ 3:00 - EAT
++
++# Cameroon
++# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
++Zone Africa/Douala 0:38:48 - LMT 1912
++ 1:00 - WAT
++# Sierra Leone
++# From Paul Eggert (2014-08-12):
++# The following table is from Shanks & Pottenger, but it can't be right.
++# Whitman gives Mar 31 - Aug 31 for 1931 on.
++# The International Hydrographic Bulletin, 1932-33, p 63 says that
++# Sierra Leone would advance its clocks by 20 minutes on 1933-10-01.
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
++Rule SL 1935 1942 - Oct 1 0:00 0 WAT
++Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
++Rule SL 1957 1962 - Sep 1 0:00 0 GMT
++Zone Africa/Freetown -0:53:00 - LMT 1882
++ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
++ -1:00 SL %s 1957
++ 0:00 SL %s
++
++# Botswana
++# From Paul Eggert (2013-02-21):
++# Milne says they were regulated by the Cape Town Signal in 1899;
++# assume they switched to 2:00 when Cape Town did.
++Zone Africa/Gaborone 1:43:40 - LMT 1885
++ 1:30 - SAST 1903 Mar
++ 2:00 - CAT 1943 Sep 19 2:00
++ 2:00 1:00 CAST 1944 Mar 19 2:00
++ 2:00 - CAT
++
++# Zimbabwe
++Zone Africa/Harare 2:04:12 - LMT 1903 Mar
++ 2:00 - CAT
++
++# South Sudan
++Zone Africa/Juba 2:06:24 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
++
++# Uganda
++Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
++ 3:00 - EAT 1930
++ 2:30 - BEAT 1948
++ 2:45 - BEAUT 1957
++ 3:00 - EAT
++
++# Rwanda
++Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
++ 2:00 - CAT
++
++# Democratic Republic of the Congo (west)
++Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
++ 1:00 - WAT
++
++# Gabon
++Zone Africa/Libreville 0:37:48 - LMT 1912
++ 1:00 - WAT
++
++# Togo
++Zone Africa/Lome 0:04:52 - LMT 1893
++ 0:00 - GMT
++
++# Angola
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
++Zone Africa/Luanda 0:52:56 - LMT 1892
++ 0:52:04 - AOT 1912 Jan 1 # Angola Time
++ 1:00 - WAT
++
++# Democratic Republic of the Congo (east)
++Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
++ 2:00 - CAT
++
++# Zambia
++Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Equatorial Guinea
++#
++# Although Shanks says that Malabo switched from UT +00 to +01 on 1963-12-15,
++# a Google Books search says that London Calling, Issues 432-465 (1948), p 19,
++# says that Spanish Guinea was at +01 back then. The Shanks data entries
++# are most likely wrong, but we have nothing better; use them here for now.
++#
++Zone Africa/Malabo 0:35:08 - LMT 1912
++ 0:00 - GMT 1963 Dec 15
++ 1:00 - WAT
++
++# Lesotho
++Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
++ 2:00 - SAST 1943 Sep 19 2:00
++ 2:00 1:00 SAST 1944 Mar 19 2:00
++ 2:00 - SAST
++
++# Swaziland
++Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
++ 2:00 - SAST
++
++# Somalia
++Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
++ 3:00 - EAT 1931
++ 2:30 - BEAT 1957
++ 3:00 - EAT
++
++# Niger
++Zone Africa/Niamey 0:08:28 - LMT 1912
++ -1:00 - WAT 1934 Feb 26
++ 0:00 - GMT 1960
++ 1:00 - WAT
++
++# Mauritania
++Zone Africa/Nouakchott -1:03:48 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Nov 28
++ 0:00 - GMT
++
++# Burkina Faso
++Zone Africa/Ouagadougou -0:06:04 - LMT 1912
++ 0:00 - GMT
++
++# Benin
++# Whitman says they switched to 1:00 in 1946, not 1934;
++# go with Shanks & Pottenger.
++Zone Africa/Porto-Novo 0:10:28 - LMT 1912 Jan 1
++ 0:00 - GMT 1934 Feb 26
++ 1:00 - WAT
++
++# São Tomé and Príncipe
++Zone Africa/Sao_Tome 0:26:56 - LMT 1884
++ -0:36:32 - LMT 1912 # Lisbon Mean Time
++ 0:00 - GMT
++
++# Mali (northern)
++Zone Africa/Timbuktu -0:12:04 - LMT 1912
++ 0:00 - GMT
++
++# Anguilla
++Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
++ -4:00 - AST
++
++# Antigua and Barbuda
++Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
++ -5:00 - EST 1951
++ -4:00 - AST
++
++# Chubut, Argentina
++# The name "Comodoro Rivadavia" exceeds the 14-byte POSIX limit.
++Zone America/Argentina/ComodRivadavia -4:30:00 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Mar 3
++ -4:00 - WART 1991 Oct 20
++ -3:00 Arg AR%sT 1999 Oct 3
++ -4:00 Arg AR%sT 2000 Mar 3
++ -3:00 - ART 2004 Jun 1
++ -4:00 - WART 2004 Jun 20
++ -3:00 - ART
++
++# Aruba
++Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
++ -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:00 - AST
++
++# Cayman Is
++Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST
++
++# Canada
++Zone America/Coral_Harbour -5:32:40 - LMT 1884
++ -5:00 NT_YK E%sT 1946
++ -5:00 - EST
++
++# Dominica
++Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
++ -4:00 - AST
++
++# Baja California
++# See 'northamerica' for why this entry is here rather than there.
++Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32
++ -8:00 - PST 1927 Jun 10 23:00
++ -7:00 - MST 1930 Nov 16
++ -8:00 - PST 1942 Apr
++ -7:00 - MST 1949 Jan 14
++ -8:00 - PST 1996
++ -8:00 Mexico P%sT
++
++# Grenada
++Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
++ -4:00 - AST
++
++# Guadeloupe
++Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe-à-Pitre
++ -4:00 - AST
++
++# Canada
++#
++# From Paul Eggert (2015-03-24):
++# Since 1970 most of Quebec has been like Toronto; see
++# America/Toronto. However, earlier versions of the tz database
++# mistakenly relied on data from Shanks & Pottenger saying that Quebec
++# differed from Ontario after 1970, and the following rules and zone
++# were created for most of Quebec from the incorrect Shanks &
++# Pottenger data. The post-1970 entries have been corrected, but the
++# pre-1970 entries are unchecked and probably have errors.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Mont 1917 only - Mar 25 2:00 1:00 D
++Rule Mont 1917 only - Apr 24 0:00 0 S
++Rule Mont 1919 only - Mar 31 2:30 1:00 D
++Rule Mont 1919 only - Oct 25 2:30 0 S
++Rule Mont 1920 only - May 2 2:30 1:00 D
++Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
++Rule Mont 1921 only - May 1 2:00 1:00 D
++Rule Mont 1922 only - Apr 30 2:00 1:00 D
++Rule Mont 1924 only - May 17 2:00 1:00 D
++Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
++Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
++Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
++Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
++Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
++Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
++Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
++Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
++Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
++Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
++Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
++Zone America/Montreal -4:54:16 - LMT 1884
++ -5:00 Mont E%sT 1918
++ -5:00 Canada E%sT 1919
++ -5:00 Mont E%sT 1942 Feb 9 2:00s
++ -5:00 Canada E%sT 1946
++ -5:00 Mont E%sT 1974
++ -5:00 Canada E%sT
++
++# Montserrat
++# From Paul Eggert (2006-03-22):
++# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
++# world.gazetteer.com says Cork Hill is the most populous location now.
++Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
++ -4:00 - AST
++
++# Argentina
++# This entry was intended for the following areas, but has been superseded by
++# more detailed zones.
++# Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
++# Formosa (FM), La Pampa (LP), Chubut (CH)
++Zone America/Rosario -4:02:40 - LMT 1894 Nov
++ -4:16:44 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Jul
++ -3:00 - ART 1999 Oct 3 0:00
++ -4:00 Arg AR%sT 2000 Mar 3 0:00
++ -3:00 - ART
++
++# St Kitts-Nevis
++Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
++ -4:00 - AST
++
++# St Lucia
++Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
++ -4:04:00 - CMT 1912 # Castries Mean Time
++ -4:00 - AST
++
++# Virgin Is
++Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
++ -4:00 - AST
++
++# St Vincent and the Grenadines
++Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
++ -4:04:56 - KMT 1912 # Kingstown Mean Time
++ -4:00 - AST
++
++# British Virgin Is
++Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
++ -4:00 - AST
++
++# McMurdo, Ross Island, since 1955-12
++Zone Antarctica/McMurdo 0 - -00 1956
++ 12:00 NZ NZ%sT
++Link Antarctica/McMurdo Antarctica/South_Pole
++
++# Yemen
++# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
++# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
++Zone Asia/Aden 2:59:54 - LMT 1950
++ 3:00 - AST
++
++# Bahrain
++Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
++ 4:00 - GST 1972 Jun
++ 3:00 - AST
++
++# India
++#
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 305 says that Madras
++# civil time was 5:20:57.3.
++#
++# From Paul Eggert (2014-08-21):
++# In tomorrow's The Hindu, Nitya Menon reports that India had two civil time
++# zones starting in 1884, one in Bombay and one in Calcutta, and that railways
++# used a third time zone based on Madras time (80 deg. 18'30" E). Also,
++# in 1881 Bombay briefly switched to Madras time, but switched back. See:
++# http://www.thehindu.com/news/cities/chennai/madras-375-when-madras-clocked-the-time/article6339393.ece
++#Zone Asia/Chennai [not enough info to complete]
++
++# China
++# Long-shu Time (probably due to Long and Shu being two names of that area)
++# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
++# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
++# Yangchun, Yangjiang, Yu'nan, and Yunfu.
++Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
++ 7:00 - LONT 1980 May # Long-shu Time
++ 8:00 PRC C%sT
++Link Asia/Chongqing Asia/Chungking
++
++# Vietnam
++# From Paul Eggert (2014-10-13):
++# See Asia/Ho_Chi_Minh for the source for this data.
++# Trần's book says the 1954-55 transition to 07:00 in Hanoi was in
++# October 1954, with exact date and time unspecified.
++Zone Asia/Hanoi 7:03:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1954 Oct
++ 7:00 - ICT
++
++# China
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
++# Heilongjiang (except Mohe county), Jilin
++Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
++ 8:30 - CHAT 1932 Mar # Changbai Time
++ 8:00 - CST 1940
++ 9:00 - CHAT 1966 May
++ 8:30 - CHAT 1980 May
++ 8:00 PRC C%sT
++
++# far west China
++Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
++ 5:30 - KAST 1940 # Kashgar Time
++ 5:00 - KAST 1980 May
++ 8:00 PRC C%sT
++
++# Kuwait
++Zone Asia/Kuwait 3:11:56 - LMT 1950
++ 3:00 - AST
++
++
++# Oman
++# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
++Zone Asia/Muscat 3:54:24 - LMT 1920
++ 4:00 - GST
++
++# India
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Portuguese India switched to UT +05 on 1912-01-01.
++#Zone Asia/Panaji [not enough info to complete]
++
++# Cambodia
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data. Also, guess
++# (1) Cambodia reverted to UT +07 on 1945-09-02, when Vietnam did, and
++# (2) they also reverted to +07 on 1953-11-09, the date of independence.
++# These guesses are probably wrong but they're better than guessing no
++# transitions there.
++Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1953 Nov 9
++ 7:00 - ICT
++
++# Israel
++Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
++ 2:21 - JMT 1918
++ 2:00 Zion I%sT
++
++# Laos
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data.
++# Trần's book says that Laos reverted to UT +07 on 1955-04-15.
++# Also, guess that Laos reverted to +07 on 1945-09-02, when Vietnam did;
++# this is probably wrong but it's better than guessing no transition.
++Zone Asia/Vientiane 6:50:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Apr 15
++ 7:00 - ICT
++
++# Jan Mayen
++# From Whitman:
++Zone Atlantic/Jan_Mayen -1:00 - EGT
++
++# St Helena
++Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
++ -0:22:48 - JMT 1951 # Jamestown Mean Time
++ 0:00 - GMT
++
++# Northern Ireland
++Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
++ -0:25:21 - DMT 1916 May 21 2:00
++ # DMT = Dublin/Dunsink MT
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ # IST = Irish Summer Time
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Guernsey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.27N -2.33E - St.Peter Port
++Zone Europe/Guernsey -0:09:19 - LMT 1913 Jun 18
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Isle of Man
++#
++# From Lester Caine (2013-09-04):
++# The Isle of Man legislation is now on-line at
++# <http://www.legislation.gov.im>, starting with the original Statutory
++# Time Act in 1883 and including additional confirmation of some of
++# the dates of the 'Summer Time' orders originating at
++# Westminster. There is a little uncertainty as to the starting date
++# of the first summer time in 1916 which may have be announced a
++# couple of days late. There is still a substantial number of
++# documents to work through, but it is thought that every GB change
++# was also implemented on the island.
++#
++# AT4 of 1883 - The Statutory Time et cetera Act 1883 -
++# LMT Location - 54.1508N -4.4814E - Tynwald Hill ( Manx parliament )
++Zone Europe/Isle_of_Man -0:17:55 - LMT 1883 Mar 30 0:00s
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Jersey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.187N -2.107E - St. Helier
++Zone Europe/Jersey -0:08:25 - LMT 1898 Jun 11 16:00u
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Slovenia
++Zone Europe/Ljubljana 0:58:04 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Bosnia and Herzegovina
++Zone Europe/Sarajevo 1:13:40 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Macedonia
++Zone Europe/Skopje 1:25:44 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Moldova / Transnistria
++Zone Europe/Tiraspol 1:58:32 - LMT 1880
++ 1:55 - CMT 1918 Feb 15 # Chisinau MT
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1940 Aug 15
++ 2:00 1:00 EEST 1941 Jul 17
++ 1:00 C-Eur CE%sT 1944 Aug 24
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 2:00 Russia EE%sT 1992 Jan 19 2:00
++ 3:00 Russia MSK/MSD
++
++# Liechtenstein
++Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
++ 1:00 - CET 1981
++ 1:00 EU CE%sT
++
++# Croatia
++Zone Europe/Zagreb 1:03:52 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Madagascar
++Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
++ 3:00 - EAT 1954 Feb 27 23:00s
++ 3:00 1:00 EAST 1954 May 29 23:00s
++ 3:00 - EAT
++
++# Comoros
++Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
++ 3:00 - EAT
++
++# Mayotte
++Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
++ 3:00 - EAT
++
++# US minor outlying islands
++Zone Pacific/Johnston -10:00 - HST
++
++# US minor outlying islands
++#
++# From Mark Brader (2005-01-23):
++# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
++# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
++# reproduced a Pan American Airways timetable from 1936, for their weekly
++# "Orient Express" flights between San Francisco and Manila, and connecting
++# flights to Chicago and the US East Coast. As it uses some time zone
++# designations that I've never seen before:....
++# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
++# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
++#
++Zone Pacific/Midway -11:49:28 - LMT 1901
++ -11:00 - NST 1956 Jun 3
++ -11:00 1:00 NDT 1956 Sep 2
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++
++# N Mariana Is
++Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
++ 9:43:00 - LMT 1901
++ 9:00 - MPT 1969 Oct # N Mariana Is Time
++ 10:00 - MPT 2000 Dec 23
++ 10:00 - ChST # Chamorro Standard Time
+Index: contrib/tzdata/checklinks.awk
+===================================================================
+--- contrib/tzdata/checklinks.awk (nonexistent)
++++ contrib/tzdata/checklinks.awk (working copy)
+@@ -0,0 +1,48 @@
++# Check links in tz tables.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ # Special marker indicating that the name is defined as a Zone.
++ # It is a newline so that it cannot match a valid name.
++ # It is not null so that its slot does not appear unset.
++ Zone = "\n"
++}
++
++/^Zone/ {
++ if (defined[$2]) {
++ if (defined[$2] == Zone) {
++ printf "%s: Zone has duplicate definition\n", $2
++ } else {
++ printf "%s: Link with same name as Zone\n", $2
++ }
++ status = 1
++ }
++ defined[$2] = Zone
++}
++
++/^Link/ {
++ if (defined[$3]) {
++ if (defined[$3] == Zone) {
++ printf "%s: Link with same name as Zone\n", $3
++ } else if (defined[$3] == $2) {
++ printf "%s: Link has duplicate definition\n", $3
++ } else {
++ printf "%s: Link to both %s and %s\n", $3, defined[$3], $2
++ }
++ status = 1
++ }
++ used[$2] = 1
++ defined[$3] = $2
++}
++
++END {
++ for (tz in used) {
++ if (defined[tz] != Zone) {
++ printf "%s: Link to non-zone\n", tz
++ status = 1
++ }
++ }
++
++ exit status
++}
+Index: contrib/tzdata/checktab.awk
+===================================================================
+--- contrib/tzdata/checktab.awk (nonexistent)
++++ contrib/tzdata/checktab.awk (working copy)
+@@ -0,0 +1,177 @@
++# Check tz tables for consistency.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ FS = "\t"
++
++ if (!iso_table) iso_table = "iso3166.tab"
++ if (!zone_table) zone_table = "zone1970.tab"
++ if (!want_warnings) want_warnings = -1
++
++ while (getline <iso_table) {
++ iso_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 2) {
++ printf "%s:%d: wrong number of columns\n", \
++ iso_table, iso_NR >>"/dev/stderr"
++ status = 1
++ }
++ cc = $1
++ name = $2
++ if (cc !~ /^[A-Z][A-Z]$/) {
++ printf "%s:%d: invalid country code '%s'\n", \
++ iso_table, iso_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ if (cc <= cc0) {
++ if (cc == cc0) {
++ s = "duplicate";
++ } else {
++ s = "out of order";
++ }
++
++ printf "%s:%d: country code '%s' is %s\n", \
++ iso_table, iso_NR, cc, s \
++ >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ if (name2cc[name]) {
++ printf "%s:%d: '%s' and '%s' have the same name\n", \
++ iso_table, iso_NR, name2cc[name], cc \
++ >>"/dev/stderr"
++ status = 1
++ }
++ name2cc[name] = cc
++ cc2name[cc] = name
++ cc2NR[cc] = iso_NR
++ }
++
++ cc0 = ""
++
++ while (getline <zone_table) {
++ zone_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 3 && NF != 4) {
++ printf "%s:%d: wrong number of columns\n", \
++ zone_table, zone_NR >>"/dev/stderr"
++ status = 1
++ }
++ split($1, cca, /,/)
++ cc = cca[1]
++ coordinates = $2
++ tz = $3
++ comments = $4
++ if (cc < cc0) {
++ printf "%s:%d: country code '%s' is out of order\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ tztab[tz] = 1
++ tz2comments[tz] = comments
++ tz2NR[tz] = zone_NR
++ for (i in cca) {
++ cc = cca[i]
++ cctz = cc tz
++ cctztab[cctz] = 1
++ if (cc2name[cc]) {
++ cc_used[cc]++
++ } else {
++ printf "%s:%d: %s: unknown country code\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (coordinates !~ /^[-+][0-9][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9]$/ \
++ && coordinates !~ /^[-+][0-9][0-9][0-5][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9][0-5][0-9]$/) {
++ printf "%s:%d: %s: invalid coordinates\n", \
++ zone_table, zone_NR, coordinates >>"/dev/stderr"
++ status = 1
++ }
++ }
++
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (1 < cc_used[cc]) {
++ comments_needed[tz] = cc
++ }
++ }
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (!comments_needed[tz] && tz2comments[tz]) {
++ printf "%s:%d: unnecessary comment '%s'\n", \
++ zone_table, tz2NR[tz], tz2comments[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 0
++ status = 1
++ } else if (comments_needed[tz] && !tz2comments[tz]) {
++ printf "%s:%d: missing comment for %s\n", \
++ zone_table, tz2NR[tz], comments_needed[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 1
++ status = 1
++ }
++ }
++ FS = " "
++}
++
++$1 ~ /^#/ { next }
++
++{
++ tz = rules = ""
++ if ($1 == "Zone") {
++ tz = $2
++ ruleUsed[$4] = 1
++ } else if ($1 == "Link" && zone_table == "zone.tab") {
++ # Ignore Link commands if source and destination basenames
++ # are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
++ src = $2
++ dst = $3
++ while ((i = index(src, "/"))) src = substr(src, i+1)
++ while ((i = index(dst, "/"))) dst = substr(dst, i+1)
++ if (src != dst) tz = $3
++ } else if ($1 == "Rule") {
++ ruleDefined[$2] = 1
++ } else {
++ ruleUsed[$2] = 1
++ }
++ if (tz && tz ~ /\//) {
++ if (!tztab[tz]) {
++ printf "%s: no data for '%s'\n", zone_table, tz \
++ >>"/dev/stderr"
++ status = 1
++ }
++ zoneSeen[tz] = 1
++ }
++}
++
++END {
++ for (tz in ruleDefined) {
++ if (!ruleUsed[tz]) {
++ printf "%s: Rule never used\n", tz
++ status = 1
++ }
++ }
++ for (tz in tztab) {
++ if (!zoneSeen[tz]) {
++ printf "%s:%d: no Zone table for '%s'\n", \
++ zone_table, tz2NR[tz], tz >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (0 < want_warnings) {
++ for (cc in cc2name) {
++ if (!cc_used[cc]) {
++ printf "%s:%d: warning: " \
++ "no Zone entries for %s (%s)\n", \
++ iso_table, cc2NR[cc], cc, cc2name[cc]
++ }
++ }
++ }
++
++ exit status
++}
+Index: contrib/tzdata/etcetera
+===================================================================
+--- contrib/tzdata/etcetera (revision 309576)
++++ contrib/tzdata/etcetera (working copy)
+@@ -8,6 +8,13 @@
+ # need now for the entries that are not on UTC are for ships at sea
+ # that cannot use POSIX TZ settings.
+
++# Starting with POSIX 1003.1-2001, the entries below are all
++# unnecessary as settings for the TZ environment variable. E.g.,
++# instead of TZ='Etc/GMT+4' one can use the POSIX setting TZ='<-04>+4'.
++#
++# Do not use a POSIX TZ setting like TZ='GMT+4', which is four hours
++# behind GMT but uses the completely misleading abbreviation "GMT".
++
+ Zone Etc/GMT 0 - GMT
+ Zone Etc/UTC 0 - UTC
+ Zone Etc/UCT 0 - UCT
+@@ -26,23 +33,13 @@ Link Etc/GMT Etc/GMT-0
+ Link Etc/GMT Etc/GMT+0
+ Link Etc/GMT Etc/GMT0
+
+-# We use POSIX-style signs in the Zone names and the output abbreviations,
++# Be consistent with POSIX TZ settings in the Zone names,
+ # even though this is the opposite of what many people expect.
+ # POSIX has positive signs west of Greenwich, but many people expect
+ # positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+-# the abbreviation "GMT+4" and corresponds to 4 hours behind UT
++# the abbreviation "-04" and corresponds to 4 hours behind UT
+ # (i.e. west of Greenwich) even though many people would expect it to
+ # mean 4 hours ahead of UT (i.e. east of Greenwich).
+-#
+-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
+-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+-# offset is kept within the angle bracket (and is used for display)
+-# while the POSIX sign is kept outside the angle bracket (and is used
+-# for calculation).
+-#
+-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+-# GMT but uses the completely misleading abbreviation "GMT".
+
+ # Earlier incarnations of this package were not POSIX-compliant,
+ # and had lines such as
+@@ -51,30 +48,31 @@ Link Etc/GMT Etc/GMT0
+ # way does a
+ # zic -l GMT-12
+ # so we moved the names into the Etc subdirectory.
++# Also, the time zone abbreviations are now compatible with %z.
+
+-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+-Zone Etc/GMT-13 13 - GMT-13
+-Zone Etc/GMT-12 12 - GMT-12
+-Zone Etc/GMT-11 11 - GMT-11
+-Zone Etc/GMT-10 10 - GMT-10
+-Zone Etc/GMT-9 9 - GMT-9
+-Zone Etc/GMT-8 8 - GMT-8
+-Zone Etc/GMT-7 7 - GMT-7
+-Zone Etc/GMT-6 6 - GMT-6
+-Zone Etc/GMT-5 5 - GMT-5
+-Zone Etc/GMT-4 4 - GMT-4
+-Zone Etc/GMT-3 3 - GMT-3
+-Zone Etc/GMT-2 2 - GMT-2
+-Zone Etc/GMT-1 1 - GMT-1
+-Zone Etc/GMT+1 -1 - GMT+1
+-Zone Etc/GMT+2 -2 - GMT+2
+-Zone Etc/GMT+3 -3 - GMT+3
+-Zone Etc/GMT+4 -4 - GMT+4
+-Zone Etc/GMT+5 -5 - GMT+5
+-Zone Etc/GMT+6 -6 - GMT+6
+-Zone Etc/GMT+7 -7 - GMT+7
+-Zone Etc/GMT+8 -8 - GMT+8
+-Zone Etc/GMT+9 -9 - GMT+9
+-Zone Etc/GMT+10 -10 - GMT+10
+-Zone Etc/GMT+11 -11 - GMT+11
+-Zone Etc/GMT+12 -12 - GMT+12
++Zone Etc/GMT-14 14 - +14
++Zone Etc/GMT-13 13 - +13
++Zone Etc/GMT-12 12 - +12
++Zone Etc/GMT-11 11 - +11
++Zone Etc/GMT-10 10 - +10
++Zone Etc/GMT-9 9 - +09
++Zone Etc/GMT-8 8 - +08
++Zone Etc/GMT-7 7 - +07
++Zone Etc/GMT-6 6 - +06
++Zone Etc/GMT-5 5 - +05
++Zone Etc/GMT-4 4 - +04
++Zone Etc/GMT-3 3 - +03
++Zone Etc/GMT-2 2 - +02
++Zone Etc/GMT-1 1 - +01
++Zone Etc/GMT+1 -1 - -01
++Zone Etc/GMT+2 -2 - -02
++Zone Etc/GMT+3 -3 - -03
++Zone Etc/GMT+4 -4 - -04
++Zone Etc/GMT+5 -5 - -05
++Zone Etc/GMT+6 -6 - -06
++Zone Etc/GMT+7 -7 - -07
++Zone Etc/GMT+8 -8 - -08
++Zone Etc/GMT+9 -9 - -09
++Zone Etc/GMT+10 -10 - -10
++Zone Etc/GMT+11 -11 - -11
++Zone Etc/GMT+12 -12 - -12
+Index: contrib/tzdata/europe
+===================================================================
+--- contrib/tzdata/europe (revision 309576)
++++ contrib/tzdata/europe (working copy)
+@@ -75,8 +75,7 @@
+ # 1:00 CET CEST CEMT Central Europe
+ # 1:00:14 SET Swedish (1879-1899)*
+ # 2:00 EET EEST Eastern Europe
+-# 3:00 FET Further-eastern Europe (2011-2014)*
+-# 3:00 MSK MSD MSM* Minsk, Moscow
++# 3:00 MSK MSD Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -583,16 +582,33 @@ Rule E-Eur 1979 1995 - Sep lastSun 0:00 0 -
+ Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+ Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
++
++# Daylight saving time for Russia and the Soviet Union
++#
++# The 1917-1921 decree URLs are from Alexander Belopolsky (2016-08-23).
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
++#
++# Decree No. 142 (1917-12-22) http://istmat.info/node/28137
+ Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
++#
++# Decree No. 497 (1918-05-30) http://istmat.info/node/30001
+ Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+ Rule Russia 1918 only - Sep 16 1:00 1:00 MST
++#
++# Decree No. 258 (1919-05-29) http://istmat.info/node/37949
+ Rule Russia 1919 only - May 31 23:00 2:00 MDST
+-Rule Russia 1919 only - Jul 1 2:00 1:00 MSD
++#
++Rule Russia 1919 only - Jul 1 0:00u 1:00 MSD
+ Rule Russia 1919 only - Aug 16 0:00 0 MSK
++#
++# Decree No. 63 (1921-02-03) http://istmat.info/node/45840
+ Rule Russia 1921 only - Feb 14 23:00 1:00 MSD
+-Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer
++#
++# Decree No. 121 (1921-03-07) http://istmat.info/node/45949
++Rule Russia 1921 only - Mar 20 23:00 2:00 +05
++#
+ Rule Russia 1921 only - Sep 1 0:00 1:00 MSD
+ Rule Russia 1921 only - Oct 1 0:00 0 -
+ # Act No. 925 of the Council of Ministers of the USSR (1980-10-24):
+@@ -600,16 +616,40 @@ Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule Russia 1981 1983 - Oct 1 0:00 0 -
+ # Act No. 967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+ # Act No. 227 of the Council of Ministers of the USSR (1989-03-14):
+-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
++Rule Russia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule Russia 1985 2010 - Mar lastSun 2:00s 1:00 S
+ #
+-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule Russia 1992 only - Sep lastSat 23:00 0 -
+-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
+-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
+ Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
+ # As described below, Russia's 2014 change affects Zone data, not Rule data.
+
++# From Stepan Golosunov (2016-03-07):
++# Wikipedia and other sources refer to the Act of the Council of
++# Ministers of the USSR from 1988-01-04 No. 5 and the Act of the
++# Council of Ministers of the USSR from 1989-03-14 No. 227.
++#
++# I did not find full texts of these acts. For the 1989 one we have
++# title at http://base.garant.ru/70754136/ :
++# "About change in calculation of time on the territories of
++# Lithuanian SSR, Latvian SSR and Estonian SSR, Astrakhan,
++# Kaliningrad, Kirov, Kuybyshev, Ulyanovsk and Uralsk oblasts".
++# And http://astrozet.net/files/Zones/DOC/RU/1980-925.txt appears to
++# contain quotes from both acts: Since last Sunday of March 1988 rules
++# of the second time belt are installed in Volgograd and Saratov
++# oblasts. Since last Sunday of March 1989:
++# a) Lithuanian SSR, Latvian SSR, Estonian SSR, Kaliningrad oblast:
++# second time belt rules without extra hour (Moscow-1);
++# b) Astrakhan, Kirov, Kuybyshev, Ulyanovsk oblasts: second time belt
++# rules (Moscow time)
++# c) Uralsk oblast: third time belt rules (Moscow+1).
++
++# From Stepan Golosunov (2016-03-27):
++# Unamended version of the act of the
++# Government of the Russian Federation No. 23 from 08.01.1992
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102014034&rdk=0
++# says that every year clocks were to be moved forward on last Sunday
++# of March at 2 hours and moved backwards on last Sunday of September
++# at 3 hours. It was amended in 1996 to replace September with October.
++
+ # From Alexander Krivenyshev (2011-06-14):
+ # According to Kremlin press service, Russian President Dmitry Medvedev
+ # signed a federal law "On calculation of time" on June 9, 2011.
+@@ -731,6 +771,14 @@ Zone Europe/Vienna 1:05:21 - LMT 1893 Apr
+ 1:00 EU CE%sT
+
+ # Belarus
++#
++# From Stepan Golosunov (2016-07-02):
++# http://www.lawbelarus.com/repub/sub30/texf9611.htm
++# (Act of the Cabinet of Ministers of the Republic of Belarus from
++# 1992-03-25 No. 157) ... says clocks were to be moved forward at 2:00
++# on last Sunday of March and backward at 3:00 on last Sunday of September
++# (the same as previous USSR and contemporary Russian regulations).
++#
+ # From Yauhen Kharuzhy (2011-09-16):
+ # By latest Belarus government act Europe/Minsk timezone was changed to
+ # GMT+3 without DST (was GMT+2 with DST).
+@@ -743,8 +791,6 @@ Zone Europe/Vienna 1:05:21 - LMT 1893 Apr
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+ # http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
+-# From Paul Eggert (2014-10-08):
+-# Hence Belarus can share time zone abbreviations with Moscow again.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+@@ -754,12 +800,8 @@ Zone Europe/Minsk 1:50:16 - LMT 1880
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
+- 2:00 - EET 1992 Mar 29 0:00s
+- 2:00 1:00 EEST 1992 Sep 27 0:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 1:00s
+- 3:00 - MSK
++ 3:00 - +03
+
+ # Belgium
+ #
+@@ -1005,6 +1047,12 @@ Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # T
+ # startkart.no says Thule does not observe DST, but this is clearly an error,
+ # so go with Shanks & Pottenger for Thule transitions until this year.
+ # For 2007 on assume Thule will stay in sync with US DST rules.
++
++# From J William Piggott (2016-02-20):
++# "Greenland north of the community of Scoresbysund" is officially named
++# "National Park" by Executive Order:
++# http://naalakkersuisut.gl/~/media/Nanoq/Files/Attached%20Files/Engelske-tekster/Legislation/Executive%20Order%20National%20Park.rtf
++# It is their only National Park.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+@@ -1030,6 +1078,10 @@ Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pi
+ -4:00 Thule A%sT
+
+ # Estonia
++#
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
+ # From Peter Ilieve (1994-10-15):
+ # A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+ # [through 1994] and gives the legal authority for it,
+@@ -1257,7 +1309,7 @@ Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+ # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+ # says that Bersarin issued an order to use Moscow time on May 20.
+ # However, Moscow did not observe daylight saving in 1945, so
+-# this was equivalent to CEMT (GMT+3), not GMT+4.
++# this was equivalent to UT +03, not +04.
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1448,73 +1500,84 @@ Zone Atlantic/Reykjavik -1:28 - LMT 1908
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
+-# From Paul Eggert (2006-03-22):
+-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+-# F. Pollastri
+-# Day-light Saving Time in Italy (2006-02-03)
+-# http://toi.iriti.cnr.it/uk/ienitlt.html
+-# ('FP' below), taken from an Italian National Electrotechnical Institute
+-# publication. When the three sources disagree, guess who's right, as follows:
++# From Michael Deckers (2016-10-24):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
++# ... [translated as] "The preceding dispositions will enter into
++# force at the instant at which, according to the time specified in
++# the 1st article, the 1st of November 1893 will begin...."
+ #
+-# year FP Shanks&P. (S) Whitman (W) Go with:
+-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+-# 09-30 09-29 24:00 09-30 01:00 FP & W
+-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+-# 10-06 10-05 24:00 10-06 01:00 FP & W
+-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+-# 1944 04-02 04-03 02:00 S (see C-Eur)
+-# 09-16 10-02 03:00 FP; guess 24:00s
+-# 1945 09-14 09-16 24:00 FP; guess 24:00s
+-# 1970 05-21 05-31 00:00 S
+-# 09-20 09-27 00:00 S
++# From Pierpaolo Bernardi (2016-10-20):
++# The authoritative source for time in Italy is the national metrological
++# institute, which has a summary page of historical DST data at
++# http://www.inrim.it/res/tf/ora_legale_i.shtml
++# (2016-10-24):
++# http://www.renzobaldini.it/le-ore-legali-in-italia/
++# has still different data for 1944. It divides Italy in two, as
++# there were effectively two governments at the time, north of Gothic
++# Line German controlled territory, official government RSI, and south
++# of the Gothic Line, controlled by allied armies.
+ #
++# From Brian Inglis (2016-10-23):
++# Viceregal LEGISLATIVE DECREE. 14 September 1944, no. 219.
++# Restoration of Standard Time. (044U0219) (OJ 62 of 30.9.1944) ...
++# Given the R. law decreed on 1944-03-29, no. 92, by which standard time is
++# advanced to sixty minutes later starting at hour two on 1944-04-02; ...
++# Starting at hour three on the date 1944-09-17 standard time will be resumed.
++#
++# From Paul Eggert (2016-10-27):
++# Go with INRiM for DST rules, except as corrected by Inglis for 1944
++# for the Kingdom of Italy. This is consistent with Renzo Baldini.
++# Model Rome's occupation by using using C-Eur rules from 1943-09-10
++# to 1944-06-04; although Rome was an open city during this period, it
++# was effectively controlled by Germany.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+-Rule Italy 1916 only - Oct 1 0:00s 0 -
+-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+-Rule Italy 1917 only - Sep 30 0:00s 0 -
+-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+-Rule Italy 1920 only - Sep 19 0:00s 0 -
+-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+-Rule Italy 1944 only - Sep 17 0:00s 0 -
+-Rule Italy 1945 only - Apr 2 2:00 1:00 S
+-Rule Italy 1945 only - Sep 15 0:00s 0 -
+-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+-Rule Italy 1946 only - Oct 6 2:00s 0 -
+-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+-Rule Italy 1947 only - Oct 5 0:00s 0 -
+-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+-Rule Italy 1948 only - Oct 3 2:00s 0 -
+-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+-Rule Italy 1969 only - Jun 1 0:00 1:00 S
+-Rule Italy 1970 only - May 31 0:00 1:00 S
+-Rule Italy 1970 only - Sep lastSun 0:00 0 -
+-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1971 only - Sep lastSun 1:00 0 -
+-Rule Italy 1972 only - Oct 1 0:00 0 -
+-Rule Italy 1973 only - Jun 3 0:00 1:00 S
+-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+-Rule Italy 1974 only - May 26 0:00 1:00 S
+-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+-Rule Italy 1976 only - May 30 0:00s 1:00 S
+-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+-Rule Italy 1978 only - Oct 1 0:00s 0 -
+-Rule Italy 1979 only - Sep 30 0:00s 0 -
++Rule Italy 1916 only - Jun 3 24:00 1:00 S
++Rule Italy 1916 1917 - Sep 30 24:00 0 -
++Rule Italy 1917 only - Mar 31 24:00 1:00 S
++Rule Italy 1918 only - Mar 9 24:00 1:00 S
++Rule Italy 1918 only - Oct 6 24:00 0 -
++Rule Italy 1919 only - Mar 1 24:00 1:00 S
++Rule Italy 1919 only - Oct 4 24:00 0 -
++Rule Italy 1920 only - Mar 20 24:00 1:00 S
++Rule Italy 1920 only - Sep 18 24:00 0 -
++Rule Italy 1940 only - Jun 14 24:00 1:00 S
++Rule Italy 1942 only - Nov 2 2:00s 0 -
++Rule Italy 1943 only - Mar 29 2:00s 1:00 S
++Rule Italy 1943 only - Oct 4 2:00s 0 -
++Rule Italy 1944 only - Apr 2 2:00s 1:00 S
++Rule Italy 1944 only - Sep 17 2:00s 0 -
++Rule Italy 1945 only - Apr 2 2:00 1:00 S
++Rule Italy 1945 only - Sep 15 1:00 0 -
++Rule Italy 1946 only - Mar 17 2:00s 1:00 S
++Rule Italy 1946 only - Oct 6 2:00s 0 -
++Rule Italy 1947 only - Mar 16 0:00s 1:00 S
++Rule Italy 1947 only - Oct 5 0:00s 0 -
++Rule Italy 1948 only - Feb 29 2:00s 1:00 S
++Rule Italy 1948 only - Oct 3 2:00s 0 -
++Rule Italy 1966 1968 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1966 only - Sep 24 24:00 0 -
++Rule Italy 1967 1969 - Sep Sun>=22 0:00s 0 -
++Rule Italy 1969 only - Jun 1 0:00s 1:00 S
++Rule Italy 1970 only - May 31 0:00s 1:00 S
++Rule Italy 1970 only - Sep lastSun 0:00s 0 -
++Rule Italy 1971 1972 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1971 only - Sep lastSun 0:00s 0 -
++Rule Italy 1972 only - Oct 1 0:00s 0 -
++Rule Italy 1973 only - Jun 3 0:00s 1:00 S
++Rule Italy 1973 1974 - Sep lastSun 0:00s 0 -
++Rule Italy 1974 only - May 26 0:00s 1:00 S
++Rule Italy 1975 only - Jun 1 0:00s 1:00 S
++Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
++Rule Italy 1976 only - May 30 0:00s 1:00 S
++Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1978 only - Oct 1 0:00s 0 -
++Rule Italy 1979 only - Sep 30 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1944 Jul
++ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
++ 1:00 Italy CE%sT 1943 Sep 10
++ 1:00 C-Eur CE%sT 1944 Jun 4
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+@@ -1623,6 +1686,9 @@ Link Europe/Zurich Europe/Vaduz
+
+ # Lithuania
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
+ # From Paul Eggert (1996-11-22):
+ # IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+ # known to be wrong about Estonia and Latvia, assume it's wrong here too.
+@@ -1662,8 +1728,8 @@ Zone Europe/Vilnius 1:41:16 - LMT 1880
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+ 2:00 - EET 1998 Mar 29 1:00u
+ 1:00 EU CE%sT 1999 Oct 31 1:00u
+@@ -1710,6 +1776,10 @@ Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
+ # See Europe/Belgrade.
+
+ # Malta
++#
++# From Paul Eggert (2016-10-21):
++# Assume 1900-1972 was like Rome, overriding Shanks.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+ Rule Malta 1973 only - Sep 29 0:00s 0 -
+@@ -1720,8 +1790,6 @@ Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+@@ -1728,6 +1796,16 @@ Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s
+
+ # Moldova
+
++# From Stepan Golosunov (2016-03-07):
++# the act of the government of the Republic of Moldova Nr. 132 from 1990-05-04
++# http://lex.justice.md/viewdoc.php?action=view&view=doc&id=298782&lang=2
++# ... says that since 1990-05-06 on the territory of the Moldavian SSR
++# time would be calculated as the standard time of the second time belt
++# plus one hour of the "summer" time. To implement that clocks would be
++# adjusted one hour backwards at 1990-05-06 2:00. After that "summer"
++# time would be cancelled last Sunday of September at 3:00 and
++# reintroduced last Sunday of March at 2:00.
++
+ # From Paul Eggert (2006-03-22):
+ # A previous version of this database followed Shanks & Pottenger, who write
+ # that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+@@ -1786,9 +1864,7 @@ Zone Europe/Chisinau 1:55:20 - LMT 1880
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+- 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 May 6
+- 2:00 - EET 1991
++ 3:00 Russia MSK/MSD 1990 May 6 2:00
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+ # See Romania commentary for the guessed 1997 transition to EU rules.
+@@ -1845,7 +1921,7 @@ Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm
++# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+@@ -2210,7 +2286,6 @@ Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+ # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+ # are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+ # except we follow Chernov's report that 1992 DST transitions were Sat
+@@ -2266,16 +2341,32 @@ Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+ # Europe/Kaliningrad covers...
+ # 39 RU-KGD Kaliningrad Oblast
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Stepan Golosunov (2016-03-07):
++# http://www.rgo.ru/ru/kaliningradskoe-oblastnoe-otdelenie/ob-otdelenii/publikacii/kak-nam-zhilos-bez-letnego-vremeni
++# confirms that the 1989 change to Moscow-1 was implemented.
++# (The article, though, is misattributed to 1990 while saying that
++# summer->winter transition would be done on the 24 of September. But
++# 1990-09-24 was Monday, while 1989-09-24 was Sunday as expected.)
++# ...
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad switched to Moscow-1 on 1989-03-26, avoided
++# at the last moment switch to Moscow-1 on 1991-03-31, switched to
++# Moscow on 1991-11-03, switched to Moscow-1 on 1992-01-19.
++
+ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 2:00s
++ 3:00 - +03 2014 Oct 26 2:00s
+ 2:00 - EET
+
+
+-# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
++# From Paul Eggert (2016-02-21), per Tim Parenti (2014-07-03) and
++# Oscar van Vlijmen (2001-08-25):
+ # Europe/Moscow covers...
+ # 01 RU-AD Adygea, Republic of
+ # 05 RU-DA Dagestan, Republic of
+@@ -2318,12 +2409,102 @@ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ # 68 RU-TAM Tambov Oblast
+ # 69 RU-TVE Tver Oblast
+ # 71 RU-TUL Tula Oblast
+-# 73 RU-ULY Ulyanovsk Oblast
+ # 76 RU-YAR Yaroslavl Oblast
+ # 77 RU-MOW Moscow
+ # 78 RU-SPE Saint Petersburg
+ # 83 RU-NEN Nenets Autonomous Okrug
+
++# From Paul Eggert (2016-08-23):
++# The Soviets switched to UT-based time in 1919. Decree No. 59
++# (1919-02-08) http://istmat.info/node/35567 established UT-based time
++# zones, and Decree No. 147 (1919-03-29) http://istmat.info/node/35854
++# specified a transition date of 1919-07-01, apparently at 00:00 UT.
++# No doubt only the Soviet-controlled regions switched on that date;
++# later transitions to UT-based time in other parts of Russia are
++# taken from what appear to be guesses by Shanks.
++# (Thanks to Alexander Belopolsky for pointers to the decrees.)
++
++# From Stepan Golosunov (2016-03-07):
++# 11. Regions-violators, 1981-1982.
++# Wikipedia refers to
++# http://maps.monetonos.ru/maps/raznoe/Old_Maps/Old_Maps/Articles/022/3_1981.html
++# http://besp.narod.ru/nauka_1981_3.htm
++#
++# The second link provides two articles scanned from the Nauka i Zhizn
++# magazine No. 3, 1981 and a scan of the short article attributed to
++# the Trud newspaper from February 1982. The first link provides the
++# same Nauka i Zhizn articles converted to the text form (but misses
++# time belt changes map).
++#
++# The second Nauka i Zhizn article says that in addition to
++# introduction of summer time on 1981-04-01 there are some time belt
++# border changes on 1981-10-01, mostly affecting Nenets Autonomous
++# Okrug, Krasnoyarsk Krai, Yakutia, Magadan Oblast and Chukotka
++# according to the provided map (colored one). In addition to that
++# "time violators" (regions which were not using rules of the time
++# belts in which they were located) would not be moving off the DST on
++# 1981-10-01 to restore the decree time usage. (Komi ASSR was
++# supposed to repeat that move in October 1982 to account for the 2
++# hour difference.) Map depicting "time violators" before 1981-10-01
++# is also provided.
++#
++# The article from Trud says that 1981-10-01 changes caused problems
++# and some territories would be moved to pre-1981-10-01 time by not
++# moving to summer time on 1982-04-01. Namely: Dagestan,
++# Kabardino-Balkar, Kalmyk, Komi, Mari, Mordovian, North Ossetian,
++# Tatar, Chechen-Ingush and Chuvash ASSR, Krasnodar and Stavropol
++# krais, Arkhangelsk, Vladimir, Vologda, Voronezh, Gorky, Ivanovo,
++# Kostroma, Lipetsk, Penza, Rostov, Ryazan, Tambov, Tyumen and
++# Yaroslavl oblasts, Nenets and Evenk autonomous okrugs, Khatangsky
++# district of Taymyr Autonomous Okrug. As a result Evenk Autonomous
++# Okrug and Khatangsky district of Taymyr Autonomous Okrug would end
++# up on Moscow+4, Tyumen Oblast on Moscow+2 and the rest on Moscow
++# time.
++#
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# attributes the 1982 changes to the Act of the Council of Ministers
++# of the USSR No. 126 from 18.02.1982. 1980-925.txt also adds
++# Udmurtia to the list of affected territories and lists Khatangsky
++# district separately from Taymyr Autonomous Okrug. Probably erroneously.
++#
++# The affected territories are currently listed under Europe/Moscow,
++# Asia/Yekaterinburg and Asia/Krasnoyarsk.
++#
++# 12. Udmurtia
++# The fact that Udmurtia is depicted as a violator in the Nauka i
++# Zhizn article hints at Izhevsk being on different time from
++# Kuybyshev before 1981-10-01. Udmurtia is not mentioned in the 1989 act.
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# implies Udmurtia was on Moscow time after 1982-04-01.
++# Wikipedia implies Udmurtia being on Moscow+1 until 1991.
++#
++# ...
++#
++# All Russian zones are supposed to have by default a -1 change at
++# 1991-03-31 2:00 (cancellation of the decree time in the USSR) and a +1
++# change at 1992-01-19 2:00 (restoration of the decree time in Russia).
++#
++# There were some exceptions, though.
++# Wikipedia says newspapers listed Astrakhan, Saratov, Kirov, Volgograd,
++# Izhevsk, Grozny, Kazan and Samara as such exceptions for the 1992
++# change. (Different newspapers providing different lists. And some
++# lists found in the internet are quite wild.)
++#
++# And apparently some exceptions were reverted in the last moment.
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad decided not to be an exception 2 days before the
++# 1991-03-31 switch and one person at
++# http://izhevsk.ru/forum_light_message/50/682597-m8369040.html
++# says he remembers that Samara opted out of the 1992-01-19 exception
++# 2 days before the switch.
++#
++#
++# From Paul Eggert (2016-03-18):
++# Given the above, we appear to be missing some Zone entries for the
++# chaotic early 1980s in Russia. It's not clear what these entries
++# should be. For now, sweep this under the rug and just document the
++# time in Moscow.
++
+ # From Vladimir Karpinsky (2014-07-08):
+ # LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow
+ # Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30")....
+@@ -2344,7 +2525,7 @@ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+
+ Zone Europe/Moscow 2:30:17 - LMT 1880
+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
+- 2:31:19 Russia %s 1919 Jul 1 2:00
++ 2:31:19 Russia %s 1919 Jul 1 0:00u
+ 3:00 Russia %s 1921 Oct
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+@@ -2397,28 +2578,58 @@ Zone Europe/Simferopol 2:16:24 - LMT 1880
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Volgograd covers...
++# From Paul Eggert (2016-03-18):
++# Europe/Astrakhan covers:
+ # 30 RU-AST Astrakhan Oblast
++#
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-01-12):
++# On February 10, 2016 Astrakhan Oblast got approval by the Federation
++# Council to change its time zone to UTC+4 (from current UTC+3 Moscow time)....
++# This Federal Law shall enter into force on 27 March 2016 at 02:00.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201602150056
++
++Zone Europe/Astrakhan 3:12:12 - LMT 1924 May
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Volgograd covers:
+ # 34 RU-VGG Volgograd Oblast
+-# 43 RU-KIR Kirov Oblast
+ # 64 RU-SAR Saratov Oblast
++# The 1988 transition is from USSR act No. 5 (1988-01-04).
+
+-# From Paul Eggert (2006-05-09):
+-# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300.
+-# Perhaps it switched after the others? But we have no data.
+-
+ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+- 4:00 - STAT 1961 Nov 11
+- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+- 4:00 - VOLT 1992 Mar 29 2:00s
+- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
+- 3:00 - MSK
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1961 Nov 11
++ 4:00 Russia +04/+05 1988 Mar 27 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
++# From Paul Eggert (2016-03-18):
++# Europe/Kirov covers:
++# 43 RU-KIR Kirov Oblast
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
++Zone Europe/Kirov 3:18:48 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Europe/Samara covers...
+@@ -2425,20 +2636,44 @@ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+ # 18 RU-UD Udmurt Republic
+ # 63 RU-SAM Samara Oblast
+
++# From Paul Eggert (2016-03-18):
+ # Byalokoz 1919 says Samara was 3:20:20.
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+
+-Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 2:00
+- 3:00 - SAMT 1930 Jun 21
+- 4:00 - SAMT 1935 Jan 27
+- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1991 Sep 29 2:00s
+- 3:00 - KUYT 1991 Oct 20 3:00
+- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
+- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
+- 4:00 - SAMT
++Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1935 Jan 27
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1991 Sep 29 2:00s
++ 3:00 - +03 1991 Oct 20 3:00
++ 4:00 Russia +04/+05 2010 Mar 28 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04
+
++# From Paul Eggert (2016-03-18):
++# Europe/Ulyanovsk covers:
++# 73 RU-ULY Ulyanovsk Oblast
+
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-02-17):
++# Ulyanovsk ... on their way to change time zones by March 27, 2016 at 2am.
++# Ulyanovsk Oblast ... from MSK to MSK+1 (UTC+3 to UTC+4) ...
++# 920582-6 ... 02/17/2016 The State Duma passed the bill in the first reading.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090051
++
++Zone Europe/Ulyanovsk 3:13:36 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1992 Jan 19 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Yekaterinburg covers...
+ # 02 RU-BA Bashkortostan, Republic of
+@@ -2461,49 +2696,142 @@ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+
+ Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3
+ 3:45:05 - PMT 1919 Jul 15 4:00
+- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
+- 6:00 - YEKT 2014 Oct 26 2:00s
+- 5:00 - YEKT
++ 4:00 - +04 1930 Jun 21
++ 5:00 Russia +05/+06 1991 Mar 31 2:00s
++ 4:00 Russia +04/+05 1992 Jan 19 2:00s
++ 5:00 Russia +05/+06 2011 Mar 27 2:00s
++ 6:00 - +06 2014 Oct 26 2:00s
++ 5:00 - +05
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Omsk covers...
+-# 04 RU-AL Altai Republic
+-# 22 RU-ALT Altai Krai
+ # 55 RU-OMS Omsk Oblast
+
+ # Byalokoz 1919 says Omsk was 4:53:30.
+
+ Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14
+- 5:00 - OMST 1930 Jun 21 # Omsk Time
+- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
+- 7:00 - OMST 2014 Oct 26 2:00s
+- 6:00 - OMST
++ 5:00 - +05 1930 Jun 21
++ 6:00 Russia +06/+07 1991 Mar 31 2:00s
++ 5:00 Russia +05/+06 1992 Jan 19 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06
+
++# From Paul Eggert (2016-02-22):
++# Asia/Barnaul covers:
++# 04 RU-AL Altai Republic
++# 22 RU-ALT Altai Krai
+
+-# From Tim Parenti (2014-07-03):
+-# Asia/Novosibirsk covers...
++# Data before 1991 are from Shanks & Pottenger.
++
++# From Stepan Golosunov (2016-03-07):
++# Letter of Bank of Russia from 1995-05-25
++# http://www.bestpravo.ru/rossijskoje/lj-akty/y3a.htm
++# suggests that Altai Republic transitioned to Moscow+3 on
++# 1995-05-28.
++#
++# http://regnum.ru/news/society/1957270.html
++# has some historical data for Altai Krai:
++# before 1957: west part on UTC+6, east on UTC+7
++# after 1957: UTC+7
++# since 1995: UTC+6
++# http://barnaul.rusplt.ru/index/pochemu_altajskij_kraj_okazalsja_v_neprivychnom_chasovom_pojase-17648.html
++# confirms that and provides more details including 1995-05-28 transition date.
++
++# From Alexander Krivenyshev (2016-02-17):
++# Altai Krai and Altai Republic on their way to change time zones
++# by March 27, 2016 at 2am....
++# Altai Republic / Gorno-Altaysk MSK+3 to MSK+4 (UTC+6 to UTC+7) ...
++# Altai Krai / Barnaul MSK+3 to MSK+4 (UTC+6 to UTC+7)
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090043
++# http://publication.pravo.gov.ru/Document/View/0001201603090038
++
++Zone Asia/Barnaul 5:35:00 - LMT 1919 Dec 10
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1995 May 28
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Mar 27 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Novosibirsk covers:
+ # 54 RU-NVS Novosibirsk Oblast
+-# 70 RU-TOM Tomsk Oblast
+
+-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+-# not clear when it switched from +7 to +6.
++# From Stepan Golosunov (2016-05-30):
++# http://asozd2.duma.gov.ru/main.nsf/(Spravka)?OpenAgent&RN=1085784-6
++# moves Novosibirsk oblast from UTC+6 to UTC+7.
++# From Stepan Golosunov (2016-07-04):
++# The law was signed yesterday and published today on
++# http://publication.pravo.gov.ru/Document/View/0001201607040064
+
+ Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 6:00 - NOVT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1993 May 23 # say Shanks & P.
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Jul 24 2:00s
++ 7:00 - +07
+
++# From Paul Eggert (2016-03-18):
++# Asia/Tomsk covers:
++# 70 RU-TOM Tomsk Oblast
+
++# From Stepan Golosunov (2016-03-24):
++# Byalokoz listed Tomsk at 5:39:51.
++
++# From Stanislaw A. Kuzikowski (1994-06-29):
++# Tomsk is still 4 hours ahead of Moscow.
++
++# From Stepan Golosunov (2016-03-19):
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102075743
++# (fifth time belt being UTC+5+1(decree time)
++# / UTC+5+1(decree time)+1(summer time)) ...
++# Note that time belts (numbered from 2 (Moscow) to 12 according to their
++# GMT/UTC offset and having too many exceptions like regions formally
++# belonging to one belt but using time from another) were replaced
++# with time zones in 2011 with different numbering (there was a
++# 2-hour gap between second and third zones in 2011-2014).
++
++# From Stepan Golosunov (2016-04-12):
++# http://asozd2.duma.gov.ru/main.nsf/(SpravkaNew)?OpenAgent&RN=1006865-6
++# This bill was approved in the first reading today. It moves Tomsk oblast
++# from UTC+6 to UTC+7 and is supposed to come into effect on 2016-05-29 at
++# 2:00. The bill needs to be approved in the second and the third readings by
++# the State Duma, approved by the Federation Council, signed by the President
++# and published to become a law. Minor changes in the text are to be expected
++# before the second reading (references need to be updated to account for the
++# recent changes).
++#
++# Judging by the ultra-short one-day amendments period, recent similar laws,
++# the State Duma schedule and the Federation Council schedule
++# http://www.duma.gov.ru/legislative/planning/day-shedule/por_vesna_2016/
++# http://council.gov.ru/activity/meetings/schedule/63303
++# I speculate that the final text of the bill will be proposed tomorrow, the
++# bill will be approved in the second and the third readings on Friday,
++# approved by the Federation Council on 2016-04-20, signed by the President and
++# published as a law around 2016-04-26.
++
++# From Matt Johnson (2016-04-26):
++# http://publication.pravo.gov.ru/Document/View/0001201604260048
++
++Zone Asia/Tomsk 5:39:51 - LMT 1919 Dec 22
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2002 May 1 3:00
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 May 29 2:00s
++ 7:00 - +07
++
++
+ # From Tim Parenti (2014-07-03):
+ # Asia/Novokuznetsk covers...
+ # 42 RU-KEM Kemerovo Oblast
+@@ -2526,9 +2854,6 @@ Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14
+ #
+ # Thus, when Russia will switch to DST on the night of March 28, 2010
+ # Kemerovo region (Kemerovo oblast') will not change the clock.
+-#
+-# As a result, Kemerovo oblast' will be in the same time zone as
+-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+ # From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02):
+ # The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus
+@@ -2535,15 +2860,13 @@ Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14
+ # realigning itself with KRAT.
+
+ Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 7:00 - KRAT # Krasnoyarsk Time
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2010 Mar 28 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07
+
+-
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Krasnoyarsk covers...
+ # 17 RU-TY Tuva Republic
+@@ -2556,12 +2879,12 @@ Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
+ # Byalokoz 1919 says Krasnoyarsk was 6:11:26.
+
+ Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
+- 8:00 - KRAT 2014 Oct 26 2:00s
+- 7:00 - KRAT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2011 Mar 27 2:00s
++ 8:00 - +08 2014 Oct 26 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2578,12 +2901,12 @@ Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
+
+ Zone Asia/Irkutsk 6:57:05 - LMT 1880
+ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time
+- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
+- 9:00 - IRKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 7:00 - +07 1930 Jun 21
++ 8:00 Russia +08/+09 1991 Mar 31 2:00s
++ 7:00 Russia +07/+08 1992 Jan 19 2:00s
++ 8:00 Russia +08/+09 2011 Mar 27 2:00s
++ 9:00 - +09 2014 Oct 26 2:00s
++ 8:00 - +08
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2593,13 +2916,20 @@ Zone Asia/Irkutsk 6:57:05 - LMT 1880
+ # Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat
+ # Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai.
+
++# From Alexander Krivenyshev (2016-01-02):
++# [The] time zone in the Trans-Baikal Territory (Zabaykalsky Krai) -
++# Asia/Chita [is changing] from UTC+8 to UTC+9. Effective date will
++# be March 27, 2016 at 2:00am....
++# http://publication.pravo.gov.ru/Document/View/0001201512300107
++
+ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 8:00 - +08 2016 Mar 27 2:00
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2639,12 +2969,12 @@ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+ # Byalokoz 1919 says Yakutsk was 8:38:58.
+
+ Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2662,12 +2992,12 @@ Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
+ # Go with Byalokoz.
+
+ Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
+- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+- 9:00 Russia VLA%sT 1992 Jan 19 2:00s
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 9:00 - +09 1930 Jun 21
++ 10:00 Russia +10/+11 1991 Mar 31 2:00s
++ 9:00 Russia +09/+10 1992 Jan 19 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2685,14 +3015,14 @@ Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
+ # This transition is no doubt wrong, but we have no better info.
+
+ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2004
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725?
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2004
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2011 Sep 13 0:00s # Decree 725?
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2701,16 +3031,21 @@ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+ # ...with the exception of:
+ # 65-11 **** Severo-Kurilsky District (North Kuril Islands)
+
++# From Matt Johnson (2016-02-22):
++# Asia/Sakhalin is moving (in entirety) from UTC+10 to UTC+11 ...
++# (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090044
++
+ # The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long.
+ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+- 9:00 - JCST 1937 Oct 1
+- 9:00 - JST 1945 Aug 25
+- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T
+- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
+- 11:00 - SAKT 2014 Oct 26 2:00s
+- 10:00 - SAKT
++ 9:00 - +09 1945 Aug 25
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s # Sakhalin T
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Mar 27 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2724,13 +3059,22 @@ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+ # until now by Asia/Magadan, will instead move to UTC+11. These regions will
+ # need their own zone.
+
++# From Alexander Krivenyshev (2016-03-27):
++# ... draft bill 948300-6 to change its time zone from UTC+10 to UTC+11 ...
++# will take ... effect ... on April 24, 2016 at 2 o'clock
++#
++# From Matt Johnson (2016-04-05):
++# ... signed by the President today ...
++# http://publication.pravo.gov.ru/Document/View/0001201604050038
++
+ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 10:00 - MAGT
++ 10:00 - +10 1930 Jun 21 # Magadan Time
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Apr 24 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2773,17 +3117,14 @@ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+ # in Russian.) In addition, Srednekolymsk appears to be a much older
+ # settlement and the population of Zyryanka seems to be declining.
+ # Go with Srednekolymsk.
+-#
+-# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT
+-# as the abbreviation. Use SRET instead.
+
+ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 11:00 - SRET # Srednekolymsk Time
++ 10:00 - +10 1930 Jun 21
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2801,14 +3142,14 @@ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+ # UTC+12 since at least then, too.
+
+ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAKT 1981 Apr 1
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725?
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1981 Apr 1
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2011 Sep 13 0:00s # Decree 725?
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2821,12 +3162,12 @@ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+ # The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps
+ # Asia/Petropavlovsk-Kamchatsky, but these are too long.
+ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+- 11:00 - PETT 1930 Jun 21 # P-K Time
+- 12:00 Russia PET%sT 1991 Mar 31 2:00s
+- 11:00 Russia PET%sT 1992 Jan 19 2:00s
+- 12:00 Russia PET%sT 2010 Mar 28 2:00s
+- 11:00 Russia PET%sT 2011 Mar 27 2:00s
+- 12:00 - PETT
++ 11:00 - +11 1930 Jun 21
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2834,13 +3175,13 @@ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+ # 87 RU-CHU Chukotka Autonomous Okrug
+
+ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
+- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
+- 12:00 - ANAT
++ 12:00 - +12 1930 Jun 21
++ 13:00 Russia +13/+14 1982 Apr 1 0:00s
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # San Marino
+@@ -3099,22 +3440,24 @@ Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See
+
+ # Turkey
+
+-# From Amar Devegowda (2007-01-03):
+-# The time zone rules for Istanbul, Turkey have not been changed for years now.
+-# ... The latest rules are available at:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=107
+-# From Steffen Thorsen (2007-01-03):
+-# I have been able to find press records back to 1996 which all say that
+-# DST started 01:00 local time and end at 02:00 local time. I am not sure
+-# what happened before that. One example for each year from 1996 to 2001:
+-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+-# From Paul Eggert (2007-01-03):
+-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
++# From Kıvanç Yazan (2016-09-25):
++# 1) For 1986-2006, DST started at 01:00 local and ended at 02:00 local, with
++# no exceptions.
++# 2) 1994's lastSun was overridden with Mar 20 ...
++# Here are official papers:
++# http://www.resmigazete.gov.tr/arsiv/19032.pdf - page 2 for 1986
++# http://www.resmigazete.gov.tr/arsiv/19400.pdf - page 4 for 1987
++# http://www.resmigazete.gov.tr/arsiv/19752.pdf - page 15 for 1988
++# http://www.resmigazete.gov.tr/arsiv/20102.pdf - page 6 for 1989
++# http://www.resmigazete.gov.tr/arsiv/20464.pdf - page 1 for 1990 - 1992
++# http://www.resmigazete.gov.tr/arsiv/21531.pdf - page 15 for 1993 - 1995
++# http://www.resmigazete.gov.tr/arsiv/21879.pdf - page 1 for overriding 1994
++# http://www.resmigazete.gov.tr/arsiv/22588.pdf - page 1 for 1996, 1997
++# http://www.resmigazete.gov.tr/arsiv/23286.pdf - page 10 for 1998 - 2000
++# http://www.resmigazete.gov.tr/eskiler/2001/03/20010324.htm#2 - for 2001
++# http://www.resmigazete.gov.tr/eskiler/2002/03/20020316.htm#2 - for 2002-2006
++# From Paul Eggert (2016-09-25):
++# Prefer the above sources to Shanks & Pottenger for time stamps after 1985.
+
+ # From Steffen Thorsen (2007-03-09):
+ # Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+@@ -3154,7 +3497,21 @@ Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See
+ # It's officially announced now by the Ministry of Energy.
+ # Turkey delays winter time to 8th of November 04:00
+ # http://www.aa.com.tr/tr/turkiye/yaz-saati-uygulamasi-8-kasimda-sona-erecek/362217
++#
++# From BBC News (2015-10-25):
++# Confused Turks are asking "what's the time?" after automatic clocks defied a
++# government decision ... "For the next two weeks #Turkey is on EEST... Erdogan
++# Engineered Standard Time," said Twitter user @aysekarahasan.
++# http://www.bbc.com/news/world-europe-34631326
+
++# From Burak AYDIN (2016-09-08):
++# Turkey will stay in Daylight Saving Time even in winter....
++# http://www.resmigazete.gov.tr/eskiler/2016/09/20160908-2.pdf
++#
++# From Paul Eggert (2016-09-07):
++# The change is permanent, so this is the new standard time in Turkey.
++# It takes effect today, which is not much notice.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Turkey 1916 only - May 1 0:00 1:00 S
+ Rule Turkey 1916 only - Oct 1 0:00 0 -
+@@ -3209,16 +3566,16 @@ Rule Turkey 1983 only - Jul 31 0:00 1:00 S
+ Rule Turkey 1983 only - Oct 2 0:00 0 -
+ Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+ Rule Turkey 1985 only - Sep 28 0:00 0 -
+-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1986 1993 - Mar lastSun 1:00s 1:00 S
++Rule Turkey 1986 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
++Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
++ 3:00 Turkey +03/+04 1985 Apr 20
+ 2:00 Turkey EE%sT 2007
+ 2:00 EU EE%sT 2011 Mar 27 1:00u
+ 2:00 - EET 2011 Mar 28 1:00u
+@@ -3226,7 +3583,8 @@ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 2:00 - EET 2014 Mar 31 1:00u
+ 2:00 EU EE%sT 2015 Oct 25 1:00u
+ 2:00 1:00 EEST 2015 Nov 8 1:00u
+- 2:00 EU EE%sT
++ 2:00 EU EE%sT 2016 Sep 7
++ 3:00 - +03
+ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+ # Ukraine
+Index: contrib/tzdata/factory
+===================================================================
+--- contrib/tzdata/factory (revision 309576)
++++ contrib/tzdata/factory (working copy)
+@@ -1,9 +1,10 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# For companies who don't want to put time zone specification in
+-# their installation procedures. When users run date, they'll get the message.
+-# Also useful for the "comp.sources" version.
++# For distributors who don't want to put time zone specification in
++# their installation procedures. Users that run 'date' will get the
++# time zone abbreviation "-00", indicating that the actual time zone
++# is unknown.
+
+ # Zone NAME GMTOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+Index: contrib/tzdata/leap-seconds.list
+===================================================================
+--- contrib/tzdata/leap-seconds.list (revision 309576)
++++ contrib/tzdata/leap-seconds.list (working copy)
+@@ -143,7 +143,7 @@
+ # Boulder, Colorado
+ # Judah.Levine@nist.gov
+ #
+-# Last Update of leap second values: 5 January 2015
++# Last Update of leap second values: 8 July 2016
+ #
+ # The following line shows this last update date in NTP timestamp
+ # format. This is the date on which the most recent change to
+@@ -151,7 +151,7 @@
+ # be identified by the unique pair of characters in the first two
+ # columns as shown below.
+ #
+-#$ 3629404800
++#$ 3676924800
+ #
+ # The NTP timestamps are in units of seconds since the NTP epoch,
+ # which is 1 January 1900, 00:00:00. The Modified Julian Day number
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C50
+-# File expires on: 28 June 2016
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+ #
+-#@ 3676060800
++#@ 3707596800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -231,6 +231,7 @@
+ 3439756800 34 # 1 Jan 2009
+ 3550089600 35 # 1 Jul 2012
+ 3644697600 36 # 1 Jul 2015
++3692217600 37 # 1 Jan 2017
+ #
+ # the following special comment contains the
+ # hash value of the data in this file computed
+@@ -246,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h 3d037453 3acade76 570bd8f8 be2b8bc9 55ec6fe8
++#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
+Index: contrib/tzdata/leapseconds
+===================================================================
+--- contrib/tzdata/leapseconds (revision 309576)
++++ contrib/tzdata/leapseconds (working copy)
+@@ -6,6 +6,7 @@
+ # leap-seconds.list file available from most NIST time servers.
+ # If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,
+ # you should be able to pick up leap-seconds.list from a secondary NIST server.
++# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers.
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+ # http://www.eecis.udel.edu/~mills/leap.html
+@@ -55,6 +56,7 @@ Leap 2005 Dec 31 23:59:60 + S
+ Leap 2008 Dec 31 23:59:60 + S
+ Leap 2012 Jun 30 23:59:60 + S
+ Leap 2015 Jun 30 23:59:60 + S
++Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C50
+-# File expires on: 28 June 2016
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+Index: contrib/tzdata/leapseconds.awk
+===================================================================
+--- contrib/tzdata/leapseconds.awk (nonexistent)
++++ contrib/tzdata/leapseconds.awk (working copy)
+@@ -0,0 +1,76 @@
++# Generate the 'leapseconds' file from 'leap-seconds.list'.
++
++# This file is in the public domain.
++
++BEGIN {
++ print "# Allowance for leap seconds added to each time zone file."
++ print ""
++ print "# This file is in the public domain."
++ print ""
++ print "# This file is generated automatically from the data in the public-domain"
++ print "# leap-seconds.list file available from most NIST time servers."
++ print "# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,"
++ print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
++ print "# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers."
++ print "# For more about leap-seconds.list, please see"
++ print "# The NTP Timescale and Leap Seconds"
++ print "# http://www.eecis.udel.edu/~mills/leap.html"
++ print ""
++ print "# The International Earth Rotation and Reference Systems Service"
++ print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1"
++ print "# (which measures the true angular orientation of the earth in space); see"
++ print "# Terry J Quinn, The BIPM and the accurate measure of time,"
++ print "# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>."
++ print "# There were no leap seconds before 1972, because the official mechanism"
++ print "# accounting for the discrepancy between atomic time and the earth's rotation"
++ print "# did not exist until the early 1970s."
++ print ""
++ print "# The correction (+ or -) is made at the given time, so lines"
++ print "# will typically look like:"
++ print "# Leap YEAR MON DAY 23:59:60 + R/S"
++ print "# or"
++ print "# Leap YEAR MON DAY 23:59:59 - R/S"
++ print ""
++ print "# If the leapsecond is Rolling (R) the given time is local time."
++ print "# If the leapsecond is Stationary (S) the given time is UTC."
++ print ""
++ print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
++}
++
++/^ *$/ { next }
++
++/^#\tUpdated through/ || /^#\tFile expires on:/ {
++ last_lines = last_lines $0 "\n"
++}
++
++/^#/ { next }
++
++{
++ NTP_timestamp = $1
++ TAI_minus_UTC = $2
++ hash_mark = $3
++ one = $4
++ month = $5
++ year = $6
++ if (old_TAI_minus_UTC) {
++ if (old_TAI_minus_UTC < TAI_minus_UTC) {
++ sign = "23:59:60\t+"
++ } else {
++ sign = "23:59:59\t-"
++ }
++ if (month == "Jan") {
++ year--;
++ month = "Dec";
++ day = 31
++ } else if (month == "Jul") {
++ month = "Jun";
++ day = 30
++ }
++ printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign
++ }
++ old_TAI_minus_UTC = TAI_minus_UTC
++}
++
++END {
++ printf "\n%s", last_lines
++}
+Index: contrib/tzdata/northamerica
+===================================================================
+--- contrib/tzdata/northamerica (revision 309576)
++++ contrib/tzdata/northamerica (working copy)
+@@ -24,9 +24,33 @@
+ # was the result of his proposals at the Convention of Railroad Trunk Lines
+ # in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+ # but in 1872-05 he moved the proposed origin to Greenwich.
+-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+-# and the most of the country soon followed suit.
+
++# From Paul Eggert (2016-09-21):
++# Dowd's proposal left many details unresolved, such as where to draw
++# lines between time zones. The key individual who made time zones
++# work in the US was William Frederick Allen - railway engineer,
++# managing editor of the Travelers' Guide, and secretary of the
++# General Time Convention, a railway standardization group. Allen
++# spent months in dialogs with scientific and railway leaders,
++# developed a workable plan to institute time zones, and presented it
++# to the General Time Convention on 1883-04-11, saying that his plan
++# meant "local time would be practically abolished" - a plus for
++# railway scheduling. By the next convention on 1883-10-11 nearly all
++# railroads had agreed and it took effect on 1883-11-18 at 12:00.
++# That Sunday was called the "day of two noons", as the eastern parts
++# of the new zones observed noon twice. Allen witnessed the
++# transition in New York City, writing:
++#
++# I heard the bells of St. Paul's strike on the old time. Four
++# minutes later, obedient to the electrical signal from the Naval
++# Observatory ... the time-ball made its rapid descent, the chimes
++# of old Trinity rang twelve measured strokes, and local time was
++# abandoned, probably forever.
++#
++# Most of the US soon followed suit. See:
++# Bartky IR. The adoption of standard time. Technol Cult 1989 Jan;30(1):25-56.
++# http://dx.doi.org/10.2307/3105430
++
+ # From Paul Eggert (2005-04-16):
+ # That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+ # See p 46 of David Prerau, Seize the daylight, Thunder's Mouth Press (2005).
+@@ -325,6 +349,16 @@ Zone America/New_York -4:56:02 - LMT 1883 Nov 18 1
+ # Statue 175 closer in synch with the US Congress' intent....
+ # http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
++# From an email administrator of the City of Fort Pierre, SD (2015-12-21):
++# Fort Pierre is technically located in the Mountain time zone as is
++# the rest of Stanley County. Most of Stanley County and Fort Pierre
++# uses the Central time zone due to doing most of their business in
++# Pierre so it simplifies schedules. I have lived in Stanley County
++# all my life and it has been that way since I can remember. (43 years!)
++#
++# From Paul Eggert (2015-12-25):
++# Assume this practice predates 1970, so Fort Pierre can use America/Chicago.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+ Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+@@ -403,11 +437,42 @@ Zone America/Denver -6:59:56 - LMT 1883 Nov 18 12:
+ # north of the Salmon River, and the towns of Burgdorf and Warren),
+ # Nevada (except West Wendover), Oregon (except the northern 3/4 of
+ # Malheur county), and Washington
++
++# From Paul Eggert (2016-08-20):
++# In early February 1948, in response to California's electricity shortage,
++# PG&E changed power frequency from 60 to 59.5 Hz during daylight hours,
++# causing electric clocks to lose six minutes per day. (This did not change
++# legal time, and is not part of the data here.) See:
++# Ross SA. An energy crisis from the past: Northern California in 1948.
++# Working Paper No. 8, Institute of Governmental Studies, UC Berkeley,
++# 1973-11. http://escholarship.org/uc/item/8x22k30c
+ #
++# In another measure to save electricity, DST was instituted from 1948-03-14
++# at 02:01 to 1949-01-16 at 02:00, with the governor having the option to move
++# the fallback transition earlier. See pages 3-4 of:
++# http://clerk.assembly.ca.gov/sites/clerk.assembly.ca.gov/files/archive/Statutes/1948/48Vol1_Chapters.pdf
++#
++# In response:
++#
++# Governor Warren received a torrent of objecting mail, and it is not too much
++# to speculate that the objections to Daylight Saving Time were one important
++# factor in the defeat of the Dewey-Warren Presidential ticket in California.
++# -- Ross, p 25
++#
++# On December 8 the governor exercised the option, setting the date to January 1
++# (LA Times 1948-12-09). The transition time was 02:00 (LA Times 1949-01-01).
++#
++# Despite the controversy, in 1949 California voters approved Proposition 12,
++# which established DST from April's last Sunday at 01:00 until September's
++# last Sunday at 02:00. This was amended by 1962's Proposition 6, which changed
++# the fall-back date to October's last Sunday. See:
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1636&context=ca_ballot_props
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+-Rule CA 1948 only - Mar 14 2:00 1:00 D
++Rule CA 1948 only - Mar 14 2:01 1:00 D
+ Rule CA 1949 only - Jan 1 2:00 0 S
+-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
++Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -481,6 +546,12 @@ Zone America/Los_Angeles -7:52:58 - LMT 1883 Nov 1
+ # For lack of better information, assume that Metlakatla's
+ # abandonment of use of daylight saving resulted from the 1983 vote.
+
++# From Steffen Thorsen (2015-11-09):
++# It seems Metlakatla did go off PST on Sunday, November 1, changing
++# their time to AKST and are going to follow Alaska's DST, switching
++# between AKST and AKDT from now on....
++# http://www.krbd.org/2015/10/30/annette-island-times-they-are-a-changing/
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+@@ -506,7 +577,8 @@ Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 1
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+ -8:00 US P%sT 1983 Oct 30 2:00
+- -8:00 - PST
++ -8:00 - PST 2015 Nov 1 2:00
++ -9:00 US AK%sT
+ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+@@ -2174,18 +2246,18 @@ Rule NT_YK 1980 2006 - Oct lastSun 2:00 0 S
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
++Zone America/Pangnirtung 0 - -00 1921 # trading post est.
+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+ -5:00 Canada E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # formerly Frobisher Bay
+-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
++Zone America/Iqaluit 0 - -00 1942 Aug # Frobisher Bay est.
+ -5:00 NT_YK E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # aka Qausuittuq
+-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
++Zone America/Resolute 0 - -00 1947 Aug 31 # Resolute founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT 2006 Oct 29 2:00
+@@ -2192,21 +2264,21 @@ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ -5:00 - EST 2007 Mar 11 3:00
+ -6:00 Canada C%sT
+ # aka Kangiqiniq
+-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
++Zone America/Rankin_Inlet 0 - -00 1957 # Rankin Inlet founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+ # aka Iqaluktuuttiaq
+-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
++Zone America/Cambridge_Bay 0 - -00 1920 # trading post est.?
+ -7:00 NT_YK M%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2000 Nov 5 0:00
+ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
++Zone America/Yellowknife 0 - -00 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
++Zone America/Inuvik 0 - -00 1953 # Inuvik founded
+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+@@ -2458,13 +2530,22 @@ Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
++# Coahuila, Nuevo León, Tamaulipas (near US border)
++# This includes the following municipalities:
++# in Coahuila: Ocampo, Acuña, Zaragoza, Jiménez, Piedras Negras, Nava,
++# Guerrero, Hidalgo.
++# in Nuevo León: Anáhuac, Los Aldama.
++# in Tamaulipas: Nuevo Laredo, Guerrero, Mier, Miguel Alemán, Camargo,
++# Gustavo Díaz Ordaz, Reynosa, Río Bravo, Valle Hermoso, Matamoros.
++# See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
++# 2016-03-12
++# http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+ Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT 2010
+ -6:00 US C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
++# Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+ Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+@@ -2480,6 +2561,9 @@ Zone America/Mexico_City -6:36:36 - LMT 1922 Jan
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+ # Chihuahua (near US border)
++# This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
++# Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
++# (See the 2016-03-12 El Universal source mentioned above.)
+ Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+@@ -2567,7 +2651,7 @@ Zone America/Bahia_Banderas -7:01:00 - LMT 1921 De
+ -7:00 Mexico M%sT 2010 Apr 4 2:00
+ -6:00 Mexico C%sT
+
+-# Baja California (near US border)
++# Baja California
+ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+@@ -2587,25 +2671,6 @@ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT 2010
+ -8:00 US P%sT
+-# Baja California (away from US border)
+-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
+- -7:00 - MST 1924
+- -8:00 - PST 1927 Jun 10 23:00
+- -7:00 - MST 1930 Nov 15
+- -8:00 - PST 1931 Apr 1
+- -8:00 1:00 PDT 1931 Sep 30
+- -8:00 - PST 1942 Apr 24
+- -8:00 1:00 PWT 1945 Aug 14 23:00u
+- -8:00 1:00 PPT 1945 Nov 12 # Peace
+- -8:00 - PST 1948 Apr 5
+- -8:00 1:00 PDT 1949 Jan 14
+- -8:00 - PST 1954
+- -8:00 CA P%sT 1961
+- -8:00 - PST 1976
+- -8:00 US P%sT 1996
+- -8:00 Mexico P%sT 2001
+- -8:00 US P%sT 2002 Feb 20
+- -8:00 Mexico P%sT
+ # From Paul Eggert (2006-03-22):
+ # Formerly there was an America/Ensenada zone, which differed from
+ # America/Tijuana only in that it did not observe DST from 1976
+@@ -2618,6 +2683,13 @@ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0
+ # other than America/Tijuana for Baja, but it's not clear yet what its
+ # name or contents should be.
+ #
++# From Paul Eggert (2015-10-08):
++# Formerly there was an America/Santa_Isabel zone, but this appears to
++# have come from a misreading of
++# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
++# It has been moved to the 'backward' file.
++#
++#
+ # Revillagigedo Is
+ # no information
+
+@@ -2692,18 +2764,8 @@ Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1
+ -4:00 US A%sT
+
+ # Cayman Is
++# See America/Panama.
+
+-# From Paul Eggert (2015-05-15):
+-# The Cayman government has decided to introduce DST in 2016, the idea being
+-# to keep in sync with New York. The legislation hasn't passed but the change
+-# seems quite likely. See: Meade B. Cayman 27.
+-# http://www.cayman27.com.ky/2015/05/15/clock-ticks-toward-daylight-saving-time-in-cayman
+-
+-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST 2016
+- -5:00 US E%sT
+-
+ # Costa Rica
+
+ # Milne gives -5:36:13.3 as San José mean time; round to nearest.
+@@ -3065,6 +3127,13 @@ Zone America/Guatemala -6:02:04 - LMT 1918 Oct 5
+ # http://radiovision2000haiti.net/public/haiti-avis-changement-dheure-dimanche/
+ # http://www.canalplushaiti.net/?p=6714
+
++# From Steffen Thorsen (2016-03-12):
++# Jean Antoine, editor of www.haiti-reference.com informed us that Haiti
++# are not going on DST this year. Several other resources confirm this: ...
++# http://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# http://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
++# http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Haiti 1983 only - May 8 0:00 1:00 D
+ Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+@@ -3075,8 +3144,8 @@ Rule Haiti 1988 1997 - Apr Sun>=1 1:00s 1:00 D
+ Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+ Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+ Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+-Rule Haiti 2012 max - Mar Sun>=8 2:00 1:00 D
+-Rule Haiti 2012 max - Nov Sun>=1 2:00 0 S
++Rule Haiti 2012 2015 - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+@@ -3225,6 +3294,7 @@ Zone America/Managua -5:45:08 - LMT 1890
+ Zone America/Panama -5:18:08 - LMT 1890
+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
++Link America/Panama America/Cayman
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+@@ -3266,7 +3336,7 @@ Zone America/Miquelon -3:44:40 - LMT 1911 May 15 #
+ # indicating that the normal ET rules are followed.
+ #
+ # From Paul Eggert (2014-08-19):
+-# The 2014-08-13 Cabinet meeting decided to stay on UTC-4 year-round. See:
++# The 2014-08-13 Cabinet meeting decided to stay on UT -04 year-round. See:
+ # http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm
+ # Model this as a switch from EST/EDT to AST ...
+ # From Chris Walton (2014-11-04):
+Index: contrib/tzdata/southamerica
+===================================================================
+--- contrib/tzdata/southamerica (revision 309576)
++++ contrib/tzdata/southamerica (working copy)
+@@ -410,9 +410,9 @@ Rule Arg 2008 only - Oct Sun>=15 0:00 1:00 S
+ # stuck on Summer daylight savings time even though the summer is over.
+
+ # From Paul Eggert (2013-09-05):
+-# Perhaps San Luis operates on the legal fiction that it is at UTC-4
++# Perhaps San Luis operates on the legal fiction that it is at -04
+ # with perpetual summer time, but ordinary usage typically seems to
+-# just say it's at UTC-3; see, for example,
++# just say it's at -03; see, for example,
+ # http://es.wikipedia.org/wiki/Hora_oficial_argentina
+ # We've documented similar situations as being plain changes to
+ # standard time, so let's do that here too. This does not change UTC
+@@ -1221,6 +1221,20 @@ Zone America/Rio_Branco -4:31:12 - LMT 1914
+ # From Paul Eggert (2015-03-03):
+ # For now, assume that the extension will persist indefinitely.
+
++# From Juan Correa (2016-03-18):
++# The decree regarding DST has been published in today's Official Gazette:
++# http://www.diariooficial.interior.gob.cl/versiones-anteriores/do/20160318/
++# http://www.leychile.cl/Navegar?idNorma=1088502
++# It does consider the second Saturday of May and August as the dates
++# for the transition; and it lists DST dates until 2019, but I think
++# this scheme will stick.
++#
++# From Paul Eggert (2016-03-18):
++# For now, assume the pattern holds for the indefinite future.
++# The decree says transitions occur at 24:00; in practice this appears
++# to mean 24:00 mainland time, not 24:00 local time, so that Easter
++# Island is always two hours behind the mainland.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
+ Rule Chile 1928 1932 - Apr 1 0:00 0 -
+@@ -1252,8 +1266,10 @@ Rule Chile 2009 only - Mar Sun>=9 3:00u 0 -
+ Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
+ Rule Chile 2011 only - May Sun>=2 3:00u 0 -
+ Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule Chile 2012 2015 - Apr Sun>=23 3:00u 0 -
++Rule Chile 2012 2014 - Apr Sun>=23 3:00u 0 -
+ Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2016 max - May Sun>=9 3:00u 0 -
++Rule Chile 2016 max - Aug Sun>=9 4:00u 1:00 S
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -1270,13 +1286,11 @@ Zone America/Santiago -4:42:46 - LMT 1890
+ -4:00 1:00 CLST 1946 Sep 1 # central Chile
+ -4:00 - CLT 1947 Apr 1
+ -5:00 - CLT 1947 May 21 23:00
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+ Zone Pacific/Easter -7:17:28 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+ -7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
+- -6:00 Chile EAS%sT 2015 Apr 26 3:00u
+- -5:00 - EAST
++ -6:00 Chile EAS%sT
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+@@ -1295,11 +1309,10 @@ Zone Pacific/Easter -7:17:28 - LMT 1890
+ # Palmer used to be supplied from Argentina.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Palmer 0 - zzz 1965
++Zone Antarctica/Palmer 0 - -00 1965
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1982 May
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+
+ # Colombia
+
+@@ -1742,9 +1755,25 @@ Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
+ # resolution publication)
+ # http://www.globovision.com/news.php?nid=72208
+
++# From Alexander Krivenyshev (2016-04-15):
++# https://actualidad.rt.com/actualidad/204758-venezuela-modificar-huso-horario-sequia-elnino
++#
++# From Paul Eggert (2016-04-15):
++# Clocks advance 30 minutes on 2016-05-01 at 02:30....
++# "'Venezuela's new time-zone: hours without light, hours without water,
++# hours of presidential broadcasts, hours of lines,' quipped comedian
++# Jean Mary Curró ...". See: Cawthorne A, Kai D. Venezuela scraps
++# half-hour time difference set by Chavez. Reuters 2016-04-15 14:50 -0400
++# http://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
++#
++# From Matt Johnson (2016-04-20):
++# ... published in the official Gazette [2016-04-18], here:
++# http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+ -4:30 - VET 1965 Jan 1 0:00 # Venezuela T.
+ -4:00 - VET 2007 Dec 9 3:00
+- -4:30 - VET
++ -4:30 - VET 2016 May 1 2:30
++ -4:00 - VET
+Index: contrib/tzdata/version
+===================================================================
+--- contrib/tzdata/version (nonexistent)
++++ contrib/tzdata/version (working copy)
+@@ -0,0 +1 @@
++2016i
+Index: contrib/tzdata/zone.tab
+===================================================================
+--- contrib/tzdata/zone.tab (revision 309576)
++++ contrib/tzdata/zone.tab (working copy)
+@@ -30,22 +30,22 @@ AI +1812-06304 America/Anguilla
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+ AO -0848+01314 Africa/Luanda
+-AQ -7750+16636 Antarctica/McMurdo McMurdo, South Pole, Scott (New Zealand time)
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adelie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -7750+16636 Antarctica/McMurdo New Zealand time - McMurdo, South Pole
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -56,17 +56,17 @@ AS -1416-17042 Pacific/Pago_Pago
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AW +1230-06958 America/Aruba
+ AX +6006+01957 Europe/Mariehamn
+ AZ +4023+04951 Asia/Baku
+@@ -85,20 +85,20 @@ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BQ +120903-0681636 America/Kralendijk
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapa, E Para
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Para (east); Amapa
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Para
++BR -0226-05452 America/Santarem Para (west)
+ BR -0846-06354 America/Porto_Velho Rondonia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+@@ -105,43 +105,43 @@ BT +2728+08939 Asia/Thimphu
+ BW -2439+02555 Africa/Gaborone
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (peninsula), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia (Cape Breton)
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +5848-12242 America/Fort_Nelson Mountain Standard Time - Fort Nelson, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
++CD -0418+01518 Africa/Kinshasa Dem. Rep. of Congo (west)
++CD -1140+02728 Africa/Lubumbashi Dem. Rep. of Congo (east)
+ CF +0422+01835 Africa/Bangui
+ CG -0416+01517 Africa/Brazzaville
+ CH +4723+00832 Europe/Zurich
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -152,9 +152,10 @@ CU +2308-08222 America/Havana
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin most locations
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DE +4742+00841 Europe/Busingen Busingen
+ DJ +1136+04309 Africa/Djibouti
+ DK +5540+01235 Europe/Copenhagen
+@@ -161,21 +162,21 @@ DK +5540+01235 Europe/Copenhagen
+ DM +1518-06124 America/Dominica
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galapagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+ ER +1520+03853 Africa/Asmara
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ ET +0902+03842 Africa/Addis_Ababa
+ FI +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -187,10 +188,10 @@ GF +0456-05220 America/Cayenne
+ GG +4927-00232 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GM +1328-01639 Africa/Banjul
+ GN +0931-01343 Africa/Conakry
+ GP +1614-06132 America/Guadeloupe
+@@ -206,10 +207,10 @@ HN +1406-08713 America/Tegucigalpa
+ HR +4548+01558 Europe/Zagreb
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IM +5409-00428 Europe/Isle_of_Man
+@@ -235,10 +236,10 @@ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+ KW +2920+04759 Asia/Kuwait
+ KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -257,12 +258,12 @@ MD +4700+02850 Europe/Chisinau
+ ME +4226+01916 Europe/Podgorica
+ MF +1804-06305 America/Marigot
+ MG -1855+04731 Indian/Antananarivo
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+ MK +4159+02126 Europe/Skopje
+ ML +1239-00800 Africa/Bamako
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -274,20 +275,19 @@ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+ MW -1547+03500 Africa/Blantyre
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo Leon, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo Leon, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahia de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
+ MZ -2558+03235 Africa/Maputo
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+@@ -300,7 +300,7 @@ NO +5955+01045 Europe/Oslo
+ NP +2743+08519 Asia/Kathmandu
+ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+-NZ -3652+17446 Pacific/Auckland most locations
++NZ -3652+17446 Pacific/Auckland New Zealand (most areas)
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+ OM +2336+05835 Asia/Muscat
+ PA +0858-07932 America/Panama
+@@ -308,7 +308,7 @@ PE -1203-07703 America/Lima
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -318,7 +318,7 @@ PN -2504-13005 Pacific/Pitcairn
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+@@ -327,27 +327,32 @@ QA +2517+05132 Asia/Qatar
+ RE -2052+05528 Indian/Reunion
+ RO +4426+02606 Europe/Bucharest
+ RS +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ RW -0157+03004 Africa/Kigali
+ SA +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+@@ -386,45 +391,45 @@ TT +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+ TZ -0648+03917 Africa/Dar_es_Salaam
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UG +0019+03225 Africa/Kampala
+ UM +1645-16931 Pacific/Johnston Johnston Atoll
+ UM +2813-17722 Pacific/Midway Midway Islands
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+ US +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VA +415408+0122711 Europe/Vatican
+ VC +1309-06114 America/St_Vincent
+ VE +1030-06656 America/Caracas
+Index: contrib/tzdata/zone1970.tab
+===================================================================
+--- contrib/tzdata/zone1970.tab (revision 309576)
++++ contrib/tzdata/zone1970.tab (working copy)
+@@ -39,21 +39,21 @@ AE,OM +2518+05518 Asia/Dubai
+ AF +3431+06912 Asia/Kabul
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adélie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -64,17 +64,17 @@ AS,UM -1416-17042 Pacific/Pago_Pago Samoa, Midway
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AZ +4023+04951 Asia/Baku
+ BB +1306-05937 America/Barbados
+ BD +2343+09025 Asia/Dhaka
+@@ -84,58 +84,58 @@ BM +3217-06446 Atlantic/Bermuda
+ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapá, E Pará
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Pará (east); Amapá
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Pará
++BR -0226-05452 America/Santarem Pará (west)
+ BR -0846-06354 America/Porto_Velho Rondônia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (peninsula), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia (Cape Breton)
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +5848-12242 America/Fort_Nelson Mountain Standard Time - Fort Nelson, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+ CH,DE,LI +4723+00832 Europe/Zurich Swiss time
+ CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -145,25 +145,26 @@ CU +2308-08222 America/Havana
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW,AW,BQ,SX +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ,SK +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin Berlin time
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DK +5540+01235 Europe/Copenhagen
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galápagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ FI,AX +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -172,10 +173,10 @@ GE +4143+04449 Asia/Tbilisi
+ GF +0456-05220 America/Cayenne
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GR +3758+02343 Europe/Athens
+ GS -5416-03632 Atlantic/South_Georgia
+ GT +1438-09031 America/Guatemala
+@@ -186,10 +187,10 @@ HK +2217+11409 Asia/Hong_Kong
+ HN +1406-08713 America/Tegucigalpa
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IN +2232+08822 Asia/Kolkata
+@@ -208,11 +209,10 @@ KI -0308-17105 Pacific/Enderbury Phoenix Islands
+ KI +0152-15720 Pacific/Kiritimati Line Islands
+ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+-KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -224,10 +224,10 @@ LY +3254+01311 Africa/Tripoli
+ MA +3339-00735 Africa/Casablanca
+ MC +4342+00723 Europe/Monaco
+ MD +4700+02850 Europe/Chisinau
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -235,25 +235,24 @@ MQ +1436-06105 America/Martinique
+ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo León, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo León, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
+-MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahía de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
++MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+ NF -2903+16758 Pacific/Norfolk
+-NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
++NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time
+ NI +1209-08617 America/Managua
+ NL +5222+00454 Europe/Amsterdam
+ NO,SJ +5955+01045 Europe/Oslo
+@@ -262,12 +261,12 @@ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+ NZ,AQ -3652+17446 Pacific/Auckland New Zealand time
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+-PA +0858-07932 America/Panama
++PA,KY +0858-07932 America/Panama
+ PE -1203-07703 America/Lima
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -277,36 +276,41 @@ PN -2504-13005 Pacific/Pitcairn
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+ PY -2516-05740 America/Asuncion
+ QA,BH +2517+05132 Asia/Qatar
+-RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
++RE,TF -2052+05528 Indian/Reunion Réunion, Crozet, Scattered Islands
+ RO +4426+02606 Europe/Bucharest
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+@@ -318,8 +322,8 @@ SV +1342-08912 America/El_Salvador
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
+ TD +1207+01503 Africa/Ndjamena
+-TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
+-TH,KH,LA,VN +1345+10031 Asia/Bangkok most of Indochina
++TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul Island, Amsterdam Island
++TH,KH,LA,VN +1345+10031 Asia/Bangkok Indochina (most areas)
+ TJ +3835+06848 Asia/Dushanbe
+ TK -0922-17114 Pacific/Fakaofo
+ TL -0833+12535 Asia/Dili
+@@ -330,44 +334,44 @@ TR +4101+02858 Europe/Istanbul
+ TT,AG,AI,BL,DM,GD,GP,KN,LC,MF,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+-US,UM +211825-1575130 Pacific/Honolulu Hawaii time
++US,UM +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VE +1030-06656 America/Caracas
+-VN +1045+10640 Asia/Ho_Chi_Minh south Vietnam
++VN +1045+10640 Asia/Ho_Chi_Minh Vietnam (south)
+ VU -1740+16825 Pacific/Efate
+ WF -1318-17610 Pacific/Wallis
+ WS -1350-17144 Pacific/Apia
+Index: contrib/tzdata/zoneinfo2tdf.pl
+===================================================================
+--- contrib/tzdata/zoneinfo2tdf.pl (nonexistent)
++++ contrib/tzdata/zoneinfo2tdf.pl (working copy)
+@@ -0,0 +1,52 @@
++#! /usr/bin/perl -w
++
++# Courtesy Ken Pizzini.
++
++use strict;
++
++#This file released to the public domain.
++
++# Note: error checking is poor; trust the output only if the input
++# has been checked by zic.
++
++my $contZone = '';
++while (<>) {
++ my $origline = $_;
++ my @fields = ();
++ while (s/^\s*((?:"[^"]*"|[^\s#])+)//) {
++ push @fields, $1;
++ }
++ next unless @fields;
++
++ my $type = lc($fields[0]);
++ if ($contZone) {
++ @fields >= 3 or warn "bad continuation line";
++ unshift @fields, '+', $contZone;
++ $type = 'zone';
++ }
++
++ $contZone = '';
++ if ($type eq 'zone') {
++ # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ my $nfields = @fields;
++ $nfields >= 5 or warn "bad zone line";
++ if ($nfields > 6) {
++ #this splice is optional, depending on one's preference
++ #(one big date-time field, or componentized date and time):
++ splice(@fields, 5, $nfields-5, "@fields[5..$nfields-1]");
++ }
++ $contZone = $fields[1] if @fields > 5;
++ } elsif ($type eq 'rule') {
++ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++ @fields == 10 or warn "bad rule line";
++ } elsif ($type eq 'link') {
++ # Link TARGET LINK-NAME
++ @fields == 3 or warn "bad link line";
++ } elsif ($type eq 'leap') {
++ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
++ @fields == 7 or warn "bad leap line";
++ } else {
++ warn "Fubar at input line $.: $origline";
++ }
++ print join("\t", @fields), "\n";
++}
diff --git a/share/security/patches/EN-16:20/tzdata-10.3.patch.asc b/share/security/patches/EN-16:20/tzdata-10.3.patch.asc
new file mode 100644
index 0000000000..ffd6d02828
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-10.3.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1rAAoJEO1n7NZdz2rnaioQALum72PK209dPIUB9BkXDrjG
+SImE+wglkK9noM97NzFF4oQfHmXNaVI/ILOEM3aT7Kcqc7ls6h2n41lsVSu8aFZt
+ydtu0NC7Y55FKIss2JpbQyHAaSiXIVEr2bnBMFjYIvLe4ABnHYRvlUr653A3wYm2
+/dvsnxBF0mwcymBT7F2p4+koGpPDgeQ8CcABGinDS+QtquLmR2mnpq4CrDmtROvd
+52oBg5vLvgamsGEsIoAjygr5/MkWjPo4Xv/tiABxSSwHRHg81rf0Zf+7OdR24DYE
+qJnIEyMCjLPM/NPxL0yckyvArQAQLqyZTFxyzuLJXOIw7U9kY3vmu7phbXajifl1
+aJuYnH8jQFKcmaFbNKP7Pf1+vYNaa90ult3SI9HtuPRmR36T+bFs9kiYmbzd3UyM
+vtdOnaeQFt0DH2dE5EEfXOW6/jux6QG2CU4DXFbOjLyMoHW0b1lsnql0u/zjsvWX
+PAz2TmXWCYY3+4r2qIEi4r9AJyoNDIp1IPmG+LFz22gg8BZncaHV7f/DHQkRzDHb
+KlUMTCVV3+lhIWh2rfgpEEPNQjkn8F38rd924Nq8x1w0n+k+SbLc0TdYWhpkwf5+
+vYWDgPKXlTbBtdA3FvksHMcnHARhjDKDqYXfVc6hR2Pn6cdap+4UAWg6+Zc/g6hf
+MrxKZtJElQl2ITBT6Rzp
+=D16j
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:20/tzdata-11.0.patch b/share/security/patches/EN-16:20/tzdata-11.0.patch
new file mode 100644
index 0000000000..ddf930dbf6
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-11.0.patch
@@ -0,0 +1,10655 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -0,0 +1,73 @@
++Contributing to the tz code and data
++
++The time zone database is by no means authoritative: governments
++change timekeeping rules erratically and sometimes with little
++warning, the data entries do not cover all of civil time before
++1970, and undoubtedly errors remain in the code and data. Feel
++free to fill gaps or fix mistakes, and please email improvements
++to tz@iana.org for use in the future.
++
++To email small changes, please run a POSIX shell command like
++'diff -u old/europe new/europe >myfix.patch', and attach
++myfix.patch to the email.
++
++For more-elaborate changes, please read the Theory file and browse
++the mailing list archives <http://mm.icann.org/pipermail/tz/> for
++examples of patches that tend to work well. Ideally, additions to
++data should contain commentary citing reliable sources as
++justification.
++
++Please submit changes against either the latest release in
++<ftp://ftp.iana.org/tz/> or the master branch of the experimental
++Git repository. If you use Git the following workflow may be helpful:
++
++ * Copy the experimental repository.
++
++ git clone https://github.com/eggert/tz.git
++ cd tz
++
++ * Get current with the master branch.
++
++ git checkout master
++ git pull
++
++ * Switch to a new branch for the changes. Choose a different
++ branch name for each change set.
++
++ git checkout -b mybranch
++
++ * Edit source files. Include commentary that justifies the
++ changes by citing reliable sources.
++
++ * Debug the changes, e.g.:
++
++ make check
++ make install
++ ./zdump -v America/Los_Angeles
++
++ * For each separable change, commit it in the new branch, e.g.:
++
++ git add northamerica
++ git commit
++
++ See recent 'git log' output for the commit-message style.
++
++ * Create patch files 0001-*, 0002-*, ...
++
++ git format-patch master
++
++ * After reviewing the patch files, send the patches to tz@iana.org
++ for others to review.
++
++ git send-email master
++
++ * Start anew by getting current with the master branch again
++ (the second step above).
++
++Please do not create issues or pull requests on GitHub, as the
++proper procedure for proposing and distributing patches is via
++email as illustrated above.
++
++-----
++
++This file is in the public domain.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -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.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -0,0 +1,793 @@
++# This file is in the public domain, so clarified as of
++# 2009-05-17 by Arthur David Olson.
++
++# Package name for the code distribution.
++PACKAGE= tzcode
++
++# Version number for the distribution, overridden in the 'tarballs' rule below.
++VERSION= unknown
++
++# Email address for bug reports.
++BUGEMAIL= tz@iana.org
++
++# Change the line below for your time zone (after finding the zone you want in
++# the time zone files, or adding it to a time zone file).
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -l rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for LOCALTIME.
++
++LOCALTIME= GMT
++
++# If you want something other than Eastern United States time as a template
++# for handling POSIX-style time zone environment variables,
++# change the line below (after finding the zone you want in the
++# time zone files, or adding it to a time zone file).
++# (When a POSIX-style environment variable is handled, the rules in the
++# template file are used to determine "spring forward" and "fall back" days and
++# times; the environment variable itself specifies UT offsets of standard and
++# summer time.)
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -p rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for POSIXRULES.
++# If you want POSIX compatibility, use "America/New_York".
++
++POSIXRULES= America/New_York
++
++# Also see TZDEFRULESTRING below, which takes effect only
++# if the time zone files cannot be accessed.
++
++# Everything gets put in subdirectories of. . .
++
++TOPDIR= /usr/local
++
++# "Compiled" time zone information is placed in the "TZDIR" directory
++# (and subdirectories).
++# Use an absolute path name for TZDIR unless you're just testing the software.
++
++TZDIR_BASENAME= zoneinfo
++TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
++
++# Types to try, as an alternative to time_t. int64_t should be first.
++TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
++
++# The "tzselect", "zic", and "zdump" commands get installed in. . .
++
++ETCDIR= $(TOPDIR)/etc
++
++# If you "make INSTALL", the "date" command gets installed in. . .
++
++BINDIR= $(TOPDIR)/bin
++
++# Manual pages go in subdirectories of. . .
++
++MANDIR= $(TOPDIR)/man
++
++# Library functions are put in an archive in LIBDIR.
++
++LIBDIR= $(TOPDIR)/lib
++
++# If you always want time values interpreted as "seconds since the epoch
++# (not counting leap seconds)", use
++# REDO= posix_only
++# below. If you always want right time values interpreted as "seconds since
++# the epoch" (counting leap seconds)", use
++# REDO= right_only
++# below. If you want both sets of data available, with leap seconds not
++# counted normally, use
++# REDO= posix_right
++# below. If you want both sets of data available, with leap seconds counted
++# normally, use
++# REDO= right_posix
++# below. POSIX mandates that leap seconds not be counted; for compatibility
++# with it, use "posix_only" or "posix_right".
++
++REDO= posix_right
++
++# If you want out-of-scope and often-wrong data from the file 'backzone', use
++# PACKRATDATA= backzone
++# To omit this data, use
++# PACKRATDATA=
++
++PACKRATDATA=
++
++# Since "." may not be in PATH...
++
++YEARISTYPE= ./yearistype
++
++# Non-default libraries needed to link.
++LDLIBS=
++
++# Add the following to the end of the "CFLAGS=" line as needed.
++# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r
++# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
++# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS)
++# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares
++# ctime_r and asctime_r incompatibly with the POSIX standard
++# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
++# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h"
++# -DHAVE_LINK=0 if your system lacks a link function
++# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
++# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
++# This defaults to 1 if a working localtime_rz seems to be available.
++# localtime_rz can make zdump significantly faster, but is nonstandard.
++# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
++# functions like 'link' or variables like 'tzname' required by POSIX
++# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h"
++# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l
++# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_STRDUP=0 if your system lacks the strdup function
++# -DHAVE_SYMLINK=0 if your system lacks the symlink function
++# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h"
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h"
++# -DHAVE_TZSET=0 if your system lacks a tzset function
++# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?)
++# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT
++# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater
++# than what POSIX specifies, assuming local time is UT.
++# For example, N is 252460800 on AmigaOS.
++# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1
++# if you do not want run time warnings about formats that may cause
++# year 2000 grief
++# -Dssize_t=long on ancient hosts that lack ssize_t
++# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires;
++# not needed by the main-program tz code, which is single-threaded.
++# Append other compiler flags as needed, e.g., -pthread on GNU/Linux.
++# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t
++# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz"
++# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
++# the default is system-supplied, typically "/usr/lib/locale"
++# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
++# DST transitions if the time zone files cannot be accessed
++# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems
++# other than simply getting garbage data
++# -DUSE_LTZ=0 to build zdump with the system time zone library
++# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
++# -DZIC_MAX_ABBR_LEN_WO_WARN=3
++# (or some other number) to set the maximum time zone abbreviation length
++# that zic will accept without a warning (the default is 6)
++# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
++GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
++ -Wall -Wextra \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement \
++ -Wdouble-promotion \
++ -Wformat=2 -Winit-self -Wjump-misses-init \
++ -Wlogical-op -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \
++ -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \
++ -Wsuggest-attribute=pure -Wtrampolines \
++ -Wunused -Wwrite-strings \
++ -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
++ -Wno-type-limits -Wno-unused-parameter
++#
++# If you want to use System V compatibility code, add
++# -DUSG_COMPAT
++# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight"
++# variables to be kept up-to-date by the time conversion functions. Neither
++# "timezone" nor "daylight" is described in X3J11's work.
++#
++# If your system has a "GMT offset" field in its "struct tm"s
++# (or if you decide to add such a field in your system's "time.h" file),
++# add the name to a define such as
++# -DTM_GMTOFF=tm_gmtoff
++# to the end of the "CFLAGS=" line. If not defined, the code attempts to
++# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this.
++# Similarly, if your system has a "zone abbreviation" field, define
++# -DTM_ZONE=tm_zone
++# and define NO_TM_ZONE to suppress any guessing. These two fields are not
++# required by POSIX, but are widely available on GNU/Linux and BSD systems.
++#
++# If you want functions that were inspired by early versions of X3J11's work,
++# add
++# -DSTD_INSPIRED
++# to the end of the "CFLAGS=" line. This arranges for the functions
++# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
++# "posix2time", and "time2posix" to be added to the time conversion library.
++# "tzsetwall" is like "tzset" except that it arranges for local wall clock
++# time (rather than the time specified in the TZ environment variable)
++# to be used.
++# "offtime" is like "gmtime" except that it accepts a second (long) argument
++# that gives an offset to add to the time_t when converting it.
++# "timelocal" is equivalent to "mktime".
++# "timegm" is like "timelocal" except that it turns a struct tm into
++# a time_t using UT (rather than local time as "timelocal" does).
++# "timeoff" is like "timegm" except that it accepts a second (long) argument
++# that gives an offset to use when converting to a time_t.
++# "posix2time" and "time2posix" are described in an included manual page.
++# X3J11's work does not describe any of these functions.
++# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0.
++# These functions may well disappear in future releases of the time
++# conversion package.
++#
++# If you don't want functions that were inspired by NetBSD, add
++# -DNETBSD_INSPIRED=0
++# to the end of the "CFLAGS=" line. Otherwise, the functions
++# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
++# time library, and if STD_INSPIRED is also defined the functions
++# "posix2time_z" and "time2posix_z" are added as well.
++# The functions ending in "_z" (or "_rz") are like their unsuffixed
++# (or suffixed-by-"_r") counterparts, except with an extra first
++# argument of opaque type timezone_t that specifies the time zone.
++# "tzalloc" allocates a timezone_t value, and "tzfree" frees it.
++#
++# If you want to allocate state structures in localtime, add
++# -DALL_STATE
++# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc.
++#
++# If you want an "altzone" variable (a la System V Release 3.1), add
++# -DALTZONE
++# to the end of the "CFLAGS=" line.
++# This variable is not described in X3J11's work.
++#
++# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put
++# out by the National Institute of Standards and Technology
++# which claims to test C and Posix conformance. If you want to pass PCTS, add
++# -DPCTS
++# to the end of the "CFLAGS=" line.
++#
++# If you want strict compliance with XPG4 as of 1994-04-09, add
++# -DXPG4_1994_04_09
++# to the end of the "CFLAGS=" line. This causes "strftime" to always return
++# 53 as a week number (rather than 52 or 53) for those days in January that
++# before the first Monday in January when a "%V" format is used and January 1
++# falls on a Friday, Saturday, or Sunday.
++
++CFLAGS=
++
++# Linker flags. Default to $(LFLAGS) for backwards compatibility
++# to release 2012h and earlier.
++
++LDFLAGS= $(LFLAGS)
++
++# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in
++# submake command lines. The default is no leap seconds.
++
++LEAPSECONDS=
++
++# The zic command and its arguments.
++
++zic= ./zic
++ZIC= $(zic) $(ZFLAGS)
++
++ZFLAGS=
++
++# How to use zic to install tz binary files.
++
++ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++
++# The name of a Posix-compliant 'awk' on your system.
++AWK= awk
++
++# The full path name of a Posix-compliant shell, preferably one that supports
++# the Korn shell's 'select' statement as an extension.
++# These days, Bash is the most popular.
++# It should be OK to set this to /bin/sh, on platforms where /bin/sh
++# lacks 'select' or doesn't completely conform to Posix, but /bin/bash
++# is typically nicer if it works.
++KSHELL= /bin/bash
++
++# The path where SGML DTDs are kept and the catalog file(s) to use when
++# validating. The default should work on both Debian and Red Hat.
++SGML_TOPDIR= /usr
++SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
++SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
++SGML_CATALOG_FILES= \
++ $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
++
++# The name, arguments and environment of a program to validate your web pages.
++# See <http://openjade.sourceforge.net/doc/> for a validator, and
++# <https://validator.w3.org/source/> for a validation library.
++VALIDATE = nsgmls
++VALIDATE_FLAGS = -s -B -wall -wno-unused-param
++VALIDATE_ENV = \
++ SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \
++ SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \
++ SP_CHARSET_FIXED=YES \
++ SP_ENCODING=UTF-8
++
++# This expensive test requires USE_LTZ.
++# To suppress it, define this macro to be empty.
++CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
++
++# SAFE_CHAR is a regular expression that matches a safe character.
++# Some parts of this distribution are limited to safe characters;
++# others can use any UTF-8 character.
++# For now, the safe characters are a safe subset of ASCII.
++# The caller must set the shell variable 'sharp' to the character '#',
++# since Makefile macros cannot contain '#'.
++# TAB_CHAR is a single tab character, in single quotes.
++TAB_CHAR= ' '
++SAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@'
++SAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`'
++SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~'
++SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
++SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]'
++
++# OK_CHAR matches any character allowed in the distributed files.
++# This is the same as SAFE_CHAR, except that multibyte letters are
++# also allowed so that commentary can contain people's names and quote
++# non-English sources. For non-letters the sources are limited to
++# ASCII renderings for the convenience of maintainers whose text editors
++# mishandle UTF-8 by default (e.g., XEmacs 21.4.22).
++OK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]'
++
++# SAFE_LINE matches a line of safe characters.
++# SAFE_SHARP_LINE is similar, except any OK character can follow '#';
++# this is so that comments can contain non-ASCII characters.
++# OK_LINE matches a line of OK characters.
++SAFE_LINE= '^'$(SAFE_CHAR)'*$$'
++SAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$'
++OK_LINE= '^'$(OK_CHAR)'*$$'
++
++# Flags to give 'tar' when making a distribution.
++# Try to use flags appropriate for GNU tar.
++GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
++TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
++ then echo $(GNUTARFLAGS); \
++ else :; \
++ fi`
++
++# Flags to give 'gzip' when making a distribution.
++GZIPFLAGS= -9n
++
++###############################################################################
++
++#MAKE= make
++
++cc= cc
++CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++
++AR= ar
++
++# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib.
++RANLIB= :
++
++TZCOBJS= zic.o
++TZDOBJS= zdump.o localtime.o asctime.o
++DATEOBJS= date.o localtime.o strftime.o asctime.o
++LIBSRCS= localtime.c asctime.c difftime.c
++LIBOBJS= localtime.o asctime.o difftime.o
++HEADERS= tzfile.h private.h
++NONLIBSRCS= zic.c zdump.c
++NEWUCBSRCS= date.c strftime.c
++SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
++ tzselect.ksh workman.sh
++MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
++ tzfile.5 tzselect.8 zic.8 zdump.8
++MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
++ time2posix.3.txt \
++ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \
++ date.1.txt
++COMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version
++WEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm
++DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
++PRIMARY_YDATA= africa antarctica asia australasia \
++ europe northamerica southamerica
++YDATA= $(PRIMARY_YDATA) pacificnew etcetera backward
++NDATA= systemv factory
++TDATA= $(YDATA) $(NDATA)
++ZONETABLES= zone1970.tab zone.tab
++TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++LEAP_DEPS= leapseconds.awk leap-seconds.list
++DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
++ leap-seconds.list yearistype.sh
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
++MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
++TZS_YEAR= 2050
++TZS= to$(TZS_YEAR).tzs
++TZS_NEW= to$(TZS_YEAR)new.tzs
++TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
++ private.h tzfile.h zdump.c zic.c
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
++
++# Consult these files when deciding whether to rebuild the 'version' file.
++# This list is not the same as the output of 'git ls-files', since
++# .gitignore is not distributed.
++VERSION_DEPS= \
++ CONTRIBUTING LICENSE Makefile NEWS README Theory \
++ africa antarctica asctime.c asia australasia \
++ backward backzone \
++ checklinks.awk checktab.awk \
++ date.1 date.c difftime.c \
++ etcetera europe factory iso3166.tab \
++ leap-seconds.list leapseconds.awk localtime.c \
++ newctime.3 newstrftime.3 newtzset.3 northamerica \
++ pacificnew private.h \
++ southamerica strftime.c systemv \
++ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
++ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
++ workman.sh yearistype.sh \
++ zdump.8 zdump.c zic.8 zic.c \
++ zone.tab zone1970.tab zoneinfo2tdf.pl
++
++# And for the benefit of csh users on systems that assume the user
++# shell should be used to handle commands in Makefiles. . .
++
++SHELL= /bin/sh
++
++all: tzselect yearistype zic zdump libtz.a $(TABDATA)
++
++ALL: all date $(ENCHILADA)
++
++install: all $(DATA) $(REDO) $(MANS)
++ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
++ $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
++ $(DESTDIR)$(MANDIR)/man8
++ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
++ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp libtz.a $(DESTDIR)$(LIBDIR)/.
++ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
++ cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
++ cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
++ cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
++
++INSTALL: ALL install date.1
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp date $(DESTDIR)$(BINDIR)/.
++ cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
++
++version: $(VERSION_DEPS)
++ { (type git) >/dev/null 2>&1 && \
++ V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
++ --abbrev=7 --dirty` || \
++ V=$(VERSION); } && \
++ printf '%s\n' "$$V" >$@.out
++ mv $@.out $@
++
++version.h: version
++ VERSION=`cat version` && printf '%s\n' \
++ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
++ "static char const TZVERSION[]=\"$$VERSION\";" \
++ 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \
++ >$@.out
++ mv $@.out $@
++
++zdump: $(TZDOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
++
++zic: $(TZCOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
++
++yearistype: yearistype.sh
++ cp yearistype.sh yearistype
++ chmod +x yearistype
++
++leapseconds: $(LEAP_DEPS)
++ $(AWK) -f leapseconds.awk leap-seconds.list >$@.out
++ mv $@.out $@
++
++# Arguments to pass to submakes of install_data.
++# They can be overridden by later submake arguments.
++INSTALLARGS = \
++ DESTDIR=$(DESTDIR) \
++ LEAPSECONDS='$(LEAPSECONDS)' \
++ PACKRATDATA='$(PACKRATDATA)' \
++ TZDIR=$(TZDIR) \
++ YEARISTYPE=$(YEARISTYPE) \
++ ZIC='$(ZIC)'
++
++# 'make install_data' installs one set of tz binary files.
++# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc.
++install_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA)
++ $(ZIC_INSTALL) $(TDATA)
++ $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA)
++
++posix_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
++
++right_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \
++ install_data
++
++# In earlier versions of this makefile, the other two directories were
++# subdirectories of $(TZDIR). However, this led to configuration errors.
++# For example, with posix_right under the earlier scheme,
++# TZ='right/Australia/Adelaide' got you localtime with leap seconds,
++# but gmtime without leap seconds, which led to problems with applications
++# like sendmail that subtract gmtime from localtime.
++# Therefore, the other two directories are now siblings of $(TZDIR).
++# You must replace all of $(TZDIR) to switch from not using leap seconds
++# to using them, or vice versa.
++right_posix: right_only
++ rm -fr $(DESTDIR)$(TZDIR)-leaps
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++
++posix_right: posix_only
++ rm -fr $(DESTDIR)$(TZDIR)-posix
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++
++# This obsolescent rule is present for backwards compatibility with
++# tz releases 2014g through 2015g. It should go away eventually.
++posix_packrat:
++ $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only
++
++zones: $(REDO)
++
++$(TZS_NEW): $(TDATA) zdump zic
++ mkdir -p tzs.dir
++ $(zic) -d tzs.dir $(TDATA)
++ $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
++ $(TDATA) | LC_ALL=C sort >$@.out
++ wd=`pwd` && \
++ zones=`$(AWK) -v wd="$$wd" \
++ '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ | LC_ALL=C sort` && \
++ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
++ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
++ rm -fr tzs.dir $@.out
++ mv $@.sed.out $@
++
++# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
++# If it exists but 'make check_tzs' fails, a maintainer should inspect the
++# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
++$(TZS):
++ $(MAKE) force_tzs
++
++force_tzs: $(TZS_NEW)
++ cp $(TZS_NEW) $(TZS)
++
++libtz.a: $(LIBOBJS)
++ $(AR) ru $@ $(LIBOBJS)
++ $(RANLIB) $@
++
++date: $(DATEOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
++
++tzselect: tzselect.ksh version
++ VERSION=`cat version` && sed \
++ -e 's|#!/bin/bash|#!$(KSHELL)|g' \
++ -e 's|AWK=[^}]*|AWK=$(AWK)|g' \
++ -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
++ -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
++ -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
++ -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \
++ <$@.ksh >$@.out
++ chmod +x $@.out
++ mv $@.out $@
++
++check: check_character_set check_white_space check_links check_sorted \
++ check_tables check_tzs check_web
++
++check_character_set: $(ENCHILADA)
++ LC_ALL=en_US.utf8 && export LC_ALL && \
++ sharp='#' && \
++ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
++ $(MISC) $(SOURCES) $(WEB_PAGES) \
++ CONTRIBUTING LICENSE Makefile README version && \
++ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
++ leapseconds yearistype.sh zone.tab && \
++ ! grep -Env $(OK_LINE) $(ENCHILADA)
++
++check_white_space: $(ENCHILADA)
++ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
++ ! grep -En "$$pat" $(ENCHILADA)
++ ! grep -n '[[:space:]]$$' $(ENCHILADA)
++
++CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
++
++check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
++ $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
++ $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
++ LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
++ LC_ALL=C sort -cu
++
++check_links: checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk $(TDATA)
++
++check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
++ for tab in $(ZONETABLES); do \
++ $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \
++ || exit; \
++ done
++
++check_tzs: $(TZS) $(TZS_NEW)
++ diff -u $(TZS) $(TZS_NEW)
++
++check_web: $(WEB_PAGES)
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++
++clean_misc:
++ rm -f core *.o *.out \
++ date tzselect version.h zdump zic yearistype libtz.a
++clean: clean_misc
++ rm -fr *.dir tzdb-*/ $(TZS_NEW)
++
++maintainer-clean: clean
++ @echo 'This command is intended for maintainers to use; it'
++ @echo 'deletes files that may need special tools to rebuild.'
++ rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
++
++names:
++ @echo $(ENCHILADA)
++
++public: check check_public $(CHECK_TIME_T_ALTERNATIVES) \
++ tarballs signatures
++
++date.1.txt: date.1
++newctime.3.txt: newctime.3
++newstrftime.3.txt: newstrftime.3
++newtzset.3.txt: newtzset.3
++time2posix.3.txt: time2posix.3
++tzfile.5.txt: tzfile.5
++tzselect.8.txt: tzselect.8
++zdump.8.txt: zdump.8
++zic.8.txt: zic.8
++
++$(MANTXTS): workman.sh
++ LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out
++ mv $@.out $@
++
++# Set the time stamps to those of the git repository, if available,
++# and if the files have not changed since then.
++# This uses GNU 'touch' syntax 'touch -d@N FILE',
++# where N is the number of seconds since 1970.
++# If git or GNU 'touch' is absent, don't bother to sync with git timestamps.
++# Also, set the timestamp of each prebuilt file like 'leapseconds'
++# to be the maximum of the files it depends on.
++set-timestamps.out: $(ENCHILADA)
++ rm -f $@
++ if (type git) >/dev/null 2>&1 && \
++ files=`git ls-files $(ENCHILADA)` && \
++ touch -md @1 test.out; then \
++ rm -f test.out && \
++ for file in $$files; do \
++ if git diff --quiet $$file; then \
++ time=`git log -1 --format='tformat:%ct' $$file` && \
++ touch -cmd @$$time $$file; \
++ else \
++ echo >&2 "$$file: warning: does not match repository"; \
++ fi || exit; \
++ done; \
++ fi
++ touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds
++ for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \
++ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
++ exit; \
++ done
++ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
++ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
++ touch $@
++
++# The zics below ensure that each data file can stand on its own.
++# We also do an all-files run to catch links to links.
++
++check_public:
++ $(MAKE) maintainer-clean
++ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
++ mkdir -p public.dir
++ for i in $(TDATA) ; do \
++ $(zic) -v -d public.dir $$i 2>&1 || exit; \
++ done
++ $(zic) -v -d public.dir $(TDATA)
++ rm -fr public.dir
++
++# Check that the code works under various alternative
++# implementations of time_t.
++check_time_t_alternatives:
++ if diff -q Makefile Makefile 2>/dev/null; then \
++ quiet_option='-q'; \
++ else \
++ quiet_option=''; \
++ fi && \
++ wd=`pwd` && \
++ zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
++ for type in $(TIME_T_ALTERNATIVES); do \
++ mkdir -p time_t.dir/$$type && \
++ $(MAKE) clean_misc && \
++ $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \
++ CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
++ REDO='$(REDO)' \
++ install && \
++ diff $$quiet_option -r \
++ time_t.dir/int64_t/etc/zoneinfo \
++ time_t.dir/$$type/etc/zoneinfo && \
++ case $$type in \
++ int32_t) range=-2147483648,2147483647;; \
++ uint32_t) range=0,4294967296;; \
++ int64_t) continue;; \
++ *u*) range=0,10000000000;; \
++ *) range=-10000000000,10000000000;; \
++ esac && \
++ echo checking $$type zones ... && \
++ time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/int64_t.out && \
++ time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/$$type.out && \
++ diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
++ || exit; \
++ done
++ rm -fr time_t.dir
++
++tarballs traditional_tarballs signatures traditional_signatures: version
++ VERSION=`cat version` && \
++ $(MAKE) VERSION="$$VERSION" $@_version
++
++tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
++traditional_tarballs_version: \
++ tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
++signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
++traditional_signatures_version: \
++ tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
++
++tzcode$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - \
++ $(COMMON) $(DOCS) $(SOURCES) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdata$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdb-$(VERSION).tar.lz: set-timestamps.out
++ rm -fr tzdb-$(VERSION)
++ mkdir tzdb-$(VERSION)
++ ln $(ENCHILADA) tzdb-$(VERSION)
++ touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION)
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out
++ mv $@.out $@
++
++tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
++ gpg --armor --detach-sign $?
++
++typecheck:
++ $(MAKE) clean
++ for i in "long long" unsigned; \
++ do \
++ $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \
++ ./zdump -v Europe/Rome ; \
++ $(MAKE) clean ; \
++ done
++
++zonenames: $(TDATA)
++ @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++
++asctime.o: private.h tzfile.h
++date.o: private.h
++difftime.o: private.h
++localtime.o: private.h tzfile.h
++strftime.o: private.h tzfile.h
++zdump.o: version.h
++zic.o: private.h tzfile.h version.h
++
++.KEEP_STATE:
++
++.PHONY: ALL INSTALL all
++.PHONY: check check_character_set check_links
++.PHONY: check_public check_sorted check_tables
++.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
++.PHONY: clean clean_misc force_tzs
++.PHONY: install install_data maintainer-clean names
++.PHONY: posix_only posix_packrat posix_right
++.PHONY: public right_only right_posix signatures signatures_version
++.PHONY: tarballs tarballs_version typecheck
++.PHONY: zonenames zones
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -0,0 +1,3782 @@
++News for the tz database
++
++Release 2016i - 2016-11-01 23:19:52 -0700
++
++ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
++ reintroduces DST on 2016-11-06.
++
++ Changes to future time stamps
++
++ Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
++ 2017-01-15 at 03:00. Assume future observances in Tonga will be
++ from the first Sunday in November through the third Sunday in
++ January, like Fiji. (Thanks to Pulu ʻAnau.) Switch to numeric
++ time zone abbreviations for this zone.
++
++ Changes to past and future time stamps
++
++ Northern Cyprus is now +03 year round, causing a split in Cyprus
++ time zones starting 2016-10-30 at 04:00. This creates a zone
++ Asia/Famagusta. (Thanks to Even Scharning and Matt Johnson.)
++
++ Antarctica/Casey switched from +08 to +11 on 2016-10-22.
++ (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Several corrections were made for pre-1975 time stamps in Italy.
++ These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
++ Europe/Vatican.
++
++ First, the 1893-11-01 00:00 transition in Italy used the new UT
++ offset (+01), not the old (+00:49:56). (Thanks to Michael
++ Deckers.)
++
++ Second, rules for daylight saving in Italy were changed to agree
++ with Italy's National Institute of Metrological Research (INRiM)
++ except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
++ Inglis, and Michael Deckers):
++
++ The 1916-06-03 transition was at 24:00, not 00:00.
++
++ The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
++ 00:00, not 01:00.
++
++ The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
++ 01:00.
++
++ The 1944-09-17 transition was at 03:00, not 01:00. This
++ particular change is taken from Italian law as INRiM's table,
++ (which says 02:00) appears to have a typo here. Also, keep the
++ 1944-04-03 transition for Europe/Rome, as Rome was controlled by
++ Germany then.
++
++ The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
++ not 00:00.
++
++ Changes to code
++
++ The code should now be buildable on AmigaOS merely by setting the
++ appropriate Makefile variables. (From a patch by Carsten Larsen.)
++
++
++Release 2016h - 2016-10-19 23:17:57 -0700
++
++ Changes to future time stamps
++
++ Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
++ 2016-10-21 at 00:00. (Thanks to Sharef Mustafa.) Predict that
++ future fall transitions will be on the last Saturday of October
++ at 01:00, which is consistent with predicted spring transitions
++ on the last Saturday of March. (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ In Turkey, transitions in 1986-1990 were at 01:00 standard time
++ not at 02:00, and the spring 1994 transition was on March 20, not
++ March 27. (Thanks to Kıvanç Yazan.)
++
++ Changes to past and future time zone abbreviations
++
++ Asia/Colombo now uses numeric time zone abbreviations like "+0530"
++ instead of alphabetic ones like "IST" and "LKT". Various
++ English-language sources use "IST", "LKT" and "SLST", with no
++ working consensus. (Usage of "SLST" mentioned by Sadika
++ Sumanapala.)
++
++ Changes to code
++
++ zic no longer mishandles relativizing file names when creating
++ symbolic links like /etc/localtime, when these symbolic links
++ are outside the usual directory hierarchy. This fixes a bug
++ introduced in 2016g. (Problem reported by Andreas Stieger.)
++
++ Changes to build procedure
++
++ New rules 'traditional_tarballs' and 'traditional_signatures' for
++ building just the traditional-format distribution. (Requested by
++ Deborah Goldsmith.)
++
++ The file 'version' is now put into the tzdata tarball too.
++ (Requested by Howard Hinnant.)
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now has a section on interface stability.
++ (Requested by Paul Koning.) It also mentions features like
++ tm_zone and localtime_rz that have long been supported by the
++ reference code.
++
++ tz-link.htm has improved coverage of time zone boundaries suitable
++ for geolocation. (Thanks to heads-ups from Evan Siroky and Matt
++ Johnson.)
++
++ The US commentary now mentions Allen and the "day of two noons".
++
++ The Fiji commentary mentions the government's 2016-10-03 press
++ release. (Thanks to Raymond Kumar.)
++
++
++Release 2016g - 2016-09-13 08:56:38 -0700
++
++ Changes to future time stamps
++
++ Turkey switched from EET/EEST (+02/+03) to permanent +03,
++ effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather
++ than an invented abbreviation for the new time.
++
++ New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
++ (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ For America/Los_Angeles, spring-forward transition times have been
++ corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
++ 1950-1966.
++
++ For zones using Soviet time on 1919-07-01, transitions to UT-based
++ time were at 00:00 UT, not at 02:00 local time. The affected
++ zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
++ Europe/Ulyanovsk. (Thanks to Alexander Belopolsky.)
++
++ Changes to past and future time zone abbreviations
++
++ The Factory zone now uses the time zone abbreviation -00 instead
++ of a long English-language string, as -00 is now the normal way to
++ represent an undefined time zone.
++
++ Several zones in Antarctica and the former Soviet Union, along
++ with zones intended for ships at sea that cannot use POSIX TZ
++ strings, now use numeric time zone abbreviations instead of
++ invented or obsolete alphanumeric abbreviations. The affected
++ zones are Antarctica/Casey, Antarctica/Davis,
++ Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
++ Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
++ Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
++ Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
++ Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
++ Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
++ Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
++ Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
++ Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
++ Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
++ Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
++ Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
++ Europe/Minsk, Europe/Samara, Europe/Volgograd, and
++ Indian/Kerguelen. For Europe/Moscow the invented abbreviation MSM
++ was replaced by +05, whereas MSK and MSD were kept as they are not
++ our invention and are widely used.
++
++ Changes to zone names
++
++ Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
++ (Thanks to David Massoud.)
++
++ Changes to code
++
++ zic no longer generates binary files containing POSIX TZ-like
++ strings that disagree with the local time type after the last
++ explicit transition in the data. This fixes a bug with
++ Africa/Casablanca and Africa/El_Aaiun in some year-2037 time
++ stamps on the reference platform. (Thanks to Alexander Belopolsky
++ for reporting the bug and suggesting a way forward.)
++
++ If the installed localtime and/or posixrules files are symbolic
++ links, zic now keeps them symbolic links when updating them, for
++ compatibility with platforms like OpenSUSE where other programs
++ configure these files as symlinks.
++
++ zic now avoids hard linking to symbolic links, avoids some
++ unnecessary mkdir and stat system calls, and uses shorter file
++ names internally.
++
++ zdump has a new -i option to generate transitions in a
++ more-compact but still human-readable format. This option is
++ experimental, and the output format may change in future versions.
++ (Thanks to Jon Skeet for suggesting that an option was needed,
++ and thanks to Tim Parenti and Chris Rovick for further comments.)
++
++ Changes to build procedure
++
++ An experimental distribution format is available, in addition
++ to the traditional format which will continue to be distributed.
++ The new format is a tarball tzdb-VERSION.tar.lz with signature
++ file tzdb-VERSION.tar.lz.asc. It unpacks to a top-level directory
++ tzdb-VERSION containing the code and data of the traditional
++ two-tarball format, along with extra data that may be useful.
++ (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
++ for comments about the experimental format.)
++
++ The release version number is now more accurate in the usual case
++ where releases are built from a Git repository. For example, if
++ 23 commits and some working-file changes have been made since
++ release 2016g, the version number is now something like
++ '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
++ Official releases uses the same version number format as before,
++ e.g., '2016g'. To support the more-accurate version number, its
++ specification has moved from a line in the Makefile to a new
++ source file 'version'.
++
++ The experimental distribution contains a file to2050.tzs that
++ contains what should be the output of 'zdump -i -c 2050' on
++ primary zones. If this file is available, 'make check' now checks
++ that zdump generates this output.
++
++ 'make check_web' now works on Fedora-like distributions.
++
++ Changes to documentation and commentary
++
++ tzfile.5 now documents the new restriction on POSIX TZ-like
++ strings that is now implemented by zic.
++
++ Comments now cite URLs for some 1917-1921 Russian DST decrees.
++ (Thanks to Alexander Belopolsky.)
++
++ tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
++ (thanks to Meno Hochschild) and ThreeTen-Extra, and its
++ description of Java 8 has been brought up to date (thanks to
++ Stephen Colebourne). Its description of local time on Mars has
++ been updated to match current practice, and URLs have been updated
++ and some obsolete ones removed.
++
++
++Release 2016f - 2016-07-05 16:26:51 +0200
++
++ 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.)
++
++
++Release 2016e - 2016-06-14 08:46:16 -0700
++
++ Changes affecting future time stamps
++
++ Africa/Cairo observes DST in 2016 from July 7 to the end of October.
++ Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
++ For future years, guess April's last Thursday to October's last
++ Thursday except for Ramadan.
++
++ Changes affecting past time stamps
++
++ Locations while uninhabited now use '-00', not 'zzz', as a
++ placeholder time zone abbreviation. This is inspired by Internet
++ RFC 3339 and is more consistent with numeric time zone
++ abbreviations already used elsewhere. The change affects several
++ arctic and antarctic locations, e.g., America/Cambridge_Bay before
++ 1920 and Antarctica/Troll before 2005.
++
++ Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
++ at 03:00, not 23:00 the previous day. (Thanks to Michael Deckers.)
++
++ Changes to code
++
++ zic now outputs a dummy transition at time 2**31 - 1 in zones
++ whose POSIX-style TZ strings contain a '<'. This mostly works
++ around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
++ (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm says why governments should give plenty of notice for
++ time zone or DST changes, and refers to Matt Johnson's blog post.
++
++ tz-link.htm mentions Tzdata for Elixir. (Thanks to Matt Johnson.)
++
++
++Release 2016d - 2016-04-17 22:50:29 -0700
++
++ Changes affecting future time stamps
++
++ America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
++ (Thanks to Alexander Krivenyshev for the heads-up.)
++
++ Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
++ (Thanks to Alexander Krivenyshev and Matt Johnson.)
++
++ New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
++ Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
++ at 02:00. (Thanks to Stepan Golosunov.)
++
++ Changes affecting past time stamps
++
++ New zone Europe/Kirov, split off from Europe/Volgograd. It covers
++ Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
++ 1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
++ the same change. (Thanks to Stepan Golosunov.)
++
++ Russia and nearby locations had daylight-saving transitions on
++ 1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
++ 1992-03-28 at 23:00 and 1992-09-26 at 23:00. (Thanks to Stepan
++ Golosunov.)
++
++ Many corrections to historical time in Kazakhstan from 1991
++ through 2005. (Thanks to Stepan Golosunov.) Replace Kazakhstan's
++ invented time zone abbreviations with numeric abbreviations.
++
++ Changes to commentary
++
++ Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
++
++
++Release 2016c - 2016-03-23 00:51:27 -0700
++
++ Changes affecting future time stamps
++
++ Azerbaijan no longer observes DST. (Thanks to Steffen Thorsen.)
++
++ Chile reverts from permanent to seasonal DST. (Thanks to Juan
++ Correa for the heads-up, and to Tim Parenti for corrections.)
++ Guess that future transitions are August's and May's second
++ Saturdays at 24:00 mainland time. Also, call the period from
++ 2014-09-07 through 2016-05-14 daylight saving time instead of
++ standard time, as that seems more appropriate now.
++
++ Changes affecting past time stamps
++
++ Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
++ +02/+03 on 1989-03-26, not 1991-03-31. Europe/Volgograd changed
++ from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to commentary
++
++ Several updates and URLs for historical and proposed Russian changes.
++ (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
++
++
++Release 2016b - 2016-03-12 17:30:14 -0800
++
++ Compatibility note
++
++ Starting with release 2016b, some data entries cause zic implementations
++ derived from tz releases 2005j through 2015e to issue warnings like
++ "time zone abbreviation differs from POSIX standard (+03)".
++ These warnings should not otherwise affect zic's output and can safely be
++ ignored on today's platforms, as the warnings refer to a restriction in
++ POSIX.1-1988 that was removed in POSIX.1-2001. One way to suppress the
++ warnings is to upgrade to zic derived from tz releases 2015f and later.
++
++ Changes affecting future time stamps
++
++ New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
++ Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
++ 2016-03-27 at 02:00 local time. They need distinct zones since their
++ post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and
++ Altai Republic, Russia, which will switch from +06 to +07 on the same date
++ and local time. The Astrakhan change is already official; the others have
++ passed the first reading in the State Duma and are extremely likely.
++ Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
++ and Stepan Golosunov for followup.)
++
++ As a trial of a new system that needs less information to be made up,
++ the new zones use numeric time zone abbreviations like "+04"
++ instead of invented abbreviations like "ASTT".
++
++ Haiti will not observe DST in 2016. (Thanks to Jean Antoine via
++ Steffen Thorsen.)
++
++ Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
++ (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
++ Saturday at 01:00, not March's last Friday at 24:00.
++
++ Changes affecting past time stamps
++
++ Europe/Chisinau observed DST during 1990, and switched from +04 to
++ +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
++ (Thanks to Stepan Golosunov.)
++
++ 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
++ KUYT/KUYST. (Thanks to Stepan Golosunov.)
++
++ Changes to code
++
++ tzselect's diagnostics and checking, and checktab.awk's checking,
++ have been improved. (Thanks to J William Piggott.)
++
++ tzcode now builds under MinGW. (Thanks to Ian Abbott and Esben Haabendal.)
++
++ tzselect now tests Julian-date TZ settings more accurately.
++ (Thanks to J William Piggott.)
++
++ Changes to commentary
++
++ Comments in zone tables have been improved. (Thanks to J William Piggott.)
++
++ tzselect again limits its menu comments so that menus fit on a
++ 24x80 alphanumeric display.
++
++ A new web page tz-how-to.html. (Thanks to Bill Seymour.)
++
++ In the Theory file, the description of possible time zone abbreviations in
++ tzdata has been cleaned up, as the old description was unclear and
++ inconsistent. (Thanks to Alain Mouette for reporting the problem.)
++
++
++Release 2016a - 2016-01-26 23:28:02 -0800
++
++ Changes affecting future time stamps
++
++ America/Cayman will not observe daylight saving this year after all.
++ Revert our guess that it would. (Thanks to Matt Johnson.)
++
++ Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev.)
++
++ Asia/Tehran now has DST predictions for the year 2038 and later,
++ to be March 21 00:00 to September 21 00:00. This is likely better
++ than predicting no DST, albeit off by a day every now and then.
++
++ Changes affecting past and future time stamps
++
++ America/Metlakatla switched from PST all year to AKST/AKDT on
++ 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.)
++
++ America/Santa_Isabel has been removed, and replaced with a
++ backward compatibility link to America/Tijuana. Its contents were
++ apparently based on a misreading of Mexican legislation.
++
++ Changes affecting past time stamps
++
++ Asia/Karachi's two transition times in 2002 were off by a minute.
++ (Thanks to Matt Johnson.)
++
++ Changes affecting build procedure
++
++ An installer can now combine leap seconds with use of the backzone file,
++ e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
++ The old 'make posix_packrat' rule is now marked as obsolescent.
++ (Thanks to Ian Abbott for an initial implementation.)
++
++ Changes affecting documentation and commentary
++
++ A new file LICENSE makes it easier to see that the code and data
++ are mostly public-domain. (Thanks to James Knight.) The three
++ non-public-domain files now use the current (3-clause) BSD license
++ instead of older versions of that license.
++
++ tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
++ CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
++ on editing tz source files (with a mention of Sublime zoneinfo,
++ thanks to Gilmore Davidson).
++
++ The Theory and asia files now mention the 2015 book "The Global
++ Transformation of Time, 1870-1950", and cite a couple of reviews.
++
++ The America/Chicago entry now documents the informal use of US
++ central time in Fort Pierre, South Dakota. (Thanks to Rick
++ McDermid, Matt Johnson, and Steve Jones.)
++
++
++Release 2015g - 2015-10-01 00:39:51 -0700
++
++ Changes affecting future time stamps
++
++ Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
++ (Thanks to Fatih.)
++
++ Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.)
++
++ Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
++ (Thanks to Ken Rylander.)
++
++ Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
++ effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
++ New zone America/Fort_Nelson. (Thanks to Matt Johnson.)
++
++ Changes affecting past time stamps
++
++ Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
++
++ Changes affecting code
++
++ localtime no longer mishandles America/Anchorage after 2037.
++ (Thanks to Bradley White for reporting the bug.)
++
++ On hosts with signed 32-bit time_t, localtime no longer mishandles
++ Pacific/Fiji after 2038-01-16 14:00 UTC.
++
++ The localtime module allows the variables 'timezone', 'daylight',
++ and 'altzone' to be in common storage shared with other modules,
++ and declares them in case the system <time.h> does not.
++ (Problems reported by Kees Dekker.)
++
++ On platforms with tm_zone, strftime.c now assumes it is not NULL.
++ This simplifies the code and is consistent with zdump.c.
++ (Problem reported by Christos Zoulas.)
++
++ Changes affecting documentation
++
++ The tzfile man page now documents that transition times denote the
++ starts (not the ends) of the corresponding time periods.
++ (Ambiguity reported by Bill Seymour.)
++
++
++Release 2015f - 2015-08-10 18:06:56 -0700
++
++ Changes affecting future time stamps
++
++ North Korea switches to +0830 on 2015-08-15. (Thanks to Steffen Thorsen.)
++ The abbreviation remains "KST". (Thanks to Robert Elz.)
++
++ Uruguay no longer observes DST. (Thanks to Steffen Thorsen
++ and Pablo Camargo.)
++
++ Changes affecting past and future time stamps
++
++ Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
++ (Thanks to Roman Tudos.)
++
++ Changes affecting data format and code
++
++ zic's '-y YEARISTYPE' option is no longer documented. The TYPE
++ field of a Rule line should now be '-'; the old values 'even',
++ 'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
++ Although the implementation has not changed, these features do not
++ work in the default installation, they are not used in the data,
++ and they are now considered obsolescent.
++
++ zic now checks that two rules don't take effect at the same time.
++ (Thanks to Jon Skeet and Arthur David Olson.) Constraints on
++ simultaneity are now documented.
++
++ The two characters '%z' in a zone format now stand for the UTC
++ offset, e.g., '-07' for seven hours behind UTC and '+0530' for
++ five hours and thirty minutes ahead. This better supports time
++ zone abbreviations conforming to POSIX.1-2001 and later.
++
++ Changes affecting installed data files
++
++ Comments for America/Halifax and America/Glace_Bay have been improved.
++ (Thanks to Brian Inglis.)
++
++ Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
++ Europe/Sofia, and Europe/Tallinn. This yields slightly smaller
++ installed data files for Europe/Simferopol and Europe/Tallinn.
++ It does not affect timestamps. (Thanks to Howard Hinnant.)
++
++ Changes affecting code
++
++ zdump and zic no longer warn about valid time zone abbreviations
++ like '-05'.
++
++ Some Visual Studio 2013 warnings have been suppressed.
++ (Thanks to Kees Dekker.)
++
++ 'date' no longer sets the time of day and its -a, -d, -n and -t
++ options have been removed. Long obsolescent, the implementation
++ of these features had porting problems. Builders no longer need
++ to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
++ (Thanks to Kees Dekker for pointing out the problem.)
++
++ Changes affecting documentation
++
++ The Theory file mentions naming issues earlier, as these seem to be
++ poorly publicized (thanks to Gilmore Davidson for reporting the problem).
++
++ tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
++
++ Mention that Herbert Samuel introduced the term "Summer Time".
++
++
++Release 2015e - 2015-06-13 10:56:02 -0700
++
++ Changes affecting future time stamps
++
++ Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
++ not 06-13 and 07-18 as we had guessed. (Thanks to Milamber.)
++
++ Assume Cayman Islands will observe DST starting next year, using US rules.
++ Although it isn't guaranteed, it is the most likely.
++
++ Changes affecting data format
++
++ The file 'iso3166.tab' now uses UTF-8, so that its entries can better
++ spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
++
++ Changes affecting code
++
++ When displaying data, tzselect converts it to the current locale's
++ encoding if the iconv command works. (Problem reported by random832.)
++
++ tzselect no longer mishandles Dominica, fixing a bug introduced
++ in Release 2014f. (Problem reported by Owen Leibman.)
++
++ zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
++ This fixes a bug introduced in Release 2014f.
++ (Problem reported by Leonardo Chiquitto.)
++
++
++Release 2015d - 2015-04-24 08:09:46 -0700
++
++ Changes affecting future time stamps
++
++ Egypt will not observe DST in 2015 and will consider canceling it
++ permanently. For now, assume no DST indefinitely.
++ (Thanks to Ahmed Nazmy and Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
++ 1966-07-01. Also, Yukon's time zone history is documented better.
++ (Thanks to Brian Inglis and Dennis Ferguson.)
++
++ Change affecting past and future time zone abbreviations
++
++ The abbreviations for Hawaii-Aleutian standard and daylight times
++ have been changed from HAST/HADT to HST/HDT, as per US Government
++ Printing Office style. This affects only America/Adak since 1983,
++ as America/Honolulu was already using the new style.
++
++ Changes affecting code
++
++ zic has some minor performance improvements.
++
++
++Release 2015c - 2015-04-11 08:55:55 -0700
++
++ Changes affecting future time stamps
++
++ Egypt's spring-forward transition is at 24:00 on April's last Thursday,
++ not 00:00 on April's last Friday. 2015's transition will therefore be on
++ Thursday, April 30 at 24:00, not Friday, April 24 at 00:00. Similar fixes
++ apply to 2026, 2037, 2043, etc. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The following changes affect some pre-1991 Chile-related time stamps
++ in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
++
++ The 1910 transition was January 10, not January 1.
++
++ The 1918 transition was September 10, not September 1.
++
++ The UT -04 time observed from 1932 to 1942 is now considered to
++ be standard time, not year-round DST.
++
++ Santiago observed DST (UT -03) from 1946-07-15 through
++ 1946-08-31, then reverted to standard time, then switched to -05
++ on 1947-04-01.
++
++ Assume transitions before 1968 were at 00:00, since we have no data
++ saying otherwise.
++
++ The spring 1988 transition was 1988-10-09, not 1988-10-02.
++ The fall 1990 transition was 1990-03-11, not 1990-03-18.
++
++ Assume no UTC offset change for Pacific/Easter on 1890-01-01,
++ and omit all transitions on Pacific/Easter from 1942 through 1946
++ since we have no data suggesting that they existed.
++
++ One more zone has been turned into a link, as it differed
++ from an existing zone only for older time stamps. As usual,
++ this change affects UTC offsets in pre-1970 time stamps only.
++ The zone's old contents have been moved to the 'backzone' file.
++ The affected zone is America/Montreal.
++
++ Changes affecting commentary
++
++ Mention the TZUpdater tool.
++
++ Mention "The Time Now". (Thanks to Brandon Ramsey.)
++
++
++Release 2015b - 2015-03-19 23:28:11 -0700
++
++ Changes affecting future time stamps
++
++ Mongolia will start observing DST again this year, from the last
++ Saturday in March at 02:00 to the last Saturday in September at 00:00.
++ (Thanks to Ganbold Tsagaankhuu.)
++
++ Palestine will start DST on March 28, not March 27. Also,
++ correct the fall 2014 transition from September 26 to October 24.
++ Adjust future predictions accordingly. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
++ regression. (Thanks to Stuart Bishop for reporting the problem.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: America/Antigua, America/Cayman,
++ Pacific/Midway, and Pacific/Saipan.
++
++ Changes affecting time zone abbreviations
++
++ Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
++ (Thanks to Hank W.)
++
++ Changes affecting code
++
++ Fix integer overflow bug in reference 'mktime' implementation.
++ (Problem reported by Jörg Richter.)
++
++ Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
++ to be used in the same executable as standard-library time_t functions.
++ (Problems reported by Bradley White.)
++
++ Changes affecting commentary
++
++ Cite the recent Mexican decree changing Quintana Roo's time zone.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Likewise for the recent Chilean decree. (Thanks to Eduardo Romero Urra.)
++
++ Update info about Mars time.
++
++
++Release 2015a - 2015-01-29 22:35:20 -0800
++
++ Changes affecting future time stamps
++
++ The Mexican state of Quintana Roo, represented by America/Cancun,
++ will shift from Central Time with DST to Eastern Time without DST
++ on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
++
++ Chile will not change clocks in April or thereafter; its new standard time
++ will be its old daylight saving time. This affects America/Santiago,
++ Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
++
++ New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
++ (Thanks to Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ Iceland observed DST in 1919 and 1921, and its 1939 fallback
++ transition was Oct. 29, not Nov. 29. Remove incorrect data from
++ Shanks about time in Iceland between 1837 and 1908.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
++ and Asia/Muscat.
++
++ Changes affecting code
++
++ tzalloc now scrubs time zone abbreviations compatibly with the way
++ that tzset always has, by replacing invalid bytes with '_' and by
++ shortening too-long abbreviations.
++
++ tzselect ports to POSIX awk implementations, no longer mishandles
++ POSIX TZ settings when GNU awk is used, and reports POSIX TZ
++ settings to the user. (Thanks to Stefan Kuhn.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks for links to links in the data.
++ One such link (for Africa/Asmera) has been fixed.
++ (Thanks to Stephen Colebourne for pointing out the problem.)
++
++ Changes affecting commentary
++
++ The leapseconds file commentary now mentions the expiration date.
++ (Problem reported by Martin Burnicki.)
++
++ Update Mexican Library of Congress URL.
++
++
++Release 2014j - 2014-11-10 17:37:11 -0800
++
++ Changes affecting current and future time stamps
++
++ Turks & Caicos' switch from US eastern time to UT -04 year-round
++ did not occur on 2014-11-02 at 02:00. It's currently scheduled
++ for 2015-11-01 at 02:00. (Thanks to Chris Walton.)
++
++ Changes affecting past time stamps
++
++ Many pre-1989 time stamps have been corrected for Asia/Seoul and
++ Asia/Pyongyang, based on sources for the Korean-language Wikipedia
++ entry for time in Korea. (Thanks to Sanghyuk Jung.) Also, no
++ longer guess that Pyongyang mimicked Seoul time after World War II,
++ as this is politically implausible.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
++ Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
++ Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
++ Indian/Mayotte.
++
++ Changes affecting commentary
++
++ The commentary is less enthusiastic about Shanks as a source,
++ and is more careful to distinguish UT from UTC.
++
++
++Release 2014i - 2014-10-21 22:04:57 -0700
++
++ Changes affecting future time stamps
++
++ Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
++ (Thanks to Ken Rylander for the heads-up.) Guess that future
++ years will use a similar pattern.
++
++ A new Zone Pacific/Bougainville, for the part of Papua New Guinea
++ that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
++ (Thanks to Kiley Walbom for the heads-up.)
++
++ Changes affecting time zone abbreviations
++
++ Since Belarus is not changing its clocks even though Moscow is,
++ the time zone abbreviation in Europe/Minsk is changing from FET
++ to its more-traditional value MSK on 2014-10-26 at 01:00.
++ (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
++
++ The new abbreviation IDT stands for the pre-1976 use of UT +08 in
++ Indochina, to distinguish it better from ICT (+07).
++
++ Changes affecting past time stamps
++
++ Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
++ (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
++ authoritative book). Asia/Ho_Chi_Minh has been added to
++ zone1970.tab, to give tzselect users in Vietnam two choices,
++ since north and south Vietnam disagreed after our 1970 cutoff.
++
++ Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
++ they differed from existing zones only for older time stamps. As
++ usual, these changes affect pre-1970 time stamps only. Their old
++ contents have been moved to the 'backzone' file.
++
++ Changes affecting code
++
++ The time-related library functions now set errno on failure, and
++ some crashes in the new tzalloc-related library functions have
++ been fixed. (Thanks to Christos Zoulas for reporting most of
++ these problems and for suggesting fixes.)
++
++ If USG_COMPAT is defined and the requested time stamp is standard time,
++ the tz library's localtime and mktime functions now set the extern
++ variable timezone to a value appropriate for that time stamp; and
++ similarly for ALTZONE, daylight saving time, and the altzone variable.
++ This change is a companion to the tzname change in 2014h, and is
++ designed to make timezone and altzone more compatible with tzname.
++
++ The tz library's functions now set errno to EOVERFLOW if they fail
++ because the result cannot be represented. ctime and ctime_r now
++ return NULL and set errno when a time stamp is out of range, rather
++ than having undefined behavior.
++
++ Some bugs associated with the new 2014g functions have been fixed.
++ This includes a bug that largely incapacitated the new functions
++ time2posix_z and posix2time_z. (Thanks to Christos Zoulas.)
++ It also includes some uses of uninitialized variables after tzalloc.
++ The new code uses the standard type 'ssize_t', which the Makefile
++ now gives porting advice about.
++
++ Changes affecting commentary
++
++ Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
++
++
++Release 2014h - 2014-09-25 18:59:03 -0700
++
++ Changes affecting past time stamps
++
++ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
++
++ Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
++ not 1920-01-06. The old entry was based on a misinterpretation of Shanks.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Blantyre, Africa/Bujumbura,
++ Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
++ Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
++
++ Changes affecting code
++
++ zdump -V and -v now output gmtoff= values on all platforms,
++ not merely on platforms defining TM_GMTOFF.
++
++ The tz library's localtime and mktime functions now set tzname to a value
++ appropriate for the requested time stamp, and zdump now uses this
++ on platforms not defining TM_ZONE, fixing a 2014g regression.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ The tz library no longer sets tzname if localtime or mktime fails.
++
++ zdump -c no longer mishandles transitions near year boundaries.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ An access to uninitialized data has been fixed.
++ (Thanks to Jörg Richter for reporting the problem.)
++
++ When THREAD_SAFE is defined, the code ports to the C11 memory model.
++ A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
++ and two threads race to initialize data used by gmtime-like functions.
++ (Thanks to Andy Heninger for reporting the problems.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks better for properly-sorted data.
++
++ Changes affecting documentation and commentary
++
++ zdump's gmtoff=N output is now documented, and its isdst=D output
++ is now documented to possibly output D values other than 0 or 1.
++
++ zdump -c's treatment of years is now documented to use the
++ Gregorian calendar and Universal Time without leap seconds,
++ and its behavior at cutoff boundaries is now documented better.
++ (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
++
++ Programs are now documented to use the proleptic Gregorian calendar.
++ (Thanks to Alan Barrett for the suggestion.)
++
++ Fractional-second GMT offsets have been documented for civil time
++ in 19th-century Chennai, Jakarta, and New York.
++
++
++Release 2014g - 2014-08-28 12:31:23 -0700
++
++ Changes affecting future time stamps
++
++ Turks & Caicos is switching from US eastern time to UT -04
++ year-round, modeled as a switch on 2014-11-02 at 02:00.
++ [As noted in 2014j, this switch was later delayed.]
++
++ Changes affecting past time stamps
++
++ Time in Russia or the USSR before 1926 or so has been corrected by
++ a few seconds in the following zones: Asia/Irkutsk,
++ Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
++ Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
++ Asia/Yekaterinburg the correction is a few minutes. (Thanks to
++ Vladimir Karpinsky.)
++
++ The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
++ This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
++ Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
++ GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
++ (Thanks to Stephen Colebourne for pointing to the decree.)
++
++ Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
++
++ A new file 'backzone' contains data which may appeal to
++ connoisseurs of old time stamps, although it is out of scope for
++ the tz database, is often poorly sourced, and contains some data
++ that is known to be incorrect. The new file is not recommended
++ for ordinary use and its entries are not installed by default.
++ (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
++ Isle of Man entries.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Bangui, Africa/Brazzaville,
++ Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
++ Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
++
++ Changes affecting code
++
++ Unless NETBSD_INSPIRED is defined to 0, the tz library now
++ supplies functions for creating and using objects that represent
++ time zones. The new functions are tzalloc, tzfree, localtime_rz,
++ mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
++ time2posix_z. They are intended for performance: for example,
++ localtime_rz (unlike localtime_r) is trivially thread-safe without
++ locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
++ functions, and to Alan Barrett and Jonathan Lennox for helping to
++ debug the change.)
++
++ zdump now builds with the tz library unless USE_LTZ is defined to 0,
++ This lets zdump use tz features even if the system library lacks them.
++ To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
++ TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
++
++ zdump now uses localtime_rz if available, as it's significantly faster,
++ and it can help zdump better diagnose invalid time zone names.
++ Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
++ defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
++ not available, zdump now uses localtime_r and tzset if available,
++ as this is a bit cleaner and faster than plain localtime. Compile
++ with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
++ lacks these two functions.
++
++ If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
++ Although not needed for tz's own applications, which are single-threaded,
++ this supports POSIX better if the tz library is used in multithreaded apps.
++
++ Some crashes have been fixed when zdump or the tz library is given
++ invalid or outlandish input.
++
++ The tz library no longer mishandles leap seconds on platforms with
++ unsigned time_t in time zones that lack ordinary transitions after 1970.
++
++ The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
++ already defined, to make it easier to configure on common platforms.
++ Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
++
++ Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
++ assumes that reading uninitialized memory yields garbage values
++ but does not cause other problems such as traps.
++
++ If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
++ more likely to guess right for ambiguous time stamps near
++ transitions where tm_isdst does not change.
++
++ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
++ strftime_l for compatibility with recent versions of POSIX.
++ Only the C locale is supported, though. HAVE_STRFTIME_L defaults
++ to 1 on recent POSIX versions, and to 0 otherwise.
++
++ tzselect -c now uses a hybrid distance measure that works better
++ in Africa. (Thanks to Alan Barrett for noting the problem.)
++
++ The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
++ or when time_tz is defined.
++
++ When HAVE_UTMPX_H is set the 'date' command now builds on systems
++ whose <utmpx.h> file does not define WTMPX_FILE, and when setting
++ the date it updates the wtmpx file if _PATH_WTMPX is defined.
++ This affects GNU/Linux and similar systems.
++
++ For easier maintenance later, some C code has been simplified,
++ some lint has been removed, and the code has been tweaked so that
++ plain 'make' is more likely to work.
++
++ The C type 'bool' is now used for boolean values, instead of 'int'.
++
++ The long-obsolete LOCALE_HOME code has been removed.
++
++ The long-obsolete 'gtime' function has been removed.
++
++ Changes affecting build procedure
++
++ 'zdump' no longer links in ialloc.o, as it's not needed.
++
++ 'make check_time_t_alternatives' no longer assumes GNU diff.
++
++ Changes affecting distribution tarballs
++
++ The files checktab.awk and zoneinfo2tdf.pl are now distributed in
++ the tzdata tarball instead of the tzcode tarball, since they help
++ maintain the data. The NEWS and Theory files are now also
++ distributed in the tzdata tarball, as they're relevant for data.
++ (Thanks to Alan Barrett for pointing this out.) Also, the
++ leapseconds.awk file is no longer distributed in the tzcode
++ tarball, since it belongs in the tzdata tarball (where 2014f
++ inadvertently also distributed it).
++
++ Changes affecting documentation and commentary
++
++ A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
++ suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
++ for debugging it.)
++
++ The man pages have been updated to use function prototypes,
++ to document thread-safe variants like localtime_r, and to document
++ the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
++ mktime_z.
++
++ The fields in Link lines have been renamed to be more descriptive
++ and more like the parameters of 'ln'. LINK-FROM has become TARGET,
++ and LINK-TO has become LINK-NAME.
++
++ tz-link.htm mentions the IETF's tzdist working group; Windows
++ Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
++
++ Some broken URLs have been fixed in the commentary. (Thanks to
++ Lester Caine.)
++
++ Commentary about Philippines DST has been updated, and commentary
++ on pre-1970 time in India has been added.
++
++
++Release 2014f - 2014-08-05 17:42:36 -0700
++
++ Changes affecting future time stamps
++
++ Russia will subtract an hour from most of its time zones on 2014-10-26
++ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
++ There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
++ Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
++ (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
++ (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
++ (Europe/Samara) are not changing their clocks. The changed zones are
++ Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
++ Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
++ Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
++ Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
++ subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
++ but not its UTC offset. Two zones are added: Asia/Chita (split
++ from Asia/Yakutsk, and also with two hours subtracted) and
++ Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
++ subtracted). (Thanks to Tim Parenti for much of the above.)
++
++ Changes affecting time zone abbreviations
++
++ Australian eastern time zone abbreviations are now AEST/AEDT not EST,
++ and similarly for the other Australian zones. That is, for eastern
++ standard and daylight saving time the abbreviations are AEST and AEDT
++ instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
++ and AWST/AWDT are now used instead of the former CST, CWST, and WST.
++ This change does not affect UTC offsets, only time zone abbreviations.
++ (Thanks to Rich Tibbett and many others.)
++
++ Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
++ effective 2014-10-26 at 02:00 local time.
++
++ The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
++ has been changed from URUT to XJT. (Thanks to Luther Ma.)
++
++ Prefer MSK/MSD for Moscow time in Russia, even in other cities.
++ Similarly, prefer EET/EEST for eastern European time in Russia.
++
++ Change time zone abbreviations in (western) Samoa to use "ST" and
++ "DT" suffixes, as this is more likely to match common practice.
++ Prefix "W" to (western) Samoa time when its standard-time offset
++ disagrees with that of American Samoa.
++
++ America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
++
++ Time zone abbreviations have been updated for Japan's two time
++ zones used 1896-1937. JWST now stands for Western Standard
++ Time, and JCST for Central Standard Time (formerly this was CJT).
++ These abbreviations are now used for time in Korea, Taiwan,
++ and Sakhalin while controlled by Japan.
++
++ Changes affecting past time stamps
++
++ China's five zones have been simplified to two, since the post-1970
++ differences in the other three seem to have been imaginary. The
++ zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
++ removed; backwards-compatibility links still work, albeit with
++ different behaviors for time stamps before May 1980. Asia/Urumqi's
++ 1980 transition to UT +08 has been removed, so that it is now at
++ +06 and not +08. (Thanks to Luther Ma and to Alois Treindl;
++ Treindl sent helpful translations of two papers by Guo Qingsheng.)
++
++ Some zones have been turned into links, when they differed from existing
++ zones only for older UTC offsets where data entries were likely invented.
++ These changes affect UTC offsets in pre-1970 time stamps only. This is
++ similar to the change in release 2013e, except this time for western
++ Africa. The affected zones are: Africa/Bamako, Africa/Banjul,
++ Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
++ Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
++ Atlantic/St_Helena. This also affects the backwards-compatibility
++ link Africa/Timbuktu. (Thanks to Alan Barrett, Stephen Colebourne,
++ Tim Parenti, and David Patte for reporting problems in earlier
++ versions of this change.)
++
++ Asia/Shanghai's pre-standard-time UT offset has been changed from
++ 8:05:57 to 8:05:43, the location of Xujiahui Observatory. Its
++ transition to standard time has been changed from 1928 to 1901.
++
++ Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
++ then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
++ In 1946 it observed DST from 05-15 through 09-30; in 1947
++ from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
++ (Thanks to Yu-Cheng Chuang.)
++
++ Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
++
++ Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
++ 10-03 at 00:00. (Thanks to Konstantin Hyppönen.)
++
++ Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
++ period from 1911 to 1950.
++
++ Pacific/Chatham has been changed to New Zealand standard time plus
++ 45 minutes for the period before 1957, reflecting a 1956 remark in
++ the New Zealand parliament.
++
++ Europe/Budapest has several pre-1946 corrections: in 1918 the transition
++ out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
++ 1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
++ not 04-06 at 02:00; and there was no DST in 1920.
++
++ Africa/Accra is now assumed to have observed DST from 1920 through 1935.
++
++ Time in Russia before 1927 or so has been corrected by a few seconds in
++ the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
++ Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
++ Europe/Riga. Also, Moscow's location has been changed to its Kilometer 0
++ point. (Thanks to Vladimir Karpinsky for the Moscow changes.)
++
++ Changes affecting data format
++
++ A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
++ The new file's extended format allows multiple country codes per zone.
++ The older file is still installed but is deprecated; its format is
++ not changing and it will still be distributed for a while, but new
++ applications should use the new file.
++
++ The new file format simplifies maintenance of obscure locations.
++ To test this, it adds coverage for the Crozet Islands and the
++ Scattered Islands. (Thanks to Tobias Conradi and Antoine Leca.)
++
++ The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
++ It is still ASCII now, but commentary about the switch has been added.
++ The new file 'zone1970.tab' already uses UTF-8.
++
++ Changes affecting code
++
++ 'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
++ is defined. (Thanks to Elliott Hughes for reporting the problem.)
++
++ 'zic' no longer mishandles input when ignoring case in locales that
++ are not compatible with English, e.g., unibyte Turkish locales when
++ compiled with HAVE_GETTEXT.
++
++ Error diagnostics of 'zic' and 'yearistype' have been reworded so that
++ they no longer use ASCII '-' as if it were a dash.
++
++ 'zic' now rejects output file names that contain '.' or '..' components.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ 'zic -v' now warns about output file names that do not follow
++ POSIX rules, or that contain a digit or '.'. (Thanks to Arthur
++ David Olson for starting the ball rolling on this.)
++
++ Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
++
++ Changes affecting build procedure
++
++ 'zic' no longer links in localtime.o and asctime.o, as they're not needed.
++ (Thanks to John Cochran.)
++
++ Changes affecting documentation and commentary
++
++ The 'Theory' file documents legacy names, the longstanding
++ exceptions to the POSIX-inspired file name rules.
++
++ The 'zic' documentation clarifies the role of time types when
++ interpreting dates. (Thanks to Arthur David Olson.)
++
++ Documentation and commentary now prefer UTF-8 to US-ASCII,
++ allowing the use of proper accents in foreign words and names.
++ Code and data have not changed because of this. (Thanks to
++ Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
++ this.)
++
++ Non-HTML documentation and commentary now use plain-text URLs instead of
++ HTML insertions, and are more consistent about bracketing URLs when they
++ are not already surrounded by white space. (Thanks to suggestions by
++ Steffen Nurpmeso.)
++
++ There is new commentary about Xujiahui Observatory, the five time-zone
++ project in China from 1918 to 1949, timekeeping in Japanese-occupied
++ Shanghai, and Tibet Time in the 1950s. The sharp-eyed can spot the
++ warlord Jin Shuren in the data.
++
++ Commentary about the coverage of each Russian zone has been standardized.
++ (Thanks to Tim Parenti).
++
++ There is new commentary about contemporary timekeeping in Ethiopia.
++
++ Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
++
++ There is new commentary about time in Poland in 1919.
++
++ Proper credit has been given to DST inventor George Vernon Hudson.
++
++ Commentary about time in Metlakatla, AK and Resolute, NU has been
++ improved, with a new source for the former.
++
++ In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
++ is uninhabited.
++
++ Commentary about permanent Antarctic bases has been updated.
++
++ Several typos have been corrected. (Thanks to Tim Parenti for
++ contributing some of these fixes.)
++
++ tz-link.htm now mentions the JavaScript libraries Moment Timezone,
++ TimezoneJS.Date, Walltime-js, and Timezone. (Thanks to a heads-up
++ from Matt Johnson.) Also, it mentions the Go 'latlong' package.
++ (Thanks to a heads-up from Dirkjan Ochtman.)
++
++ The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
++ have been removed. These obsolescent US Naval Observatory entries were no
++ longer helpful for maintenance. (Thanks to Tim Parenti for the suggestion.)
++
++
++Release 2014e - 2014-06-12 21:53:52 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
++ (Thanks to Imed Chihi.) Guess that from 2015 on Egypt will temporarily
++ switch to standard time at 24:00 the last Thursday before Ramadan, and
++ back to DST at 00:00 the first Friday after Ramadan.
++
++ Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00. (Thanks
++ to Milamber Space Network.) Guess that from 2015 on Morocco will
++ temporarily switch to standard time at 03:00 the last Saturday before
++ Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
++
++ Changes affecting past time stamps
++
++ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
++ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
++ "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
++ in 1991. (Thanks to Hank W. for reporting the problems.)
++
++ Changes affecting commentary
++
++ tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
++ draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
++ removes stale pointers to World Time Explorer and WORLDTIME.
++
++
++Release 2014d - 2014-05-27 21:34:40 -0700
++
++ Changes affecting code
++
++ zic no longer generates files containing time stamps before the Big Bang.
++ This works around GNOME bug 730332
++ <https://bugzilla.gnome.org/show_bug.cgi?id=730332>.
++ (Thanks to Leonardo Chiquitto for reporting the bug, and to
++ Arthur David Olson and James Cloos for suggesting improvements to the fix.)
++
++ Changes affecting documentation
++
++ tz-link.htm now mentions GNOME.
++
++
++Release 2014c - 2014-05-13 07:44:13 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt observes DST starting 2014-05-15 at 24:00.
++ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
++ Details have not been announced, except that DST will not be observed
++ during Ramadan. Guess that DST will stop during the same Ramadan dates as
++ Morocco, and that Egypt's future spring and fall transitions will be the
++ same as 2010 when it last observed DST, namely April's last Friday at
++ 00:00 to September's last Thursday at 23:00 standard time. Also, guess
++ that Ramadan transitions will be at 00:00 standard time.
++
++ Changes affecting code
++
++ zic now generates transitions for minimum time values, eliminating guesswork
++ when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++
++ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
++
++ Changes affecting commentary and documentation
++
++ Remove now-confusing comment about Jordan. (Thanks to Oleksii Nochovnyi.)
++
++
++Release 2014b - 2014-03-24 21:28:50 -0700
++
++ Changes affecting near-future time stamps
++
++ Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.) Move its zone.tab entry from UA to RU.
++
++ New entry for Troll station, Antarctica. (Thanks to Paul-Inge Flakstad and
++ Bengt-Inge Larsson.) This is currently an approximation; a better version
++ will require the zic and localtime fixes mentioned below, and the plan is
++ to wait for a while until at least the zic fixes propagate.
++
++ Changes affecting code
++
++ 'zic' and 'localtime' no longer reject locations needing four transitions
++ per year for the foreseeable future. (Thanks to Andrew Main (Zefram).)
++ Also, 'zic' avoids some unlikely failures due to integer overflow.
++
++ Changes affecting build procedure
++
++ 'make check' now detects Rule lines defined but never used.
++ The NZAQ rules, an instance of this problem, have been removed.
++
++ Changes affecting commentary and documentation
++
++ Fix Tuesday/Thursday typo in description of time in Israel.
++ (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
++
++ Microsoft Windows 8.1 doesn't support tz database names. (Thanks
++ to Donald MacQueen.) Instead, the Microsoft Windows Store app
++ library supports them.
++
++ Add comments about Johnston Island time in the 1960s.
++ (Thanks to Lyle McElhaney.)
++
++ Morocco's 2014 DST start will be as predicted.
++ (Thanks to Sebastien Willemijns.)
++
++
++Release 2014a - 2014-03-07 23:30:29 -0800
++
++ Changes affecting near-future time stamps
++
++ Turkey begins DST on 2014-03-31, not 03-30. (Thanks to Faruk Pasin for
++ the heads-up, and to Tim Parenti for simplifying the update.)
++
++ Changes affecting past time stamps
++
++ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
++ (Thanks to Steffen Thorsen.)
++
++ Ukraine switched from Moscow to Eastern European time on 1990-07-01
++ (not 1992-01-01), and observed DST during the entire next winter.
++ (Thanks to Vladimir in Moscow via Alois Treindl.)
++
++ In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
++ (Thanks to Avigdor Finkelstein.)
++
++ Changes affecting code
++
++ A uninitialized-storage bug in 'localtime' has been fixed.
++ (Thanks to Logan Chien.)
++
++ Changes affecting the build procedure
++
++ The settings for 'make check_web' now default to Ubuntu 13.10.
++
++ Changes affecting commentary and documentation
++
++ The boundary of the US Pacific time zone is given more accurately.
++ (Thanks to Alan Mintz.)
++
++ Chile's 2014 DST will be as predicted. (Thanks to José Miguel Garrido.)
++
++ Paraguay's 2014 DST will be as predicted. (Thanks to Carlos Raúl Perasso.)
++
++ Better descriptions of countries with same time zone history as
++ Trinidad and Tobago since 1970. (Thanks to Alan Barrett for suggestion.)
++
++ Several changes affect tz-link.htm, the main web page.
++
++ Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
++ David Braverman).
++
++ Mention xCal (Internet RFC 6321) and jCal.
++
++ Microsoft has some support for tz database names.
++
++ CLDR data formats include both XML and JSON.
++
++ Mention Maggiolo's map of solar vs standard time.
++ (Thanks to Arthur David Olson.)
++
++ Mention TZ4Net. (Thanks to Matt Johnson.)
++
++ Mention the timezone-olson Haskell package.
++
++ Mention zeitverschiebung.net. (Thanks to Martin Jäger.)
++
++ Remove moribund links to daylight-savings-time.info and to
++ Simple Timer + Clocks.
++
++ Update two links. (Thanks to Oscar van Vlijmen.)
++
++ Fix some formatting glitches, e.g., remove random newlines from
++ abbr elements' title attributes.
++
++
++Release 2013i - 2013-12-17 07:25:23 -0800
++
++ Changes affecting near-future time stamps:
++
++ Jordan switches back to standard time at 00:00 on December 20, 2013.
++ The 2006-2011 transition schedule is planned to resume in 2014.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps:
++
++ In 2004, Cuba began DST on March 28, not April 4.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting code
++
++ The compile-time flag NOSOLAR has been removed, as nowadays the
++ benefit of slightly shrinking runtime table size is outweighed by the
++ cost of disallowing potential future updates that exceed old limits.
++
++ Changes affecting documentation and commentary
++
++ The files solar87, solar88, and solar89 are no longer distributed.
++ They were a negative experiment - that is, a demonstration that
++ tz data can represent solar time only with some difficulty and error.
++ Their presence in the distribution caused confusion, as Riyadh
++ civil time was generally not solar time in those years.
++
++ tz-link.htm now mentions Noda Time. (Thanks to Matt Johnson.)
++
++
++Release 2013h - 2013-10-25 15:32:32 -0700
++
++ Changes affecting current and future time stamps:
++
++ Libya has switched its UT offset back to +02 without DST, instead
++ of +01 with DST. (Thanks to Even Scharning.)
++
++ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
++ (Thanks to Gwillim Law.)
++
++ Changes affecting future time stamps:
++
++ Acre and (we guess) western Amazonas will switch from UT -04 to -05
++ on 2013-11-10. This affects America/Rio_Branco and America/Eirunepe.
++ (Thanks to Steffen Thorsen.)
++
++ Add entries for DST transitions in Morocco in the year 2038.
++ This avoids some year-2038 glitches introduced in 2013g.
++ (Thanks to Yoshito Umaoka for reporting the problem.)
++
++ Changes affecting API
++
++ The 'tzselect' command no longer requires the 'select' command,
++ and should now work with /bin/sh on more platforms. It also works
++ around a bug in BusyBox awk before version 1.21.0. (Thanks to
++ Patrick 'P. J.' McDermott and Alan Barrett.)
++
++ Changes affecting code
++
++ Fix localtime overflow bugs with 32-bit unsigned time_t.
++
++ zdump no longer assumes sscanf returns maximal values on overflow.
++
++ Changes affecting the build procedure
++
++ The builder can specify which programs to use, if any, instead of
++ 'ar' and 'ranlib', and libtz.a is now built locally before being
++ installed. (Thanks to Michael Forney.)
++
++ A dependency typo in the 'zdump' rule has been fixed.
++ (Thanks to Andrew Paprocki.)
++
++ The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
++ work as specified by POSIX.2-1992 or later; this is portable nowadays.
++
++ 'make clean' no longer removes 'leapseconds', since it's
++ host-independent and is part of the distribution.
++
++ The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
++ (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
++
++ Update URLs in tz-link page. Add URLs for Microsoft Windows, since
++ 8.1 introduces tz support. Remove URLs for Tru64 and UnixWare (no
++ longer maintained) and for old advisories. SOFA now does C.
++
++Release 2013g - 2013-09-30 21:08:26 -0700
++
++ Changes affecting current and near-future time stamps
++
++ Morocco now observes DST from the last Sunday in March to the last
++ Sunday in October, not April to September respectively. (Thanks
++ to Steffen Thorsen.)
++
++ Changes affecting 'zic'
++
++ 'zic' now runs on platforms that lack both hard links and symlinks.
++ (Thanks to Theo Veenker for reporting the problem, for MinGW.)
++ Also, fix some bugs on platforms that lack hard links but have symlinks.
++
++ 'zic -v' again warns that Asia/Tehran has no POSIX environment variable
++ to predict the far future, fixing a bug introduced in 2013e.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is again put into the tzdata tarball.
++ Also, 'leapseconds.awk', so tzdata is self-contained. (Thanks to
++ Matt Burgess and Ian Abbott.) The timestamps of these and other
++ dependent files in tarballs are adjusted more consistently.
++
++ Changes affecting documentation and commentary
++
++ The README file is now part of the data tarball as well as the code.
++ It now states that files are public domain unless otherwise specified.
++ (Thanks to Andrew Main (Zefram) for asking for clarifications.)
++ Its details about the 1989 release moved to a place of honor near
++ the end of NEWS.
++
++
++Release 2013f - 2013-09-24 23:37:36 -0700
++
++ Changes affecting near-future time stamps
++
++ Tocantins will very likely not observe DST starting this spring.
++ (Thanks to Steffen Thorsen.)
++
++ Jordan will likely stay at UT +03 indefinitely, and will not fall
++ back this fall.
++
++ Palestine will fall back at 00:00, not 01:00. (Thanks to Steffen Thorsen.)
++
++ Changes affecting API
++
++ The types of the global variables 'timezone' and 'altzone' (if present)
++ have been changed back to 'long'. This is required for 'timezone'
++ by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
++ These variables were originally 'long' in the tz code, but were
++ mistakenly changed to 'time_t' in 1987; nobody reported the
++ incompatibility until now. The difference matters on x32, where
++ 'long' is 32 bits and 'time_t' is 64. (Thanks to Elliott Hughes.)
++
++ Changes affecting the build procedure
++
++ Avoid long strings in leapseconds.awk to work around a mawk bug.
++ (Thanks to Cyril Baurand.)
++
++ Changes affecting documentation and commentary
++
++ New file 'NEWS' that contains release notes like this one.
++
++ Paraguay's law does not specify DST transition time; 00:00 is customary.
++ (Thanks to Waldemar Villamayor-Venialbo.)
++
++ Minor capitalization fixes.
++
++ Changes affecting version-control only
++
++ The experimental GitHub repository now contains annotated and
++ signed tags for recent releases, e.g., '2013e' for Release 2013e.
++ Releases are tagged starting with 2012e; earlier releases were
++ done differently, and tags would either not have a simple name or
++ not exactly match what was released.
++
++ 'make set-timestamps' is now simpler and a bit more portable.
++
++
++Release 2013e - 2013-09-19 23:50:04 -0700
++
++ Changes affecting near-future time stamps
++
++ This year Fiji will start DST on October 27, not October 20.
++ (Thanks to David Wheeler for the heads-up.) For now, guess that
++ Fiji will continue to spring forward the Sunday before the fourth
++ Monday in October.
++
++ Changes affecting current and future time zone abbreviations
++
++ Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
++ time zone abbreviations since 1932. (Thanks to George Ziegler,
++ Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
++ Benny Lin.) This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
++ Asia/Makassar, and Asia/Pontianak.
++
++ Use ART (UT -03, standard time), rather than WARST (also -03, but
++ daylight saving time) for San Luis, Argentina since 2009.
++
++ Changes affecting Godthåb time stamps after 2037 if version mismatch
++
++ Allow POSIX-like TZ strings where the transition time's hour can
++ range from -167 through 167, instead of the POSIX-required 0
++ through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
++ new Fiji rules. This is a more-compact way to represent
++ far-future time stamps for America/Godthab, America/Santiago,
++ Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
++ Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
++ this change. (Derived from a suggestion by Arthur David Olson.)
++
++ Allow POSIX-like TZ strings where daylight saving time is in
++ effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
++ Argentina Summer Time all year. This supports a more-compact way
++ to represent the 2013d data for America/Argentina/San_Luis.
++ Because of the change for San Luis noted above this change does not
++ affect the current data. (Thanks to Andrew Main (Zefram) for
++ suggestions that improved this change.)
++
++ Where these two TZ changes take effect, there is a minor extension
++ to the tz file format in that it allows new values for the
++ embedded TZ-format string, and the tz file format version number
++ has therefore been increased from 2 to 3 as a precaution.
++ Version-2-based client code should continue to work as before for
++ all time stamps before 2038. Existing version-2-based client code
++ (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
++ files, and typically works in practice even for time stamps after
++ 2037; the only known exception is America/Godthab.
++
++ Changes affecting time stamps before 1970
++
++ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
++ some errors before 1947.
++
++ Some zones have been turned into links, when they differ from existing
++ zones only in older data entries that were likely invented or that
++ differ only in LMT or transitions from LMT. These changes affect
++ only time stamps before 1943. The affected zones are:
++ Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
++ America/Grenada, America/Guadeloupe, America/Marigot,
++ America/Montserrat, America/St_Barthelemy, America/St_Kitts,
++ America/St_Lucia, America/St_Thomas, America/St_Vincent,
++ America/Tortola, and Europe/Vaduz. (Thanks to Alois Treindl for
++ confirming that the old Europe/Vaduz zone was wrong and the new
++ link is better for WWII-era times.)
++
++ Change Kingston Mean Time from -5:07:12 to -5:07:11. This affects
++ America/Cayman, America/Jamaica and America/Grand_Turk time stamps
++ from 1890 to 1912.
++
++ Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
++ This affects Europe/Zurich time stamps from 1853 to 1894. (Thanks
++ to Alois Treindl).
++
++ Change the date of the circa-1850 Zurich transition from 1849-09-12
++ to 1853-07-16, overriding Shanks with data from Messerli about
++ postal and telegraph time in Switzerland.
++
++ Changes affecting time zone abbreviations before 1970
++
++ For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
++ as Jakarta was called Batavia back then.
++
++ Changes affecting API
++
++ The 'zic' command now outputs a dummy transition when far-future
++ data can't be summarized using a TZ string, and uses a 402-year
++ window rather than a 400-year window. For the current data, this
++ affects only the Asia/Tehran file. It does not affect any of the
++ time stamps that this file represents, so zdump outputs the same
++ information as before. (Thanks to Andrew Main (Zefram).)
++
++ The 'date' command has a new '-r' option, which lets you specify
++ the integer time to display, a la FreeBSD.
++
++ The 'tzselect' command has two new options '-c' and '-n', which lets you
++ select a zone based on latitude and longitude.
++
++ The 'zic' command's '-v' option now warns about constructs that
++ require the new version-3 binary file format. (Thanks to Arthur
++ David Olson for the suggestion.)
++
++ Support for floating-point time_t has been removed.
++ It was always dicey, and POSIX no longer requires it.
++ (Thanks to Eric Blake for suggesting to the POSIX committee to
++ remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
++ Heninger, Arthur David Olson, and Alois Treindl, for reporting
++ bugs and elucidating some of the corners of the old floating-point
++ implementation.)
++
++ The signatures of 'offtime', 'timeoff', and 'gtime' have been
++ changed back to the old practice of using 'long' to represent UT
++ offsets. This had been inadvertently and mistakenly changed to
++ 'int_fast32_t'. (Thanks to Christos Zoulas.)
++
++ The code avoids undefined behavior on integer overflow in some
++ more places, including gmtime, localtime, mktime and zdump.
++
++ Changes affecting the zdump utility
++
++ zdump now outputs "UT" when referring to Universal Time, not "UTC".
++ "UTC" does not make sense for time stamps that predate the introduction
++ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
++ for clarifying UT vs UTC.)
++
++ Data changes affecting behavior of tzselect and similar programs
++
++ Country code BQ is now called the more-common name "Caribbean Netherlands"
++ rather than the more-official "Bonaire, St Eustatius & Saba".
++
++ Remove from zone.tab the names America/Montreal, America/Shiprock,
++ and Antarctica/South_Pole, as they are equivalent to existing
++ same-country-code zones for post-1970 time stamps. The data entries for
++ these names are unchanged, so the names continue to work as before.
++
++ Changes affecting code internals
++
++ zic -c now runs way faster on 64-bit hosts when given large numbers.
++
++ zic now uses vfprintf to avoid allocating and freeing some memory.
++
++ tzselect now computes the list of continents from the data,
++ rather than have it hard-coded.
++
++ Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is now generated automatically from a
++ new file 'leap-seconds.list', which is a copy of
++ <ftp://time.nist.gov/pub/leap-seconds.list>.
++ A new source file 'leapseconds.awk' implements this.
++ The goal is simplification of the future maintenance of 'leapseconds'.
++
++ When building the 'posix' or 'right' subdirectories, if the
++ subdirectory would be a copy of the default subdirectory, it is
++ now made a symbolic link if that is supported. This saves about
++ 2 MB of file system space.
++
++ The links America/Shiprock and Antarctica/South_Pole have been
++ moved to the 'backward' file. This affects only nondefault builds
++ that omit 'backward'.
++
++ Changes affecting version-control only
++
++ .gitignore now ignores 'date'.
++
++ Changes affecting documentation and commentary
++
++ Changes to the 'tzfile' man page
++
++ It now mentions that the binary file format may be extended in
++ future versions by appending data.
++
++ It now refers to the 'zdump' and 'zic' man pages.
++
++ Changes to the 'zic' man page
++
++ It lists conditions that elicit a warning with '-v'.
++
++ It says that the behavior is unspecified when duplicate names
++ are given, or if the source of one link is the target of another.
++
++ Its examples are updated to match the latest data.
++
++ The definition of white space has been clarified slightly.
++ (Thanks to Michael Deckers.)
++
++ Changes to the 'Theory' file
++
++ There is a new section about the accuracy of the tz database,
++ describing the many ways that errors can creep in, and
++ explaining why so many of the pre-1970 time stamps are wrong or
++ misleading (thanks to Steve Allen, Lester Caine, and Garrett
++ Wollman for discussions that contributed to this).
++
++ The 'Theory' file describes LMT better (this follows a
++ suggestion by Guy Harris).
++
++ It refers to the 2013 edition of POSIX rather than the 2004 edition.
++
++ It's mentioned that excluding 'backward' should not affect the
++ other data, and it suggests at least one zone.tab name per
++ inhabited country (thanks to Stephen Colebourne).
++
++ Some longstanding restrictions on names are documented, e.g.,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++
++ It gives more reasons for the 1970 cutoff.
++
++ It now mentions which time_t variants are supported, such as
++ signed integer time_t. (Thanks to Paul Goyette for reporting
++ typos in an experimental version of this change.)
++
++ (Thanks to Philip Newton for correcting typos in these changes.)
++
++ Documentation and commentary is more careful to distinguish UT in
++ general from UTC in particular. (Thanks to Steve Allen.)
++
++ Add a better source for the Zurich 1894 transition.
++ (Thanks to Pierre-Yves Berger.)
++
++ Update shapefile citations in tz-link.htm. (Thanks to Guy Harris.)
++
++
++Release 2013d - 2013-07-05 07:38:01 -0700
++
++ Changes affecting future time stamps:
++
++ Morocco's midsummer transitions this year are July 7 and August 10,
++ not July 9 and August 8. (Thanks to Andrew Paprocki.)
++
++ Israel now falls back on the last Sunday of October.
++ (Thanks to Ephraim Silverberg.)
++
++ Changes affecting past time stamps:
++
++ Specify Jerusalem's location more precisely; this changes the pre-1880
++ times by 2 s.
++
++ Changing affecting metadata only:
++
++ Fix typos in the entries for country codes BQ and SX.
++
++ Changes affecting code:
++
++ Rework the code to fix a bug with handling Australia/Macquarie on
++ 32-bit hosts (thanks to Arthur David Olson).
++
++ Port to platforms like NetBSD, where time_t can be wider than long.
++
++ Add support for testing time_t types other than the system's.
++ Run 'make check_time_t_alternatives' to try this out.
++ Currently, the tests fail for unsigned time_t;
++ this should get fixed at some point.
++
++ Changes affecting documentation and commentary:
++
++ Deemphasize the significance of national borders.
++
++ Update the zdump man page.
++
++ Remove obsolete NOID comment (thanks to Denis Excoffier).
++
++ Update several URLs and comments in the web pages.
++
++ Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
++
++ Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
++
++
++Release 2013c - 2013-04-19 16:17:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Palestine observed DST starting March 29, 2013. (Thanks to
++ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
++ with the predicted rules being the last Thursday in March at 24:00
++ to the first Friday on or after September 21 at 01:00.
++
++ Assume that the recent change to Paraguay's DST rules is permanent,
++ by moving the end of DST to the 4th Sunday in March every year.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Changes affecting past time stamps:
++
++ Fix some historical data for Palestine to agree with that of
++ timeanddate.com, as follows:
++
++ The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
++ 00:00 Apr 1.
++
++ The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
++ 02:00.
++
++ The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
++
++ The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
++
++ The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
++
++ The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
++
++ Fix times of habitation for Macquarie to agree with the Tasmania
++ Parks & Wildlife Service history, which indicates that permanent
++ habitation was 1899-1919 and 1948 on.
++
++ Changing affecting metadata only:
++
++ Macquarie Island is politically part of Australia, not Antarctica.
++ (Thanks to Tobias Conradi.)
++
++ Sort Macquarie more-consistently with other parts of Australia.
++ (Thanks to Tim Parenti.)
++
++
++Release 2013b - 2013-03-10 22:33:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Haiti uses US daylight-saving rules this year, and presumably future years.
++ This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++
++ Paraguay will end DST on March 24 this year.
++ (Thanks to Steffen Thorsen.) For now, assume it's just this year.
++
++ Morocco does not observe DST during Ramadan;
++ try to predict Ramadan in Morocco as best we can.
++ (Thanks to Erik Homoet for the heads-up.)
++
++ Changes affecting commentary:
++
++ Update URLs in tz-link page. Add URLs for webOS, BB10, iOS.
++ Update URL for Solaris. Mention Internet RFC 6557.
++ Update Internet RFCs 2445->5545, 2822->5322.
++ Switch from FTP to HTTP for Internet RFCs.
++
++
++Release 2013a - 2013-02-27 09:20:35 -0800
++
++ Change affecting binary data format:
++
++ The zone offset at the end of version-2-format zone files is now
++ allowed to be 24:00, as per POSIX.1-2008. (Thanks to Arthur David Olson.)
++
++ Changes affecting current and future time stamps:
++
++ Chile's 2013 rules, and we guess rules for 2014 and later, will be
++ the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
++ (Thanks to Steffen Thorsen and Robert Elz.)
++
++ New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
++ (Thanks to Tobias Conradi and Arthur David Olson.)
++
++ Many changes affect historical time stamps before 1940.
++ These were deduced from: Milne J. Civil time. Geogr J. 1899
++ Feb;13(2):173-94 <http://www.jstor.org/stable/1774359>.
++
++ Changes affecting the code:
++
++ Fix zic bug that mishandled Egypt's 2010 changes (this also affected
++ the data). (Thanks to Arthur David Olson.)
++
++ Fix localtime bug when time_t is unsigned and data files were generated
++ by a signed time_t system. (Thanks to Doug Bailey for reporting and
++ to Arthur David Olson for fixing.)
++
++ Allow the email address for bug reports to be set by the packager.
++ The default is tz@iana.org, as before. (Thanks to Joseph S. Myers.)
++
++ Update HTML checking to be compatible with Ubuntu 12.10.
++
++ Check that files are a safe subset of ASCII. At some point we may
++ relax this requirement to a safe subset of UTF-8. Without the
++ check, some non-UTF-8 encodings were leaking into the distribution.
++
++ Commentary changes:
++
++ Restore a comment about copyright notices that was inadvertently deleted.
++ (Thanks to Arthur David Olson.)
++
++ Improve the commentary about which districts observe what times
++ in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
++
++ Add web page links to tz.js.
++
++ Add "Run by the Monkeys" to tz-art. (Thanks to Arthur David Olson.)
++
++
++Release 2012j - 2012-11-12 18:34:49 -0800
++
++ Libya moved to CET this weekend, but with DST planned next year.
++ (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
++
++ Signatures now have the extension .asc, not .sign, as that's more
++ standard. (Thanks to Phil Pennock.)
++
++ The output of 'zdump --version', and of 'zic --version', now
++ uses a format that is more typical for --version.
++ (Thanks to Joseph S. Myers.)
++
++ The output of 'tzselect --help', 'zdump --help', and 'zic --help'
++ now uses tz@iana.org rather than the old elsie address.
++
++ zic -v now complains about abbreviations that are less than 3
++ or more than 6 characters, as per Posix. Formerly, it checked
++ for abbreviations that were more than 3.
++
++ 'make public' no longer puts its temporary directory under /tmp,
++ and uses the just-built zic rather than the system zic.
++
++ Various fixes to documentation and commentary.
++
++
++Release 2012i - 2012-11-03 12:57:09 -0700
++
++ Cuba switches from DST tomorrow at 01:00. (Thanks to Steffen Thorsen.)
++
++ Linker flags can now be specified via LDFLAGS.
++ AWK now defaults to 'awk', not 'nawk'.
++ The shell in tzselect now defaults to /bin/bash, but this can
++ be overridden by specifying KSHELL.
++ The main web page now mentions the unofficial GitHub repository.
++ (Thanks to Mike Frysinger.)
++
++ Tarball signatures can now be built by running 'make signatures'.
++ There are also new makefile rules 'tarballs', 'check_public', and
++ separate makefile rules for each tarball and signature file.
++ A few makefile rules are now more portable to strict POSIX.
++
++ The main web page now lists the canonical IANA URL.
++
++
++Release 2012h - 2012-10-26 22:49:10 -0700
++
++ Bahia no longer has DST. (Thanks to Kelley Cook.)
++
++ Tocantins has DST. (Thanks to Rodrigo Severo.)
++
++ Israel has new DST rules next year. (Thanks to Ephraim Silverberg.)
++
++ Jordan stays on DST this winter. (Thanks to Steffen Thorsen.)
++
++ Web page updates.
++
++ More C modernization, except that at Arthur David Olson's suggestion
++ the instances of 'register' were kept.
++
++
++Release 2012g - 2012-10-17 20:59:45 -0700
++
++ Samoa fall 2012 and later. (Thanks to Nicholas Pereira and Robert Elz.)
++
++ Palestine fall 2012. (Thanks to Steffen Thorsen.)
++
++ Assume C89.
++
++ To attack the version-number problem, this release ships the file
++ 'Makefile' (which contains the release number) in both the tzcode and
++ the tzdata tarballs. The two Makefiles are identical, and should be
++ identical in any matching pair of tarballs, so it shouldn't matter
++ which order you extract the tarballs. Perhaps we can come up with a
++ better version-number scheme at some point; this scheme does have the
++ virtue of not adding more files.
++
++
++Release 2012f - 2012-09-12 23:17:03 -0700
++
++ * australasia (Pacific/Fiji): Fiji DST is October 21 through January
++ 20 this year. (Thanks to Steffen Thorsen.)
++
++
++Release 2012e - 2012-08-02 20:44:55 -0700
++
++ * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
++ (Thanks to Steffen Thorsen.)
++
++ * Use a single version number for both code and data.
++
++ * .gitignore: New file.
++
++ * Remove trailing white space.
++
++
++Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
++
++ Changes for Morocco's time stamps, which take effect in a couple of
++ hours, along with infrastructure changes to accommodate how the tz
++ code and data are released on IANA.
++
++
++Release data2012c - 2012-03-27 12:17:25 -0400
++
++ africa
++ Summer time changes for Morocco (to start late April 2012)
++
++ asia
++ Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
++
++ northamerica
++ Haiti following US/Canada rules for 2012 (and we're assuming,
++ for now anyway, for the future).
++
++
++Release 2012b - 2012-03-02 12:29:15 +0700
++
++ There is just one change to tzcode2012b (compared with 2012a):
++ the Makefile that was accidentally included with 2012a has been
++ replaced with the version that should have been there, which is
++ identical with the previous version (from tzcode2011i).
++
++ There are just two changes in tzdata2012b compared with 2012a.
++
++ Most significantly, summer time in Cuba has been delayed 3 weeks
++ (now starts April 1 rather than March 11). Since Mar 11 (the old start
++ date, as listed in 2012a) is just a little over a week away, this
++ change is urgent.
++
++ Less importantly, an excess tab in one of the changes in zone.tab
++ in 2012a has been removed.
++
++
++Release 2012a - 2012-03-01 18:28:10 +0700
++
++ The changes in tzcode2012a (compared to the previous version, 2011i)
++ are entirely to the README and tz-art.htm and tz-link.htm files, if
++ none of those concern you, you can ignore the code update. The changes
++ reflect the changed addresses for the mailing list and the code and
++ data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
++ has been added to tz-link.htm).
++
++ In tzdata2012a (compared to the previous release, which was 2011n)
++ the major changes are:
++ Chile 2011/2012 and 2012/2013 summer time date adjustments.
++ Falkland Islands onto permanent summer time (we're assuming for the
++ foreseeable future, though 2012 is all we're fairly certain of.)
++ Armenia has abolished Summer Time.
++ Tokelau jumped the International Date Line back last December
++ (just the same as their near neighbour, Samoa).
++ America/Creston is a new zone for a small area of British Columbia
++ There will be a leapsecond 2012-06-30 23:59:60 UTC.
++
++ Other minor changes are:
++ Corrections to 1918 Canadian summer time end dates.
++ Updated URL for UK time zone history (in comments)
++ A few typos in Le Corre's list of free French place names (comments)
++
++
++Release data2011n - 2011-10-30 14:57:54 +0700
++
++ There are three changes of note - most urgently, Cuba (America/Havana)
++ has extended summer time by two weeks, now to end on Nov 13, rather than
++ the (already past) Oct 30. Second, the Pridnestrovian Moldavian Republic
++ (Europe/Tiraspol) decided not to split from the rest of Moldova after
++ all, and consequently that zone has been removed (again) and reinstated
++ in the "backward" file as a link to Europe/Chisinau. And third, the
++ end date for Fiji's summer time this summer was moved forward from the
++ earlier planned Feb 26, to Jan 22.
++
++ Apart from that, Moldova (MD) returns to a single entry in zone.tab
++ (and the incorrect syntax that was in the 2011m version of that file
++ is so fixed - it would have been fixed in a different way had this
++ change not happened - that's the "missing" sccs version id).
++
++
++Release data2011m - 2011-10-24 21:42:16 +0700
++
++ In particular, the typos in comments in the data (2011-11-17 should have
++ been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
++ Tim Parenti noted) have been fixed, and the change for Ukraine has been
++ made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
++ Tim Parenti, and also Denys Gavrysh)
++
++ In addition, I added Europe/Tiraspol to zone.tab.
++
++ This time, all the files have new version numbers... (including the files
++ otherwise unchanged in 2011m that were changed in 2011l but didn't get new
++ version numbers there...)
++
++
++Release data2011l - 2011-10-10 11:15:43 +0700
++
++ There are just 2 changes that cause different generated tzdata files from
++ zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
++ is included, but commented out. Compared with the diff I sent out last week,
++ this version also includes attributions for the sources for the changes
++ (in much the same format as ado used, but the html tags have not been
++ checked, verified, or used in any way at all, so if there are errors there,
++ please let me know.)
++
++
++Release data2011k - 2011-09-20 17:54:03 -0400
++
++ [not summarized]
++
++
++Release data2011j - 2011-09-12 09:22:49 -0400
++
++ (contemporary changes for Samoa; past changes for Kenya, Uganda, and
++ Tanzania); there are also two spelling corrections to comments in
++ the australasia file (with thanks to Christos Zoulas).
++
++
++Release 2011i - 2011-08-29 05:56:32 -0400
++
++ [not summarized]
++
++
++Release data2011h - 2011-06-15 18:41:48 -0400
++
++ Russia and Curaçao changes
++
++
++Release 2011g - 2011-04-25 09:07:22 -0400
++
++ update the rules for Egypt to reflect its abandonment of DST this year
++
++
++Release 2011f - 2011-04-06 17:14:53 -0400
++
++ [not summarized]
++
++
++Release 2011e - 2011-03-31 16:04:38 -0400
++
++ Morocco, Chile, and tz-link changes
++
++
++Release 2011d - 2011-03-14 09:18:01 -0400
++
++ changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++
++
++Release 2011c - 2011-03-07 09:30:09 -0500
++
++ These do affect current time stamps in Chile and Annette Island, Canada.
++
++
++Release 2011b - 2011-02-07 08:44:50 -0500
++
++ [not summarized]
++
++
++Release 2011a - 2011-01-24 10:30:16 -0500
++
++ [not summarized]
++
++
++Release data2010o - 2010-11-01 09:18:23 -0400
++
++ change to the end of DST in Fiji in 2011
++
++
++Release 2010n - 2010-10-25 08:19:17 -0400
++
++ [not summarized]
++
++
++Release 2010m - 2010-09-27 09:24:48 -0400
++
++ Hong Kong, Vostok, and zic.c changes
++
++
++Release 2010l - 2010-08-16 06:57:25 -0400
++
++ [not summarized]
++
++
++Release 2010k - 2010-07-26 10:42:27 -0400
++
++ [not summarized]
++
++
++Release 2010j - 2010-05-10 09:07:48 -0400
++
++ changes for Bahía de Banderas and for version naming
++
++
++Release data2010i - 2010-04-16 18:50:45 -0400
++
++ the end of DST in Morocco on 2010-08-08
++
++
++Release data2010h - 2010-04-05 09:58:56 -0400
++
++ [not summarized]
++
++
++Release data2010g - 2010-03-24 11:14:53 -0400
++
++ [not summarized]
++
++
++Release 2010f - 2010-03-22 09:45:46 -0400
++
++ [not summarized]
++
++
++Release data2010e - 2010-03-08 14:24:27 -0500
++
++ corrects the Dhaka bug found by Danvin Ruangchan
++
++
++Release data2010d - 2010-03-06 07:26:01 -0500
++
++ [not summarized]
++
++
++Release 2010c - 2010-03-01 09:20:58 -0500
++
++ changes including KRE's suggestion for earlier initialization of
++ "goahead" and "goback" structure elements
++
++
++Release code2010a - 2010-02-16 10:40:04 -0500
++
++ [not summarized]
++
++
++Release data2010b - 2010-01-20 12:37:01 -0500
++
++ Mexico changes
++
++
++Release data2010a - 2010-01-18 08:30:04 -0500
++
++ changes to Dhaka
++
++
++Release data2009u - 2009-12-26 08:32:28 -0500
++
++ changes to DST in Bangladesh
++
++
++Release 2009t - 2009-12-21 13:24:27 -0500
++
++ [not summarized]
++
++
++Release data2009s - 2009-11-14 10:26:32 -0500
++
++ (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
++
++
++Release 2009r - 2009-11-09 10:10:31 -0500
++
++ "antarctica" and "tz-link.htm" changes
++
++
++Release 2009q - 2009-11-02 09:12:40 -0500
++
++ with two corrections as reported by Eric Muller and Philip Newton
++
++
++Release data2009p - 2009-10-23 15:05:27 -0400
++
++ Argentina (including San Luis) changes (with the correction from
++ Mariano Absatz)
++
++
++Release data2009o - 2009-10-14 16:49:38 -0400
++
++ Samoa (commentary only), Pakistan, and Bangladesh changes
++
++
++Release data2009n - 2009-09-22 15:13:38 -0400
++
++ added commentary for Argentina and a change to the end of DST in
++ 2009 in Pakistan
++
++
++Release data2009m - 2009-09-03 10:23:43 -0400
++
++ Samoa and Palestine changes
++
++
++Release data2009l - 2009-08-14 09:13:07 -0400
++
++ Samoa (comments only) and Egypt
++
++
++Release 2009k - 2009-07-20 09:46:08 -0400
++
++ [not summarized]
++
++
++Release data2009j - 2009-06-15 06:43:59 -0400
++
++ Bangladesh change (with a short turnaround since the DST change is
++ impending)
++
++
++Release 2009i - 2009-06-08 09:21:22 -0400
++
++ updating for DST in Bangladesh this year
++
++
++Release 2009h - 2009-05-26 09:19:14 -0400
++
++ [not summarized]
++
++
++Release data2009g - 2009-04-20 16:34:07 -0400
++
++ Cairo
++
++
++Release data2009f - 2009-04-10 11:00:52 -0400
++
++ correct DST in Pakistan
++
++
++Release 2009e - 2009-04-06 09:08:11 -0400
++
++ [not summarized]
++
++
++Release 2009d - 2009-03-23 09:38:12 -0400
++
++ Morocco, Tunisia, Argentina, and American Astronomical Society changes
++
++
++Release data2009c - 2009-03-16 09:47:51 -0400
++
++ change to the start of Cuban DST
++
++
++Release 2009b - 2009-02-09 11:15:22 -0500
++
++ [not summarized]
++
++
++Release 2009a - 2009-01-21 10:09:39 -0500
++
++ [not summarized]
++
++
++Release data2008i - 2008-10-21 12:10:25 -0400
++
++ southamerica and zone.tab files, with Argentina DST rule changes and
++ United States zone reordering and recommenting
++
++
++Release 2008h - 2008-10-13 07:33:56 -0400
++
++ [not summarized]
++
++
++Release 2008g - 2008-10-06 09:03:18 -0400
++
++ Fix a broken HTML anchor and update Brazil's DST transitions;
++ there's also a slight reordering of information in tz-art.htm.
++
++
++Release data2008f - 2008-09-09 22:33:26 -0400
++
++ [not summarized]
++
++
++Release 2008e - 2008-07-28 14:11:17 -0400
++
++ changes by Arthur David Olson and Jesper Nørgaard Welen
++
++
++Release data2008d - 2008-07-07 09:51:38 -0400
++
++ changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
++
++
++Release data2008c - 2008-05-19 17:48:03 -0400
++
++ Pakistan, Morocco, and Mongolia
++
++
++Release data2008b - 2008-03-24 08:30:59 -0400
++
++ including renaming Asia/Calcutta to Asia/Kolkata, with a backward
++ link provided
++
++
++Release 2008a - 2008-03-08 05:42:16 -0500
++
++ [not summarized]
++
++
++Release 2007k - 2007-12-31 10:25:22 -0500
++
++ most importantly, changes to the "southamerica" file based on
++ Argentina's readoption of daylight saving time
++
++
++Release 2007j - 2007-12-03 09:51:01 -0500
++
++ 1. eliminate the "P" (parameter) macro;
++
++ 2. the "noncontroversial" changes circulated on the time zone
++ mailing list (less the changes to "logwtmp.c");
++
++ 3. eliminate "too many transition" errors when "min" is used in time
++ zone rules;
++
++ 4. changes by Paul Eggert (including updated information for Venezuela).
++
++
++Release data2007i - 2007-10-30 10:28:11 -0400
++
++ changes for Cuba and Syria
++
++
++Release 2007h - 2007-10-01 10:05:51 -0400
++
++ changes by Paul Eggert, as well as an updated link to the ICU
++ project in tz-link.htm
++
++
++Release 2007g - 2007-08-20 10:47:59 -0400
++
++ changes by Paul Eggert
++
++ The "leapseconds" file has been updated to incorporate the most
++ recent International Earth Rotation and Reference Systems Service
++ (IERS) bulletin.
++
++ There's an addition to tz-art.htm regarding the television show "Medium".
++
++
++Release 2007f - 2007-05-07 10:46:46 -0400
++
++ changes by Paul Eggert (including Haiti, Turks and Caicos, and New
++ Zealand)
++
++ changes to zic.c to allow hour values greater than 24 (along with
++ Paul's improved time value overflow checking)
++
++
++Release 2007e - 2007-04-02 10:11:52 -0400
++
++ Syria and Honduras changes by Paul Eggert
++
++ zic.c variable renaming changes by Arthur David Olson
++
++
++Release 2007d - 2007-03-20 08:48:30 -0400
++
++ changes by Paul Eggert
++
++ the elimination of white space at the ends of lines
++
++
++Release 2007c - 2007-02-26 09:09:37 -0500
++
++ changes by Paul Eggert
++
++
++Release 2007b - 2007-02-12 09:34:20 -0500
++
++ Paul Eggert's proposed change to the quotation handling logic in zic.c.
++
++ changes to the commentary in "leapseconds" reflecting the IERS
++ announcement that there is to be no positive leap second at the end
++ of June 2007.
++
++
++Release 2007a - 2007-01-08 12:28:29 -0500
++
++ changes by Paul Eggert
++
++ Derick Rethan's Asmara change
++
++ Oscar van Vlijmen's Easter Island local mean time change
++
++ symbolic link changes
++
++
++Release 2006p - 2006-11-27 08:54:27 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006o - 2006-11-06 09:18:07 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006n - 2006-10-10 11:32:06 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006m - 2006-10-02 15:32:35 -0400
++
++ changes for Uruguay, Palestine, and Egypt by Paul Eggert
++
++ (minimalist) changes to zic.8 to clarify "until" information
++
++
++Release data2006l - 2006-09-18 12:58:11 -0400
++
++ Paul's best-effort work on this coming weekend's Egypt time change
++
++
++Release 2006k - 2006-08-28 12:19:09 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006j - 2006-08-21 09:56:32 -0400
++
++ changes by Paul Eggert
++
++
++Release code2006i - 2006-08-07 12:30:55 -0400
++
++ localtime.c fixes
++
++ Ken Pizzini's conversion script
++
++
++Release code2006h - 2006-07-24 09:19:37 -0400
++
++ adds public domain notices to four files
++
++ includes a fix for transition times being off by a second
++
++ adds a new recording to the "arts" file (information courtesy Colin Bowern)
++
++
++Release 2006g - 2006-05-08 17:18:09 -0400
++
++ northamerica changes by Paul Eggert
++
++
++Release 2006f - 2006-05-01 11:46:00 -0400
++
++ a missing version number problem is fixed (with thanks to Bradley
++ White for catching the problem)
++
++
++Release 2006d - 2006-04-17 14:33:43 -0400
++
++ changes by Paul Eggert
++
++ added new items to tz-arts.htm that were found by Paul
++
++
++Release 2006c - 2006-04-03 10:09:32 -0400
++
++ two sets of data changes by Paul Eggert
++
++ a fencepost error fix in zic.c
++
++ changes to zic.c and the "europe" file to minimize differences
++ between output produced by the old 32-bit zic and the new 64-bit
++ version
++
++
++Release 2006b - 2006-02-20 10:08:18 -0500
++ [tz32code2006b + tz64code2006b + tzdata2006b]
++
++ 64-bit code
++
++ All SCCS IDs were bumped to "8.1" for this release.
++
++
++Release 2006a - 2006-01-30 08:59:31 -0500
++
++ changes by Paul Eggert (in particular, Indiana time zone moves)
++
++ an addition to the zic manual page to describe how special-case
++ transitions are handled
++
++
++Release 2005r - 2005-12-27 09:27:13 -0500
++
++ Canadian changes by Paul Eggert
++
++ They also add "<pre>" directives to time zone data files and reflect
++ changes to warning message logic in "zdump.c" (but with calls to
++ "gettext" kept unbundled at the suggestion of Ken Pizzini).
++
++
++Release 2005q - 2005-12-13 09:17:09 -0500
++
++ Nothing earth-shaking here:
++ 1. Electronic mail addresses have been removed.
++ 2. Casts of the return value of exit have been removed.
++ 3. Casts of the argument of is.* macros have been added.
++ 4. Indentation in one section of zic.c has been fixed.
++ 5. References to dead URLs in the data files have been dealt with.
++
++
++Release 2005p - 2005-12-05 10:30:53 -0500
++
++ "systemv", "tz-link.htm", and "zdump.c" changes
++ (less the casts of arguments to the is* macros)
++
++
++Release 2005o - 2005-11-28 10:55:26 -0500
++
++ Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
++
++ zdump.c lint fixes by Arthur David Olson
++
++
++Release 2005n - 2005-10-03 09:44:09 -0400
++
++ changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
++ et al. changes)
++
++
++Release 2005m - 2005-08-29 12:15:40 -0400
++
++ changes by Paul Eggert (with a small tweak to the tz-art change)
++
++ a declaration of an unused variable has been removed from zdump.c
++
++
++Release 2005l - 2005-08-22 12:06:39 -0400
++
++ changes by Paul Eggert
++
++ overflow/underflow checks by Arthur David Olson, minus changes to
++ the "Theory" file about the pending addition of 64-bit data (I grow
++ less confident of the changes being accepted with each passing day,
++ and the changes no longer increase the data files nine-fold--there's
++ less than a doubling in size by my local Sun's reckoning)
++
++
++Release 2005k - 2005-07-14 14:14:24 -0400
++
++ The "leapseconds" file has been edited to reflect the recently
++ announced leap second at the end of 2005.
++
++ I've also deleted electronic mail addresses from the files as an
++ anti-spam measure.
++
++
++Release 2005j - 2005-06-13 14:34:13 -0400
++
++ These reflect changes to limit the length of time zone abbreviations
++ and the characters used in those abbreviations.
++
++ There are also changes to handle POSIX-style "quoted" time zone
++ environment variables.
++
++ The changes were circulated on the time zone mailing list; the only
++ change since then was the removal of a couple of minimum-length of
++ abbreviation checks.
++
++
++Release data2005i - 2005-04-21 15:04:16 -0400
++
++ changes (most importantly to Nicaragua and Haiti) by Paul Eggert
++
++
++Release 2005h - 2005-04-04 11:24:47 -0400
++
++ changes by Paul Eggert
++
++ minor changes to Makefile and zdump.c to produce more useful output
++ when doing a "make typecheck"
++
++
++Release 2005g - 2005-03-14 10:11:21 -0500
++
++ changes by Paul Eggert (a change to current DST rules in Uruguay and
++ an update to a link to time zone software)
++
++
++Release 2005f - 2005-03-01 08:45:32 -0500
++
++ data and documentation changes by Paul Eggert
++
++
++Release 2005e - 2005-02-10 15:59:44 -0500
++
++ [not summarized]
++
++
++Release code2005d - 2005-01-31 09:21:47 -0500
++
++ make zic complain about links to links if the -v flag is used
++
++ have "make public" do more code checking
++
++ add an include to "localtime.c" for the benefit of gcc systems
++
++
++Release 2005c - 2005-01-17 18:36:29 -0500
++
++ get better results when mktime runs on a system where time_t is double
++
++ changes to the data files (most importantly to Paraguay)
++
++
++Release 2005b - 2005-01-10 09:19:54 -0500
++
++ Get localtime and gmtime working on systems with exotic time_t types.
++
++ Update the leap second commentary in the "leapseconds" file.
++
++
++Release 2005a - 2005-01-01 13:13:44 -0500
++
++ [not summarized]
++
++
++Release code2004i - 2004-12-14 13:42:58 -0500
++
++ Deal with systems where time_t is unsigned.
++
++
++Release code2004h - 2004-12-07 11:40:18 -0500
++
++ 64-bit-time_t changes
++
++
++Release 2004g - 2004-11-02 09:06:01 -0500
++
++ update to Cuba (taking effect this weekend)
++
++ other changes by Paul Eggert
++
++ correction of the spelling of Oslo
++
++ changed versions of difftime.c and private.h
++
++
++Release code2004f - 2004-10-21 10:25:22 -0400
++
++ Cope with wide-ranging tm_year values.
++
++
++Release 2004e - 2004-10-11 14:47:21 -0400
++
++ Brazil/Argentina/Israel changes by Paul Eggert
++
++ changes to tz-link.htm by Paul
++
++ one small fix to Makefile
++
++
++Release 2004d - 2004-09-22 08:27:29 -0400
++
++ Avoid overflow problems when TM_YEAR_BASE is added to an integer.
++
++
++Release 2004c - 2004-08-11 12:06:26 -0400
++
++ asctime-related changes
++
++ (variants of) some of the documentation changes suggested by Paul Eggert
++
++
++Release 2004b - 2004-07-19 14:33:35 -0400
++
++ data changes by Paul Eggert - most importantly, updates for Argentina
++
++
++Release 2004a - 2004-05-27 12:00:47 -0400
++
++ changes by Paul Eggert
++
++ Handle DST transitions that occur at the end of a month in some
++ years but at the start of the following month in other years.
++
++ Add a copy of the correspondence that's the basis for claims about
++ DST in the Navajo Nation.
++
++
++Release 2003e - 2003-12-15 09:36:47 -0500
++
++ changes by Arthur David Olson (primarily code changes)
++
++ changes by Paul Eggert (primarily data changes)
++
++ minor changes to "Makefile" and "northamerica" (in the latter case,
++ optimization of the "Toronto" rules)
++
++
++Release 2003d - 2003-10-06 09:34:44 -0400
++
++ changes by Paul Eggert
++
++
++Release 2003c - 2003-09-16 10:47:05 -0400
++
++ Fix bad returns in zic.c's inleap function.
++ Thanks to Bradley White for catching the problem!
++
++
++Release 2003b - 2003-09-16 07:13:44 -0400
++
++ Add a "--version" option (and documentation) to the zic and zdump commands.
++
++ changes to overflow/underflow checking in zic
++
++ a localtime typo fix.
++
++ Update the leapseconds and tz-art.htm files.
++
++
++Release 2003a - 2003-03-24 09:30:54 -0500
++
++ changes by Paul Eggert
++
++ a few additions and modifications to the tz-art.htm file
++
++
++Release 2002d - 2002-10-15 13:12:42 -0400
++
++ changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
++
++ There's also a new time zone quote in "tz-art.htm".
++
++
++Release 2002c - 2002-04-04 11:55:20 -0500
++
++ changes by Paul Eggert
++
++ Change zic.c to avoid creating symlinks to files that don't exist.
++
++
++Release 2002b - 2002-01-28 12:56:03 -0500
++
++ [These change notes are for Release 2002a, which was corrupted.
++ 2002b was a corrected version of 2002a.]
++
++ changes by Paul Eggert
++
++ Update the "leapseconds" file to note that there'll be no leap
++ second at the end of June, 2002.
++
++ Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
++
++ Change to "difftime.c" to avoid sizeof problems.
++
++
++Release 2001d - 2001-10-09 13:31:32 -0400
++
++ changes by Paul Eggert
++
++
++Release 2001c - 2001-06-05 13:59:55 -0400
++
++ changes by Paul Eggert and Andrew Brown
++
++
++Release 2001b - 2001-04-05 16:44:38 -0400
++
++ changes by Paul Eggert (modulo jnorgard's typo fix)
++
++ tz-art.htm has been HTMLified.
++
++
++Release 2001a - 2001-03-13 12:57:44 -0500
++
++ changes by Paul Eggert
++
++ An addition to the "leapseconds" file: comments with the text of the
++ latest IERS leap second notice.
++
++ Trailing white space has been removed from data file lines, and
++ repeated spaces in "Rule Jordan" lines in the "asia" file have been
++ converted to tabs.
++
++
++Release 2000h - 2000-12-14 15:33:38 -0500
++
++ changes by Paul Eggert
++
++ one typo fix in the "art" file
++
++ With providence, this is the last update of the millennium.
++
++
++Release 2000g - 2000-10-10 11:35:22 -0400
++
++ changes by Paul Eggert
++
++ correction of John Mackin's name submitted by Robert Elz
++
++ Garry Shandling's Daylight Saving Time joke (!?!) from the recent
++ Emmy Awards broadcast.
++
++
++Release 2000f - 2000-08-10 09:31:58 -0400
++
++ changes by Paul Eggert
++
++ Added information in "tz-art.htm" on a Seinfeld reference to DST.
++
++ Error checking and messages in the "yearistype" script have been
++ improved.
++
++
++Release 2000e - 2000-07-31 09:27:54 -0400
++
++ data changes by Paul Eggert
++
++ a change to the default value of the defined constant HAVE_STRERROR
++
++ the addition of a Dave Barry quote on DST to the tz-arts file
++
++
++Release 2000d - 2000-04-20 15:43:04 -0400
++
++ changes to the documentation and code of strftime for C99 conformance
++
++ a bug fix for date.c
++
++ These are based on (though modified from) changes by Paul Eggert.
++
++
++Release 2000c - 2000-03-04 10:31:43 -0500
++
++ changes by Paul Eggert
++
++
++Release 2000b - 2000-02-21 12:16:29 -0500
++
++ changes by Paul Eggert and Joseph Myers
++
++ modest tweaks to the tz-art.htm and tz-link.htm files
++
++
++Release 2000a - 2000-01-18 09:21:26 -0500
++
++ changes by Paul Eggert
++
++ The two hypertext documents have also been renamed.
++
++
++Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
++
++ Paul Eggert's changes
++
++ additions to the "zic" manual page and the "Arts.htm" file
++
++
++Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
++
++ [not summarized]
++
++
++Release data1999h - 1999-10-07 03:50:29 -0400
++
++ changes by Paul Eggert to "europe" (most importantly, fixing
++ Lithuania and Estonia)
++
++
++Release 1999g - 1999-09-28 11:06:18 -0400
++
++ data changes by Paul Eggert (most importantly, the change for
++ Lebanon that buys correctness for this coming Sunday)
++
++ The "code" file contains changes to "Makefile" and "checktab.awk" to
++ allow better checking of time zone files before they are published.
++
++
++Release 1999f - 1999-09-23 09:48:14 -0400
++
++ changes by Arthur David Olson and Paul Eggert
++
++
++Release 1999e - 1999-08-17 15:20:54 -0400
++
++ changes circulated by Paul Eggert, although the change to handling
++ of DST-specifying time zone names has been commented out for now
++ (search for "XXX" in "localtime.c" for details). These files also
++ do not make any changes to the start of DST in Brazil.
++
++ In addition to Paul's changes, there are updates to "Arts.htm" and
++ cleanups of URLs.
++
++
++Release 1999d - 1999-03-30 11:31:07 -0500
++
++ changes by Paul Eggert
++
++ The Makefile's "make public" rule has also been changed to do a test
++ compile of each individual time zone data file (which should help
++ avoid problems such as the one we had with Nicosia).
++
++
++Release 1999c - 1999-03-25 09:47:47 -0500
++
++ changes by Paul Eggert, most importantly the change for Chile.
++
++
++Release 1999b - 1999-02-01 17:51:44 -0500
++
++ changes by Paul Eggert
++
++ code changes (suggested by Mani Varadarajan, mani at be.com) for
++ correct handling of symbolic links when building using a relative directory
++
++ code changes to generate correct messages for failed links
++
++ updates to the URLs in Arts.htm
++
++
++Release 1999a - 1999-01-19 16:20:29 -0500
++
++ error message internationalizations and corrections in zic.c and
++ zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
++ to whom thanks!)
++
++
++Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
++
++ changes for Brazil, Chile, and Germany
++
++ support for use of "24:00" in the input files for the time zone compiler
++
++
++Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
++
++ changes by Paul Eggert
++
++ correction to a define in the "private.h" file
++
++
++Release data1998g - 1998-08-11 03:28:35 -0000
++ [tzdata1998g.tar.gz is missing!]
++
++ Lithuanian change provided by mgedmin at pub.osf.it
++
++ Move creation of the GMT link with Etc/GMT to "etcetera" (from
++ "backward") to ensure that the GMT file is created even where folks
++ don't want the "backward" links (as suggested by Paul Eggert).
++
++
++Release data1998f - 1998-07-20 13:50:00 -0000
++ [tzdata1998f.tar.gz is missing!]
++
++ Update the "leapseconds" file to include the newly-announced
++ insertion at the end of 1998.
++
++
++Release code1998f - 1998-06-01 10:18:31 -0400
++
++ addition to localtime.c by Guy Harris
++
++
++Release 1998e - 1998-05-28 09:56:26 -0400
++
++ The Makefile is changed to produce zoneinfo-posix rather than
++ zoneinfo/posix, and to produce zoneinfo-leaps rather than
++ zoneinfo/right.
++
++ data changes by Paul Eggert
++
++ changes from Guy Harris to provide asctime_r and ctime_r
++
++ A usno1998 file (substantially identical to usno1997) has been added.
++
++
++Release 1998d - 1998-05-14 11:58:34 -0400
++
++ changes to comments (in particular, elimination of references to CIA maps).
++ "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
++ where changes occur.
++
++
++Release 1998c - 1998-02-28 12:32:26 -0500
++
++ changes by Paul Eggert (save the "French correction," on which I'll
++ wait for the dust to settle)
++
++ symlink changes
++
++ changes and additions to Arts.htm
++
++
++Release 1998b - 1998-01-17 14:31:51 -0500
++
++ URL cleanups and additions
++
++
++Release 1998a - 1998-01-13 12:37:35 -0500
++
++ changes by Paul Eggert
++
++
++Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
++
++ changes by Paul Eggert, with minor modifications from Arthur David
++ Olson to make the files more browser friendly
++
++
++Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
++
++ minor changes to put "TZif" at the start of each time zone information file
++
++ a rule has also been added to the Makefile so you can
++ make zones
++ to just recompile the zone information files (rather than doing a
++ full "make install" with its other effects).
++
++
++Release data1997i - 1997-10-07 08:45:38 -0400
++
++ changes to Africa by Paul Eggert
++
++
++Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
++
++ corrections for Uruguay (and other locations)
++
++ Arthur David Olson's simple-minded fix allowing mktime to both
++ correctly handle leap seconds and correctly handle tm_sec values
++ upon which arithmetic has been performed.
++
++
++Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
++
++ Paul Eggert's updates
++
++ a small change to a function prototype;
++
++ "Music" has been renamed "Arts.htm", HTMLified, and augmented to
++ include information on Around the World in Eighty Days.
++
++
++Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
++
++ fixes to zic's error handling
++
++ changes inspired by the item circulated on Slovenia
++
++ The description of Web resources has been HTMLified for browsing
++ convenience.
++
++ A new piece of tz-related music has been added to the "Music" file.
++
++
++Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
++
++ Paul Eggert's latest suggestions
++
++
++Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
++
++ changes to "zic.c" to correct performance of the "-s" option
++
++ a new file "usno1997"
++
++
++Release data1997c - 1997-03-04 09:58:18 -0500
++
++ changes in Israel
++
++
++Release 1997b - 1997-02-27 18:34:19 -0500
++
++ The data file incorporates the 1997 leap second.
++
++ The code file incorporates Arthur David Olson's take on the
++ zic/multiprocessor/directory-creation situation.
++
++
++Release 1997a - 1997-01-21 09:11:10 -0500
++
++ Paul Eggert's Antarctica (and other changes)
++
++ Arthur David Olson finessed the "getopt" issue by checking against
++ both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
++ is returned while SunOS 5.5's manual says EOF is returned).
++
++
++Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
++
++ Paul Eggert's latest changes
++
++
++Release code1996n - 1996-12-16 09:42:02 -0500
++
++ link snapping fix from Bruce Evans (via Garrett Wollman)
++
++
++Release data1996m - 1996-11-24 02:37:34 -0000
++ [tzdata1996m.tar.gz is missing!]
++
++ Paul Eggert's batch of changes
++
++
++Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
++
++ No functional changes here; the files have simply been changed to
++ make more use of ISO style dates in comments. The names of the above
++ files now include the year in full.
++
++
++Release code96l - 1996-09-08 17:12:20 -0400
++
++ tzcode96k was missing a couple of pieces.
++
++
++Release 96k - 1996-09-08 16:06:22 -0400
++
++ the latest round of changes from Paul Eggert
++
++ the recent Year 2000 material
++
++
++Release code96j - 1996-07-30 13:18:53 -0400
++
++ Set sp->typecnt as suggested by Timothy Patrick Murphy.
++
++
++Release code96i - 1996-07-27 20:11:35 -0400
++
++ Paul's suggested patch for strftime %V week numbers
++
++
++Release data96i - 1996-07-01 18:13:04 -0400
++
++ "northamerica" and "europe" changes by Paul Eggert
++
++
++Release code96h - 1996-06-05 08:02:21 -0400
++
++ fix for handling transitions specified in Universal Time
++
++ Some "public domain" notices have also been added.
++
++
++Release code96g - 1996-05-16 14:00:26 -0400
++
++ fix for the simultaneous-DST-and-zone-change challenge
++
++
++Release data96h - 1996-05-09 17:40:51 -0400
++
++ changes by Paul Eggert
++
++
++Release code96f-data96g - 1996-05-03 03:09:59 -0000
++ [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
++
++ The changes get us some of the way to fixing the problems noted in Paul
++ Eggert's letter yesterday (in addition to a few others). The approach
++ has been to make zic a bit smarter about figuring out what time zone
++ abbreviations apply just after the time specified in the "UNTIL" part
++ of a zone line. Putting the smarts in zic means avoiding having
++ transition times show up in both "Zone" lines and "Rule" lines, which
++ in turn avoids multiple transition time entries in time zone files.
++ (This also makes the zic input files such as "europe" a bit shorter and
++ should ease maintenance.)
++
++
++Release data96f - 1996-04-19 19:20:03 -0000
++ [tzdata96f.tar.gz is missing!]
++
++ The only changes are to the "northamerica" file; the time zone
++ abbreviation for Denver is corrected to MST (and MDT), and the
++ comments for Mexico have been updated.
++
++
++Release data96e - 1996-03-19 17:37:26 -0500
++
++ Proposals by Paul Eggert, in particular the Portugal change that
++ comes into play at the end of this month.
++
++
++Release data96d - 1996-03-18 20:49:39 -0500
++
++ [not summarized]
++
++
++Release code96e - 1996-02-29 15:43:27 -0000
++ [tzcode96e.tar.gz is missing!]
++
++ internationalization changes and the fix to the documentation for strftime
++
++
++Release code96d-data96c - 1996-02-12 11:05:27 -0500
++
++ The "code" file simply updates Bob Kridle's electronic address.
++
++ The "data" file updates rules for Mexico.
++
++
++Release data96b - 1996-01-27 15:44:42 -0500
++
++ Kiribati change
++
++
++Release code96c - 1996-01-16 16:58:15 -0500
++
++ leap-year streamlining and binary-search changes
++
++ fix to newctime.3
++
++
++Release code96b - 1996-01-10 20:42:39 -0500
++
++ fixes and enhancements from Paul Eggert, including code that
++ emulates the behavior of recent versions of the SunOS "date"
++ command.
++
++
++Release 96a - 1996-01-06 09:08:24 -0500
++
++ Israel updates
++
++ fixes to strftime.c for correct ISO 8601 week number generation,
++ plus support for two new formats ('G' and 'g') to give ISO 8601 year
++ numbers (which are not necessarily the same as calendar year numbers)
++
++
++Release code95i-data95m - 1995-12-21 12:46:47 -0500
++
++ The latest revisions from Paul Eggert are included, the usno1995
++ file has been updated, and a new file ("WWW") covering useful URLs
++ has been added.
++
++
++Release code95h-data95l - 1995-12-19 18:10:12 -0500
++
++ A simplification of a macro definition, a change to data for Sudan,
++ and (for last minute shoppers) notes in the "Music" file on the CD
++ "Old Man Time".
++
++
++Release code95g-data95k - 1995-10-30 10:32:47 -0500
++
++ (slightly reformatted) 8-bit-clean proposed patch
++
++ minor patch: US/Eastern -> America/New_York
++
++ snapshot of the USNO's latest data ("usno1995")
++
++ some other minor cleanups
++
++
++Release code95f-data95j - 1995-10-28 21:01:34 -0000
++ [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
++
++ European cleanups
++
++ support for 64-bit time_t's
++
++ optimization in localtime.c
++
++
++Release code95e - 1995-10-13 13:23:57 -0400
++
++ the mktime change to scan from future to past when trying to find time zone
++ offsets
++
++
++Release data95i - 1995-09-26 10:43:26 -0400
++
++ For Canada/Central, guess that the Sun customer's "one week too
++ early" was just a approximation, and the true error is one month
++ too early. This is consistent with the rest of Canada.
++
++
++Release data95h - 1995-09-21 11:26:48 -0400
++
++ latest changes from Paul Eggert
++
++
++Release code95d - 1995-09-14 11:14:45 -0400
++
++ the addition of a "Music" file, which documents four recorded
++ versions of the tune "Save That Time".
++
++
++Release data95g - 1995-09-01 17:21:36 -0400
++
++ "yearistype" correction
++
++
++Release data95f - 1995-08-28 20:46:56 -0400
++
++ Paul Eggert's change to the australasia file
++
++
++Release data95e - 1995-07-08 18:02:34 -0400
++
++ The only change is a leap second at the end of this year.
++ Thanks to Bradley White for forwarding news on the leap second.
++
++
++Release data95d - 1995-07-03 13:26:22 -0400
++
++ Paul Eggert's changes
++
++
++Release data95c - 1995-07-02 19:19:28 -0400
++
++ changes to "asia", "backward", "europe", and "southamerica"
++ (read: northamericacentrics need not apply)
++
++
++Release code95c - 1995-03-13 14:00:46 -0500
++
++ one-line fix for sign extension problems in detzcode
++
++
++Release 95b - 1995-03-04 11:22:38 -0500
++
++ Minor changes in both:
++
++ The "code" file contains a workaround for the lack of "unistd.h" in
++ Microsoft C++ version 7.
++
++ The "data" file contains a fixed "Link" for America/Shiprock.
++
++
++Release 94h - 1994-12-10 12:51:14 -0500
++
++ The files:
++
++ * incorporate the changes to "zdump" and "date" to make changes to
++ the "TZ" environment variable permanent;
++
++ * incorporate the table changes by Paul Eggert;
++
++ * include (and document) support for universal time specifications in
++ data files - but do not (yet) include use of this feature in the
++ data files.
++
++ Think of this as "TZ Classic" - the software has been set up not to break if
++ universal time shows up in its input, and data entries have been
++ left as is so as not to break existing implementations.
++
++
++Release data94f - 1994-08-20 12:56:09 -0400
++
++ (with thanks!) the latest data updates from Paul Eggert
++
++
++Release data94e - 1994-06-04 13:13:53 -0400
++
++ [not summarized]
++
++
++Release code94g - 1994-05-05 12:14:07 -0400
++
++ fix missing "optind.c" and a reference to it in the Makefile
++
++
++Release code94f - 1994-05-05 13:00:33 -0000
++ [tzcode94f.tar.gz is missing!]
++
++ changes to avoid overflow in difftime, as well as changes to cope
++ with the 52/53 challenge in strftime
++
++
++Release code94e - 1994-03-30 23:32:59 -0500
++
++ change for the benefit of PCTS
++
++
++Release 94d - 1994-02-24 15:42:25 -0500
++
++ Avoid clashes with POSIX semantics for zones such as GMT+4.
++
++ Some other very minor housekeeping is also present.
++
++
++Release code94c - 1994-02-10 08:52:40 -0500
++
++ Fix bug where mkdirs was broken unless you compile with
++ -fwritable-strings (which is generally losing to do).
++
++
++Release 94b - 1994-02-07 10:04:33 -0500
++
++ work by Paul Eggert who notes:
++
++ I found another book of time zone histories by E W Whitman; it's not
++ as extensive as Shanks but has a few goodies of its own. I used it
++ to update the tables. I also fixed some more as a result of
++ correspondence with Adam David and Peter Ilieve, and move some stray
++ links from 'europe' to 'backward'. I corrected some scanning errors
++ in usno1989.
++
++ As far as the code goes, I fixed zic to allow years in the range
++ INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
++ And I cleaned up the zic documentation a little bit.
++
++
++Release data94a - 1994-02-03 08:58:54 -0500
++
++ It simply incorporates the recently announced leap second into the
++ "leapseconds" file.
++
++
++Release 93g - 1993-11-22 17:28:27 -0500
++
++ Paul Eggert has provided a good deal of historic information (based
++ on Shanks), and there are some code changes to deal with the buglets
++ that crawled out in dealing with the new information.
++
++
++Release 93f - 1993-10-15 12:27:46 -0400
++
++ Paul Eggert's changes
++
++
++Release 93e - 1993-09-05 21:21:44 -0400
++
++ This has updated data for Israel, England, and Kwajalein. There's
++ also an update to "zdump" to cope with Kwajalein's 24-hour jump.
++ Thanks to Paul Eggert and Peter Ilieve for the changes.
++
++
++Release 93d - 1993-06-17 23:34:17 -0400
++
++ new fix and new data on Israel
++
++
++Release 93c - 1993-06-06 19:31:55 -0400
++
++ [not summarized]
++
++
++Release 93b - 1993-02-02 14:53:58 -0500
++
++ updated "leapseconds" file
++
++
++Release 93 - 1993-01-08 07:01:06 -0500
++
++ At kre's suggestion, the package has been split in two - a code piece
++ (which also includes documentation) that's only of use to folks who
++ want to recompile things and a data piece useful to anyone who can
++ run "zic".
++
++ The new version has a few changes to the data files, a few
++ portability changes, and an off-by-one fix (with thanks to
++ Tom Karzes at deshaw.com for providing a description and a
++ solution).
++
++
++Release 92c - 1992-11-21 17:35:36 -0000
++ [tz92c.tar.Z is missing!]
++
++ The fallout from the latest round of DST transitions.
++
++ There are changes for Portugal, Saskatchewan, and "Pacific-New";
++ there's also a change to "zic.c" that makes it portable to more systems.
++
++
++Release 92 - 1992-04-25 18:17:03 -0000
++ [tz92.tar.Z is missing!]
++
++ By popular demand (well, at any rate, following a request by kre at munnari)
++
++
++The 1989 update of the time zone package featured:
++
++ * POSIXization (including interpretation of POSIX-style TZ environment
++ variables, provided by Guy Harris),
++ * ANSIfication (including versions of "mktime" and "difftime"),
++ * SVIDulation (an "altzone" variable)
++ * MACHination (the "gtime" function)
++ * corrections to some time zone data (including corrections to the rules
++ for Great Britain and New Zealand)
++ * reference data from the United States Naval Observatory for folks who
++ want to do additional time zones
++ * and the 1989 data for Saudi Arabia.
++
++ (Since this code will be treated as "part of the implementation" in some
++ places and as "part of the application" in others, there's no good way to
++ name functions, such as timegm, that are not part of the proposed ANSI C
++ standard; such functions have kept their old, underscore-free names in this
++ update.)
++
++ And the "dysize" function has disappeared; it was present to allow
++ compilation of the "date" command on old BSD systems, and a version of "date"
++ is now provided in the package. The "date" command is not created when you
++ "make all" since it may lack options provided by the version distributed with
++ your operating system, or may not interact with the system in the same way
++ the native version does.
++
++ Since POSIX frowns on correct leap second handling, the default behavior of
++ the "zic" command (in the absence of a "-L" option) has been changed to omit
++ leap second information from its output files.
++
++
++-----
++Notes
++
++This file contains copies of the part of each release announcement
++that talks about the changes in that release. The text has been
++adapted and reformatted for the purposes of this file.
++
++Traditionally a release R consists of a pair of tarball files,
++tzcodeR.tar.gz and tzdataR.tar.gz. However, some releases (e.g.,
++code2010a, data2012c) consist of just one or the other tarball, and a
++few (e.g., code2012c-data2012d) have tarballs with mixed version
++numbers. Recent releases also come in an experimental format
++consisting of a single tarball tzdb-R.tar.lz with extra data.
++
++Release time stamps are taken from the release's commit (for newer,
++Git-based releases), from the newest file in the tarball (for older
++releases, where this info is available) or from the email announcing
++the release (if all else fails; these are marked with a time zone of
++-0000 and an "is missing!" comment).
++
++Earlier versions of the code and data were not announced on the tz
++list and are not summarized here.
++
++This file is in the public domain.
++
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -0,0 +1,71 @@
++README for the tz distribution
++
++"What time is it?" -- Richard Deacon as The King
++"Any time you want it to be." -- Frank Baxter as The Scientist
++ (from the Bell System film "About Time")
++
++The Time Zone Database (often called tz or zoneinfo) contains code and
++data that represent the history of local time for many representative
++locations around the globe. It is updated periodically to reflect
++changes made by political bodies to time zone boundaries, UTC offsets,
++and daylight-saving rules.
++
++Here is a recipe for acquiring, building, installing, and testing the
++tz distribution on a GNU/Linux or similar host.
++
++To acquire the distribution, run the following shell commands:
++
++ mkdir tz
++ cd tz
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tz*-latest.tar.gz'
++ gzip -dc tzcode-latest.tar.gz | tar -xf -
++ gzip -dc tzdata-latest.tar.gz | tar -xf -
++
++Alternatively, the following shell commands acquire the same
++distribution, with extra data useful for regression testing:
++
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tzdb-latest.tar.lz'
++ lzip -dc tzdb-latest.tar.lz | tar -xf -
++
++Be sure to read the comments in "Makefile" and make any changes needed
++to make things right for your system, especially if you are using some
++platform other than GNU/Linux. Then run the following commands,
++substituting your desired installation directory for "$HOME/tzdir":
++
++ make TOPDIR=$HOME/tzdir install
++ $HOME/tzdir/etc/zdump -v America/Los_Angeles
++
++Historical local time information has been included here to:
++
++* provide a compendium of data about the history of civil time
++ that is useful even if not 100% accurate;
++
++* give an idea of the variety of local time rules that have
++ existed in the past and thus an idea of the variety that may be
++ expected in the future;
++
++* provide a test of the generality of the local time rule description
++ system.
++
++The information in the time zone data files is by no means authoritative;
++fixes and enhancements are welcome. Please see the file CONTRIBUTING
++for details.
++
++Thanks to these Time Zone Caballeros who've made major contributions to the
++time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz;
++Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to
++Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales
++for testing work, and to Gwillim Law for checking local mean time data.
++Thanks in particular to Arthur David Olson, the project's founder and first
++maintainer, to whom the time zone community owes the greatest debt of all.
++None of them are responsible for remaining errors.
++
++Look in <ftp://ftp.iana.org/tz/releases/> for updated versions of these files.
++
++Please send comments or information to tz@iana.org.
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson. The other files in this distribution are either
++public domain or BSD licensed; see the file LICENSE for details.
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -0,0 +1,840 @@
++Theory and pragmatics of the tz code and data
++
++
++----- Outline -----
++
++ Scope of the tz database
++ Names of time zone rules
++ Time zone abbreviations
++ Accuracy of the tz database
++ Time and date functions
++ Calendrical issues
++ Time and time zones on Mars
++
++
++----- Scope of the tz database -----
++
++The tz database attempts to record the history and predicted future of
++all computer-based clocks that track civil time. To represent this
++data, the world is partitioned into regions whose clocks all agree
++about time stamps that occur after the somewhat-arbitrary cutoff point
++of the POSIX Epoch (1970-01-01 00:00:00 UTC). For each such region,
++the database records all known clock transitions, and labels the region
++with a notable location. Although 1970 is a somewhat-arbitrary
++cutoff, there are significant challenges to moving the cutoff earlier
++even by a decade or two, due to the wide variety of local practices
++before computer timekeeping became prevalent.
++
++Clock transitions before 1970 are recorded for each such location,
++because most systems support time stamps before 1970 and could
++misbehave if data entries were omitted for pre-1970 transitions.
++However, the database is not designed for and does not suffice for
++applications requiring accurate handling of all past times everywhere,
++as it would take far too much effort and guesswork to record all
++details of pre-1970 civil timekeeping.
++
++As described below, reference source code for using the tz database is
++also available. The tz code is upwards compatible with POSIX, an
++international standard for UNIX-like systems. As of this writing, the
++current edition of POSIX is:
++
++ The Open Group Base Specifications Issue 7
++ IEEE Std 1003.1, 2013 Edition
++ <http://pubs.opengroup.org/onlinepubs/9699919799/>
++
++
++
++----- Names of time zone rules -----
++
++Each of the database's time zone rules has a unique name.
++Inexperienced users are not expected to select these names unaided.
++Distributors should provide documentation and/or a simple selection
++interface that explains the names; for one example, see the 'tzselect'
++program in the tz code. The Unicode Common Locale Data Repository
++<http://cldr.unicode.org/> contains data that may be useful for other
++selection interfaces.
++
++The time zone rule naming conventions attempt to strike a balance
++among the following goals:
++
++ * Uniquely identify every region where clocks have agreed since 1970.
++ This is essential for the intended use: static clocks keeping local
++ civil time.
++
++ * Indicate to experts where that region is.
++
++ * Be robust in the presence of political changes. For example, names
++ of countries are ordinarily not used, to avoid incompatibilities
++ when countries change their name (e.g. Zaire->Congo) or when
++ locations change countries (e.g. Hong Kong from UK colony to
++ China).
++
++ * Be portable to a wide variety of implementations.
++
++ * Use a consistent naming conventions over the entire world.
++
++Names normally have the form AREA/LOCATION, where AREA is the name
++of a continent or ocean, and LOCATION is the name of a specific
++location within that region. North and South America share the same
++area, 'America'. Typical names are 'Africa/Cairo', 'America/New_York',
++and 'Pacific/Honolulu'.
++
++Here are the general rules used for choosing location names,
++in decreasing order of importance:
++
++ Use only valid POSIX file name components (i.e., the parts of
++ names other than '/'). Do not use the file name
++ components '.' and '..'. Within a file name component,
++ use only ASCII letters, '.', '-' and '_'. Do not use
++ digits, as that might create an ambiguity with POSIX
++ TZ strings. A file name component must not exceed 14
++ characters or start with '-'. E.g., prefer 'Brunei'
++ to 'Bandar_Seri_Begawan'. Exceptions: see the discussion
++ of legacy names below.
++ A name must not be empty, or contain '//', or start or end with '/'.
++ Do not use names that differ only in case. Although the reference
++ implementation is case-sensitive, some other implementations
++ are not, and they would mishandle names differing only in case.
++ If one name A is an initial prefix of another name AB (ignoring case),
++ then B must not start with '/', as a regular file cannot have
++ the same name as a directory in POSIX. For example,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++ Uninhabited regions like the North Pole and Bouvet Island
++ do not need locations, since local time is not defined there.
++ There should typically be at least one name for each ISO 3166-1
++ officially assigned two-letter code for an inhabited country
++ or territory.
++ If all the clocks in a region have agreed since 1970,
++ don't bother to include more than one location
++ even if subregions' clocks disagreed before 1970.
++ Otherwise these tables would become annoyingly large.
++ If a name is ambiguous, use a less ambiguous alternative;
++ e.g. many cities are named San José and Georgetown, so
++ prefer 'Costa_Rica' to 'San_Jose' and 'Guyana' to 'Georgetown'.
++ Keep locations compact. Use cities or small islands, not countries
++ or regions, so that any future time zone changes do not split
++ locations into different time zones. E.g. prefer 'Paris'
++ to 'France', since France has had multiple time zones.
++ Use mainstream English spelling, e.g. prefer 'Rome' to 'Roma', and
++ prefer 'Athens' to the Greek 'Αθήνα' or the Romanized 'Athína'.
++ The POSIX file name restrictions encourage this rule.
++ Use the most populous among locations in a zone,
++ e.g. prefer 'Shanghai' to 'Beijing'. Among locations with
++ similar populations, pick the best-known location,
++ e.g. prefer 'Rome' to 'Milan'.
++ Use the singular form, e.g. prefer 'Canary' to 'Canaries'.
++ Omit common suffixes like '_Islands' and '_City', unless that
++ would lead to ambiguity. E.g. prefer 'Cayman' to
++ 'Cayman_Islands' and 'Guatemala' to 'Guatemala_City',
++ but prefer 'Mexico_City' to 'Mexico' because the country
++ of Mexico has several time zones.
++ Use '_' to represent a space.
++ Omit '.' from abbreviations in names, e.g. prefer 'St_Helena'
++ to 'St._Helena'.
++ Do not change established names if they only marginally
++ violate the above rules. For example, don't change
++ the existing name 'Rome' to 'Milan' merely because
++ Milan's population has grown to be somewhat greater
++ than Rome's.
++ If a name is changed, put its old spelling in the 'backward' file.
++ This means old spellings will continue to work.
++
++The file 'zone1970.tab' lists geographical locations used to name time
++zone rules. It is intended to be an exhaustive list of names for
++geographic regions as described above; this is a subset of the names
++in the data. Although a 'zone1970.tab' location's longitude
++corresponds to its LMT offset with one hour for every 15 degrees east
++longitude, this relationship is not exact.
++
++Older versions of this package used a different naming scheme,
++and these older names are still supported.
++See the file 'backward' for most of these older names
++(e.g., 'US/Eastern' instead of 'America/New_York').
++The other old-fashioned names still supported are
++'WET', 'CET', 'MET', and 'EET' (see the file 'europe').
++
++Older versions of this package defined legacy names that are
++incompatible with the first rule of location names, but which are
++still supported. These legacy names are mostly defined in the file
++'etcetera'. Also, the file 'backward' defines the legacy names
++'GMT0', 'GMT-0', 'GMT+0' and 'Canada/East-Saskatchewan', and the file
++'northamerica' defines the legacy names 'EST5EDT', 'CST6CDT',
++'MST7MDT', and 'PST8PDT'.
++
++Excluding 'backward' should not affect the other data. If
++'backward' is excluded, excluding 'etcetera' should not affect the
++remaining data.
++
++
++----- Time zone abbreviations -----
++
++When this package is installed, it generates time zone abbreviations
++like 'EST' to be compatible with human tradition and POSIX.
++Here are the general rules used for choosing time zone abbreviations,
++in decreasing order of importance:
++
++ Use three or more characters that are ASCII alphanumerics or '+' or '-'.
++ Previous editions of this database also used characters like
++ ' ' and '?', but these characters have a special meaning to
++ the shell and cause commands like
++ set `date`
++ to have unexpected effects.
++ Previous editions of this rule required upper-case letters,
++ but the Congressman who introduced Chamorro Standard Time
++ preferred "ChST", so lower-case letters are now allowed.
++ Also, POSIX from 2001 on relaxed the rule to allow '-', '+',
++ and alphanumeric characters from the portable character set
++ in the current locale. In practice ASCII alphanumerics and
++ '+' and '-' are safe in all locales.
++
++ In other words, in the C locale the POSIX extended regular
++ expression [-+[:alnum:]]{3,} should match the abbreviation.
++ This guarantees that all abbreviations could have been
++ specified by a POSIX TZ string.
++
++ Use abbreviations that are in common use among English-speakers,
++ e.g. 'EST' for Eastern Standard Time in North America.
++ We assume that applications translate them to other languages
++ as part of the normal localization process; for example,
++ a French application might translate 'EST' to 'HNE'.
++
++ For zones whose times are taken from a city's longitude, use the
++ traditional xMT notation, e.g. 'PMT' for Paris Mean Time.
++ The only name like this in current use is 'GMT'.
++
++ Use 'LMT' for local mean time of locations before the introduction
++ of standard time; see "Scope of the tz database".
++
++ If there is no common English abbreviation, use numeric offsets like
++ -05 and +0830 that are generated by zic's %z notation.
++
++ [The remaining guidelines predate the introduction of %z.
++ They are problematic as they mean tz data entries invent
++ notation rather than record it. These guidelines are now
++ deprecated and the plan is to gradually move to %z for
++ inhabited locations and to "-00" for uninhabited locations.]
++
++ If there is no common English abbreviation, abbreviate the English
++ translation of the usual phrase used by native speakers.
++ If this is not available or is a phrase mentioning the country
++ (e.g. "Cape Verde Time"), then:
++
++ When a country is identified with a single or principal zone,
++ append 'T' to the country's ISO code, e.g. 'CVT' for
++ Cape Verde Time. For summer time append 'ST';
++ for double summer time append 'DST'; etc.
++ Otherwise, take the first three letters of an English place
++ name identifying each zone and append 'T', 'ST', etc.
++ as before; e.g. 'VLAST' for VLAdivostok Summer Time.
++
++ Use UT (with time zone abbreviation '-00') for locations while
++ uninhabited. The leading '-' is a flag that the time
++ zone is in some sense undefined; this notation is
++ derived from Internet RFC 3339.
++
++Application writers should note that these abbreviations are ambiguous
++in practice: e.g. 'CST' has a different meaning in China than
++it does in the United States. In new applications, it's often better
++to use numeric UT offsets like '-0600' instead of time zone
++abbreviations like 'CST'; this avoids the ambiguity.
++
++
++----- Accuracy of the tz database -----
++
++The tz database is not authoritative, and it surely has errors.
++Corrections are welcome and encouraged; see the file CONTRIBUTING.
++Users requiring authoritative data should consult national standards
++bodies and the references cited in the database's comments.
++
++Errors in the tz database arise from many sources:
++
++ * The tz database predicts future time stamps, and current predictions
++ will be incorrect after future governments change the rules.
++ For example, if today someone schedules a meeting for 13:00 next
++ October 1, Casablanca time, and tomorrow Morocco changes its
++ daylight saving rules, software can mess up after the rule change
++ if it blithely relies on conversions made before the change.
++
++ * The pre-1970 entries in this database cover only a tiny sliver of how
++ clocks actually behaved; the vast majority of the necessary
++ information was lost or never recorded. Thousands more zones would
++ be needed if the tz database's scope were extended to cover even
++ just the known or guessed history of standard time; for example,
++ the current single entry for France would need to split into dozens
++ of entries, perhaps hundreds. And in most of the world even this
++ approach would be misleading due to widespread disagreement or
++ indifference about what times should be observed. In her 2015 book
++ "The Global Transformation of Time, 1870-1950", Vanessa Ogle writes
++ "Outside of Europe and North America there was no system of time
++ zones at all, often not even a stable landscape of mean times,
++ prior to the middle decades of the twentieth century". See:
++ Timothy Shenk, Booked: A Global History of Time. Dissent 2015-12-17
++ https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanessa-ogle
++
++ * Most of the pre-1970 data entries come from unreliable sources, often
++ astrology books that lack citations and whose compilers evidently
++ invented entries when the true facts were unknown, without
++ reporting which entries were known and which were invented.
++ These books often contradict each other or give implausible entries,
++ and on the rare occasions when they are checked they are
++ typically found to be incorrect.
++
++ * For the UK the tz database relies on years of first-class work done by
++ Joseph Myers and others; see <http://www.polyomino.org.uk/british-time/>.
++ Other countries are not done nearly as well.
++
++ * Sometimes, different people in the same city would maintain clocks
++ that differed significantly. Railway time was used by railroad
++ companies (which did not always agree with each other),
++ church-clock time was used for birth certificates, etc.
++ Often this was merely common practice, but sometimes it was set by law.
++ For example, from 1891 to 1911 the UT offset in France was legally
++ 0:09:21 outside train stations and 0:04:21 inside.
++
++ * Although a named location in the tz database stands for the
++ containing region, its pre-1970 data entries are often accurate for
++ only a small subset of that region. For example, Europe/London
++ stands for the United Kingdom, but its pre-1847 times are valid
++ only for locations that have London's exact meridian, and its 1847
++ transition to GMT is known to be valid only for the L&NW and the
++ Caledonian railways.
++
++ * The tz database does not record the earliest time for which a zone's
++ data entries are thereafter valid for every location in the region.
++ For example, Europe/London is valid for all locations in its
++ region after GMT was made the standard time, but the date of
++ standardization (1880-08-02) is not in the tz database, other than
++ in commentary. For many zones the earliest time of validity is
++ unknown.
++
++ * The tz database does not record a region's boundaries, and in many
++ cases the boundaries are not known. For example, the zone
++ America/Kentucky/Louisville represents a region around the city of
++ Louisville, the boundaries of which are unclear.
++
++ * Changes that are modeled as instantaneous transitions in the tz
++ database were often spread out over hours, days, or even decades.
++
++ * Even if the time is specified by law, locations sometimes
++ deliberately flout the law.
++
++ * Early timekeeping practices, even assuming perfect clocks, were
++ often not specified to the accuracy that the tz database requires.
++
++ * Sometimes historical timekeeping was specified more precisely
++ than what the tz database can handle. For example, from 1909 to
++ 1937 Netherlands clocks were legally UT +00:19:32.13, but the tz
++ database cannot represent the fractional second.
++
++ * Even when all the timestamp transitions recorded by the tz database
++ are correct, the tz rules that generate them may not faithfully
++ reflect the historical rules. For example, from 1922 until World
++ War II the UK moved clocks forward the day following the third
++ Saturday in April unless that was Easter, in which case it moved
++ clocks forward the previous Sunday. Because the tz database has no
++ way to specify Easter, these exceptional years are entered as
++ separate tz Rule lines, even though the legal rules did not change.
++
++ * The tz database models pre-standard time using the proleptic Gregorian
++ calendar and local mean time (LMT), but many people used other
++ calendars and other timescales. For example, the Roman Empire used
++ the Julian calendar, and had 12 varying-length daytime hours with a
++ non-hour-based system at night.
++
++ * Early clocks were less reliable, and data entries do not represent
++ this unreliability.
++
++ * As for leap seconds, civil time was not based on atomic time before
++ 1972, and we don't know the history of earth's rotation accurately
++ enough to map SI seconds to historical solar time to more than
++ about one-hour accuracy. See: Morrison LV, Stephenson FR.
++ Historical values of the Earth's clock error Delta T and the
++ calculation of eclipses. J Hist Astron. 2004;35:327-36
++ <http://adsabs.harvard.edu/full/2004JHA....35..327M>;
++ Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
++ <http://adsabs.harvard.edu/full/2005JHA....36..339M>.
++
++ * The relationship between POSIX time (that is, UTC but ignoring leap
++ seconds) and UTC is not agreed upon after 1972. Although the POSIX
++ clock officially stops during an inserted leap second, at least one
++ proposed standard has it jumping back a second instead; and in
++ practice POSIX clocks more typically either progress glacially during
++ a leap second, or are slightly slowed while near a leap second.
++
++ * The tz database does not represent how uncertain its information is.
++ Ideally it would contain information about when data entries are
++ incomplete or dicey. Partial temporal knowledge is a field of
++ active research, though, and it's not clear how to apply it here.
++
++In short, many, perhaps most, of the tz database's pre-1970 and future
++time stamps are either wrong or misleading. Any attempt to pass the
++tz database off as the definition of time should be unacceptable to
++anybody who cares about the facts. In particular, the tz database's
++LMT offsets should not be considered meaningful, and should not prompt
++creation of zones merely because two locations differ in LMT or
++transitioned to standard time at different dates.
++
++
++----- Time and date functions -----
++
++The tz code contains time and date functions that are upwards
++compatible with those of POSIX.
++
++POSIX has the following properties and limitations.
++
++* In POSIX, time display in a process is controlled by the
++ environment variable TZ. Unfortunately, the POSIX TZ string takes
++ a form that is hard to describe and is error-prone in practice.
++ Also, POSIX TZ strings can't deal with other (for example, Israeli)
++ daylight saving time rules, or situations where more than two
++ time zone abbreviations are used in an area.
++
++ The POSIX TZ string takes the following form:
++
++ stdoffset[dst[offset][,date[/time],date[/time]]]
++
++ where:
++
++ std and dst
++ are 3 or more characters specifying the standard
++ and daylight saving time (DST) zone names.
++ Starting with POSIX.1-2001, std and dst may also be
++ in a quoted form like "<UTC+10>"; this allows
++ "+" and "-" in the names.
++ offset
++ is of the form '[+-]hh:[mm[:ss]]' and specifies the
++ offset west of UT. 'hh' may be a single digit; 0<=hh<=24.
++ The default DST offset is one hour ahead of standard time.
++ date[/time],date[/time]
++ specifies the beginning and end of DST. If this is absent,
++ the system supplies its own rules for DST, and these can
++ differ from year to year; typically US DST rules are used.
++ time
++ takes the form 'hh:[mm[:ss]]' and defaults to 02:00.
++ This is the same format as the offset, except that a
++ leading '+' or '-' is not allowed.
++ date
++ takes one of the following forms:
++ Jn (1<=n<=365)
++ origin-1 day number not counting February 29
++ n (0<=n<=365)
++ origin-0 day number counting February 29 if present
++ Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)
++ for the dth day of week n of month m of the year,
++ where week 1 is the first week in which day d appears,
++ and '5' stands for the last week in which day d appears
++ (which may be either the 4th or 5th week).
++ Typically, this is the only useful form;
++ the n and Jn forms are rarely used.
++
++ Here is an example POSIX TZ string, for US Pacific time using rules
++ appropriate from 1987 through 2006:
++
++ TZ='PST8PDT,M4.1.0/02:00,M10.5.0/02:00'
++
++ This POSIX TZ string is hard to remember, and mishandles time stamps
++ before 1987 and after 2006. With this package you can use this
++ instead:
++
++ TZ='America/Los_Angeles'
++
++* POSIX does not define the exact meaning of TZ values like "EST5EDT".
++ Typically the current US DST rules are used to interpret such values,
++ but this means that the US DST rules are compiled into each program
++ that does time conversion. This means that when US time conversion
++ rules change (as in the United States in 1987), all programs that
++ do time conversion must be recompiled to ensure proper results.
++
++* The TZ environment variable is process-global, which makes it hard
++ to write efficient, thread-safe applications that need access
++ to multiple time zones.
++
++* In POSIX, there's no tamper-proof way for a process to learn the
++ system's best idea of local wall clock. (This is important for
++ applications that an administrator wants used only at certain times -
++ without regard to whether the user has fiddled the "TZ" environment
++ variable. While an administrator can "do everything in UTC" to get
++ around the problem, doing so is inconvenient and precludes handling
++ daylight saving time shifts - as might be required to limit phone
++ calls to off-peak hours.)
++
++* POSIX provides no convenient and efficient way to determine the UT
++ offset and time zone abbreviation of arbitrary time stamps,
++ particularly for time zone settings that do not fit into the
++ POSIX model.
++
++* POSIX requires that systems ignore leap seconds.
++
++* The tz code attempts to support all the time_t implementations
++ allowed by POSIX. The time_t type represents a nonnegative count of
++ seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds.
++ In practice, time_t is usually a signed 64- or 32-bit integer; 32-bit
++ signed time_t values stop working after 2038-01-19 03:14:07 UTC, so
++ new implementations these days typically use a signed 64-bit integer.
++ Unsigned 32-bit integers are used on one or two platforms,
++ and 36-bit and 40-bit integers are also used occasionally.
++ Although earlier POSIX versions allowed time_t to be a
++ floating-point type, this was not supported by any practical
++ systems, and POSIX.1-2013 and the tz code both require time_t
++ to be an integer type.
++
++These are the extensions that have been made to the POSIX functions:
++
++* The "TZ" environment variable is used in generating the name of a file
++ from which time zone information is read (or is interpreted a la
++ POSIX); "TZ" is no longer constrained to be a three-letter time zone
++ name followed by a number of hours and an optional three-letter
++ daylight time zone name. The daylight saving time rules to be used
++ for a particular time zone are encoded in the time zone file;
++ the format of the file allows U.S., Australian, and other rules to be
++ encoded, and allows for situations where more than two time zone
++ abbreviations are used.
++
++ It was recognized that allowing the "TZ" environment variable to
++ take on values such as "America/New_York" might cause "old" programs
++ (that expect "TZ" to have a certain form) to operate incorrectly;
++ consideration was given to using some other environment variable
++ (for example, "TIMEZONE") to hold the string used to generate the
++ time zone information file name. In the end, however, it was decided
++ to continue using "TZ": it is widely used for time zone purposes;
++ separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;
++ and systems where "new" forms of "TZ" might cause problems can simply
++ use TZ values such as "EST5EDT" which can be used both by
++ "new" programs (a la POSIX) and "old" programs (as zone names and
++ offsets).
++
++* The code supports platforms with a UT offset member in struct tm,
++ e.g., tm_gmtoff.
++
++* The code supports platforms with a time zone abbreviation member in
++ struct tm, e.g., tm_zone.
++
++* Since the "TZ" environment variable can now be used to control time
++ conversion, the "daylight" and "timezone" variables are no longer
++ needed. (These variables are defined and set by "tzset"; however, their
++ values will not be used by "localtime.")
++
++* Functions tzalloc, tzfree, localtime_rz, and mktime_z for
++ more-efficient thread-safe applications that need to use
++ multiple time zones. The tzalloc and tzfree functions
++ allocate and free objects of type timezone_t, and localtime_rz
++ and mktime_z are like localtime_r and mktime with an extra
++ timezone_t argument. The functions were inspired by NetBSD.
++
++* A function "tzsetwall" has been added to arrange for the system's
++ best approximation to local wall clock time to be delivered by
++ subsequent calls to "localtime." Source code for portable
++ applications that "must" run on local wall clock time should call
++ "tzsetwall();" if such code is moved to "old" systems that don't
++ provide tzsetwall, you won't be able to generate an executable program.
++ (These time zone functions also arrange for local wall clock time to be
++ used if tzset is called - directly or indirectly - and there's no "TZ"
++ environment variable; portable applications should not, however, rely
++ on this behavior since it's not the way SVR2 systems behave.)
++
++* Negative time_t values are supported, on systems where time_t is signed.
++
++* These functions can account for leap seconds, thanks to Bradley White.
++
++Points of interest to folks with other systems:
++
++* Code compatible with this package is already part of many platforms,
++ including GNU/Linux, Android, the BSDs, Chromium OS, Cygwin, AIX, iOS,
++ BlackBery 10, macOS, Microsoft Windows, OpenVMS, and Solaris.
++ On such hosts, the primary use of this package
++ is to update obsolete time zone rule tables.
++ To do this, you may need to compile the time zone compiler
++ 'zic' supplied with this package instead of using the system 'zic',
++ since the format of zic's input is occasionally extended,
++ and a platform may still be shipping an older zic.
++
++* The UNIX Version 7 "timezone" function is not present in this package;
++ it's impossible to reliably map timezone's arguments (a "minutes west
++ of GMT" value and a "daylight saving time in effect" flag) to a
++ time zone abbreviation, and we refuse to guess.
++ Programs that in the past used the timezone function may now examine
++ tzname[localtime(&clock)->tm_isdst] to learn the correct time
++ zone abbreviation to use. Alternatively, use
++ localtime(&clock)->tm_zone if this has been enabled.
++
++* The 4.2BSD gettimeofday function is not used in this package.
++ This formerly let users obtain the current UTC offset and DST flag,
++ but this functionality was removed in later versions of BSD.
++
++* In SVR2, time conversion fails for near-minimum or near-maximum
++ time_t values when doing conversions for places that don't use UT.
++ This package takes care to do these conversions correctly.
++ A comment in the source code tells how to get compatibly wrong
++ results.
++
++The functions that are conditionally compiled if STD_INSPIRED is defined
++should, at this point, be looked on primarily as food for thought. They are
++not in any sense "standard compatible" - some are not, in fact, specified in
++*any* standard. They do, however, represent responses of various authors to
++standardization proposals.
++
++Other time conversion proposals, in particular the one developed by folks at
++Hewlett Packard, offer a wider selection of functions that provide capabilities
++beyond those provided here. The absence of such functions from this package
++is not meant to discourage the development, standardization, or use of such
++functions. Rather, their absence reflects the decision to make this package
++contain valid extensions to POSIX, to ensure its broad acceptability. If
++more powerful time conversion functions can be standardized, so much the
++better.
++
++
++----- Interface stability -----
++
++The tz code and data supply the following interfaces:
++
++ * A set of zone names as per "Names of time zone rules" above.
++
++ * Library functions described in "Time and date functions" above.
++
++ * The programs tzselect, zdump, and zic, documented in their man pages.
++
++ * The format of zic input files, documented in the zic man page.
++
++ * The format of zic output files, documented in the tzfile man page.
++
++ * The format of zone table files, documented in zone1970.tab.
++
++ * The format of the country code file, documented in iso3166.tab.
++
++When these interfaces are changed, an effort is made to preserve
++backward compatibility. For example, tz data files typically do not
++rely on recently-added zic features, so that users can run older zic
++versions to process newer data files.
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for time
++stamps, as data entries are often based on guesswork and these guesses
++may be corrected or improved.
++
++
++----- Calendrical issues -----
++
++Calendrical issues are a bit out of scope for a time zone database,
++but they indicate the sort of problems that we would run into if we
++extended the time zone database further into the past. An excellent
++resource in this area is Nachum Dershowitz and Edward M. Reingold,
++Calendrical Calculations: Third Edition, Cambridge University Press (2008)
++<http://emr.cs.iit.edu/home/reingold/calendar-book/third-edition/>.
++Other information and sources are given below. They sometimes disagree.
++
++
++France
++
++Gregorian calendar adopted 1582-12-20.
++French Revolutionary calendar used 1793-11-24 through 1805-12-31,
++and (in Paris only) 1871-05-06 through 1871-05-23.
++
++
++Russia
++
++From Chris Carrier (1996-12-02):
++On 1929-10-01 the Soviet Union instituted an "Eternal Calendar"
++with 30-day months plus 5 holidays, with a 5-day week.
++On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the
++Gregorian calendar while retaining the 6-day week; on 1940-06-27 it
++reverted to the 7-day week. With the 6-day week the usual days
++off were the 6th, 12th, 18th, 24th and 30th of the month.
++(Source: Evitiar Zerubavel, _The Seven Day Circle_)
++
++
++Mark Brader reported a similar story in "The Book of Calendars", edited
++by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
++
++From: Petteri Sulonen (via Usenet)
++Date: 14 Jan 1999 00:00:00 GMT
++...
++
++If your source is correct, how come documents between 1929 and 1940 were
++still dated using the conventional, Gregorian calendar?
++
++I can post a scan of a document dated December 1, 1934, signed by
++Yenukidze, the secretary, on behalf of Kalinin, the President of the
++Executive Committee of the Supreme Soviet, if you like.
++
++
++
++Sweden (and Finland)
++
++From: Mark Brader
++Subject: Re: Gregorian reform - a part of locale?
++<news:1996Jul6.012937.29190@sq.com>
++Date: 1996-07-06
++
++In 1700, Denmark made the transition from Julian to Gregorian. Sweden
++decided to *start* a transition in 1700 as well, but rather than have one of
++those unsightly calendar gaps :-), they simply decreed that the next leap
++year after 1696 would be in 1744 - putting the whole country on a calendar
++different from both Julian and Gregorian for a period of 40 years.
++
++However, in 1704 something went wrong and the plan was not carried through;
++they did, after all, have a leap year that year. And one in 1708. In 1712
++they gave it up and went back to Julian, putting 30 days in February that
++year!...
++
++Then in 1753, Sweden made the transition to Gregorian in the usual manner,
++getting there only 13 years behind the original schedule.
++
++(A previous posting of this story was challenged, and Swedish readers
++produced the following references to support it: "Tideräkning och historia"
++by Natanael Beckman (1924) and "Tid, en bok om tideräkning och
++kalenderväsen" by Lars-Olof Lodén (1968).
++
++
++Grotefend's data
++
++From: "Michael Palmer" [with one obvious typo fixed]
++Subject: Re: Gregorian Calendar (was Re: Another FHC related question
++Newsgroups: soc.genealogy.german
++Date: Tue, 9 Feb 1999 02:32:48 -800
++...
++
++The following is a(n incomplete) listing, arranged chronologically, of
++European states, with the date they converted from the Julian to the
++Gregorian calendar:
++
++04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman
++ Catholics and Danzig only)
++09/20 Dec 1582 - France, Lorraine
++
++21 Dec 1582/
++ 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau
++10/21 Feb 1583 - bishopric of Liege (Lüttich)
++13/24 Feb 1583 - bishopric of Augsburg
++04/15 Oct 1583 - electorate of Trier
++05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,
++ Salzburg, Brixen
++13/24 Oct 1583 - Austrian Oberelsaß and Breisgau
++20/31 Oct 1583 - bishopric of Basel
++02/13 Nov 1583 - duchy of Jülich-Berg
++02/13 Nov 1583 - electorate and city of Köln
++04/15 Nov 1583 - bishopric of Würzburg
++11/22 Nov 1583 - electorate of Mainz
++16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden
++17/28 Nov 1583 - bishopric of Münster and duchy of Cleve
++14/25 Dec 1583 - Steiermark
++
++06/17 Jan 1584 - Austria and Bohemia
++11/22 Jan 1584 - Lucerne, Uri, Schwyz, Zug, Freiburg, Solothurn
++12/23 Jan 1584 - Silesia and the Lausitz
++22 Jan/
++ 02 Feb 1584 - Hungary (legally on 21 Oct 1587)
++ Jun 1584 - Unterwalden
++01/12 Jul 1584 - duchy of Westfalen
++
++16/27 Jun 1585 - bishopric of Paderborn
++
++14/25 Dec 1590 - Transylvania
++
++22 Aug/
++ 02 Sep 1612 - duchy of Prussia
++
++13/24 Dec 1614 - Pfalz-Neuburg
++
++ 1617 - duchy of Kurland (reverted to the Julian calendar in
++ 1796)
++
++ 1624 - bishopric of Osnabrück
++
++ 1630 - bishopric of Minden
++
++15/26 Mar 1631 - bishopric of Hildesheim
++
++ 1655 - Kanton Wallis
++
++05/16 Feb 1682 - city of Strassburg
++
++18 Feb/
++ 01 Mar 1700 - Protestant Germany (including Swedish possessions in
++ Germany), Denmark, Norway
++30 Jun/
++ 12 Jul 1700 - Gelderland, Zutphen
++10 Nov/
++ 12 Dec 1700 - Utrecht, Overijssel
++
++31 Dec 1700/
++ 12 Jan 1701 - Friesland, Groningen, Zürich, Bern, Basel, Geneva,
++ Turgau, and Schaffhausen
++
++ 1724 - Glarus, Appenzell, and the city of St. Gallen
++
++01 Jan 1750 - Pisa and Florence
++
++02/14 Sep 1752 - Great Britain
++
++17 Feb/
++ 01 Mar 1753 - Sweden
++
++1760-1812 - Graubünden
++
++The Russian empire (including Finland and the Baltic states) did not
++convert to the Gregorian calendar until the Soviet revolution of 1917.
++
++Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen
++Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend
++(Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.
++
++
++----- Time and time zones on Mars -----
++
++Some people's work schedules use Mars time. Jet Propulsion Laboratory
++(JPL) coordinators have kept Mars time on and off at least since 1997
++for the Mars Pathfinder mission. Some of their family members have
++also adapted to Mars time. Dozens of special Mars watches were built
++for JPL workers who kept Mars time during the Mars Exploration
++Rovers mission (2004). These timepieces look like normal Seikos and
++Citizens but use Mars seconds rather than terrestrial seconds.
++
++A Mars solar day is called a "sol" and has a mean period equal to
++about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is
++divided into a conventional 24-hour clock, so each Mars second equals
++about 1.02749125 terrestrial seconds.
++
++The prime meridian of Mars goes through the center of the crater
++Airy-0, named in honor of the British astronomer who built the
++Greenwich telescope that defines Earth's prime meridian. Mean solar
++time on the Mars prime meridian is called Mars Coordinated Time (MTC).
++
++Each landed mission on Mars has adopted a different reference for
++solar time keeping, so there is no real standard for Mars time zones.
++For example, the Mars Exploration Rover project (2004) defined two
++time zones "Local Solar Time A" and "Local Solar Time B" for its two
++missions, each zone designed so that its time equals local true solar
++time at approximately the middle of the nominal mission. Such a "time
++zone" is not particularly suited for any application other than the
++mission itself.
++
++Many calendars have been proposed for Mars, but none have achieved
++wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a
++sequential count of Mars solar days elapsed since about 1873-12-29
++12:00 GMT.
++
++The tz database does not currently support Mars time, but it is
++documented here in the hopes that support will be added eventually.
++
++Sources:
++
++Michael Allison and Robert Schmunk,
++"Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
++<http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2012-08-08).
++
++Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
++<http://articles.latimes.com/2004/jan/14/science/sci-marstime14>
++(2004-01-14), pp A1, A20-A21.
++
++Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
++<http://www.theatlantic.com/technology/archive/2015/02/jet-lag-is-worse-on-mars/386033/>
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson.
++
++-----
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/africa.orig
++++ contrib/tzdata/africa
+@@ -343,6 +343,12 @@
+ # decision to abandon DST permanently. See Ahram Online 2015-04-24.
+ # http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx
+
++# From Steffen Thorsen (2016-04-29):
++# Egypt will have DST from July 7 until the end of October....
++# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx
++# From Mina Samuel (2016-07-04):
++# Egyptian government took the decision to cancel the DST,
++
+ Rule Egypt 2008 only - Aug lastThu 24:00 0 -
+ Rule Egypt 2009 only - Aug 20 24:00 0 -
+ Rule Egypt 2010 only - Aug 10 24:00 0 -
+@@ -458,7 +464,7 @@
+ # http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
+ #
+ # From Paul Eggert (2013-10-25):
+-# For now, assume they're reverting to the pre-2012 rules of permanent UTC+2.
++# For now, assume they're reverting to the pre-2012 rules of permanent UT +02.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Libya 1951 only - Oct 14 2:00 1:00 S
+@@ -858,11 +864,11 @@
+ Rule Morocco 2010 only - May 2 0:00 1:00 S
+ Rule Morocco 2010 only - Aug 8 0:00 0 -
+ Rule Morocco 2011 only - Apr 3 0:00 1:00 S
+-Rule Morocco 2011 only - Jul 31 0 0 -
++Rule Morocco 2011 only - Jul 31 0:00 0 -
+ Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S
+-Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2012 only - Jul 20 3:00 0 -
+ Rule Morocco 2012 only - Aug 20 2:00 1:00 S
++Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2013 only - Jul 7 3:00 0 -
+ Rule Morocco 2013 only - Aug 10 2:00 1:00 S
+ Rule Morocco 2013 max - Oct lastSun 3:00 0 -
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -10,10 +10,8 @@
+ # http://www.spri.cam.ac.uk/bob/periant.htm
+ # for information.
+ # Unless otherwise specified, we have no time zone information.
+-#
+-# Except for the French entries,
+-# I made up all time zone abbreviations mentioned here; corrections welcome!
+-# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
++
++# FORMAT is '-00' and GMTOFF is 0 for locations while uninhabited.
+
+ # Argentina - year-round bases
+ # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+@@ -29,7 +27,7 @@
+ # previously sealers and scientific personnel wintered
+ # Margaret Turner reports
+ # http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html
+-# (1999-09-30) that they're UTC+5, with no DST;
++# (1999-09-30) that they're UT +05, with no DST;
+ # presumably this is when they have visitors.
+ #
+ # year-round bases
+@@ -66,25 +64,29 @@
+ # Background:
+ # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
+
++# From Steffen Thorsen (2016-10-28):
++# Australian Antarctica Division informed us that Casey changed time
++# zone to UTC+11 in "the morning of 22nd October 2016".
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Casey 0 - zzz 1969
+- 8:00 - AWST 2009 Oct 18 2:00
+- # Australian Western Std Time
+- 11:00 - CAST 2010 Mar 5 2:00 # Casey Time
+- 8:00 - AWST 2011 Oct 28 2:00
+- 11:00 - CAST 2012 Feb 21 17:00u
+- 8:00 - AWST
+-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+- 7:00 - DAVT 1964 Nov # Davis Time
+- 0 - zzz 1969 Feb
+- 7:00 - DAVT 2009 Oct 18 2:00
+- 5:00 - DAVT 2010 Mar 10 20:00u
+- 7:00 - DAVT 2011 Oct 28 2:00
+- 5:00 - DAVT 2012 Feb 21 20:00u
+- 7:00 - DAVT
+-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+- 6:00 - MAWT 2009 Oct 18 2:00 # Mawson Time
+- 5:00 - MAWT
++Zone Antarctica/Casey 0 - -00 1969
++ 8:00 - +08 2009 Oct 18 2:00
++ 11:00 - +11 2010 Mar 5 2:00
++ 8:00 - +08 2011 Oct 28 2:00
++ 11:00 - +11 2012 Feb 21 17:00u
++ 8:00 - +08 2016 Oct 22
++ 11:00 - +11
++Zone Antarctica/Davis 0 - -00 1957 Jan 13
++ 7:00 - +07 1964 Nov
++ 0 - -00 1969 Feb
++ 7:00 - +07 2009 Oct 18 2:00
++ 5:00 - +05 2010 Mar 10 20:00u
++ 7:00 - +07 2011 Oct 28 2:00
++ 5:00 - +05 2012 Feb 21 20:00u
++ 7:00 - +07
++Zone Antarctica/Mawson 0 - -00 1954 Feb 13
++ 6:00 - +06 2009 Oct 18 2:00
++ 5:00 - +05
+ # References:
+ # Casey Weather (1998-02-26)
+ # http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html
+@@ -137,8 +139,8 @@
+ # fishing stations operated variously 1819/1931
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
+- 5:00 - TFT # ISO code TF Time
++Zone Indian/Kerguelen 0 - -00 1950 # Port-aux-Français
++ 5:00 - +05
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+@@ -148,10 +150,10 @@
+ # It was destroyed by fire on 1952-01-14.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/DumontDUrville 0 - zzz 1947
+- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+- 0 - zzz 1956 Nov
+- 10:00 - DDUT # Dumont-d'Urville Time
++Zone Antarctica/DumontDUrville 0 - -00 1947
++ 10:00 - +10 1952 Jan 14
++ 0 - -00 1956 Nov
++ 10:00 - +10
+
+ # France & Italy - year-round base
+ # Concordia, -750600+1232000, since 2005
+@@ -176,8 +178,8 @@
+ # was established on 1957-01-29. Since Syowa station is still the main
+ # station of Japan, it's appropriate for the principal location.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+- 3:00 - SYOT # Syowa Time
++Zone Antarctica/Syowa 0 - -00 1957 Jan 29
++ 3:00 - +03
+ # See:
+ # NIPR Antarctic Research Activities (1999-08-17)
+ # http://www.nipr.ac.jp/english/ara01.html
+@@ -214,19 +216,19 @@
+ # correct, but they should be quite close to the actual dates.
+ #
+ # From Paul Eggert (2014-03-21):
+-# The CET-switching Troll rules require zic from tzcode 2014b or later, so as
++# The CET-switching Troll rules require zic from tz 2014b or later, so as
+ # suggested by Bengt-Inge Larsson comment them out for now, and approximate
+ # with only UTC and CEST. Uncomment them when 2014b is more prevalent.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET
+-Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST
+-#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET
+-#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC
++#Rule Troll 2005 max - Mar 1 1:00u 1:00 +01
++Rule Troll 2005 max - Mar lastSun 1:00u 2:00 +02
++#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 +01
++#Rule Troll 2004 max - Nov 7 1:00u 0:00 +00
+ # Remove the following line when uncommenting the above '#Rule' lines.
+-Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC
++Rule Troll 2004 max - Oct lastSun 1:00u 0:00 +00
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Troll 0 - zzz 2005 Feb 12
++Zone Antarctica/Troll 0 - -00 2005 Feb 12
+ 0:00 Troll %s
+
+ # Poland - year-round base
+@@ -265,10 +267,10 @@
+ # changes during the year and does not necessarily correspond to mean
+ # solar noon. So the Vostok time might have been whatever the clocks
+ # happened to be during their visit. So we still don't really know what time
+-# it is at Vostok. But we'll guess UTC+6.
++# it is at Vostok. But we'll guess +06.
+ #
+-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+- 6:00 - VOST # Vostok time
++Zone Antarctica/Vostok 0 - -00 1957 Dec 16
++ 6:00 - +06
+
+ # S Africa - year-round bases
+ # Marion Island, -4653+03752
+@@ -300,8 +302,8 @@
+ # <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+- -3:00 - ROTT # Rothera time
++Zone Antarctica/Rothera 0 - -00 1976 Dec 1
++ -3:00 - -03
+
+ # Uruguay - year round base
+ # Artigas, King George Island, -621104-0585107
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -79,13 +79,9 @@
+ Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
++Rule RussiaAsia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule RussiaAsia 1985 2011 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2011 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -120,31 +116,37 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+- 3:00 - YERT 1957 Mar # Yerevan Time
+- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+- 3:00 1:00 YERST 1991 Sep 23 # independence
+- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+- 4:00 - AMT 1997
+- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s
+- 4:00 - AMT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
++ 4:00 - +04 1997
++ 4:00 RussiaAsia +04/+05
+
+ # Azerbaijan
++
+ # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+ # According to the resolution of Cabinet of Ministers, 1997
+ # From Paul Eggert (2015-09-17): It was Resolution No. 21 (1997-03-17).
+ # http://code.az/files/daylight_res.pdf
++
++# From Steffen Thorsen (2016-03-17):
++# ... the Azerbaijani Cabinet of Ministers has cancelled switching to
++# daylight saving time....
++# http://www.azernews.az/azerbaijan/94137.html
++# http://vestnikkavkaza.net/news/Azerbaijani-Cabinet-of-Ministers-cancels-daylight-saving-time.html
++# http://en.apa.az/xeber_azerbaijan_abolishes_daylight_savings_ti_240862.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+-Rule Azer 1997 max - Oct lastSun 5:00 0 -
++Rule Azer 1997 2015 - Mar lastSun 4:00 1:00 S
++Rule Azer 1997 2015 - Oct lastSun 5:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+- 3:00 - BAKT 1957 Mar # Baku Time
+- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+- 3:00 1:00 BAKST 1991 Aug 30 # independence
+- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+- 4:00 - AZT 1996 # Azerbaijan Time
+- 4:00 EUAsia AZ%sT 1997
+- 4:00 Azer AZ%sT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
++ 4:00 - +04 1996
++ 4:00 EUAsia +04/+05 1997
++ 4:00 Azer +04/+05
+
+ # Bahrain
+ # See Asia/Qatar.
+@@ -263,7 +265,7 @@
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
++Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
+ 6:24:40 - RMT 1920 # Rangoon Mean Time?
+ 6:30 - BURT 1942 May # Burma Time
+ 9:00 - JST 1945 May 3
+@@ -378,7 +380,7 @@
+ # Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is
+ # different - the occupied districts going by Tokyo time, an hour
+ # ahead of that prevailing in the rest of Shanghai." Guess that the
+-# Xujiahui Observatory was under French control and stuck with UT+8.
++# Xujiahui Observatory was under French control and stuck with UT +08.
+ #
+ # In earlier versions of this file, China had many separate Zone entries, but
+ # this was based on what were apparently incorrect data in Shanks & Pottenger.
+@@ -387,26 +389,26 @@
+ # Proposed in 1918 and theoretically in effect until 1949 (although in practice
+ # mainly observed in coastal areas), the five zones were:
+ #
+-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+ # Asia/Harbin (currently a link to Asia/Shanghai)
+ # Heilongjiang (except Mohe county), Jilin
+ #
+-# Zhongyuan Time ("Central plain Time") UT+8
++# Zhongyuan Time ("Central plain Time") UT +08
+ # Asia/Shanghai
+ # most of China
+ # This currently represents most other zones as well,
+ # as apparently these regions have been the same since 1970.
+ # Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest.
+-# Guo says Shanghai switched to UT+8 "from the end of the 19th century".
++# Guo says Shanghai switched to UT +08 "from the end of the 19th century".
+ #
+-# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7
++# Long-shu Time (probably due to Long and Shu being two names of the area) UT +07
+ # Asia/Chongqing (currently a link to Asia/Shanghai)
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+ # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+-# Xin-zang Time ("Xinjiang-Tibet Time") UT+6
++# Xin-zang Time ("Xinjiang-Tibet Time") UT +06
+ # Asia/Urumqi
+ # This currently represents Kunlun Time as well,
+ # as apparently the two regions have been the same since 1970.
+@@ -419,7 +421,7 @@
+ # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+-# Kunlun Time UT+5.5
++# Kunlun Time UT +05:30
+ # Asia/Kashgar (currently a link to Asia/Urumqi)
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+@@ -435,7 +437,7 @@
+ #
+ # On the other hand, ethnic Uyghurs, who make up about half the
+ # population of Xinjiang, typically use "Xinjiang time" which is two
+-# hours behind Beijing time, or UTC +0600. The government of the Xinjiang
++# hours behind Beijing time, or UT +06. The government of the Xinjiang
+ # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as
+ # local governments such as the Ürümqi city government use both times in
+ # publications, referring to what is popularly called Xinjiang time as
+@@ -491,8 +493,8 @@
+ # having the same time as Beijing.
+
+ # From Paul Eggert (2014-06-30):
+-# In the early days of the PRC, Tibet was given its own time zone (UT+6) but
+-# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
++# In the early days of the PRC, Tibet was given its own time zone (UT +06)
++# but this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
+ # Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN
+ # 978-0231142861 (2008), translator's introduction by Matthew Akester, p x.
+ # As this is before our 1970 cutoff, Tibet doesn't need a separate zone.
+@@ -506,12 +508,12 @@
+ # Republics, the Soviet Union, the Kuomintang, and the People's Republic of
+ # China, and tracking down all these organizations' timekeeping rules would be
+ # quite a trick. Approximate this lost history by a transition from LMT to
+-# XJT at the start of 1928, the year of accession of the warlord Jin Shuren,
++# UT +06 at the start of 1928, the year of accession of the warlord Jin Shuren,
+ # which happens to be the date given by Shanks & Pottenger (no doubt as a
+-# guess) as the transition from LMT. Ignore the usage of UT+8 before
+-# 1986-02-01 under the theory that the transition date to UT+8 is unknown and
++# guess) as the transition from LMT. Ignore the usage of +08 before
++# 1986-02-01 under the theory that the transition date to +08 is unknown and
+ # that the sort of users who prefer Asia/Urumqi now typically ignored the
+-# UT+8 mandate back then.
++# +08 mandate back then.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Beijing time, used throughout China; represented by Shanghai.
+@@ -716,7 +718,7 @@
+ # be found from historical government announcement database.
+
+ # From Paul Eggert (2014-07-03):
+-# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01
++# As per Yu-Cheng Chuang, say that Taiwan was at UT +09 from 1937-10-01
+ # until 1945-09-21 at 01:00, overriding Shanks & Pottenger.
+ # Likewise, use Yu-Cheng Chuang's data for DST in Taiwan.
+
+@@ -769,9 +771,19 @@
+ ###############################################################################
+
+ # Cyprus
+-#
++
+ # Milne says the Eastern Telegraph Company used 2:14:00. Stick with LMT.
+-#
++# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++
++# From Paul Eggert (2016-09-09):
++# Yesterday's Cyprus Mail reports that Northern Cyprus followed Turkey's
++# lead and switched from +02/+03 to +03 year-round.
++# http://cyprus-mail.com/2016/09/08/two-time-zones-cyprus-turkey-will-not-turn-clocks-back-next-month/
++#
++# From Even Scharning (2016-10-31):
++# Looks like the time zone split in Cyprus went through last night.
++# http://cyprus-mail.com/2016/10/30/cyprus-new-division-two-time-zones-now-reality/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+ Rule Cyprus 1975 only - Oct 12 0:00 0 -
+@@ -786,7 +798,10 @@
+ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14
++ 2:00 Cyprus EE%sT 1998 Sep
++ 2:00 EUAsia EE%sT 2016 Sep 8
++ 3:00 - +03
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -830,16 +845,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tbilisi 2:59:11 - LMT 1880
+ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time
+- 3:00 - TBIT 1957 Mar # Tbilisi Time
+- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+- 3:00 1:00 TBIST 1991 Apr 9 # independence
+- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+- 4:00 1:00 GEST 1997 Mar lastSun
+- 4:00 E-EurAsia GE%sT 2004 Jun 27
+- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+- 4:00 - GET
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992
++ 3:00 E-EurAsia +03/+04 1994 Sep lastSun
++ 4:00 E-EurAsia +04/+05 1996 Oct lastSun
++ 4:00 1:00 +05 1997 Mar lastSun
++ 4:00 E-EurAsia +04/+05 2004 Jun 27
++ 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
++ 4:00 - +04
+
+ # East Timor
+
+@@ -874,6 +888,15 @@
+ 9:00 - TLT
+
+ # India
++
++# From Ian P. Beacock, in "A brief history of (modern) time", The Atlantic
++# http://www.theatlantic.com/technology/archive/2015/12/the-creation-of-modern-time/421419/
++# (2015-12-22):
++# In January 1906, several thousand cotton-mill workers rioted on the
++# outskirts of Bombay.... They were protesting the proposed abolition of
++# local time in favor of Indian Standard Time.... Journalists called this
++# dispute the "Battle of the Clocks." It lasted nearly half a century.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+@@ -907,7 +930,7 @@
+ # These would be the earliest possible times for a change.
+ # Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions
+ # Traditionnelles, 1987, Paris) says that Java and Madura switched
+-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
++# from UT +09 to +07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+ # (Hollandia). For now, assume all Indonesian locations other than Jayapura
+ # switched on 1945-09-23.
+ #
+@@ -918,11 +941,11 @@
+ # summary published by the Time and Frequency Laboratory of the
+ # Research Center for Calibration, Instrumentation and Metrology,
+ # Indonesia, <http://time.kim.lipi.go.id/time-eng.php> (2006-09-29).
+-# The abbreviations are:
++# The time zone abbreviations and UT offsets are:
+ #
+-# WIB - UTC+7 - Waktu Indonesia Barat (Indonesia western time)
+-# WITA - UTC+8 - Waktu Indonesia Tengah (Indonesia central time)
+-# WIT - UTC+9 - Waktu Indonesia Timur (Indonesia eastern time)
++# WIB - +07 - Waktu Indonesia Barat (Indonesia western time)
++# WITA - +08 - Waktu Indonesia Tengah (Indonesia central time)
++# WIT - +09 - Waktu Indonesia Timur (Indonesia eastern time)
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Java, Sumatra
+@@ -1084,8 +1107,15 @@
+ Rule Iran 2032 2033 - Sep 21 0:00 0 S
+ Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+ Rule Iran 2034 2035 - Sep 22 0:00 0 S
+-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+-Rule Iran 2036 2037 - Sep 21 0:00 0 S
++#
++# The following rules are approximations starting in the year 2038.
++# These are the best post-2037 approximations available, given the
++# restrictions of a single rule using a Gregorian-based data format.
++# At some point this table will need to be extended, though quite
++# possibly Iran will change the rules first.
++Rule Iran 2036 max - Mar 21 0:00 1:00 D
++Rule Iran 2036 max - Sep 21 0:00 0 S
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+@@ -1542,23 +1572,6 @@
+
+ # Kazakhstan
+
+-# From Paul Eggert (1996-11-22):
+-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+-# IATA SSIM mentions a third time zone in Kazakhstan.
+-
+-# From Paul Eggert (2006-03-22):
+-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+-# Also go with the following claims of Shanks & Pottenger:
+-#
+-# - Kazakhstan did not observe DST in 1991.
+-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+-# - Oral switched from +5:00 to +4:00 in spring 1989.
+-
+ # From Kazakhstan Embassy's News Bulletin No. 11
+ # <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21):
+ # The Government of Kazakhstan passed a resolution March 15 abolishing
+@@ -1575,61 +1588,232 @@
+ # everything else.... I guess that would make Kazakhstan time zones
+ # de jure UTC+5 and UTC+6 respectively.
+
++# From Stepan Golosunov (2016-03-27) ([*] means see later comments below):
++# Review of the linked documents from http://adilet.zan.kz/
++# produced the following data for post-1991 Kazakhstan:
++#
++# 0. Act of the Cabinet of Ministers of the USSR
++# from 1991-02-04 No. 20
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102010545
++# removed the extra hour ("decree time") on the territory of the USSR
++# starting with the last Sunday of March 1991.
++# It also allowed (but not mandated) Kazakh SSR, Kirghiz SSR, Tajik SSR,
++# Turkmen SSR and Uzbek SSR to not have "summer" time.
++#
++# The 1992-01-13 act also refers to the act of the Cabinet of Ministers
++# of the Kazakh SSR from 1991-03-20 No. 170 "About the act of the Cabinet
++# of Ministers of the USSR from 1991-02-04 No. 20" but I didn't found its
++# text.
++#
++# According to Izvestia newspaper No. 68 (23334) from 1991-03-20
++# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# transition to "summer" time:
++# Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
++# Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
++# were to move clocks 1 hour forward.
++# Kazakh SSR (excluding Uralsk oblast); Republic of Kyrgyzstan, Tajik
++# SSR; Andijan, Jizzakh, Namangan, Sirdarya, Tashkent, Fergana oblasts
++# of the Uzbek SSR were to move clocks 1 hour backwards.
++# Other territories were to not move clocks.
++# When the "summer" time would end on 1991-09-29, clocks were to be
++# moved 1 hour backwards on the territory of the USSR excluding
++# Kazakhstan, Kirghizia, Uzbekistan, Turkmenia, Tajikistan.
++#
++# Apparently there were last minute changes. Apparently Kazakh act No. 170
++# was one of such changes.
++#
++# https://ru.wikipedia.org/wiki/Декретное время
++# claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
++# Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
++# were to not move clocks and Uralsk oblast was to move clocks
++# forward; on 1991-09-29 Kazakhstan was to move clocks backwards.
++# (Probably there were changes even after that publication. There is an
++# article claiming that Kaliningrad oblast decided on 1991-03-29 to not
++# move clocks.)
++#
++# This implies that on 1991-03-31 Asia/Oral remained on +04/+05 while
++# the rest of Kazakhstan switched from +06/+07 to +05/06 or from +05/06
++# to +04/+05. It's unclear how Kzyl-Orda oblast moved into the fifth
++# time belt. (By switching from +04/+05 to +05/+06 on 1991-09-29?) ...
++#
++# 1. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-01-13 No. 28
++# http://adilet.zan.kz/rus/docs/P920000028_
++# (text includes modification from the 1996 act)
++# introduced new rules for calculation of time, mirroring Russian
++# 1992-01-08 act. It specified that time would be calculated
++# according to time belts plus extra hour ("decree time"), moved clocks
++# on the whole territory of Kazakhstan 1 hour forward on 1992-01-19 at
++# 2:00, specified DST rules. It acknowledged that Kazakhstan was
++# located in the fourth and the fifth time belts and specified the
++# border between them to be located east of Kustanay and Aktyubinsk
++# oblasts (notably including Turgai and Kzyl-Orda oblasts into the fifth
++# time belt).
++#
++# This means switch on 1992-01-19 at 2:00 from +04/+05 to +05/+06 for
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyrau and Kustanay oblasts; from
++# +05/+06 to +06/+07 for Asia/Almaty and Asia/Qyzylorda (and Arkalyk) [*]....
++#
++# 2. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-03-27 No. 284
++# http://adilet.zan.kz/rus/docs/P920000284_
++# cancels extra hour ("decree time") for Uralsk and Kzyl-Orda oblasts
++# since the last Sunday of March 1992, while keeping them in the fourth
++# and the fifth time belts respectively.
++#
++# 3. Order of the Prime Minister of the Republic of Kazakhstan
++# from 1994-09-23 No. 384
++# http://adilet.zan.kz/rus/docs/R940000384_
++# cancels the extra hour ("decree time") on the territory of Mangystau
++# oblast since the last Sunday of September 1994 (saying that time on
++# the territory would correspond to the third time belt as a
++# result)....
++#
++# 4. Act of the Government of the Republic of Kazakhstan
++# from 1996-05-08 No. 575
++# http://adilet.zan.kz/rus/docs/P960000575_
++# amends the 1992-01-13 act to end summer time in October instead
++# of September, mirroring identical Russian change from 1996-04-23 act.
++#
++# 5. Act of the Government of the Republic of Kazakhstan
++# from 1999-03-26 No. 305
++# http://adilet.zan.kz/rus/docs/P990000305_
++# cancels the extra hour ("decree time") for Atyrau oblast since the
++# last Sunday of March 1999 while retaining the oblast in the fourth
++# time belt.
++#
++# This means change from +05/+06 to +04/+05.
++#
++# There is no zone for Atyrau currently (listed under Asia/Aqtau in
++# zone1970.tab).[*]
++#
++# 6. Act of the Government of the Republic of Kazakhstan
++# from 2000-11-23 No. 1749
++# http://adilet.zan.kz/rus/archive/docs/P000001749_/23.11.2000
++# replaces the previous five documents.
++#
++# The only changes I noticed are in definition of the border between the
++# fourth and the fifth time belts. They account for changes in spelling
++# and administrative division (splitting of Turgai oblast in 1997
++# probably changed time in territories incorporated into Kostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Kyzylorda oblast
++# from being in the fifth time belt and not using decree time into the
++# fourth time belt (no change in practice).[*]
++#
++# 7. Act of the Government of the Republic of Kazakhstan
++# from 2003-12-29 No. 1342
++# http://adilet.zan.kz/rus/docs/P030001342_
++# modified the 2000-11-23 act. No relevant changes, apparently.
++#
++# 8. Act of the Government of the Republic of Kazakhstan
++# from 2004-07-20 No. 775
++# http://adilet.zan.kz/rus/archive/docs/P040000775_/20.07.2004
++# modified the 2000-11-23 act to move Kostanay and Kyzylorda oblasts into
++# the fifth time belt and add Aktobe oblast to the list of regions not
++# using extra hour ("decree time"), leaving Kazakhstan with only 2 time
++# zones (+04/+05 and +06/+07). The changes were to be implemented
++# during DST transitions in 2004 and 2005 but the acts got radically
++# amended before implementation happened.
++#
++# 9. Act of the Government of the Republic of Kazakhstan
++# from 2004-09-15 No. 1059
++# http://adilet.zan.kz/rus/docs/P040001059_
++# modified the 2000-11-23 act to remove exceptions from the "decree time"
++# (leaving Kazakhstan in +05/+06 and +06/+07 zones), amended the
++# 2004-07-20 act to implement changes for Atyrau, West Kazakhstan,
++# Kostanay, Kyzylorda and Mangystau oblasts by not moving clocks
++# during the 2014 transition to "winter" time.
++#
++# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# zone currently), Asia/Oral, Asia/Aqtau and transition from +05/+06 to
++# +06/+07 for Kostanay oblast (Kostanay and Arkalyk, no zones currently)
++# and Asia/Qyzylorda on 2004-10-31 at 3:00....[*]
++#
++# 10. Act of the Government of the Republic of Kazakhstan
++# from 2005-03-15 No. 231
++# http://adilet.zan.kz/rus/docs/P050000231_
++# removes DST provisions from the 2000-11-23 act, removes most of the
++# (already implemented) provisions from the 2004-07-20 and 2004-09-15
++# acts, comes into effect 10 days after official publication.
++# The only practical effect seems to be the abolition of the summer
++# time.
++#
++# Unamended version of the act of the Government of the Russian Federation
++# No. 23 from 1992-01-08 [See 'europe' file for details].
++# Kazakh 1992-01-13 act appears to provide the same rules and 1992-03-27
++# act was to be enacted on the last Sunday of March 1992.
++
++# From Paul Eggert (2016-04-15):
++# The tables below should reflect Stepan Golosunov's remarks above,
++# except for the items marked "[*]" which I haven't gotten to yet.
++# It looks like we will need new zones Asia/Atyrau and Asia/Qostanay
++# to handle changes from 1992 through 2004 that we did not previously
++# know about.
++
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
++# This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
++# KZ-KAR, KZ-SEV, KZ-PAV, and KZ-YUZ.
+ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+- 6:00 RussiaAsia ALM%sT 1991
+- 6:00 - ALMT 1992
+- 6:00 RussiaAsia ALM%sT 2005 Mar 15
+- 6:00 - ALMT
+-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
++ 6:00 - +06
++# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+- 5:00 - KIZT 1981 Apr 1
+- 5:00 1:00 KIZST 1981 Oct 1
+- 6:00 - KIZT 1982 Apr 1
+- 5:00 RussiaAsia KIZ%sT 1991
+- 5:00 - KIZT 1991 Dec 16 # independence
+- 5:00 - QYZT 1992 Jan 19 2:00
+- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+- 6:00 - QYZT
+-# Aqtobe (aka Aktobe, formerly Aktyubinsk)
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 6:00 - +06
++# Aqtobe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+- 5:00 - AKTT 1981 Apr 1
+- 5:00 1:00 AKTST 1981 Oct 1
+- 6:00 - AKTT 1982 Apr 1
+- 5:00 RussiaAsia AKT%sT 1991
+- 5:00 - AKTT 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+- 5:00 - AQTT
+-# Mangghystau
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 5:00 - +05
++# Qostanay (KZ-KUS)
++
++# Mangghystau (KZ-MAN)
+ # Aqtau was not founded until 1963, but it represents an inhabited region,
+ # so include time stamps before 1963.
+ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+- 5:00 - FORT 1963
+- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+- 6:00 - SHET 1982 Apr 1
+- 5:00 RussiaAsia SHE%sT 1991
+- 5:00 - SHET 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+- 4:00 RussiaAsia AQT%sT 2005 Mar 15
+- 5:00 - AQTT
+-# West Kazakhstan
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1963
++ 5:00 - +05 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
++
++# West Kazakhstan (KZ-ZAP)
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+- 4:00 - URAT 1930 Jun 21 # Ural'sk time
+- 5:00 - URAT 1981 Apr 1
+- 5:00 1:00 URAST 1981 Oct 1
+- 6:00 - URAT 1982 Apr 1
+- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+- 4:00 RussiaAsia URA%sT 1991
+- 4:00 - URAT 1991 Dec 16 # independence
+- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+- 5:00 - ORAT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
+
+ # Kyrgyzstan (Kirgizstan)
+ # Transitions through 1991 are from Shanks & Pottenger.
+@@ -1650,11 +1834,11 @@
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+- 5:00 - FRUT 1930 Jun 21 # Frunze Time
+- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+- 6:00 - KGT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
++ 5:00 Kyrgyz +05/+06 2005 Aug 12
++ 6:00 - +06
+
+ ###############################################################################
+
+@@ -1693,25 +1877,24 @@
+ Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D
+ Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
+
+-# From Paul Eggert (2014-10-30):
++# From Paul Eggert (2016-08-23):
+ # The Korean Wikipedia entry gives the following sources for UT offsets:
+ #
+-# 1908: Official Journal Article No. 3994 (Edict No. 5)
++# 1908: Official Journal Article No. 3994 (decree No. 5)
+ # 1912: Governor-General of Korea Official Gazette Issue No. 367
+ # (Announcement No. 338)
+ # 1954: Presidential Decree No. 876 (1954-03-17)
+ # 1961: Law No. 676 (1961-08-07)
+-# 1987: Law No. 3919 (1986-12-31)
+ #
+-# The Wikipedia entry also has confusing information about a change
+-# to UT+9 in April 1910, but then what would be the point of the later change
+-# to UT+9 on 1912-01-01? Omit the 1910 change for now.
++# (Another source "1987: Law No. 3919 (1986-12-31)" was in the 2014-10-30
++# edition of the Korean Wikipedia entry.)
+ #
+ # I guessed that time zone abbreviations through 1945 followed the same
+ # rules as discussed under Taiwan, with nominal switches from JST to KST
+ # when the respective cities were taken over by the Allies after WWII.
+ #
+-# For Pyongyang we have no information; guess no changes since World War II.
++# For Pyongyang, guess no changes from World War II until 2015, as we
++# have no information otherwise.
+
+ # From Steffen Thorsen (2015-08-07):
+ # According to many news sources, North Korea is going to change to
+@@ -1871,7 +2054,7 @@
+ # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+ # there is only one time zone and that DST is observed, citing Microsoft
+ # Windows XP as the source. Risto Nykänen (2005-05-16) reports that
+-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
++# travelmongolia.org says there are two time zones (UT +07, +08) with no DST.
+ # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+ # Washington, DC says there are two time zones, with DST observed.
+ # He also found
+@@ -2111,8 +2294,8 @@
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
++Rule Pakistan 2002 only - Apr Sun>=2 0:00 1:00 S
++Rule Pakistan 2002 only - Oct Sun>=2 0:00 0 -
+ Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+ Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+@@ -2374,9 +2557,28 @@
+ # From Paul Eggert (2015-03-03):
+ # http://www.timeanddate.com/time/change/west-bank/ramallah?year=2014
+ # says that the fall 2014 transition was Oct 23 at 24:00.
+-# For future dates, guess the last Friday in March at 24:00 through
+-# the first Friday on or after October 21 at 00:00. This is consistent with
+-# the predictions in today's editions of the following URLs:
++
++# From Hannah Kreitem (2016-03-09):
++# http://www.palestinecabinet.gov.ps/WebSite/ar/ViewDetails?ID=31728
++# [Google translation]: "The Council also decided to start daylight
++# saving in Palestine as of one o'clock on Saturday morning,
++# 2016-03-26, to provide the clock 60 minutes ahead."
++#
++# From Paul Eggert (2016-03-12):
++# Predict spring transitions on March's last Saturday at 01:00 from now on.
++
++# From Sharef Mustafa (2016-10-19):
++# [T]he Palestinian cabinet decision (Mar 8th 2016) published on
++# http://www.palestinecabinet.gov.ps/WebSite/Upload/Decree/GOV_17/16032016134830.pdf
++# states that summer time will end on Oct 29th at 01:00.
++#
++# From Tim Parenti (2016-10-19):
++# Predict fall transitions on October's last Saturday at 01:00 from now on.
++# This is consistent with the 2016 transition as well as our spring
++# predictions.
++#
++# From Paul Eggert (2016-10-19):
++# It's also consistent with predictions in the following URLs today:
+ # http://www.timeanddate.com/time/change/gaza-strip/gaza
+ # http://www.timeanddate.com/time/change/west-bank/hebron
+
+@@ -2407,8 +2609,10 @@
+ Rule Palestine 2012 2014 - Mar lastThu 24:00 1:00 S
+ Rule Palestine 2012 only - Sep 21 1:00 0 -
+ Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
+-Rule Palestine 2014 max - Oct Fri>=21 0:00 0 -
+-Rule Palestine 2015 max - Mar lastFri 24:00 1:00 S
++Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
++Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
++Rule Palestine 2016 max - Mar lastSat 1:00 1:00 S
++Rule Palestine 2016 max - Oct lastSat 1:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+@@ -2496,7 +2700,7 @@
+ # earlier date.
+ #
+ # Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two
+-# time zones; the other zone, at UTC+4, was in the far eastern part of
++# time zones; the other zone, at UT +04, was in the far eastern part of
+ # the country. Ignore this, as it's before our 1970 cutoff.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2558,45 +2762,31 @@
+ # People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+ # as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+-# From K Sethu (2006-04-25):
+-# I think the abbreviation LKT originated from the world of computers at
+-# the time of or subsequent to the time zone changes by SL Government
+-# twice in 1996 and probably SL Government or its standardization
+-# agencies never declared an abbreviation as a national standard.
+-#
+-# I recollect before the recent change the government announcements
+-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+-# Time and no mention was made about the abbreviation.
+-#
+-# If we look at Sri Lanka Department of Government's "Official News
+-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+-# use SLT as abbreviation in time stamp at the beginning of each news
+-# item....
+-#
+-# Within Sri Lanka I think LKT is well known among computer users and
+-# administrators. In my opinion SLT may not be a good choice because the
+-# nation's largest telcom / internet operator Sri Lanka Telcom is well
+-# known by that abbreviation - simply as SLT (there IP domains are
+-# slt.lk and sltnet.lk).
+-#
+-# But if indeed our government has adopted SLT as standard abbreviation
+-# (that we have not known so far) then it is better that it be used for
+-# all computers.
+-
+-# From Paul Eggert (2006-04-25):
+-# One possibility is that we wait for a bit for the dust to settle down
+-# and then see what people actually say in practice.
++# From Sadika Sumanapala (2016-10-19):
++# According to http://www.sltime.org (maintained by Measurement Units,
++# Standards & Services Department, Sri Lanka) abbreviation for Sri Lanka
++# standard time is SLST.
++#
++# From Paul Eggert (2016-10-18):
++# "SLST" seems to be reasonably recent and rarely-used outside time
++# zone nerd sources. I searched Google News and found three uses of
++# it in the International Business Times of India in February and
++# March of this year when discussing cricket match times, but nothing
++# since then (though there has been a lot of cricket) and nothing in
++# other English-language news sources. Our old abbreviation "LKT" is
++# even worse. For now, let's use a numeric abbreviation; we can
++# switch to "SLST" if it catches on.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 5:19:32 - MMT 1906 # Moratuwa Mean Time
+- 5:30 - IST 1942 Jan 5
+- 5:30 0:30 IHST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 16 2:00
+- 5:30 - IST 1996 May 25 0:00
+- 6:30 - LKT 1996 Oct 26 0:30
+- 6:00 - LKT 2006 Apr 15 0:30
+- 5:30 - IST
++ 5:30 - +0530 1942 Jan 5
++ 5:30 0:30 +0530/+06 1942 Sep
++ 5:30 1:00 +0530/+0630 1945 Oct 16 2:00
++ 5:30 - +0530 1996 May 25 0:00
++ 6:30 - +0630 1996 Oct 26 0:30
++ 6:00 - +06 2006 Apr 15 0:30
++ 5:30 - +0530
+
+ # Syria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -2765,10 +2955,10 @@
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+- 5:00 1:00 DUSST 1991 Sep 9 2:00s
+- 5:00 - TJT # Tajikistan Time
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 1:00 +05/+06 1991 Sep 9 2:00s
++ 5:00 - +05
+
+ # Thailand
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2782,11 +2972,10 @@
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+- 5:00 - TMT
++ 4:00 - +04 1930 Jun 21
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
++ 5:00 - +05
+
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -2798,20 +2987,18 @@
+ # Byalokoz 1919 says Uzbekistan was 4:27:53.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
+- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+- 5:00 - SAMT 1981 Apr 1
+- 5:00 1:00 SAMST 1981 Oct 1
+- 6:00 - TAST 1982 Apr 1 # Tashkent Time
+- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+ # Milne says Tashkent was 4:37:10.8; round to nearest.
+ Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2
+- 5:00 - TAST 1930 Jun 21 # Tashkent Time
+- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+
+ # Vietnam
+
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -60,6 +60,14 @@
+ # Hamilton is the largest, but there is also a Hamilton in Victoria,
+ # so use Lindeman.
+ #
++# From J William Piggott (2016-02-20):
++# There is no location named Holiday Islands in Queensland Australia; holiday
++# islands is a colloquial term used globally. Hayman and Lindeman are at the
++# north and south extremes of the Whitsunday Islands archipelago, and
++# Hamilton is in between; it is reasonable to believe that this time zone
++# applies to all of the Whitsundays.
++# http://www.australia.gov.au/about-australia/australian-story/austn-islands
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D
+ Rule AQ 1972 only - Feb lastSun 2:00s 0 S
+@@ -235,11 +243,11 @@
+ # will produce a binary file with an [A]EST-type as the first 32-bit type;
+ # this is required for correct handling of times before 1916 by
+ # pre-2013 versions of localtime.
+-Zone Antarctica/Macquarie 0 - zzz 1899 Nov
++Zone Antarctica/Macquarie 0 - -00 1899 Nov
+ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1919 Apr 1 0:00s
+- 0 - zzz 1948 Mar 25
++ 0 - -00 1948 Mar 25
+ 10:00 Aus AE%sT 1967
+ 10:00 AT AE%sT 2010 Apr 4 3:00
+ 11:00 - MIST # Macquarie I Standard Time
+@@ -342,7 +350,13 @@
+ # commencing at 2.00 am on Sunday 1st November, 2015 and ending at
+ # 3.00 am on Sunday 17th January, 2016.
+
+-# From Paul Eggert (2015-09-01):
++# From Raymond Kumar (2016-10-04):
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-6th-NOVEMBER,-2016.aspx
++# "Fiji's daylight savings will begin on Sunday, 6 November 2016, when
++# clocks go forward an hour at 2am to 3am.... Daylight Saving will
++# end at 3.00am on Sunday 15th January 2017."
++
++# From Paul Eggert (2016-10-03):
+ # For now, guess DST from 02:00 the first Sunday in November to
+ # 03:00 the third Sunday in January. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+@@ -537,7 +551,7 @@
+ # Base the Bougainville entry on the Arawa-Kieta region, which appears to have
+ # the most people even though it was devastated in the Bougainville Civil War.
+ #
+-# Although Shanks gives 1942-03-15 / 1943-11-01 for JST, these dates
++# Although Shanks gives 1942-03-15 / 1943-11-01 for UT +09, these dates
+ # are apparently rough guesswork from the starts of military campaigns.
+ # The World War II entries below are instead based on Arawa-Kieta.
+ # The Japanese occupied Kieta in July 1942,
+@@ -545,8 +559,8 @@
+ # http://pwencycl.kgbudge.com/B/o/Bougainville.htm
+ # and seem to have controlled it until their 1945-08-21 surrender.
+ #
+-# The Autonomous Region of Bougainville plans to switch from UTC+10 to UTC+11
+-# on 2014-12-28 at 02:00. They call UTC+11 "Bougainville Standard Time";
++# The Autonomous Region of Bougainville switched from UT +10 to +11
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
+ # abbreviate this as BST. See:
+ # http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
+ #
+@@ -612,7 +626,7 @@
+ # From Paul Eggert (2014-06-27):
+ # The International Date Line Act 2011
+ # http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf
+-# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on
++# changed Samoa from UT -11 to +13, effective "12 o'clock midnight, on
+ # Thursday 29th December 2011". The International Date Line was adjusted
+ # accordingly.
+
+@@ -688,11 +702,13 @@
+ Rule Tonga 2000 only - Mar 19 2:00s 0 -
+ Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
++Rule Tonga 2016 max - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+- 12:20 - TOT 1941 # Tonga Time
+- 13:00 - TOT 1999
+- 13:00 Tonga TO%sT
++ 12:20 - +1220 1941
++ 13:00 - +13 1999
++ 13:00 Tonga +13/+14
+
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -707,7 +723,7 @@
+ # 1886-1891; Baker was similar but exact dates are not known.
+ # Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+ # uninhabited thereafter.
+-# Howland observed Hawaii Standard Time (UT-10:30) in 1937;
++# Howland observed Hawaii Standard Time (UT -10:30) in 1937;
+ # see page 206 of Elgen M. Long and Marie K. Long,
+ # Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+ # So most likely Howland and Baker observed Hawaii Time from 1935
+@@ -1465,7 +1481,7 @@
+ # Zealand time. I understand that is the time they keep locally, anyhow."
+ # For now, assume this practice goes back to the introduction of standard time
+ # in New Zealand, as this would make Chatham Islands time almost exactly match
+-# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did
++# LMT back when New Zealand was at UT +11:30; also, assume Chatham Islands did
+ # not observe New Zealand's prewar DST.
+
+ ###############################################################################
+@@ -1521,7 +1537,7 @@
+ # For now, we assume the Ladrones switched at the same time as the Philippines;
+ # see Asia/Manila.
+
+-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
++# US Public Law 106-564 (2000-12-23) made UT +10 the official standard time,
+ # under the name "Chamorro Standard Time". There is no official abbreviation,
+ # but Congressman Robert A. Underwood, author of the bill that became law,
+ # wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+@@ -1533,15 +1549,15 @@
+ # "I am certain, having lived there for the past decade, that 'Truk'
+ # (now properly known as Chuuk) ... is in the time zone GMT+10."
+ #
+-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
++# Shanks & Pottenger write that Truk switched from UT +10 to +11
+ # on 1978-10-01; ignore this for now.
+
+ # From Paul Eggert (1999-10-29):
+ # The Federated States of Micronesia Visitors Board writes in
+ # The Federated States of Micronesia - Visitor Information (1999-01-26)
+ # http://www.fsmgov.org/info/clocks.html
+-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
++# that Truk and Yap are UT +10, and Ponape and Kosrae are +11.
++# We don't know when Kosrae switched from +12; assume January 1 for now.
+
+
+ # Midway
+@@ -1607,11 +1623,11 @@
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
+
+-# Although Shanks & Pottenger says they both switched to UTC-11:30
+-# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11
++# Although Shanks & Pottenger says they both switched to UT -11:30
++# in 1911, and to -11 in 1950. many earlier sources give -11
+ # for American Samoa, e.g., the US National Bureau of Standards
+ # circular "Standard Time Throughout the World", 1932.
+-# Assume American Samoa switched to UTC-11 in 1911, not 1950,
++# Assume American Samoa switched to -11 in 1911, not 1950,
+ # and that after 1950 they agreed until (western) Samoa skipped a
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+@@ -1698,9 +1714,17 @@
+ # of January the standard time in the Kingdom shall be moved backward by one
+ # hour to 1:00am.
+
+-# From Pulu 'Anau (2002-11-05):
++# From Pulu ʻAnau (2002-11-05):
+ # The law was for 3 years, supposedly to get renewed. It wasn't.
+
++# From Pulu ʻAnau (2016-10-27):
++# http://mic.gov.to/news-today/press-releases/6375-daylight-saving-set-to-run-from-6-november-2016-to-15-january-2017
++# Cannot find anyone who knows the rules, has seen the duration or has seen
++# the cabinet decision, but it appears we are following Fiji's rule set.
++#
++# From Tim Parenti (2016-10-26):
++# Assume Tonga will observe DST from the first Sunday in November at 02:00
++# through the third Sunday in January at 03:00, like Fiji, for now.
+
+ # Wake
+
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -23,6 +23,7 @@
+ Link America/Toronto America/Montreal
+ Link America/Rio_Branco America/Porto_Acre
+ Link America/Argentina/Cordoba America/Rosario
++Link America/Tijuana America/Santa_Isabel
+ Link America/Denver America/Shiprock
+ Link America/Port_of_Spain America/Virgin
+ Link Pacific/Auckland Antarctica/South_Pole
+@@ -35,6 +36,7 @@
+ Link Asia/Urumqi Asia/Kashgar
+ Link Asia/Kathmandu Asia/Katmandu
+ Link Asia/Macau Asia/Macao
++Link Asia/Yangon Asia/Rangoon
+ Link Asia/Ho_Chi_Minh Asia/Saigon
+ Link Asia/Jerusalem Asia/Tel_Aviv
+ Link Asia/Thimphu Asia/Thimbu
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -0,0 +1,677 @@
++# Zones that go back beyond the scope of the tz database
++
++# This file is in the public domain.
++
++# This file is by no means authoritative; if you think you know
++# better, go ahead and edit it (and please send any changes to
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
++
++
++# From Paul Eggert (2014-10-31):
++
++# This file contains data outside the normal scope of the tz database,
++# in that its zones do not differ from normal tz zones after 1970.
++# Links in this file point to zones in this file, superseding links in
++# the file 'backward'.
++
++# Although zones in this file may be of some use for analyzing
++# pre-1970 time stamps, they are less reliable, cover only a tiny
++# sliver of the pre-1970 era, and cannot feasibly be improved to cover
++# most of the era. Because the zones are out of normal scope for the
++# database, less effort is put into maintaining this file. Many of
++# the zones were formerly in other source files, but were removed or
++# replaced by links as their data entries were questionable and/or they
++# differed from other zones only in pre-1970 time stamps.
++
++# Unless otherwise specified, the source for data through 1990 is:
++# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
++# San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
++
++# This file is not intended to be compiled standalone, as it
++# assumes rules from other files. In the tz distribution, use
++# 'make PACKRATDATA=backzone zones' to compile and install this file.
++
++# Zones are sorted by zone name. Each zone is preceded by the
++# name of the country that the zone is in, along with any other
++# commentary and rules associated with the entry.
++#
++# As explained in the zic man page, the zone columns are:
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++
++# Ethiopia
++# From Paul Eggert (2014-07-31):
++# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
++# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
++# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
++#
++# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
++# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
++# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
++# was for Adis Dera. Quite likely the Shanks data entries are wrong
++# anyway.
++Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++
++# Eritrea
++Zone Africa/Asmara 2:35:32 - LMT 1870
++ 2:35:32 - AMT 1890 # Asmara Mean Time
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++Link Africa/Asmara Africa/Asmera
++
++# Mali (southern)
++Zone Africa/Bamako -0:32:00 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Jun 20
++ 0:00 - GMT
++
++# Central African Republic
++Zone Africa/Bangui 1:14:20 - LMT 1912
++ 1:00 - WAT
++
++# Gambia
++Zone Africa/Banjul -1:06:36 - LMT 1912
++ -1:06:36 - BMT 1935 # Banjul Mean Time
++ -1:00 - WAT 1964
++ 0:00 - GMT
++
++# Malawi
++Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Republic of the Congo
++Zone Africa/Brazzaville 1:01:08 - LMT 1912
++ 1:00 - WAT
++
++# Burundi
++Zone Africa/Bujumbura 1:57:28 - LMT 1890
++ 2:00 - CAT
++
++# Guinea
++Zone Africa/Conakry -0:54:52 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960
++ 0:00 - GMT
++
++# Senegal
++Zone Africa/Dakar -1:09:44 - LMT 1912
++ -1:00 - WAT 1941 Jun
++ 0:00 - GMT
++
++# Tanzania
++Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
++ 3:00 - EAT 1948
++ 2:45 - BEAUT 1961
++ 3:00 - EAT
++
++# Djibouti
++Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
++ 3:00 - EAT
++
++# Cameroon
++# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
++Zone Africa/Douala 0:38:48 - LMT 1912
++ 1:00 - WAT
++# Sierra Leone
++# From Paul Eggert (2014-08-12):
++# The following table is from Shanks & Pottenger, but it can't be right.
++# Whitman gives Mar 31 - Aug 31 for 1931 on.
++# The International Hydrographic Bulletin, 1932-33, p 63 says that
++# Sierra Leone would advance its clocks by 20 minutes on 1933-10-01.
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
++Rule SL 1935 1942 - Oct 1 0:00 0 WAT
++Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
++Rule SL 1957 1962 - Sep 1 0:00 0 GMT
++Zone Africa/Freetown -0:53:00 - LMT 1882
++ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
++ -1:00 SL %s 1957
++ 0:00 SL %s
++
++# Botswana
++# From Paul Eggert (2013-02-21):
++# Milne says they were regulated by the Cape Town Signal in 1899;
++# assume they switched to 2:00 when Cape Town did.
++Zone Africa/Gaborone 1:43:40 - LMT 1885
++ 1:30 - SAST 1903 Mar
++ 2:00 - CAT 1943 Sep 19 2:00
++ 2:00 1:00 CAST 1944 Mar 19 2:00
++ 2:00 - CAT
++
++# Zimbabwe
++Zone Africa/Harare 2:04:12 - LMT 1903 Mar
++ 2:00 - CAT
++
++# South Sudan
++Zone Africa/Juba 2:06:24 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
++
++# Uganda
++Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
++ 3:00 - EAT 1930
++ 2:30 - BEAT 1948
++ 2:45 - BEAUT 1957
++ 3:00 - EAT
++
++# Rwanda
++Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
++ 2:00 - CAT
++
++# Democratic Republic of the Congo (west)
++Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
++ 1:00 - WAT
++
++# Gabon
++Zone Africa/Libreville 0:37:48 - LMT 1912
++ 1:00 - WAT
++
++# Togo
++Zone Africa/Lome 0:04:52 - LMT 1893
++ 0:00 - GMT
++
++# Angola
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
++Zone Africa/Luanda 0:52:56 - LMT 1892
++ 0:52:04 - AOT 1912 Jan 1 # Angola Time
++ 1:00 - WAT
++
++# Democratic Republic of the Congo (east)
++Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
++ 2:00 - CAT
++
++# Zambia
++Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Equatorial Guinea
++#
++# Although Shanks says that Malabo switched from UT +00 to +01 on 1963-12-15,
++# a Google Books search says that London Calling, Issues 432-465 (1948), p 19,
++# says that Spanish Guinea was at +01 back then. The Shanks data entries
++# are most likely wrong, but we have nothing better; use them here for now.
++#
++Zone Africa/Malabo 0:35:08 - LMT 1912
++ 0:00 - GMT 1963 Dec 15
++ 1:00 - WAT
++
++# Lesotho
++Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
++ 2:00 - SAST 1943 Sep 19 2:00
++ 2:00 1:00 SAST 1944 Mar 19 2:00
++ 2:00 - SAST
++
++# Swaziland
++Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
++ 2:00 - SAST
++
++# Somalia
++Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
++ 3:00 - EAT 1931
++ 2:30 - BEAT 1957
++ 3:00 - EAT
++
++# Niger
++Zone Africa/Niamey 0:08:28 - LMT 1912
++ -1:00 - WAT 1934 Feb 26
++ 0:00 - GMT 1960
++ 1:00 - WAT
++
++# Mauritania
++Zone Africa/Nouakchott -1:03:48 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Nov 28
++ 0:00 - GMT
++
++# Burkina Faso
++Zone Africa/Ouagadougou -0:06:04 - LMT 1912
++ 0:00 - GMT
++
++# Benin
++# Whitman says they switched to 1:00 in 1946, not 1934;
++# go with Shanks & Pottenger.
++Zone Africa/Porto-Novo 0:10:28 - LMT 1912 Jan 1
++ 0:00 - GMT 1934 Feb 26
++ 1:00 - WAT
++
++# São Tomé and Príncipe
++Zone Africa/Sao_Tome 0:26:56 - LMT 1884
++ -0:36:32 - LMT 1912 # Lisbon Mean Time
++ 0:00 - GMT
++
++# Mali (northern)
++Zone Africa/Timbuktu -0:12:04 - LMT 1912
++ 0:00 - GMT
++
++# Anguilla
++Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
++ -4:00 - AST
++
++# Antigua and Barbuda
++Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
++ -5:00 - EST 1951
++ -4:00 - AST
++
++# Chubut, Argentina
++# The name "Comodoro Rivadavia" exceeds the 14-byte POSIX limit.
++Zone America/Argentina/ComodRivadavia -4:30:00 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Mar 3
++ -4:00 - WART 1991 Oct 20
++ -3:00 Arg AR%sT 1999 Oct 3
++ -4:00 Arg AR%sT 2000 Mar 3
++ -3:00 - ART 2004 Jun 1
++ -4:00 - WART 2004 Jun 20
++ -3:00 - ART
++
++# Aruba
++Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
++ -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:00 - AST
++
++# Cayman Is
++Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST
++
++# Canada
++Zone America/Coral_Harbour -5:32:40 - LMT 1884
++ -5:00 NT_YK E%sT 1946
++ -5:00 - EST
++
++# Dominica
++Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
++ -4:00 - AST
++
++# Baja California
++# See 'northamerica' for why this entry is here rather than there.
++Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32
++ -8:00 - PST 1927 Jun 10 23:00
++ -7:00 - MST 1930 Nov 16
++ -8:00 - PST 1942 Apr
++ -7:00 - MST 1949 Jan 14
++ -8:00 - PST 1996
++ -8:00 Mexico P%sT
++
++# Grenada
++Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
++ -4:00 - AST
++
++# Guadeloupe
++Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe-à-Pitre
++ -4:00 - AST
++
++# Canada
++#
++# From Paul Eggert (2015-03-24):
++# Since 1970 most of Quebec has been like Toronto; see
++# America/Toronto. However, earlier versions of the tz database
++# mistakenly relied on data from Shanks & Pottenger saying that Quebec
++# differed from Ontario after 1970, and the following rules and zone
++# were created for most of Quebec from the incorrect Shanks &
++# Pottenger data. The post-1970 entries have been corrected, but the
++# pre-1970 entries are unchecked and probably have errors.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Mont 1917 only - Mar 25 2:00 1:00 D
++Rule Mont 1917 only - Apr 24 0:00 0 S
++Rule Mont 1919 only - Mar 31 2:30 1:00 D
++Rule Mont 1919 only - Oct 25 2:30 0 S
++Rule Mont 1920 only - May 2 2:30 1:00 D
++Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
++Rule Mont 1921 only - May 1 2:00 1:00 D
++Rule Mont 1922 only - Apr 30 2:00 1:00 D
++Rule Mont 1924 only - May 17 2:00 1:00 D
++Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
++Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
++Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
++Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
++Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
++Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
++Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
++Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
++Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
++Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
++Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
++Zone America/Montreal -4:54:16 - LMT 1884
++ -5:00 Mont E%sT 1918
++ -5:00 Canada E%sT 1919
++ -5:00 Mont E%sT 1942 Feb 9 2:00s
++ -5:00 Canada E%sT 1946
++ -5:00 Mont E%sT 1974
++ -5:00 Canada E%sT
++
++# Montserrat
++# From Paul Eggert (2006-03-22):
++# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
++# world.gazetteer.com says Cork Hill is the most populous location now.
++Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
++ -4:00 - AST
++
++# Argentina
++# This entry was intended for the following areas, but has been superseded by
++# more detailed zones.
++# Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
++# Formosa (FM), La Pampa (LP), Chubut (CH)
++Zone America/Rosario -4:02:40 - LMT 1894 Nov
++ -4:16:44 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Jul
++ -3:00 - ART 1999 Oct 3 0:00
++ -4:00 Arg AR%sT 2000 Mar 3 0:00
++ -3:00 - ART
++
++# St Kitts-Nevis
++Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
++ -4:00 - AST
++
++# St Lucia
++Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
++ -4:04:00 - CMT 1912 # Castries Mean Time
++ -4:00 - AST
++
++# Virgin Is
++Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
++ -4:00 - AST
++
++# St Vincent and the Grenadines
++Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
++ -4:04:56 - KMT 1912 # Kingstown Mean Time
++ -4:00 - AST
++
++# British Virgin Is
++Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
++ -4:00 - AST
++
++# McMurdo, Ross Island, since 1955-12
++Zone Antarctica/McMurdo 0 - -00 1956
++ 12:00 NZ NZ%sT
++Link Antarctica/McMurdo Antarctica/South_Pole
++
++# Yemen
++# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
++# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
++Zone Asia/Aden 2:59:54 - LMT 1950
++ 3:00 - AST
++
++# Bahrain
++Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
++ 4:00 - GST 1972 Jun
++ 3:00 - AST
++
++# India
++#
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 305 says that Madras
++# civil time was 5:20:57.3.
++#
++# From Paul Eggert (2014-08-21):
++# In tomorrow's The Hindu, Nitya Menon reports that India had two civil time
++# zones starting in 1884, one in Bombay and one in Calcutta, and that railways
++# used a third time zone based on Madras time (80 deg. 18'30" E). Also,
++# in 1881 Bombay briefly switched to Madras time, but switched back. See:
++# http://www.thehindu.com/news/cities/chennai/madras-375-when-madras-clocked-the-time/article6339393.ece
++#Zone Asia/Chennai [not enough info to complete]
++
++# China
++# Long-shu Time (probably due to Long and Shu being two names of that area)
++# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
++# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
++# Yangchun, Yangjiang, Yu'nan, and Yunfu.
++Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
++ 7:00 - LONT 1980 May # Long-shu Time
++ 8:00 PRC C%sT
++Link Asia/Chongqing Asia/Chungking
++
++# Vietnam
++# From Paul Eggert (2014-10-13):
++# See Asia/Ho_Chi_Minh for the source for this data.
++# Trần's book says the 1954-55 transition to 07:00 in Hanoi was in
++# October 1954, with exact date and time unspecified.
++Zone Asia/Hanoi 7:03:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1954 Oct
++ 7:00 - ICT
++
++# China
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
++# Heilongjiang (except Mohe county), Jilin
++Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
++ 8:30 - CHAT 1932 Mar # Changbai Time
++ 8:00 - CST 1940
++ 9:00 - CHAT 1966 May
++ 8:30 - CHAT 1980 May
++ 8:00 PRC C%sT
++
++# far west China
++Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
++ 5:30 - KAST 1940 # Kashgar Time
++ 5:00 - KAST 1980 May
++ 8:00 PRC C%sT
++
++# Kuwait
++Zone Asia/Kuwait 3:11:56 - LMT 1950
++ 3:00 - AST
++
++
++# Oman
++# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
++Zone Asia/Muscat 3:54:24 - LMT 1920
++ 4:00 - GST
++
++# India
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Portuguese India switched to UT +05 on 1912-01-01.
++#Zone Asia/Panaji [not enough info to complete]
++
++# Cambodia
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data. Also, guess
++# (1) Cambodia reverted to UT +07 on 1945-09-02, when Vietnam did, and
++# (2) they also reverted to +07 on 1953-11-09, the date of independence.
++# These guesses are probably wrong but they're better than guessing no
++# transitions there.
++Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1953 Nov 9
++ 7:00 - ICT
++
++# Israel
++Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
++ 2:21 - JMT 1918
++ 2:00 Zion I%sT
++
++# Laos
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data.
++# Trần's book says that Laos reverted to UT +07 on 1955-04-15.
++# Also, guess that Laos reverted to +07 on 1945-09-02, when Vietnam did;
++# this is probably wrong but it's better than guessing no transition.
++Zone Asia/Vientiane 6:50:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Apr 15
++ 7:00 - ICT
++
++# Jan Mayen
++# From Whitman:
++Zone Atlantic/Jan_Mayen -1:00 - EGT
++
++# St Helena
++Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
++ -0:22:48 - JMT 1951 # Jamestown Mean Time
++ 0:00 - GMT
++
++# Northern Ireland
++Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
++ -0:25:21 - DMT 1916 May 21 2:00
++ # DMT = Dublin/Dunsink MT
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ # IST = Irish Summer Time
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Guernsey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.27N -2.33E - St.Peter Port
++Zone Europe/Guernsey -0:09:19 - LMT 1913 Jun 18
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Isle of Man
++#
++# From Lester Caine (2013-09-04):
++# The Isle of Man legislation is now on-line at
++# <http://www.legislation.gov.im>, starting with the original Statutory
++# Time Act in 1883 and including additional confirmation of some of
++# the dates of the 'Summer Time' orders originating at
++# Westminster. There is a little uncertainty as to the starting date
++# of the first summer time in 1916 which may have be announced a
++# couple of days late. There is still a substantial number of
++# documents to work through, but it is thought that every GB change
++# was also implemented on the island.
++#
++# AT4 of 1883 - The Statutory Time et cetera Act 1883 -
++# LMT Location - 54.1508N -4.4814E - Tynwald Hill ( Manx parliament )
++Zone Europe/Isle_of_Man -0:17:55 - LMT 1883 Mar 30 0:00s
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Jersey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.187N -2.107E - St. Helier
++Zone Europe/Jersey -0:08:25 - LMT 1898 Jun 11 16:00u
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Slovenia
++Zone Europe/Ljubljana 0:58:04 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Bosnia and Herzegovina
++Zone Europe/Sarajevo 1:13:40 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Macedonia
++Zone Europe/Skopje 1:25:44 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Moldova / Transnistria
++Zone Europe/Tiraspol 1:58:32 - LMT 1880
++ 1:55 - CMT 1918 Feb 15 # Chisinau MT
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1940 Aug 15
++ 2:00 1:00 EEST 1941 Jul 17
++ 1:00 C-Eur CE%sT 1944 Aug 24
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 2:00 Russia EE%sT 1992 Jan 19 2:00
++ 3:00 Russia MSK/MSD
++
++# Liechtenstein
++Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
++ 1:00 - CET 1981
++ 1:00 EU CE%sT
++
++# Croatia
++Zone Europe/Zagreb 1:03:52 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Madagascar
++Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
++ 3:00 - EAT 1954 Feb 27 23:00s
++ 3:00 1:00 EAST 1954 May 29 23:00s
++ 3:00 - EAT
++
++# Comoros
++Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
++ 3:00 - EAT
++
++# Mayotte
++Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
++ 3:00 - EAT
++
++# US minor outlying islands
++Zone Pacific/Johnston -10:00 - HST
++
++# US minor outlying islands
++#
++# From Mark Brader (2005-01-23):
++# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
++# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
++# reproduced a Pan American Airways timetable from 1936, for their weekly
++# "Orient Express" flights between San Francisco and Manila, and connecting
++# flights to Chicago and the US East Coast. As it uses some time zone
++# designations that I've never seen before:....
++# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
++# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
++#
++Zone Pacific/Midway -11:49:28 - LMT 1901
++ -11:00 - NST 1956 Jun 3
++ -11:00 1:00 NDT 1956 Sep 2
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++
++# N Mariana Is
++Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
++ 9:43:00 - LMT 1901
++ 9:00 - MPT 1969 Oct # N Mariana Is Time
++ 10:00 - MPT 2000 Dec 23
++ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -0,0 +1,48 @@
++# Check links in tz tables.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ # Special marker indicating that the name is defined as a Zone.
++ # It is a newline so that it cannot match a valid name.
++ # It is not null so that its slot does not appear unset.
++ Zone = "\n"
++}
++
++/^Zone/ {
++ if (defined[$2]) {
++ if (defined[$2] == Zone) {
++ printf "%s: Zone has duplicate definition\n", $2
++ } else {
++ printf "%s: Link with same name as Zone\n", $2
++ }
++ status = 1
++ }
++ defined[$2] = Zone
++}
++
++/^Link/ {
++ if (defined[$3]) {
++ if (defined[$3] == Zone) {
++ printf "%s: Link with same name as Zone\n", $3
++ } else if (defined[$3] == $2) {
++ printf "%s: Link has duplicate definition\n", $3
++ } else {
++ printf "%s: Link to both %s and %s\n", $3, defined[$3], $2
++ }
++ status = 1
++ }
++ used[$2] = 1
++ defined[$3] = $2
++}
++
++END {
++ for (tz in used) {
++ if (defined[tz] != Zone) {
++ printf "%s: Link to non-zone\n", tz
++ status = 1
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/checktab.awk.orig
++++ contrib/tzdata/checktab.awk
+@@ -0,0 +1,177 @@
++# Check tz tables for consistency.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ FS = "\t"
++
++ if (!iso_table) iso_table = "iso3166.tab"
++ if (!zone_table) zone_table = "zone1970.tab"
++ if (!want_warnings) want_warnings = -1
++
++ while (getline <iso_table) {
++ iso_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 2) {
++ printf "%s:%d: wrong number of columns\n", \
++ iso_table, iso_NR >>"/dev/stderr"
++ status = 1
++ }
++ cc = $1
++ name = $2
++ if (cc !~ /^[A-Z][A-Z]$/) {
++ printf "%s:%d: invalid country code '%s'\n", \
++ iso_table, iso_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ if (cc <= cc0) {
++ if (cc == cc0) {
++ s = "duplicate";
++ } else {
++ s = "out of order";
++ }
++
++ printf "%s:%d: country code '%s' is %s\n", \
++ iso_table, iso_NR, cc, s \
++ >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ if (name2cc[name]) {
++ printf "%s:%d: '%s' and '%s' have the same name\n", \
++ iso_table, iso_NR, name2cc[name], cc \
++ >>"/dev/stderr"
++ status = 1
++ }
++ name2cc[name] = cc
++ cc2name[cc] = name
++ cc2NR[cc] = iso_NR
++ }
++
++ cc0 = ""
++
++ while (getline <zone_table) {
++ zone_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 3 && NF != 4) {
++ printf "%s:%d: wrong number of columns\n", \
++ zone_table, zone_NR >>"/dev/stderr"
++ status = 1
++ }
++ split($1, cca, /,/)
++ cc = cca[1]
++ coordinates = $2
++ tz = $3
++ comments = $4
++ if (cc < cc0) {
++ printf "%s:%d: country code '%s' is out of order\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ tztab[tz] = 1
++ tz2comments[tz] = comments
++ tz2NR[tz] = zone_NR
++ for (i in cca) {
++ cc = cca[i]
++ cctz = cc tz
++ cctztab[cctz] = 1
++ if (cc2name[cc]) {
++ cc_used[cc]++
++ } else {
++ printf "%s:%d: %s: unknown country code\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (coordinates !~ /^[-+][0-9][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9]$/ \
++ && coordinates !~ /^[-+][0-9][0-9][0-5][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9][0-5][0-9]$/) {
++ printf "%s:%d: %s: invalid coordinates\n", \
++ zone_table, zone_NR, coordinates >>"/dev/stderr"
++ status = 1
++ }
++ }
++
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (1 < cc_used[cc]) {
++ comments_needed[tz] = cc
++ }
++ }
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (!comments_needed[tz] && tz2comments[tz]) {
++ printf "%s:%d: unnecessary comment '%s'\n", \
++ zone_table, tz2NR[tz], tz2comments[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 0
++ status = 1
++ } else if (comments_needed[tz] && !tz2comments[tz]) {
++ printf "%s:%d: missing comment for %s\n", \
++ zone_table, tz2NR[tz], comments_needed[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 1
++ status = 1
++ }
++ }
++ FS = " "
++}
++
++$1 ~ /^#/ { next }
++
++{
++ tz = rules = ""
++ if ($1 == "Zone") {
++ tz = $2
++ ruleUsed[$4] = 1
++ } else if ($1 == "Link" && zone_table == "zone.tab") {
++ # Ignore Link commands if source and destination basenames
++ # are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
++ src = $2
++ dst = $3
++ while ((i = index(src, "/"))) src = substr(src, i+1)
++ while ((i = index(dst, "/"))) dst = substr(dst, i+1)
++ if (src != dst) tz = $3
++ } else if ($1 == "Rule") {
++ ruleDefined[$2] = 1
++ } else {
++ ruleUsed[$2] = 1
++ }
++ if (tz && tz ~ /\//) {
++ if (!tztab[tz]) {
++ printf "%s: no data for '%s'\n", zone_table, tz \
++ >>"/dev/stderr"
++ status = 1
++ }
++ zoneSeen[tz] = 1
++ }
++}
++
++END {
++ for (tz in ruleDefined) {
++ if (!ruleUsed[tz]) {
++ printf "%s: Rule never used\n", tz
++ status = 1
++ }
++ }
++ for (tz in tztab) {
++ if (!zoneSeen[tz]) {
++ printf "%s:%d: no Zone table for '%s'\n", \
++ zone_table, tz2NR[tz], tz >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (0 < want_warnings) {
++ for (cc in cc2name) {
++ if (!cc_used[cc]) {
++ printf "%s:%d: warning: " \
++ "no Zone entries for %s (%s)\n", \
++ iso_table, cc2NR[cc], cc, cc2name[cc]
++ }
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/etcetera.orig
++++ contrib/tzdata/etcetera
+@@ -8,6 +8,13 @@
+ # need now for the entries that are not on UTC are for ships at sea
+ # that cannot use POSIX TZ settings.
+
++# Starting with POSIX 1003.1-2001, the entries below are all
++# unnecessary as settings for the TZ environment variable. E.g.,
++# instead of TZ='Etc/GMT+4' one can use the POSIX setting TZ='<-04>+4'.
++#
++# Do not use a POSIX TZ setting like TZ='GMT+4', which is four hours
++# behind GMT but uses the completely misleading abbreviation "GMT".
++
+ Zone Etc/GMT 0 - GMT
+ Zone Etc/UTC 0 - UTC
+ Zone Etc/UCT 0 - UCT
+@@ -26,23 +33,13 @@
+ Link Etc/GMT Etc/GMT+0
+ Link Etc/GMT Etc/GMT0
+
+-# We use POSIX-style signs in the Zone names and the output abbreviations,
++# Be consistent with POSIX TZ settings in the Zone names,
+ # even though this is the opposite of what many people expect.
+ # POSIX has positive signs west of Greenwich, but many people expect
+ # positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+-# the abbreviation "GMT+4" and corresponds to 4 hours behind UT
++# the abbreviation "-04" and corresponds to 4 hours behind UT
+ # (i.e. west of Greenwich) even though many people would expect it to
+ # mean 4 hours ahead of UT (i.e. east of Greenwich).
+-#
+-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
+-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+-# offset is kept within the angle bracket (and is used for display)
+-# while the POSIX sign is kept outside the angle bracket (and is used
+-# for calculation).
+-#
+-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+-# GMT but uses the completely misleading abbreviation "GMT".
+
+ # Earlier incarnations of this package were not POSIX-compliant,
+ # and had lines such as
+@@ -51,30 +48,31 @@
+ # way does a
+ # zic -l GMT-12
+ # so we moved the names into the Etc subdirectory.
++# Also, the time zone abbreviations are now compatible with %z.
+
+-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+-Zone Etc/GMT-13 13 - GMT-13
+-Zone Etc/GMT-12 12 - GMT-12
+-Zone Etc/GMT-11 11 - GMT-11
+-Zone Etc/GMT-10 10 - GMT-10
+-Zone Etc/GMT-9 9 - GMT-9
+-Zone Etc/GMT-8 8 - GMT-8
+-Zone Etc/GMT-7 7 - GMT-7
+-Zone Etc/GMT-6 6 - GMT-6
+-Zone Etc/GMT-5 5 - GMT-5
+-Zone Etc/GMT-4 4 - GMT-4
+-Zone Etc/GMT-3 3 - GMT-3
+-Zone Etc/GMT-2 2 - GMT-2
+-Zone Etc/GMT-1 1 - GMT-1
+-Zone Etc/GMT+1 -1 - GMT+1
+-Zone Etc/GMT+2 -2 - GMT+2
+-Zone Etc/GMT+3 -3 - GMT+3
+-Zone Etc/GMT+4 -4 - GMT+4
+-Zone Etc/GMT+5 -5 - GMT+5
+-Zone Etc/GMT+6 -6 - GMT+6
+-Zone Etc/GMT+7 -7 - GMT+7
+-Zone Etc/GMT+8 -8 - GMT+8
+-Zone Etc/GMT+9 -9 - GMT+9
+-Zone Etc/GMT+10 -10 - GMT+10
+-Zone Etc/GMT+11 -11 - GMT+11
+-Zone Etc/GMT+12 -12 - GMT+12
++Zone Etc/GMT-14 14 - +14
++Zone Etc/GMT-13 13 - +13
++Zone Etc/GMT-12 12 - +12
++Zone Etc/GMT-11 11 - +11
++Zone Etc/GMT-10 10 - +10
++Zone Etc/GMT-9 9 - +09
++Zone Etc/GMT-8 8 - +08
++Zone Etc/GMT-7 7 - +07
++Zone Etc/GMT-6 6 - +06
++Zone Etc/GMT-5 5 - +05
++Zone Etc/GMT-4 4 - +04
++Zone Etc/GMT-3 3 - +03
++Zone Etc/GMT-2 2 - +02
++Zone Etc/GMT-1 1 - +01
++Zone Etc/GMT+1 -1 - -01
++Zone Etc/GMT+2 -2 - -02
++Zone Etc/GMT+3 -3 - -03
++Zone Etc/GMT+4 -4 - -04
++Zone Etc/GMT+5 -5 - -05
++Zone Etc/GMT+6 -6 - -06
++Zone Etc/GMT+7 -7 - -07
++Zone Etc/GMT+8 -8 - -08
++Zone Etc/GMT+9 -9 - -09
++Zone Etc/GMT+10 -10 - -10
++Zone Etc/GMT+11 -11 - -11
++Zone Etc/GMT+12 -12 - -12
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -75,8 +75,7 @@
+ # 1:00 CET CEST CEMT Central Europe
+ # 1:00:14 SET Swedish (1879-1899)*
+ # 2:00 EET EEST Eastern Europe
+-# 3:00 FET Further-eastern Europe (2011-2014)*
+-# 3:00 MSK MSD MSM* Minsk, Moscow
++# 3:00 MSK MSD Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -583,16 +582,33 @@
+ Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+ Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
++
++# Daylight saving time for Russia and the Soviet Union
++#
++# The 1917-1921 decree URLs are from Alexander Belopolsky (2016-08-23).
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
++#
++# Decree No. 142 (1917-12-22) http://istmat.info/node/28137
+ Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
++#
++# Decree No. 497 (1918-05-30) http://istmat.info/node/30001
+ Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+ Rule Russia 1918 only - Sep 16 1:00 1:00 MST
++#
++# Decree No. 258 (1919-05-29) http://istmat.info/node/37949
+ Rule Russia 1919 only - May 31 23:00 2:00 MDST
+-Rule Russia 1919 only - Jul 1 2:00 1:00 MSD
++#
++Rule Russia 1919 only - Jul 1 0:00u 1:00 MSD
+ Rule Russia 1919 only - Aug 16 0:00 0 MSK
++#
++# Decree No. 63 (1921-02-03) http://istmat.info/node/45840
+ Rule Russia 1921 only - Feb 14 23:00 1:00 MSD
+-Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer
++#
++# Decree No. 121 (1921-03-07) http://istmat.info/node/45949
++Rule Russia 1921 only - Mar 20 23:00 2:00 +05
++#
+ Rule Russia 1921 only - Sep 1 0:00 1:00 MSD
+ Rule Russia 1921 only - Oct 1 0:00 0 -
+ # Act No. 925 of the Council of Ministers of the USSR (1980-10-24):
+@@ -600,16 +616,40 @@
+ Rule Russia 1981 1983 - Oct 1 0:00 0 -
+ # Act No. 967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+ # Act No. 227 of the Council of Ministers of the USSR (1989-03-14):
+-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
++Rule Russia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule Russia 1985 2010 - Mar lastSun 2:00s 1:00 S
+ #
+-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule Russia 1992 only - Sep lastSat 23:00 0 -
+-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
+-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
+ Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
+ # As described below, Russia's 2014 change affects Zone data, not Rule data.
+
++# From Stepan Golosunov (2016-03-07):
++# Wikipedia and other sources refer to the Act of the Council of
++# Ministers of the USSR from 1988-01-04 No. 5 and the Act of the
++# Council of Ministers of the USSR from 1989-03-14 No. 227.
++#
++# I did not find full texts of these acts. For the 1989 one we have
++# title at http://base.garant.ru/70754136/ :
++# "About change in calculation of time on the territories of
++# Lithuanian SSR, Latvian SSR and Estonian SSR, Astrakhan,
++# Kaliningrad, Kirov, Kuybyshev, Ulyanovsk and Uralsk oblasts".
++# And http://astrozet.net/files/Zones/DOC/RU/1980-925.txt appears to
++# contain quotes from both acts: Since last Sunday of March 1988 rules
++# of the second time belt are installed in Volgograd and Saratov
++# oblasts. Since last Sunday of March 1989:
++# a) Lithuanian SSR, Latvian SSR, Estonian SSR, Kaliningrad oblast:
++# second time belt rules without extra hour (Moscow-1);
++# b) Astrakhan, Kirov, Kuybyshev, Ulyanovsk oblasts: second time belt
++# rules (Moscow time)
++# c) Uralsk oblast: third time belt rules (Moscow+1).
++
++# From Stepan Golosunov (2016-03-27):
++# Unamended version of the act of the
++# Government of the Russian Federation No. 23 from 08.01.1992
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102014034&rdk=0
++# says that every year clocks were to be moved forward on last Sunday
++# of March at 2 hours and moved backwards on last Sunday of September
++# at 3 hours. It was amended in 1996 to replace September with October.
++
+ # From Alexander Krivenyshev (2011-06-14):
+ # According to Kremlin press service, Russian President Dmitry Medvedev
+ # signed a federal law "On calculation of time" on June 9, 2011.
+@@ -731,6 +771,14 @@
+ 1:00 EU CE%sT
+
+ # Belarus
++#
++# From Stepan Golosunov (2016-07-02):
++# http://www.lawbelarus.com/repub/sub30/texf9611.htm
++# (Act of the Cabinet of Ministers of the Republic of Belarus from
++# 1992-03-25 No. 157) ... says clocks were to be moved forward at 2:00
++# on last Sunday of March and backward at 3:00 on last Sunday of September
++# (the same as previous USSR and contemporary Russian regulations).
++#
+ # From Yauhen Kharuzhy (2011-09-16):
+ # By latest Belarus government act Europe/Minsk timezone was changed to
+ # GMT+3 without DST (was GMT+2 with DST).
+@@ -743,8 +791,6 @@
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+ # http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
+-# From Paul Eggert (2014-10-08):
+-# Hence Belarus can share time zone abbreviations with Moscow again.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+@@ -754,12 +800,8 @@
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+ 3:00 - MSK 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
+- 2:00 - EET 1992 Mar 29 0:00s
+- 2:00 1:00 EEST 1992 Sep 27 0:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 1:00s
+- 3:00 - MSK
++ 3:00 - +03
+
+ # Belgium
+ #
+@@ -1005,6 +1047,12 @@
+ # startkart.no says Thule does not observe DST, but this is clearly an error,
+ # so go with Shanks & Pottenger for Thule transitions until this year.
+ # For 2007 on assume Thule will stay in sync with US DST rules.
++
++# From J William Piggott (2016-02-20):
++# "Greenland north of the community of Scoresbysund" is officially named
++# "National Park" by Executive Order:
++# http://naalakkersuisut.gl/~/media/Nanoq/Files/Attached%20Files/Engelske-tekster/Legislation/Executive%20Order%20National%20Park.rtf
++# It is their only National Park.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+@@ -1030,6 +1078,10 @@
+ -4:00 Thule A%sT
+
+ # Estonia
++#
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
+ # From Peter Ilieve (1994-10-15):
+ # A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+ # [through 1994] and gives the legal authority for it,
+@@ -1257,7 +1309,7 @@
+ # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+ # says that Bersarin issued an order to use Moscow time on May 20.
+ # However, Moscow did not observe daylight saving in 1945, so
+-# this was equivalent to CEMT (GMT+3), not GMT+4.
++# this was equivalent to UT +03, not +04.
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1448,73 +1500,84 @@
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
+-# From Paul Eggert (2006-03-22):
+-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+-# F. Pollastri
+-# Day-light Saving Time in Italy (2006-02-03)
+-# http://toi.iriti.cnr.it/uk/ienitlt.html
+-# ('FP' below), taken from an Italian National Electrotechnical Institute
+-# publication. When the three sources disagree, guess who's right, as follows:
+-#
+-# year FP Shanks&P. (S) Whitman (W) Go with:
+-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+-# 09-30 09-29 24:00 09-30 01:00 FP & W
+-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+-# 10-06 10-05 24:00 10-06 01:00 FP & W
+-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+-# 1944 04-02 04-03 02:00 S (see C-Eur)
+-# 09-16 10-02 03:00 FP; guess 24:00s
+-# 1945 09-14 09-16 24:00 FP; guess 24:00s
+-# 1970 05-21 05-31 00:00 S
+-# 09-20 09-27 00:00 S
+-#
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+-Rule Italy 1916 only - Oct 1 0:00s 0 -
+-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+-Rule Italy 1917 only - Sep 30 0:00s 0 -
+-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+-Rule Italy 1920 only - Sep 19 0:00s 0 -
+-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+-Rule Italy 1944 only - Sep 17 0:00s 0 -
+-Rule Italy 1945 only - Apr 2 2:00 1:00 S
+-Rule Italy 1945 only - Sep 15 0:00s 0 -
+-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+-Rule Italy 1946 only - Oct 6 2:00s 0 -
+-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+-Rule Italy 1947 only - Oct 5 0:00s 0 -
+-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+-Rule Italy 1948 only - Oct 3 2:00s 0 -
+-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+-Rule Italy 1969 only - Jun 1 0:00 1:00 S
+-Rule Italy 1970 only - May 31 0:00 1:00 S
+-Rule Italy 1970 only - Sep lastSun 0:00 0 -
+-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1971 only - Sep lastSun 1:00 0 -
+-Rule Italy 1972 only - Oct 1 0:00 0 -
+-Rule Italy 1973 only - Jun 3 0:00 1:00 S
+-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+-Rule Italy 1974 only - May 26 0:00 1:00 S
+-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+-Rule Italy 1976 only - May 30 0:00s 1:00 S
+-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+-Rule Italy 1978 only - Oct 1 0:00s 0 -
+-Rule Italy 1979 only - Sep 30 0:00s 0 -
++# From Michael Deckers (2016-10-24):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
++# ... [translated as] "The preceding dispositions will enter into
++# force at the instant at which, according to the time specified in
++# the 1st article, the 1st of November 1893 will begin...."
++#
++# From Pierpaolo Bernardi (2016-10-20):
++# The authoritative source for time in Italy is the national metrological
++# institute, which has a summary page of historical DST data at
++# http://www.inrim.it/res/tf/ora_legale_i.shtml
++# (2016-10-24):
++# http://www.renzobaldini.it/le-ore-legali-in-italia/
++# has still different data for 1944. It divides Italy in two, as
++# there were effectively two governments at the time, north of Gothic
++# Line German controlled territory, official government RSI, and south
++# of the Gothic Line, controlled by allied armies.
++#
++# From Brian Inglis (2016-10-23):
++# Viceregal LEGISLATIVE DECREE. 14 September 1944, no. 219.
++# Restoration of Standard Time. (044U0219) (OJ 62 of 30.9.1944) ...
++# Given the R. law decreed on 1944-03-29, no. 92, by which standard time is
++# advanced to sixty minutes later starting at hour two on 1944-04-02; ...
++# Starting at hour three on the date 1944-09-17 standard time will be resumed.
++#
++# From Paul Eggert (2016-10-27):
++# Go with INRiM for DST rules, except as corrected by Inglis for 1944
++# for the Kingdom of Italy. This is consistent with Renzo Baldini.
++# Model Rome's occupation by using using C-Eur rules from 1943-09-10
++# to 1944-06-04; although Rome was an open city during this period, it
++# was effectively controlled by Germany.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Italy 1916 only - Jun 3 24:00 1:00 S
++Rule Italy 1916 1917 - Sep 30 24:00 0 -
++Rule Italy 1917 only - Mar 31 24:00 1:00 S
++Rule Italy 1918 only - Mar 9 24:00 1:00 S
++Rule Italy 1918 only - Oct 6 24:00 0 -
++Rule Italy 1919 only - Mar 1 24:00 1:00 S
++Rule Italy 1919 only - Oct 4 24:00 0 -
++Rule Italy 1920 only - Mar 20 24:00 1:00 S
++Rule Italy 1920 only - Sep 18 24:00 0 -
++Rule Italy 1940 only - Jun 14 24:00 1:00 S
++Rule Italy 1942 only - Nov 2 2:00s 0 -
++Rule Italy 1943 only - Mar 29 2:00s 1:00 S
++Rule Italy 1943 only - Oct 4 2:00s 0 -
++Rule Italy 1944 only - Apr 2 2:00s 1:00 S
++Rule Italy 1944 only - Sep 17 2:00s 0 -
++Rule Italy 1945 only - Apr 2 2:00 1:00 S
++Rule Italy 1945 only - Sep 15 1:00 0 -
++Rule Italy 1946 only - Mar 17 2:00s 1:00 S
++Rule Italy 1946 only - Oct 6 2:00s 0 -
++Rule Italy 1947 only - Mar 16 0:00s 1:00 S
++Rule Italy 1947 only - Oct 5 0:00s 0 -
++Rule Italy 1948 only - Feb 29 2:00s 1:00 S
++Rule Italy 1948 only - Oct 3 2:00s 0 -
++Rule Italy 1966 1968 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1966 only - Sep 24 24:00 0 -
++Rule Italy 1967 1969 - Sep Sun>=22 0:00s 0 -
++Rule Italy 1969 only - Jun 1 0:00s 1:00 S
++Rule Italy 1970 only - May 31 0:00s 1:00 S
++Rule Italy 1970 only - Sep lastSun 0:00s 0 -
++Rule Italy 1971 1972 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1971 only - Sep lastSun 0:00s 0 -
++Rule Italy 1972 only - Oct 1 0:00s 0 -
++Rule Italy 1973 only - Jun 3 0:00s 1:00 S
++Rule Italy 1973 1974 - Sep lastSun 0:00s 0 -
++Rule Italy 1974 only - May 26 0:00s 1:00 S
++Rule Italy 1975 only - Jun 1 0:00s 1:00 S
++Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
++Rule Italy 1976 only - May 30 0:00s 1:00 S
++Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1978 only - Oct 1 0:00s 0 -
++Rule Italy 1979 only - Sep 30 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1944 Jul
++ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
++ 1:00 Italy CE%sT 1943 Sep 10
++ 1:00 C-Eur CE%sT 1944 Jun 4
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+@@ -1623,6 +1686,9 @@
+
+ # Lithuania
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
+ # From Paul Eggert (1996-11-22):
+ # IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+ # known to be wrong about Estonia and Latvia, assume it's wrong here too.
+@@ -1662,8 +1728,8 @@
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+ 2:00 - EET 1998 Mar 29 1:00u
+ 1:00 EU CE%sT 1999 Oct 31 1:00u
+@@ -1710,6 +1776,10 @@
+ # See Europe/Belgrade.
+
+ # Malta
++#
++# From Paul Eggert (2016-10-21):
++# Assume 1900-1972 was like Rome, overriding Shanks.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+ Rule Malta 1973 only - Sep 29 0:00s 0 -
+@@ -1720,14 +1790,22 @@
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Moldova
+
++# From Stepan Golosunov (2016-03-07):
++# the act of the government of the Republic of Moldova Nr. 132 from 1990-05-04
++# http://lex.justice.md/viewdoc.php?action=view&view=doc&id=298782&lang=2
++# ... says that since 1990-05-06 on the territory of the Moldavian SSR
++# time would be calculated as the standard time of the second time belt
++# plus one hour of the "summer" time. To implement that clocks would be
++# adjusted one hour backwards at 1990-05-06 2:00. After that "summer"
++# time would be cancelled last Sunday of September at 3:00 and
++# reintroduced last Sunday of March at 2:00.
++
+ # From Paul Eggert (2006-03-22):
+ # A previous version of this database followed Shanks & Pottenger, who write
+ # that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+@@ -1786,9 +1864,7 @@
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+- 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 May 6
+- 2:00 - EET 1991
++ 3:00 Russia MSK/MSD 1990 May 6 2:00
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+ # See Romania commentary for the guessed 1997 transition to EU rules.
+@@ -1845,7 +1921,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm
++# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+@@ -2210,7 +2286,6 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+ # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+ # are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+ # except we follow Chernov's report that 1992 DST transitions were Sat
+@@ -2266,16 +2341,32 @@
+ # Europe/Kaliningrad covers...
+ # 39 RU-KGD Kaliningrad Oblast
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Stepan Golosunov (2016-03-07):
++# http://www.rgo.ru/ru/kaliningradskoe-oblastnoe-otdelenie/ob-otdelenii/publikacii/kak-nam-zhilos-bez-letnego-vremeni
++# confirms that the 1989 change to Moscow-1 was implemented.
++# (The article, though, is misattributed to 1990 while saying that
++# summer->winter transition would be done on the 24 of September. But
++# 1990-09-24 was Monday, while 1989-09-24 was Sunday as expected.)
++# ...
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad switched to Moscow-1 on 1989-03-26, avoided
++# at the last moment switch to Moscow-1 on 1991-03-31, switched to
++# Moscow on 1991-11-03, switched to Moscow-1 on 1992-01-19.
++
+ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+ 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 2:00s
++ 3:00 - +03 2014 Oct 26 2:00s
+ 2:00 - EET
+
+
+-# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
++# From Paul Eggert (2016-02-21), per Tim Parenti (2014-07-03) and
++# Oscar van Vlijmen (2001-08-25):
+ # Europe/Moscow covers...
+ # 01 RU-AD Adygea, Republic of
+ # 05 RU-DA Dagestan, Republic of
+@@ -2318,12 +2409,102 @@
+ # 68 RU-TAM Tambov Oblast
+ # 69 RU-TVE Tver Oblast
+ # 71 RU-TUL Tula Oblast
+-# 73 RU-ULY Ulyanovsk Oblast
+ # 76 RU-YAR Yaroslavl Oblast
+ # 77 RU-MOW Moscow
+ # 78 RU-SPE Saint Petersburg
+ # 83 RU-NEN Nenets Autonomous Okrug
+
++# From Paul Eggert (2016-08-23):
++# The Soviets switched to UT-based time in 1919. Decree No. 59
++# (1919-02-08) http://istmat.info/node/35567 established UT-based time
++# zones, and Decree No. 147 (1919-03-29) http://istmat.info/node/35854
++# specified a transition date of 1919-07-01, apparently at 00:00 UT.
++# No doubt only the Soviet-controlled regions switched on that date;
++# later transitions to UT-based time in other parts of Russia are
++# taken from what appear to be guesses by Shanks.
++# (Thanks to Alexander Belopolsky for pointers to the decrees.)
++
++# From Stepan Golosunov (2016-03-07):
++# 11. Regions-violators, 1981-1982.
++# Wikipedia refers to
++# http://maps.monetonos.ru/maps/raznoe/Old_Maps/Old_Maps/Articles/022/3_1981.html
++# http://besp.narod.ru/nauka_1981_3.htm
++#
++# The second link provides two articles scanned from the Nauka i Zhizn
++# magazine No. 3, 1981 and a scan of the short article attributed to
++# the Trud newspaper from February 1982. The first link provides the
++# same Nauka i Zhizn articles converted to the text form (but misses
++# time belt changes map).
++#
++# The second Nauka i Zhizn article says that in addition to
++# introduction of summer time on 1981-04-01 there are some time belt
++# border changes on 1981-10-01, mostly affecting Nenets Autonomous
++# Okrug, Krasnoyarsk Krai, Yakutia, Magadan Oblast and Chukotka
++# according to the provided map (colored one). In addition to that
++# "time violators" (regions which were not using rules of the time
++# belts in which they were located) would not be moving off the DST on
++# 1981-10-01 to restore the decree time usage. (Komi ASSR was
++# supposed to repeat that move in October 1982 to account for the 2
++# hour difference.) Map depicting "time violators" before 1981-10-01
++# is also provided.
++#
++# The article from Trud says that 1981-10-01 changes caused problems
++# and some territories would be moved to pre-1981-10-01 time by not
++# moving to summer time on 1982-04-01. Namely: Dagestan,
++# Kabardino-Balkar, Kalmyk, Komi, Mari, Mordovian, North Ossetian,
++# Tatar, Chechen-Ingush and Chuvash ASSR, Krasnodar and Stavropol
++# krais, Arkhangelsk, Vladimir, Vologda, Voronezh, Gorky, Ivanovo,
++# Kostroma, Lipetsk, Penza, Rostov, Ryazan, Tambov, Tyumen and
++# Yaroslavl oblasts, Nenets and Evenk autonomous okrugs, Khatangsky
++# district of Taymyr Autonomous Okrug. As a result Evenk Autonomous
++# Okrug and Khatangsky district of Taymyr Autonomous Okrug would end
++# up on Moscow+4, Tyumen Oblast on Moscow+2 and the rest on Moscow
++# time.
++#
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# attributes the 1982 changes to the Act of the Council of Ministers
++# of the USSR No. 126 from 18.02.1982. 1980-925.txt also adds
++# Udmurtia to the list of affected territories and lists Khatangsky
++# district separately from Taymyr Autonomous Okrug. Probably erroneously.
++#
++# The affected territories are currently listed under Europe/Moscow,
++# Asia/Yekaterinburg and Asia/Krasnoyarsk.
++#
++# 12. Udmurtia
++# The fact that Udmurtia is depicted as a violator in the Nauka i
++# Zhizn article hints at Izhevsk being on different time from
++# Kuybyshev before 1981-10-01. Udmurtia is not mentioned in the 1989 act.
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# implies Udmurtia was on Moscow time after 1982-04-01.
++# Wikipedia implies Udmurtia being on Moscow+1 until 1991.
++#
++# ...
++#
++# All Russian zones are supposed to have by default a -1 change at
++# 1991-03-31 2:00 (cancellation of the decree time in the USSR) and a +1
++# change at 1992-01-19 2:00 (restoration of the decree time in Russia).
++#
++# There were some exceptions, though.
++# Wikipedia says newspapers listed Astrakhan, Saratov, Kirov, Volgograd,
++# Izhevsk, Grozny, Kazan and Samara as such exceptions for the 1992
++# change. (Different newspapers providing different lists. And some
++# lists found in the internet are quite wild.)
++#
++# And apparently some exceptions were reverted in the last moment.
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad decided not to be an exception 2 days before the
++# 1991-03-31 switch and one person at
++# http://izhevsk.ru/forum_light_message/50/682597-m8369040.html
++# says he remembers that Samara opted out of the 1992-01-19 exception
++# 2 days before the switch.
++#
++#
++# From Paul Eggert (2016-03-18):
++# Given the above, we appear to be missing some Zone entries for the
++# chaotic early 1980s in Russia. It's not clear what these entries
++# should be. For now, sweep this under the rug and just document the
++# time in Moscow.
++
+ # From Vladimir Karpinsky (2014-07-08):
+ # LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow
+ # Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30")....
+@@ -2344,7 +2525,7 @@
+
+ Zone Europe/Moscow 2:30:17 - LMT 1880
+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
+- 2:31:19 Russia %s 1919 Jul 1 2:00
++ 2:31:19 Russia %s 1919 Jul 1 0:00u
+ 3:00 Russia %s 1921 Oct
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+@@ -2397,47 +2578,101 @@
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Volgograd covers...
++# From Paul Eggert (2016-03-18):
++# Europe/Astrakhan covers:
+ # 30 RU-AST Astrakhan Oblast
++#
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-01-12):
++# On February 10, 2016 Astrakhan Oblast got approval by the Federation
++# Council to change its time zone to UTC+4 (from current UTC+3 Moscow time)....
++# This Federal Law shall enter into force on 27 March 2016 at 02:00.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201602150056
++
++Zone Europe/Astrakhan 3:12:12 - LMT 1924 May
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Volgograd covers:
+ # 34 RU-VGG Volgograd Oblast
+-# 43 RU-KIR Kirov Oblast
+ # 64 RU-SAR Saratov Oblast
+-
+-# From Paul Eggert (2006-05-09):
+-# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300.
+-# Perhaps it switched after the others? But we have no data.
++# The 1988 transition is from USSR act No. 5 (1988-01-04).
+
+ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+- 4:00 - STAT 1961 Nov 11
+- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+- 4:00 - VOLT 1992 Mar 29 2:00s
+- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
+- 3:00 - MSK
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1961 Nov 11
++ 4:00 Russia +04/+05 1988 Mar 27 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
++# From Paul Eggert (2016-03-18):
++# Europe/Kirov covers:
++# 43 RU-KIR Kirov Oblast
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
++Zone Europe/Kirov 3:18:48 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Europe/Samara covers...
+ # 18 RU-UD Udmurt Republic
+ # 63 RU-SAM Samara Oblast
+
++# From Paul Eggert (2016-03-18):
+ # Byalokoz 1919 says Samara was 3:20:20.
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+
+-Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 2:00
+- 3:00 - SAMT 1930 Jun 21
+- 4:00 - SAMT 1935 Jan 27
+- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1991 Sep 29 2:00s
+- 3:00 - KUYT 1991 Oct 20 3:00
+- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
+- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
+- 4:00 - SAMT
++Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1935 Jan 27
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1991 Sep 29 2:00s
++ 3:00 - +03 1991 Oct 20 3:00
++ 4:00 Russia +04/+05 2010 Mar 28 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Ulyanovsk covers:
++# 73 RU-ULY Ulyanovsk Oblast
+
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-02-17):
++# Ulyanovsk ... on their way to change time zones by March 27, 2016 at 2am.
++# Ulyanovsk Oblast ... from MSK to MSK+1 (UTC+3 to UTC+4) ...
++# 920582-6 ... 02/17/2016 The State Duma passed the bill in the first reading.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090051
++
++Zone Europe/Ulyanovsk 3:13:36 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1992 Jan 19 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Yekaterinburg covers...
+@@ -2461,47 +2696,140 @@
+
+ Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3
+ 3:45:05 - PMT 1919 Jul 15 4:00
+- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
+- 6:00 - YEKT 2014 Oct 26 2:00s
+- 5:00 - YEKT
++ 4:00 - +04 1930 Jun 21
++ 5:00 Russia +05/+06 1991 Mar 31 2:00s
++ 4:00 Russia +04/+05 1992 Jan 19 2:00s
++ 5:00 Russia +05/+06 2011 Mar 27 2:00s
++ 6:00 - +06 2014 Oct 26 2:00s
++ 5:00 - +05
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Omsk covers...
+-# 04 RU-AL Altai Republic
+-# 22 RU-ALT Altai Krai
+ # 55 RU-OMS Omsk Oblast
+
+ # Byalokoz 1919 says Omsk was 4:53:30.
+
+ Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14
+- 5:00 - OMST 1930 Jun 21 # Omsk Time
+- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
+- 7:00 - OMST 2014 Oct 26 2:00s
+- 6:00 - OMST
++ 5:00 - +05 1930 Jun 21
++ 6:00 Russia +06/+07 1991 Mar 31 2:00s
++ 5:00 Russia +05/+06 1992 Jan 19 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06
+
++# From Paul Eggert (2016-02-22):
++# Asia/Barnaul covers:
++# 04 RU-AL Altai Republic
++# 22 RU-ALT Altai Krai
+
+-# From Tim Parenti (2014-07-03):
+-# Asia/Novosibirsk covers...
++# Data before 1991 are from Shanks & Pottenger.
++
++# From Stepan Golosunov (2016-03-07):
++# Letter of Bank of Russia from 1995-05-25
++# http://www.bestpravo.ru/rossijskoje/lj-akty/y3a.htm
++# suggests that Altai Republic transitioned to Moscow+3 on
++# 1995-05-28.
++#
++# http://regnum.ru/news/society/1957270.html
++# has some historical data for Altai Krai:
++# before 1957: west part on UTC+6, east on UTC+7
++# after 1957: UTC+7
++# since 1995: UTC+6
++# http://barnaul.rusplt.ru/index/pochemu_altajskij_kraj_okazalsja_v_neprivychnom_chasovom_pojase-17648.html
++# confirms that and provides more details including 1995-05-28 transition date.
++
++# From Alexander Krivenyshev (2016-02-17):
++# Altai Krai and Altai Republic on their way to change time zones
++# by March 27, 2016 at 2am....
++# Altai Republic / Gorno-Altaysk MSK+3 to MSK+4 (UTC+6 to UTC+7) ...
++# Altai Krai / Barnaul MSK+3 to MSK+4 (UTC+6 to UTC+7)
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090043
++# http://publication.pravo.gov.ru/Document/View/0001201603090038
++
++Zone Asia/Barnaul 5:35:00 - LMT 1919 Dec 10
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1995 May 28
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Mar 27 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Novosibirsk covers:
+ # 54 RU-NVS Novosibirsk Oblast
+-# 70 RU-TOM Tomsk Oblast
+
+-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+-# not clear when it switched from +7 to +6.
++# From Stepan Golosunov (2016-05-30):
++# http://asozd2.duma.gov.ru/main.nsf/(Spravka)?OpenAgent&RN=1085784-6
++# moves Novosibirsk oblast from UTC+6 to UTC+7.
++# From Stepan Golosunov (2016-07-04):
++# The law was signed yesterday and published today on
++# http://publication.pravo.gov.ru/Document/View/0001201607040064
+
+ Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 6:00 - NOVT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1993 May 23 # say Shanks & P.
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Jul 24 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Tomsk covers:
++# 70 RU-TOM Tomsk Oblast
++
++# From Stepan Golosunov (2016-03-24):
++# Byalokoz listed Tomsk at 5:39:51.
++
++# From Stanislaw A. Kuzikowski (1994-06-29):
++# Tomsk is still 4 hours ahead of Moscow.
++
++# From Stepan Golosunov (2016-03-19):
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102075743
++# (fifth time belt being UTC+5+1(decree time)
++# / UTC+5+1(decree time)+1(summer time)) ...
++# Note that time belts (numbered from 2 (Moscow) to 12 according to their
++# GMT/UTC offset and having too many exceptions like regions formally
++# belonging to one belt but using time from another) were replaced
++# with time zones in 2011 with different numbering (there was a
++# 2-hour gap between second and third zones in 2011-2014).
++
++# From Stepan Golosunov (2016-04-12):
++# http://asozd2.duma.gov.ru/main.nsf/(SpravkaNew)?OpenAgent&RN=1006865-6
++# This bill was approved in the first reading today. It moves Tomsk oblast
++# from UTC+6 to UTC+7 and is supposed to come into effect on 2016-05-29 at
++# 2:00. The bill needs to be approved in the second and the third readings by
++# the State Duma, approved by the Federation Council, signed by the President
++# and published to become a law. Minor changes in the text are to be expected
++# before the second reading (references need to be updated to account for the
++# recent changes).
++#
++# Judging by the ultra-short one-day amendments period, recent similar laws,
++# the State Duma schedule and the Federation Council schedule
++# http://www.duma.gov.ru/legislative/planning/day-shedule/por_vesna_2016/
++# http://council.gov.ru/activity/meetings/schedule/63303
++# I speculate that the final text of the bill will be proposed tomorrow, the
++# bill will be approved in the second and the third readings on Friday,
++# approved by the Federation Council on 2016-04-20, signed by the President and
++# published as a law around 2016-04-26.
++
++# From Matt Johnson (2016-04-26):
++# http://publication.pravo.gov.ru/Document/View/0001201604260048
++
++Zone Asia/Tomsk 5:39:51 - LMT 1919 Dec 22
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2002 May 1 3:00
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 May 29 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2526,23 +2854,18 @@
+ #
+ # Thus, when Russia will switch to DST on the night of March 28, 2010
+ # Kemerovo region (Kemerovo oblast') will not change the clock.
+-#
+-# As a result, Kemerovo oblast' will be in the same time zone as
+-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+ # From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02):
+ # The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus
+ # realigning itself with KRAT.
+
+ Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 7:00 - KRAT # Krasnoyarsk Time
+-
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2010 Mar 28 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Krasnoyarsk covers...
+@@ -2556,12 +2879,12 @@
+ # Byalokoz 1919 says Krasnoyarsk was 6:11:26.
+
+ Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
+- 8:00 - KRAT 2014 Oct 26 2:00s
+- 7:00 - KRAT
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2011 Mar 27 2:00s
++ 8:00 - +08 2014 Oct 26 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2578,12 +2901,12 @@
+
+ Zone Asia/Irkutsk 6:57:05 - LMT 1880
+ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time
+- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
+- 9:00 - IRKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 7:00 - +07 1930 Jun 21
++ 8:00 Russia +08/+09 1991 Mar 31 2:00s
++ 7:00 Russia +07/+08 1992 Jan 19 2:00s
++ 8:00 Russia +08/+09 2011 Mar 27 2:00s
++ 9:00 - +09 2014 Oct 26 2:00s
++ 8:00 - +08
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2593,13 +2916,20 @@
+ # Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat
+ # Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai.
+
++# From Alexander Krivenyshev (2016-01-02):
++# [The] time zone in the Trans-Baikal Territory (Zabaykalsky Krai) -
++# Asia/Chita [is changing] from UTC+8 to UTC+9. Effective date will
++# be March 27, 2016 at 2:00am....
++# http://publication.pravo.gov.ru/Document/View/0001201512300107
++
+ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 8:00 - +08 2016 Mar 27 2:00
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2639,12 +2969,12 @@
+ # Byalokoz 1919 says Yakutsk was 8:38:58.
+
+ Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2662,12 +2992,12 @@
+ # Go with Byalokoz.
+
+ Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
+- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+- 9:00 Russia VLA%sT 1992 Jan 19 2:00s
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 9:00 - +09 1930 Jun 21
++ 10:00 Russia +10/+11 1991 Mar 31 2:00s
++ 9:00 Russia +09/+10 1992 Jan 19 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2685,14 +3015,14 @@
+ # This transition is no doubt wrong, but we have no better info.
+
+ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2004
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725?
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2004
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2011 Sep 13 0:00s # Decree 725?
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2701,16 +3031,21 @@
+ # ...with the exception of:
+ # 65-11 **** Severo-Kurilsky District (North Kuril Islands)
+
++# From Matt Johnson (2016-02-22):
++# Asia/Sakhalin is moving (in entirety) from UTC+10 to UTC+11 ...
++# (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090044
++
+ # The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long.
+ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+- 9:00 - JCST 1937 Oct 1
+- 9:00 - JST 1945 Aug 25
+- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T
+- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
+- 11:00 - SAKT 2014 Oct 26 2:00s
+- 10:00 - SAKT
++ 9:00 - +09 1945 Aug 25
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s # Sakhalin T
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Mar 27 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+@@ -2724,13 +3059,22 @@
+ # until now by Asia/Magadan, will instead move to UTC+11. These regions will
+ # need their own zone.
+
++# From Alexander Krivenyshev (2016-03-27):
++# ... draft bill 948300-6 to change its time zone from UTC+10 to UTC+11 ...
++# will take ... effect ... on April 24, 2016 at 2 o'clock
++#
++# From Matt Johnson (2016-04-05):
++# ... signed by the President today ...
++# http://publication.pravo.gov.ru/Document/View/0001201604050038
++
+ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 10:00 - MAGT
++ 10:00 - +10 1930 Jun 21 # Magadan Time
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Apr 24 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2773,17 +3117,14 @@
+ # in Russian.) In addition, Srednekolymsk appears to be a much older
+ # settlement and the population of Zyryanka seems to be declining.
+ # Go with Srednekolymsk.
+-#
+-# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT
+-# as the abbreviation. Use SRET instead.
+
+ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 11:00 - SRET # Srednekolymsk Time
++ 10:00 - +10 1930 Jun 21
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2801,14 +3142,14 @@
+ # UTC+12 since at least then, too.
+
+ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAKT 1981 Apr 1
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725?
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1981 Apr 1
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2011 Sep 13 0:00s # Decree 725?
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+@@ -2821,12 +3162,12 @@
+ # The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps
+ # Asia/Petropavlovsk-Kamchatsky, but these are too long.
+ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+- 11:00 - PETT 1930 Jun 21 # P-K Time
+- 12:00 Russia PET%sT 1991 Mar 31 2:00s
+- 11:00 Russia PET%sT 1992 Jan 19 2:00s
+- 12:00 Russia PET%sT 2010 Mar 28 2:00s
+- 11:00 Russia PET%sT 2011 Mar 27 2:00s
+- 12:00 - PETT
++ 11:00 - +11 1930 Jun 21
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2834,13 +3175,13 @@
+ # 87 RU-CHU Chukotka Autonomous Okrug
+
+ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
+- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
+- 12:00 - ANAT
++ 12:00 - +12 1930 Jun 21
++ 13:00 Russia +13/+14 1982 Apr 1 0:00s
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # San Marino
+@@ -3099,22 +3440,24 @@
+
+ # Turkey
+
+-# From Amar Devegowda (2007-01-03):
+-# The time zone rules for Istanbul, Turkey have not been changed for years now.
+-# ... The latest rules are available at:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=107
+-# From Steffen Thorsen (2007-01-03):
+-# I have been able to find press records back to 1996 which all say that
+-# DST started 01:00 local time and end at 02:00 local time. I am not sure
+-# what happened before that. One example for each year from 1996 to 2001:
+-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+-# From Paul Eggert (2007-01-03):
+-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
++# From Kıvanç Yazan (2016-09-25):
++# 1) For 1986-2006, DST started at 01:00 local and ended at 02:00 local, with
++# no exceptions.
++# 2) 1994's lastSun was overridden with Mar 20 ...
++# Here are official papers:
++# http://www.resmigazete.gov.tr/arsiv/19032.pdf - page 2 for 1986
++# http://www.resmigazete.gov.tr/arsiv/19400.pdf - page 4 for 1987
++# http://www.resmigazete.gov.tr/arsiv/19752.pdf - page 15 for 1988
++# http://www.resmigazete.gov.tr/arsiv/20102.pdf - page 6 for 1989
++# http://www.resmigazete.gov.tr/arsiv/20464.pdf - page 1 for 1990 - 1992
++# http://www.resmigazete.gov.tr/arsiv/21531.pdf - page 15 for 1993 - 1995
++# http://www.resmigazete.gov.tr/arsiv/21879.pdf - page 1 for overriding 1994
++# http://www.resmigazete.gov.tr/arsiv/22588.pdf - page 1 for 1996, 1997
++# http://www.resmigazete.gov.tr/arsiv/23286.pdf - page 10 for 1998 - 2000
++# http://www.resmigazete.gov.tr/eskiler/2001/03/20010324.htm#2 - for 2001
++# http://www.resmigazete.gov.tr/eskiler/2002/03/20020316.htm#2 - for 2002-2006
++# From Paul Eggert (2016-09-25):
++# Prefer the above sources to Shanks & Pottenger for time stamps after 1985.
+
+ # From Steffen Thorsen (2007-03-09):
+ # Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+@@ -3154,6 +3497,20 @@
+ # It's officially announced now by the Ministry of Energy.
+ # Turkey delays winter time to 8th of November 04:00
+ # http://www.aa.com.tr/tr/turkiye/yaz-saati-uygulamasi-8-kasimda-sona-erecek/362217
++#
++# From BBC News (2015-10-25):
++# Confused Turks are asking "what's the time?" after automatic clocks defied a
++# government decision ... "For the next two weeks #Turkey is on EEST... Erdogan
++# Engineered Standard Time," said Twitter user @aysekarahasan.
++# http://www.bbc.com/news/world-europe-34631326
++
++# From Burak AYDIN (2016-09-08):
++# Turkey will stay in Daylight Saving Time even in winter....
++# http://www.resmigazete.gov.tr/eskiler/2016/09/20160908-2.pdf
++#
++# From Paul Eggert (2016-09-07):
++# The change is permanent, so this is the new standard time in Turkey.
++# It takes effect today, which is not much notice.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Turkey 1916 only - May 1 0:00 1:00 S
+@@ -3209,16 +3566,16 @@
+ Rule Turkey 1983 only - Oct 2 0:00 0 -
+ Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+ Rule Turkey 1985 only - Sep 28 0:00 0 -
+-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1986 1993 - Mar lastSun 1:00s 1:00 S
++Rule Turkey 1986 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
++Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
++ 3:00 Turkey +03/+04 1985 Apr 20
+ 2:00 Turkey EE%sT 2007
+ 2:00 EU EE%sT 2011 Mar 27 1:00u
+ 2:00 - EET 2011 Mar 28 1:00u
+@@ -3226,7 +3583,8 @@
+ 2:00 - EET 2014 Mar 31 1:00u
+ 2:00 EU EE%sT 2015 Oct 25 1:00u
+ 2:00 1:00 EEST 2015 Nov 8 1:00u
+- 2:00 EU EE%sT
++ 2:00 EU EE%sT 2016 Sep 7
++ 3:00 - +03
+ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+ # Ukraine
+--- contrib/tzdata/factory.orig
++++ contrib/tzdata/factory
+@@ -1,9 +1,10 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# For companies who don't want to put time zone specification in
+-# their installation procedures. When users run date, they'll get the message.
+-# Also useful for the "comp.sources" version.
++# For distributors who don't want to put time zone specification in
++# their installation procedures. Users that run 'date' will get the
++# time zone abbreviation "-00", indicating that the actual time zone
++# is unknown.
+
+ # Zone NAME GMTOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -143,7 +143,7 @@
+ # Boulder, Colorado
+ # Judah.Levine@nist.gov
+ #
+-# Last Update of leap second values: 5 January 2015
++# Last Update of leap second values: 8 July 2016
+ #
+ # The following line shows this last update date in NTP timestamp
+ # format. This is the date on which the most recent change to
+@@ -151,7 +151,7 @@
+ # be identified by the unique pair of characters in the first two
+ # columns as shown below.
+ #
+-#$ 3629404800
++#$ 3676924800
+ #
+ # The NTP timestamps are in units of seconds since the NTP epoch,
+ # which is 1 January 1900, 00:00:00. The Modified Julian Day number
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C50
+-# File expires on: 28 June 2016
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+ #
+-#@ 3676060800
++#@ 3707596800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -231,6 +231,7 @@
+ 3439756800 34 # 1 Jan 2009
+ 3550089600 35 # 1 Jul 2012
+ 3644697600 36 # 1 Jul 2015
++3692217600 37 # 1 Jan 2017
+ #
+ # the following special comment contains the
+ # hash value of the data in this file computed
+@@ -246,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h 3d037453 3acade76 570bd8f8 be2b8bc9 55ec6fe8
++#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -6,6 +6,7 @@
+ # leap-seconds.list file available from most NIST time servers.
+ # If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,
+ # you should be able to pick up leap-seconds.list from a secondary NIST server.
++# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers.
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+ # http://www.eecis.udel.edu/~mills/leap.html
+@@ -55,6 +56,7 @@
+ Leap 2008 Dec 31 23:59:60 + S
+ Leap 2012 Jun 30 23:59:60 + S
+ Leap 2015 Jun 30 23:59:60 + S
++Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C50
+-# File expires on: 28 June 2016
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -0,0 +1,76 @@
++# Generate the 'leapseconds' file from 'leap-seconds.list'.
++
++# This file is in the public domain.
++
++BEGIN {
++ print "# Allowance for leap seconds added to each time zone file."
++ print ""
++ print "# This file is in the public domain."
++ print ""
++ print "# This file is generated automatically from the data in the public-domain"
++ print "# leap-seconds.list file available from most NIST time servers."
++ print "# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,"
++ print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
++ print "# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers."
++ print "# For more about leap-seconds.list, please see"
++ print "# The NTP Timescale and Leap Seconds"
++ print "# http://www.eecis.udel.edu/~mills/leap.html"
++ print ""
++ print "# The International Earth Rotation and Reference Systems Service"
++ print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1"
++ print "# (which measures the true angular orientation of the earth in space); see"
++ print "# Terry J Quinn, The BIPM and the accurate measure of time,"
++ print "# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>."
++ print "# There were no leap seconds before 1972, because the official mechanism"
++ print "# accounting for the discrepancy between atomic time and the earth's rotation"
++ print "# did not exist until the early 1970s."
++ print ""
++ print "# The correction (+ or -) is made at the given time, so lines"
++ print "# will typically look like:"
++ print "# Leap YEAR MON DAY 23:59:60 + R/S"
++ print "# or"
++ print "# Leap YEAR MON DAY 23:59:59 - R/S"
++ print ""
++ print "# If the leapsecond is Rolling (R) the given time is local time."
++ print "# If the leapsecond is Stationary (S) the given time is UTC."
++ print ""
++ print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
++}
++
++/^ *$/ { next }
++
++/^#\tUpdated through/ || /^#\tFile expires on:/ {
++ last_lines = last_lines $0 "\n"
++}
++
++/^#/ { next }
++
++{
++ NTP_timestamp = $1
++ TAI_minus_UTC = $2
++ hash_mark = $3
++ one = $4
++ month = $5
++ year = $6
++ if (old_TAI_minus_UTC) {
++ if (old_TAI_minus_UTC < TAI_minus_UTC) {
++ sign = "23:59:60\t+"
++ } else {
++ sign = "23:59:59\t-"
++ }
++ if (month == "Jan") {
++ year--;
++ month = "Dec";
++ day = 31
++ } else if (month == "Jul") {
++ month = "Jun";
++ day = 30
++ }
++ printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign
++ }
++ old_TAI_minus_UTC = TAI_minus_UTC
++}
++
++END {
++ printf "\n%s", last_lines
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -24,8 +24,32 @@
+ # was the result of his proposals at the Convention of Railroad Trunk Lines
+ # in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+ # but in 1872-05 he moved the proposed origin to Greenwich.
+-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+-# and the most of the country soon followed suit.
++
++# From Paul Eggert (2016-09-21):
++# Dowd's proposal left many details unresolved, such as where to draw
++# lines between time zones. The key individual who made time zones
++# work in the US was William Frederick Allen - railway engineer,
++# managing editor of the Travelers' Guide, and secretary of the
++# General Time Convention, a railway standardization group. Allen
++# spent months in dialogs with scientific and railway leaders,
++# developed a workable plan to institute time zones, and presented it
++# to the General Time Convention on 1883-04-11, saying that his plan
++# meant "local time would be practically abolished" - a plus for
++# railway scheduling. By the next convention on 1883-10-11 nearly all
++# railroads had agreed and it took effect on 1883-11-18 at 12:00.
++# That Sunday was called the "day of two noons", as the eastern parts
++# of the new zones observed noon twice. Allen witnessed the
++# transition in New York City, writing:
++#
++# I heard the bells of St. Paul's strike on the old time. Four
++# minutes later, obedient to the electrical signal from the Naval
++# Observatory ... the time-ball made its rapid descent, the chimes
++# of old Trinity rang twelve measured strokes, and local time was
++# abandoned, probably forever.
++#
++# Most of the US soon followed suit. See:
++# Bartky IR. The adoption of standard time. Technol Cult 1989 Jan;30(1):25-56.
++# http://dx.doi.org/10.2307/3105430
+
+ # From Paul Eggert (2005-04-16):
+ # That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+@@ -325,6 +349,16 @@
+ # Statue 175 closer in synch with the US Congress' intent....
+ # http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
++# From an email administrator of the City of Fort Pierre, SD (2015-12-21):
++# Fort Pierre is technically located in the Mountain time zone as is
++# the rest of Stanley County. Most of Stanley County and Fort Pierre
++# uses the Central time zone due to doing most of their business in
++# Pierre so it simplifies schedules. I have lived in Stanley County
++# all my life and it has been that way since I can remember. (43 years!)
++#
++# From Paul Eggert (2015-12-25):
++# Assume this practice predates 1970, so Fort Pierre can use America/Chicago.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+ Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+@@ -403,11 +437,42 @@
+ # north of the Salmon River, and the towns of Burgdorf and Warren),
+ # Nevada (except West Wendover), Oregon (except the northern 3/4 of
+ # Malheur county), and Washington
++
++# From Paul Eggert (2016-08-20):
++# In early February 1948, in response to California's electricity shortage,
++# PG&E changed power frequency from 60 to 59.5 Hz during daylight hours,
++# causing electric clocks to lose six minutes per day. (This did not change
++# legal time, and is not part of the data here.) See:
++# Ross SA. An energy crisis from the past: Northern California in 1948.
++# Working Paper No. 8, Institute of Governmental Studies, UC Berkeley,
++# 1973-11. http://escholarship.org/uc/item/8x22k30c
++#
++# In another measure to save electricity, DST was instituted from 1948-03-14
++# at 02:01 to 1949-01-16 at 02:00, with the governor having the option to move
++# the fallback transition earlier. See pages 3-4 of:
++# http://clerk.assembly.ca.gov/sites/clerk.assembly.ca.gov/files/archive/Statutes/1948/48Vol1_Chapters.pdf
++#
++# In response:
++#
++# Governor Warren received a torrent of objecting mail, and it is not too much
++# to speculate that the objections to Daylight Saving Time were one important
++# factor in the defeat of the Dewey-Warren Presidential ticket in California.
++# -- Ross, p 25
++#
++# On December 8 the governor exercised the option, setting the date to January 1
++# (LA Times 1948-12-09). The transition time was 02:00 (LA Times 1949-01-01).
++#
++# Despite the controversy, in 1949 California voters approved Proposition 12,
++# which established DST from April's last Sunday at 01:00 until September's
++# last Sunday at 02:00. This was amended by 1962's Proposition 6, which changed
++# the fall-back date to October's last Sunday. See:
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1636&context=ca_ballot_props
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+-Rule CA 1948 only - Mar 14 2:00 1:00 D
++Rule CA 1948 only - Mar 14 2:01 1:00 D
+ Rule CA 1949 only - Jan 1 2:00 0 S
+-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
++Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -481,6 +546,12 @@
+ # For lack of better information, assume that Metlakatla's
+ # abandonment of use of daylight saving resulted from the 1983 vote.
+
++# From Steffen Thorsen (2015-11-09):
++# It seems Metlakatla did go off PST on Sunday, November 1, changing
++# their time to AKST and are going to follow Alaska's DST, switching
++# between AKST and AKDT from now on....
++# http://www.krbd.org/2015/10/30/annette-island-times-they-are-a-changing/
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+@@ -506,7 +577,8 @@
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+ -8:00 US P%sT 1983 Oct 30 2:00
+- -8:00 - PST
++ -8:00 - PST 2015 Nov 1 2:00
++ -9:00 US AK%sT
+ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+@@ -2174,39 +2246,39 @@
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
++Zone America/Pangnirtung 0 - -00 1921 # trading post est.
+ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+ -5:00 Canada E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # formerly Frobisher Bay
+-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
++Zone America/Iqaluit 0 - -00 1942 Aug # Frobisher Bay est.
+ -5:00 NT_YK E%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # aka Qausuittuq
+-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
++Zone America/Resolute 0 - -00 1947 Aug 31 # Resolute founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT 2006 Oct 29 2:00
+ -5:00 - EST 2007 Mar 11 3:00
+ -6:00 Canada C%sT
+ # aka Kangiqiniq
+-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
++Zone America/Rankin_Inlet 0 - -00 1957 # Rankin Inlet founded
+ -6:00 NT_YK C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+ # aka Iqaluktuuttiaq
+-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
++Zone America/Cambridge_Bay 0 - -00 1920 # trading post est.?
+ -7:00 NT_YK M%sT 1999 Oct 31 2:00
+ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 - EST 2000 Nov 5 0:00
+ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
++Zone America/Yellowknife 0 - -00 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
++Zone America/Inuvik 0 - -00 1953 # Inuvik founded
+ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+@@ -2458,13 +2530,22 @@
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
++# Coahuila, Nuevo León, Tamaulipas (near US border)
++# This includes the following municipalities:
++# in Coahuila: Ocampo, Acuña, Zaragoza, Jiménez, Piedras Negras, Nava,
++# Guerrero, Hidalgo.
++# in Nuevo León: Anáhuac, Los Aldama.
++# in Tamaulipas: Nuevo Laredo, Guerrero, Mier, Miguel Alemán, Camargo,
++# Gustavo Díaz Ordaz, Reynosa, Río Bravo, Valle Hermoso, Matamoros.
++# See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
++# 2016-03-12
++# http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+ Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT 2010
+ -6:00 US C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
++# Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+ Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+@@ -2480,6 +2561,9 @@
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+ # Chihuahua (near US border)
++# This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
++# Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
++# (See the 2016-03-12 El Universal source mentioned above.)
+ Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+@@ -2567,7 +2651,7 @@
+ -7:00 Mexico M%sT 2010 Apr 4 2:00
+ -6:00 Mexico C%sT
+
+-# Baja California (near US border)
++# Baja California
+ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+@@ -2587,25 +2671,6 @@
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT 2010
+ -8:00 US P%sT
+-# Baja California (away from US border)
+-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
+- -7:00 - MST 1924
+- -8:00 - PST 1927 Jun 10 23:00
+- -7:00 - MST 1930 Nov 15
+- -8:00 - PST 1931 Apr 1
+- -8:00 1:00 PDT 1931 Sep 30
+- -8:00 - PST 1942 Apr 24
+- -8:00 1:00 PWT 1945 Aug 14 23:00u
+- -8:00 1:00 PPT 1945 Nov 12 # Peace
+- -8:00 - PST 1948 Apr 5
+- -8:00 1:00 PDT 1949 Jan 14
+- -8:00 - PST 1954
+- -8:00 CA P%sT 1961
+- -8:00 - PST 1976
+- -8:00 US P%sT 1996
+- -8:00 Mexico P%sT 2001
+- -8:00 US P%sT 2002 Feb 20
+- -8:00 Mexico P%sT
+ # From Paul Eggert (2006-03-22):
+ # Formerly there was an America/Ensenada zone, which differed from
+ # America/Tijuana only in that it did not observe DST from 1976
+@@ -2618,6 +2683,13 @@
+ # other than America/Tijuana for Baja, but it's not clear yet what its
+ # name or contents should be.
+ #
++# From Paul Eggert (2015-10-08):
++# Formerly there was an America/Santa_Isabel zone, but this appears to
++# have come from a misreading of
++# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
++# It has been moved to the 'backward' file.
++#
++#
+ # Revillagigedo Is
+ # no information
+
+@@ -2692,17 +2764,7 @@
+ -4:00 US A%sT
+
+ # Cayman Is
+-
+-# From Paul Eggert (2015-05-15):
+-# The Cayman government has decided to introduce DST in 2016, the idea being
+-# to keep in sync with New York. The legislation hasn't passed but the change
+-# seems quite likely. See: Meade B. Cayman 27.
+-# http://www.cayman27.com.ky/2015/05/15/clock-ticks-toward-daylight-saving-time-in-cayman
+-
+-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST 2016
+- -5:00 US E%sT
++# See America/Panama.
+
+ # Costa Rica
+
+@@ -3065,6 +3127,13 @@
+ # http://radiovision2000haiti.net/public/haiti-avis-changement-dheure-dimanche/
+ # http://www.canalplushaiti.net/?p=6714
+
++# From Steffen Thorsen (2016-03-12):
++# Jean Antoine, editor of www.haiti-reference.com informed us that Haiti
++# are not going on DST this year. Several other resources confirm this: ...
++# http://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# http://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
++# http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Haiti 1983 only - May 8 0:00 1:00 D
+ Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+@@ -3075,8 +3144,8 @@
+ Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+ Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+ Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+-Rule Haiti 2012 max - Mar Sun>=8 2:00 1:00 D
+-Rule Haiti 2012 max - Nov Sun>=1 2:00 0 S
++Rule Haiti 2012 2015 - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+@@ -3225,6 +3294,7 @@
+ Zone America/Panama -5:18:08 - LMT 1890
+ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
++Link America/Panama America/Cayman
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+@@ -3266,7 +3336,7 @@
+ # indicating that the normal ET rules are followed.
+ #
+ # From Paul Eggert (2014-08-19):
+-# The 2014-08-13 Cabinet meeting decided to stay on UTC-4 year-round. See:
++# The 2014-08-13 Cabinet meeting decided to stay on UT -04 year-round. See:
+ # http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm
+ # Model this as a switch from EST/EDT to AST ...
+ # From Chris Walton (2014-11-04):
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -410,9 +410,9 @@
+ # stuck on Summer daylight savings time even though the summer is over.
+
+ # From Paul Eggert (2013-09-05):
+-# Perhaps San Luis operates on the legal fiction that it is at UTC-4
++# Perhaps San Luis operates on the legal fiction that it is at -04
+ # with perpetual summer time, but ordinary usage typically seems to
+-# just say it's at UTC-3; see, for example,
++# just say it's at -03; see, for example,
+ # http://es.wikipedia.org/wiki/Hora_oficial_argentina
+ # We've documented similar situations as being plain changes to
+ # standard time, so let's do that here too. This does not change UTC
+@@ -1221,6 +1221,20 @@
+ # From Paul Eggert (2015-03-03):
+ # For now, assume that the extension will persist indefinitely.
+
++# From Juan Correa (2016-03-18):
++# The decree regarding DST has been published in today's Official Gazette:
++# http://www.diariooficial.interior.gob.cl/versiones-anteriores/do/20160318/
++# http://www.leychile.cl/Navegar?idNorma=1088502
++# It does consider the second Saturday of May and August as the dates
++# for the transition; and it lists DST dates until 2019, but I think
++# this scheme will stick.
++#
++# From Paul Eggert (2016-03-18):
++# For now, assume the pattern holds for the indefinite future.
++# The decree says transitions occur at 24:00; in practice this appears
++# to mean 24:00 mainland time, not 24:00 local time, so that Easter
++# Island is always two hours behind the mainland.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
+ Rule Chile 1928 1932 - Apr 1 0:00 0 -
+@@ -1252,8 +1266,10 @@
+ Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
+ Rule Chile 2011 only - May Sun>=2 3:00u 0 -
+ Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule Chile 2012 2015 - Apr Sun>=23 3:00u 0 -
++Rule Chile 2012 2014 - Apr Sun>=23 3:00u 0 -
+ Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2016 max - May Sun>=9 3:00u 0 -
++Rule Chile 2016 max - Aug Sun>=9 4:00u 1:00 S
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -1270,13 +1286,11 @@
+ -4:00 1:00 CLST 1946 Sep 1 # central Chile
+ -4:00 - CLT 1947 Apr 1
+ -5:00 - CLT 1947 May 21 23:00
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+ Zone Pacific/Easter -7:17:28 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+ -7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
+- -6:00 Chile EAS%sT 2015 Apr 26 3:00u
+- -5:00 - EAST
++ -6:00 Chile EAS%sT
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+@@ -1295,11 +1309,10 @@
+ # Palmer used to be supplied from Argentina.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Palmer 0 - zzz 1965
++Zone Antarctica/Palmer 0 - -00 1965
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1982 May
+- -4:00 Chile CL%sT 2015 Apr 26 3:00u
+- -3:00 - CLT
++ -4:00 Chile CL%sT
+
+ # Colombia
+
+@@ -1742,9 +1755,25 @@
+ # resolution publication)
+ # http://www.globovision.com/news.php?nid=72208
+
++# From Alexander Krivenyshev (2016-04-15):
++# https://actualidad.rt.com/actualidad/204758-venezuela-modificar-huso-horario-sequia-elnino
++#
++# From Paul Eggert (2016-04-15):
++# Clocks advance 30 minutes on 2016-05-01 at 02:30....
++# "'Venezuela's new time-zone: hours without light, hours without water,
++# hours of presidential broadcasts, hours of lines,' quipped comedian
++# Jean Mary Curró ...". See: Cawthorne A, Kai D. Venezuela scraps
++# half-hour time difference set by Chavez. Reuters 2016-04-15 14:50 -0400
++# http://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
++#
++# From Matt Johnson (2016-04-20):
++# ... published in the official Gazette [2016-04-18], here:
++# http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+ -4:30 - VET 1965 Jan 1 0:00 # Venezuela T.
+ -4:00 - VET 2007 Dec 9 3:00
+- -4:30 - VET
++ -4:30 - VET 2016 May 1 2:30
++ -4:00 - VET
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -0,0 +1 @@
++2016i
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -30,22 +30,22 @@
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+ AO -0848+01314 Africa/Luanda
+-AQ -7750+16636 Antarctica/McMurdo McMurdo, South Pole, Scott (New Zealand time)
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adelie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -7750+16636 Antarctica/McMurdo New Zealand time - McMurdo, South Pole
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -56,17 +56,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AW +1230-06958 America/Aruba
+ AX +6006+01957 Europe/Mariehamn
+ AZ +4023+04951 Asia/Baku
+@@ -85,63 +85,63 @@
+ BO -1630-06809 America/La_Paz
+ BQ +120903-0681636 America/Kralendijk
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapa, E Para
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Para (east); Amapa
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Para
++BR -0226-05452 America/Santarem Para (west)
+ BR -0846-06354 America/Porto_Velho Rondonia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BW -2439+02555 Africa/Gaborone
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (peninsula), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia (Cape Breton)
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +5848-12242 America/Fort_Nelson Mountain Standard Time - Fort Nelson, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
++CD -0418+01518 Africa/Kinshasa Dem. Rep. of Congo (west)
++CD -1140+02728 Africa/Lubumbashi Dem. Rep. of Congo (east)
+ CF +0422+01835 Africa/Bangui
+ CG -0416+01517 Africa/Brazzaville
+ CH +4723+00832 Europe/Zurich
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -152,30 +152,31 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin most locations
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DE +4742+00841 Europe/Busingen Busingen
+ DJ +1136+04309 Africa/Djibouti
+ DK +5540+01235 Europe/Copenhagen
+ DM +1518-06124 America/Dominica
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galapagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+ ER +1520+03853 Africa/Asmara
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ ET +0902+03842 Africa/Addis_Ababa
+ FI +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -187,10 +188,10 @@
+ GG +4927-00232 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GM +1328-01639 Africa/Banjul
+ GN +0931-01343 Africa/Conakry
+ GP +1614-06132 America/Guadeloupe
+@@ -206,10 +207,10 @@
+ HR +4548+01558 Europe/Zagreb
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IM +5409-00428 Europe/Isle_of_Man
+@@ -235,10 +236,10 @@
+ KR +3733+12658 Asia/Seoul
+ KW +2920+04759 Asia/Kuwait
+ KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -257,12 +258,12 @@
+ ME +4226+01916 Europe/Podgorica
+ MF +1804-06305 America/Marigot
+ MG -1855+04731 Indian/Antananarivo
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+ MK +4159+02126 Europe/Skopje
+ ML +1239-00800 Africa/Bamako
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -274,20 +275,19 @@
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+ MW -1547+03500 Africa/Blantyre
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo Leon, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo Leon, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahia de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
+ MZ -2558+03235 Africa/Maputo
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+@@ -300,7 +300,7 @@
+ NP +2743+08519 Asia/Kathmandu
+ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+-NZ -3652+17446 Pacific/Auckland most locations
++NZ -3652+17446 Pacific/Auckland New Zealand (most areas)
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+ OM +2336+05835 Asia/Muscat
+ PA +0858-07932 America/Panama
+@@ -308,7 +308,7 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -318,7 +318,7 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+@@ -327,27 +327,32 @@
+ RE -2052+05528 Indian/Reunion
+ RO +4426+02606 Europe/Bucharest
+ RS +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ RW -0157+03004 Africa/Kigali
+ SA +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+@@ -386,45 +391,45 @@
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+ TZ -0648+03917 Africa/Dar_es_Salaam
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UG +0019+03225 Africa/Kampala
+ UM +1645-16931 Pacific/Johnston Johnston Atoll
+ UM +2813-17722 Pacific/Midway Midway Islands
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+ US +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VA +415408+0122711 Europe/Vatican
+ VC +1309-06114 America/St_Vincent
+ VE +1030-06656 America/Caracas
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -39,21 +39,21 @@
+ AF +3431+06912 Asia/Kabul
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Adélie Land
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -64,17 +64,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AZ +4023+04951 Asia/Baku
+ BB +1306-05937 America/Barbados
+ BD +2343+09025 Asia/Dhaka
+@@ -84,58 +84,58 @@
+ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapá, E Pará
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Pará (east); Amapá
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Pará
++BR -0226-05452 America/Santarem Pará (west)
+ BR -0846-06354 America/Porto_Velho Rondônia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (peninsula), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia (Cape Breton)
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +5848-12242 America/Fort_Nelson Mountain Standard Time - Fort Nelson, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+ CH,DE,LI +4723+00832 Europe/Zurich Swiss time
+ CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -145,25 +145,26 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW,AW,BQ,SX +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ,SK +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin Berlin time
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DK +5540+01235 Europe/Copenhagen
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galápagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ FI,AX +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -172,10 +173,10 @@
+ GF +0456-05220 America/Cayenne
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GR +3758+02343 Europe/Athens
+ GS -5416-03632 Atlantic/South_Georgia
+ GT +1438-09031 America/Guatemala
+@@ -186,10 +187,10 @@
+ HN +1406-08713 America/Tegucigalpa
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IN +2232+08822 Asia/Kolkata
+@@ -208,11 +209,10 @@
+ KI +0152-15720 Pacific/Kiritimati Line Islands
+ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+-KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -224,10 +224,10 @@
+ MA +3339-00735 Africa/Casablanca
+ MC +4342+00723 Europe/Monaco
+ MD +4700+02850 Europe/Chisinau
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -235,25 +235,24 @@
+ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+-MX +1924-09909 America/Mexico_City Central Time - most locations
++MX +1924-09909 America/Mexico_City Central Time
+ MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo León, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo León, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
+-MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahía de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
++MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+ NF -2903+16758 Pacific/Norfolk
+-NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
++NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time
+ NI +1209-08617 America/Managua
+ NL +5222+00454 Europe/Amsterdam
+ NO,SJ +5955+01045 Europe/Oslo
+@@ -262,12 +261,12 @@
+ NU -1901-16955 Pacific/Niue
+ NZ,AQ -3652+17446 Pacific/Auckland New Zealand time
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+-PA +0858-07932 America/Panama
++PA,KY +0858-07932 America/Panama
+ PE -1203-07703 America/Lima
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby most locations
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
+ PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+@@ -277,36 +276,41 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+ PY -2516-05740 America/Asuncion
+ QA,BH +2517+05132 Asia/Qatar
+-RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
++RE,TF -2052+05528 Indian/Reunion Réunion, Crozet, Scattered Islands
+ RO +4426+02606 Europe/Bucharest
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+@@ -318,8 +322,8 @@
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
+ TD +1207+01503 Africa/Ndjamena
+-TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
+-TH,KH,LA,VN +1345+10031 Asia/Bangkok most of Indochina
++TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul Island, Amsterdam Island
++TH,KH,LA,VN +1345+10031 Asia/Bangkok Indochina (most areas)
+ TJ +3835+06848 Asia/Dushanbe
+ TK -0922-17114 Pacific/Fakaofo
+ TL -0833+12535 Asia/Dili
+@@ -330,44 +334,44 @@
+ TT,AG,AI,BL,DM,GD,GP,KN,LC,MF,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+-US,UM +211825-1575130 Pacific/Honolulu Hawaii time
++US,UM +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VE +1030-06656 America/Caracas
+-VN +1045+10640 Asia/Ho_Chi_Minh south Vietnam
++VN +1045+10640 Asia/Ho_Chi_Minh Vietnam (south)
+ VU -1740+16825 Pacific/Efate
+ WF -1318-17610 Pacific/Wallis
+ WS -1350-17144 Pacific/Apia
+--- contrib/tzdata/zoneinfo2tdf.pl.orig
++++ contrib/tzdata/zoneinfo2tdf.pl
+@@ -0,0 +1,52 @@
++#! /usr/bin/perl -w
++
++# Courtesy Ken Pizzini.
++
++use strict;
++
++#This file released to the public domain.
++
++# Note: error checking is poor; trust the output only if the input
++# has been checked by zic.
++
++my $contZone = '';
++while (<>) {
++ my $origline = $_;
++ my @fields = ();
++ while (s/^\s*((?:"[^"]*"|[^\s#])+)//) {
++ push @fields, $1;
++ }
++ next unless @fields;
++
++ my $type = lc($fields[0]);
++ if ($contZone) {
++ @fields >= 3 or warn "bad continuation line";
++ unshift @fields, '+', $contZone;
++ $type = 'zone';
++ }
++
++ $contZone = '';
++ if ($type eq 'zone') {
++ # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ my $nfields = @fields;
++ $nfields >= 5 or warn "bad zone line";
++ if ($nfields > 6) {
++ #this splice is optional, depending on one's preference
++ #(one big date-time field, or componentized date and time):
++ splice(@fields, 5, $nfields-5, "@fields[5..$nfields-1]");
++ }
++ $contZone = $fields[1] if @fields > 5;
++ } elsif ($type eq 'rule') {
++ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++ @fields == 10 or warn "bad rule line";
++ } elsif ($type eq 'link') {
++ # Link TARGET LINK-NAME
++ @fields == 3 or warn "bad link line";
++ } elsif ($type eq 'leap') {
++ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
++ @fields == 7 or warn "bad leap line";
++ } else {
++ warn "Fubar at input line $.: $origline";
++ }
++ print join("\t", @fields), "\n";
++}
++native
+\ No newline at end of property
++*
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
diff --git a/share/security/patches/EN-16:20/tzdata-11.0.patch.asc b/share/security/patches/EN-16:20/tzdata-11.0.patch.asc
new file mode 100644
index 0000000000..541463a6ce
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-11.0.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1sAAoJEO1n7NZdz2rndsAQAL+3rzd73YkJJ0m/SzLGVDy5
+pt2f94JVigBt3808UVzDpwlUeqQCBl5SWfjz1zCFIRS84NCypTZIiRudEpsIQgQa
+OW39WVM4Iv4GQRAOAHuGP8xzgZJUewjVSrEQp56hQ0CbGbn4S/ckJf4ak+XcR+Mg
+IfIdL2EnlFOjDSZeh+217anBGX6ztTzApx0++FGux4Sgrgby0AffrDc9HUK7pzIo
+b8dXN/UuNbnRXFhjcmqY+vy4KiiQgCTDeIdngsKtV+DKLpmMM7PGwlW2mBUT/EfU
+6JyVaJiZPjj2fNqB1ezVXncmebupLCr25ZoelNxqTpWbzuEjxzpI3wD/wLT1U0n/
+xxWU4ySbJUgIWSYvcoZk6hNUheUEoutqHKi7QuOa1j6FF5+2Gi9jQgNCuK/jbjai
+hxS3e+yvXOFY9dt8NZRP8Rv+m4DIUV1Mcf13KINC3c5lofGuINfc06q51Ly2C9S2
+dmxB35sNXEDV4q6kWgUr/cALHaYoQgqBfB4Lta8mxWAR3ROCsIhDqVM6rlzU+cvP
+Jr8mXEg8gkz8C6C2THjYQkieZwJ2X5sYr5t1sNtB4I40neo9StqYnYGNu3RgJPK2
+d1ui0NH0gaIMIAsMcZTHbmxTZKeSjvbhk4g2elWwTZ6H7819Sm4yBJ8OPEbfvkqH
+LDN/7yH0l0YZrBEJBOUu
+=bpne
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:20/tzdata-9.3.patch b/share/security/patches/EN-16:20/tzdata-9.3.patch
new file mode 100644
index 0000000000..81e902c670
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-9.3.patch
@@ -0,0 +1,15769 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -0,0 +1,73 @@
++Contributing to the tz code and data
++
++The time zone database is by no means authoritative: governments
++change timekeeping rules erratically and sometimes with little
++warning, the data entries do not cover all of civil time before
++1970, and undoubtedly errors remain in the code and data. Feel
++free to fill gaps or fix mistakes, and please email improvements
++to tz@iana.org for use in the future.
++
++To email small changes, please run a POSIX shell command like
++'diff -u old/europe new/europe >myfix.patch', and attach
++myfix.patch to the email.
++
++For more-elaborate changes, please read the Theory file and browse
++the mailing list archives <http://mm.icann.org/pipermail/tz/> for
++examples of patches that tend to work well. Ideally, additions to
++data should contain commentary citing reliable sources as
++justification.
++
++Please submit changes against either the latest release in
++<ftp://ftp.iana.org/tz/> or the master branch of the experimental
++Git repository. If you use Git the following workflow may be helpful:
++
++ * Copy the experimental repository.
++
++ git clone https://github.com/eggert/tz.git
++ cd tz
++
++ * Get current with the master branch.
++
++ git checkout master
++ git pull
++
++ * Switch to a new branch for the changes. Choose a different
++ branch name for each change set.
++
++ git checkout -b mybranch
++
++ * Edit source files. Include commentary that justifies the
++ changes by citing reliable sources.
++
++ * Debug the changes, e.g.:
++
++ make check
++ make install
++ ./zdump -v America/Los_Angeles
++
++ * For each separable change, commit it in the new branch, e.g.:
++
++ git add northamerica
++ git commit
++
++ See recent 'git log' output for the commit-message style.
++
++ * Create patch files 0001-*, 0002-*, ...
++
++ git format-patch master
++
++ * After reviewing the patch files, send the patches to tz@iana.org
++ for others to review.
++
++ git send-email master
++
++ * Start anew by getting current with the master branch again
++ (the second step above).
++
++Please do not create issues or pull requests on GitHub, as the
++proper procedure for proposing and distributing patches is via
++email as illustrated above.
++
++-----
++
++This file is in the public domain.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -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.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -0,0 +1,793 @@
++# This file is in the public domain, so clarified as of
++# 2009-05-17 by Arthur David Olson.
++
++# Package name for the code distribution.
++PACKAGE= tzcode
++
++# Version number for the distribution, overridden in the 'tarballs' rule below.
++VERSION= unknown
++
++# Email address for bug reports.
++BUGEMAIL= tz@iana.org
++
++# Change the line below for your time zone (after finding the zone you want in
++# the time zone files, or adding it to a time zone file).
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -l rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for LOCALTIME.
++
++LOCALTIME= GMT
++
++# If you want something other than Eastern United States time as a template
++# for handling POSIX-style time zone environment variables,
++# change the line below (after finding the zone you want in the
++# time zone files, or adding it to a time zone file).
++# (When a POSIX-style environment variable is handled, the rules in the
++# template file are used to determine "spring forward" and "fall back" days and
++# times; the environment variable itself specifies UT offsets of standard and
++# summer time.)
++# Alternately, if you discover you've got the wrong time zone, you can just
++# zic -p rightzone
++# to correct things.
++# Use the command
++# make zonenames
++# to get a list of the values you can use for POSIXRULES.
++# If you want POSIX compatibility, use "America/New_York".
++
++POSIXRULES= America/New_York
++
++# Also see TZDEFRULESTRING below, which takes effect only
++# if the time zone files cannot be accessed.
++
++# Everything gets put in subdirectories of. . .
++
++TOPDIR= /usr/local
++
++# "Compiled" time zone information is placed in the "TZDIR" directory
++# (and subdirectories).
++# Use an absolute path name for TZDIR unless you're just testing the software.
++
++TZDIR_BASENAME= zoneinfo
++TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
++
++# Types to try, as an alternative to time_t. int64_t should be first.
++TIME_T_ALTERNATIVES= int64_t int32_t uint32_t uint64_t
++
++# The "tzselect", "zic", and "zdump" commands get installed in. . .
++
++ETCDIR= $(TOPDIR)/etc
++
++# If you "make INSTALL", the "date" command gets installed in. . .
++
++BINDIR= $(TOPDIR)/bin
++
++# Manual pages go in subdirectories of. . .
++
++MANDIR= $(TOPDIR)/man
++
++# Library functions are put in an archive in LIBDIR.
++
++LIBDIR= $(TOPDIR)/lib
++
++# If you always want time values interpreted as "seconds since the epoch
++# (not counting leap seconds)", use
++# REDO= posix_only
++# below. If you always want right time values interpreted as "seconds since
++# the epoch" (counting leap seconds)", use
++# REDO= right_only
++# below. If you want both sets of data available, with leap seconds not
++# counted normally, use
++# REDO= posix_right
++# below. If you want both sets of data available, with leap seconds counted
++# normally, use
++# REDO= right_posix
++# below. POSIX mandates that leap seconds not be counted; for compatibility
++# with it, use "posix_only" or "posix_right".
++
++REDO= posix_right
++
++# If you want out-of-scope and often-wrong data from the file 'backzone', use
++# PACKRATDATA= backzone
++# To omit this data, use
++# PACKRATDATA=
++
++PACKRATDATA=
++
++# Since "." may not be in PATH...
++
++YEARISTYPE= ./yearistype
++
++# Non-default libraries needed to link.
++LDLIBS=
++
++# Add the following to the end of the "CFLAGS=" line as needed.
++# -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DHAVE_DECL_ASCTIME_R=0 if <time.h> does not declare asctime_r
++# -DHAVE_DIRECT_H if mkdir needs <direct.h> (MS-Windows)
++# -DHAVE_DOS_FILE_NAMES if file names have drive specifiers etc. (MS-DOS)
++# -DHAVE_GETTEXT=1 if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R=1 if your system's time.h declares
++# ctime_r and asctime_r incompatibly with the POSIX standard
++# (Solaris when _POSIX_PTHREAD_SEMANTICS is not defined).
++# -DHAVE_INTTYPES_H=1 if you have a pre-C99 compiler with "inttypes.h"
++# -DHAVE_LINK=0 if your system lacks a link function
++# -DHAVE_LOCALTIME_R=0 if your system lacks a localtime_r function
++# -DHAVE_LOCALTIME_RZ=0 if you do not want zdump to use localtime_rz
++# This defaults to 1 if a working localtime_rz seems to be available.
++# localtime_rz can make zdump significantly faster, but is nonstandard.
++# -DHAVE_POSIX_DECLS=0 if your system's include files do not declare
++# functions like 'link' or variables like 'tzname' required by POSIX
++# -DHAVE_STDINT_H=1 if you have a pre-C99 compiler with "stdint.h"
++# -DHAVE_STRFTIME_L=1 if <time.h> declares locale_t and strftime_l
++# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_STRDUP=0 if your system lacks the strdup function
++# -DHAVE_SYMLINK=0 if your system lacks the symlink function
++# -DHAVE_SYS_STAT_H=0 if your compiler lacks a "sys/stat.h"
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a "sys/wait.h"
++# -DHAVE_TZSET=0 if your system lacks a tzset function
++# -DHAVE_UNISTD_H=0 if your compiler lacks a "unistd.h" (Microsoft C++ 7?)
++# -DEPOCH_LOCAL=1 if the 'time' function returns local time not UT
++# -DEPOCH_OFFSET=N if the 'time' function returns a value N greater
++# than what POSIX specifies, assuming local time is UT.
++# For example, N is 252460800 on AmigaOS.
++# -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU=1
++# if you do not want run time warnings about formats that may cause
++# year 2000 grief
++# -Dssize_t=long on ancient hosts that lack ssize_t
++# -DTHREAD_SAFE=1 to make localtime.c thread-safe, as POSIX requires;
++# not needed by the main-program tz code, which is single-threaded.
++# Append other compiler flags as needed, e.g., -pthread on GNU/Linux.
++# -Dtime_tz=\"T\" to use T as the time_t type, rather than the system time_t
++# -DTZ_DOMAIN=\"foo\" to use "foo" for gettext domain name; default is "tz"
++# -DTZ_DOMAINDIR=\"/path\" to use "/path" for gettext directory;
++# the default is system-supplied, typically "/usr/lib/locale"
++# -DTZDEFRULESTRING=\",date/time,date/time\" to default to the specified
++# DST transitions if the time zone files cannot be accessed
++# -DUNINIT_TRAP=1 if reading uninitialized storage can cause problems
++# other than simply getting garbage data
++# -DUSE_LTZ=0 to build zdump with the system time zone library
++# Also set TZDOBJS=zdump.o and CHECK_TIME_T_ALTERNATIVES= below.
++# -DZIC_MAX_ABBR_LEN_WO_WARN=3
++# (or some other number) to set the maximum time zone abbreviation length
++# that zic will accept without a warning (the default is 6)
++# $(GCC_DEBUG_FLAGS) if you are using recent GCC and want lots of checking
++GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-common -fstrict-aliasing \
++ -Wall -Wextra \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement \
++ -Wdouble-promotion \
++ -Wformat=2 -Winit-self -Wjump-misses-init \
++ -Wlogical-op -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wstrict-prototypes -Wsuggest-attribute=const \
++ -Wsuggest-attribute=format -Wsuggest-attribute=noreturn \
++ -Wsuggest-attribute=pure -Wtrampolines \
++ -Wunused -Wwrite-strings \
++ -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
++ -Wno-type-limits -Wno-unused-parameter
++#
++# If you want to use System V compatibility code, add
++# -DUSG_COMPAT
++# to the end of the "CFLAGS=" line. This arrange for "timezone" and "daylight"
++# variables to be kept up-to-date by the time conversion functions. Neither
++# "timezone" nor "daylight" is described in X3J11's work.
++#
++# If your system has a "GMT offset" field in its "struct tm"s
++# (or if you decide to add such a field in your system's "time.h" file),
++# add the name to a define such as
++# -DTM_GMTOFF=tm_gmtoff
++# to the end of the "CFLAGS=" line. If not defined, the code attempts to
++# guess TM_GMTOFF from other macros; define NO_TM_GMTOFF to suppress this.
++# Similarly, if your system has a "zone abbreviation" field, define
++# -DTM_ZONE=tm_zone
++# and define NO_TM_ZONE to suppress any guessing. These two fields are not
++# required by POSIX, but are widely available on GNU/Linux and BSD systems.
++#
++# If you want functions that were inspired by early versions of X3J11's work,
++# add
++# -DSTD_INSPIRED
++# to the end of the "CFLAGS=" line. This arranges for the functions
++# "tzsetwall", "offtime", "timelocal", "timegm", "timeoff",
++# "posix2time", and "time2posix" to be added to the time conversion library.
++# "tzsetwall" is like "tzset" except that it arranges for local wall clock
++# time (rather than the time specified in the TZ environment variable)
++# to be used.
++# "offtime" is like "gmtime" except that it accepts a second (long) argument
++# that gives an offset to add to the time_t when converting it.
++# "timelocal" is equivalent to "mktime".
++# "timegm" is like "timelocal" except that it turns a struct tm into
++# a time_t using UT (rather than local time as "timelocal" does).
++# "timeoff" is like "timegm" except that it accepts a second (long) argument
++# that gives an offset to use when converting to a time_t.
++# "posix2time" and "time2posix" are described in an included manual page.
++# X3J11's work does not describe any of these functions.
++# Sun has provided "tzsetwall", "timelocal", and "timegm" in SunOS 4.0.
++# These functions may well disappear in future releases of the time
++# conversion package.
++#
++# If you don't want functions that were inspired by NetBSD, add
++# -DNETBSD_INSPIRED=0
++# to the end of the "CFLAGS=" line. Otherwise, the functions
++# "localtime_rz", "mktime_z", "tzalloc", and "tzfree" are added to the
++# time library, and if STD_INSPIRED is also defined the functions
++# "posix2time_z" and "time2posix_z" are added as well.
++# The functions ending in "_z" (or "_rz") are like their unsuffixed
++# (or suffixed-by-"_r") counterparts, except with an extra first
++# argument of opaque type timezone_t that specifies the time zone.
++# "tzalloc" allocates a timezone_t value, and "tzfree" frees it.
++#
++# If you want to allocate state structures in localtime, add
++# -DALL_STATE
++# to the end of the "CFLAGS=" line. Storage is obtained by calling malloc.
++#
++# If you want an "altzone" variable (a la System V Release 3.1), add
++# -DALTZONE
++# to the end of the "CFLAGS=" line.
++# This variable is not described in X3J11's work.
++#
++# NIST-PCTS:151-2, Version 1.4, (1993-12-03) is a test suite put
++# out by the National Institute of Standards and Technology
++# which claims to test C and Posix conformance. If you want to pass PCTS, add
++# -DPCTS
++# to the end of the "CFLAGS=" line.
++#
++# If you want strict compliance with XPG4 as of 1994-04-09, add
++# -DXPG4_1994_04_09
++# to the end of the "CFLAGS=" line. This causes "strftime" to always return
++# 53 as a week number (rather than 52 or 53) for those days in January that
++# before the first Monday in January when a "%V" format is used and January 1
++# falls on a Friday, Saturday, or Sunday.
++
++CFLAGS=
++
++# Linker flags. Default to $(LFLAGS) for backwards compatibility
++# to release 2012h and earlier.
++
++LDFLAGS= $(LFLAGS)
++
++# For leap seconds, this Makefile uses LEAPSECONDS='-L leapseconds' in
++# submake command lines. The default is no leap seconds.
++
++LEAPSECONDS=
++
++# The zic command and its arguments.
++
++zic= ./zic
++ZIC= $(zic) $(ZFLAGS)
++
++ZFLAGS=
++
++# How to use zic to install tz binary files.
++
++ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++
++# The name of a Posix-compliant 'awk' on your system.
++AWK= awk
++
++# The full path name of a Posix-compliant shell, preferably one that supports
++# the Korn shell's 'select' statement as an extension.
++# These days, Bash is the most popular.
++# It should be OK to set this to /bin/sh, on platforms where /bin/sh
++# lacks 'select' or doesn't completely conform to Posix, but /bin/bash
++# is typically nicer if it works.
++KSHELL= /bin/bash
++
++# The path where SGML DTDs are kept and the catalog file(s) to use when
++# validating. The default should work on both Debian and Red Hat.
++SGML_TOPDIR= /usr
++SGML_DTDDIR= $(SGML_TOPDIR)/share/xml/w3c-sgml-lib/schema/dtd
++SGML_SEARCH_PATH= $(SGML_DTDDIR)/REC-html401-19991224
++SGML_CATALOG_FILES= \
++ $(SGML_TOPDIR)/share/doc/w3-recs/html/www.w3.org/TR/1999/REC-html401-19991224/HTML4.cat:$(SGML_TOPDIR)/share/sgml/html/4.01/HTML4.cat
++
++# The name, arguments and environment of a program to validate your web pages.
++# See <http://openjade.sourceforge.net/doc/> for a validator, and
++# <https://validator.w3.org/source/> for a validation library.
++VALIDATE = nsgmls
++VALIDATE_FLAGS = -s -B -wall -wno-unused-param
++VALIDATE_ENV = \
++ SGML_CATALOG_FILES=$(SGML_CATALOG_FILES) \
++ SGML_SEARCH_PATH=$(SGML_SEARCH_PATH) \
++ SP_CHARSET_FIXED=YES \
++ SP_ENCODING=UTF-8
++
++# This expensive test requires USE_LTZ.
++# To suppress it, define this macro to be empty.
++CHECK_TIME_T_ALTERNATIVES = check_time_t_alternatives
++
++# SAFE_CHAR is a regular expression that matches a safe character.
++# Some parts of this distribution are limited to safe characters;
++# others can use any UTF-8 character.
++# For now, the safe characters are a safe subset of ASCII.
++# The caller must set the shell variable 'sharp' to the character '#',
++# since Makefile macros cannot contain '#'.
++# TAB_CHAR is a single tab character, in single quotes.
++TAB_CHAR= ' '
++SAFE_CHARSET1= $(TAB_CHAR)' !\"'$$sharp'$$%&'\''()*+,./0123456789:;<=>?@'
++SAFE_CHARSET2= 'ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\^_`'
++SAFE_CHARSET3= 'abcdefghijklmnopqrstuvwxyz{|}~'
++SAFE_CHARSET= $(SAFE_CHARSET1)$(SAFE_CHARSET2)$(SAFE_CHARSET3)
++SAFE_CHAR= '[]'$(SAFE_CHARSET)'-]'
++
++# OK_CHAR matches any character allowed in the distributed files.
++# This is the same as SAFE_CHAR, except that multibyte letters are
++# also allowed so that commentary can contain people's names and quote
++# non-English sources. For non-letters the sources are limited to
++# ASCII renderings for the convenience of maintainers whose text editors
++# mishandle UTF-8 by default (e.g., XEmacs 21.4.22).
++OK_CHAR= '[][:alpha:]'$(SAFE_CHARSET)'-]'
++
++# SAFE_LINE matches a line of safe characters.
++# SAFE_SHARP_LINE is similar, except any OK character can follow '#';
++# this is so that comments can contain non-ASCII characters.
++# OK_LINE matches a line of OK characters.
++SAFE_LINE= '^'$(SAFE_CHAR)'*$$'
++SAFE_SHARP_LINE='^'$(SAFE_CHAR)'*('$$sharp$(OK_CHAR)'*)?$$'
++OK_LINE= '^'$(OK_CHAR)'*$$'
++
++# Flags to give 'tar' when making a distribution.
++# Try to use flags appropriate for GNU tar.
++GNUTARFLAGS= --numeric-owner --owner=0 --group=0 --mode=go+u,go-w --sort=name
++TARFLAGS= `if tar $(GNUTARFLAGS) --version >/dev/null 2>&1; \
++ then echo $(GNUTARFLAGS); \
++ else :; \
++ fi`
++
++# Flags to give 'gzip' when making a distribution.
++GZIPFLAGS= -9n
++
++###############################################################################
++
++#MAKE= make
++
++cc= cc
++CC= $(cc) -DTZDIR=\"$(TZDIR)\"
++
++AR= ar
++
++# ':' on typical hosts; 'ranlib' on the ancient hosts that still need ranlib.
++RANLIB= :
++
++TZCOBJS= zic.o
++TZDOBJS= zdump.o localtime.o asctime.o
++DATEOBJS= date.o localtime.o strftime.o asctime.o
++LIBSRCS= localtime.c asctime.c difftime.c
++LIBOBJS= localtime.o asctime.o difftime.o
++HEADERS= tzfile.h private.h
++NONLIBSRCS= zic.c zdump.c
++NEWUCBSRCS= date.c strftime.c
++SOURCES= $(HEADERS) $(LIBSRCS) $(NONLIBSRCS) $(NEWUCBSRCS) \
++ tzselect.ksh workman.sh
++MANS= newctime.3 newstrftime.3 newtzset.3 time2posix.3 \
++ tzfile.5 tzselect.8 zic.8 zdump.8
++MANTXTS= newctime.3.txt newstrftime.3.txt newtzset.3.txt \
++ time2posix.3.txt \
++ tzfile.5.txt tzselect.8.txt zic.8.txt zdump.8.txt \
++ date.1.txt
++COMMON= CONTRIBUTING LICENSE Makefile NEWS README Theory version
++WEB_PAGES= tz-art.htm tz-how-to.html tz-link.htm
++DOCS= $(MANS) date.1 $(MANTXTS) $(WEB_PAGES)
++PRIMARY_YDATA= africa antarctica asia australasia \
++ europe northamerica southamerica
++YDATA= $(PRIMARY_YDATA) pacificnew etcetera backward
++NDATA= systemv factory
++TDATA= $(YDATA) $(NDATA)
++ZONETABLES= zone1970.tab zone.tab
++TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++LEAP_DEPS= leapseconds.awk leap-seconds.list
++DATA= $(YDATA) $(NDATA) backzone $(TABDATA) \
++ leap-seconds.list yearistype.sh
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk
++MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
++TZS_YEAR= 2050
++TZS= to$(TZS_YEAR).tzs
++TZS_NEW= to$(TZS_YEAR)new.tzs
++TZS_DEPS= $(PRIMARY_YDATA) asctime.c localtime.c \
++ private.h tzfile.h zdump.c zic.c
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS)
++
++# Consult these files when deciding whether to rebuild the 'version' file.
++# This list is not the same as the output of 'git ls-files', since
++# .gitignore is not distributed.
++VERSION_DEPS= \
++ CONTRIBUTING LICENSE Makefile NEWS README Theory \
++ africa antarctica asctime.c asia australasia \
++ backward backzone \
++ checklinks.awk checktab.awk \
++ date.1 date.c difftime.c \
++ etcetera europe factory iso3166.tab \
++ leap-seconds.list leapseconds.awk localtime.c \
++ newctime.3 newstrftime.3 newtzset.3 northamerica \
++ pacificnew private.h \
++ southamerica strftime.c systemv \
++ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
++ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
++ workman.sh yearistype.sh \
++ zdump.8 zdump.c zic.8 zic.c \
++ zone.tab zone1970.tab zoneinfo2tdf.pl
++
++# And for the benefit of csh users on systems that assume the user
++# shell should be used to handle commands in Makefiles. . .
++
++SHELL= /bin/sh
++
++all: tzselect yearistype zic zdump libtz.a $(TABDATA)
++
++ALL: all date $(ENCHILADA)
++
++install: all $(DATA) $(REDO) $(MANS)
++ mkdir -p $(DESTDIR)$(ETCDIR) $(DESTDIR)$(TZDIR) \
++ $(DESTDIR)$(LIBDIR) \
++ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
++ $(DESTDIR)$(MANDIR)/man8
++ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
++ cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
++ cp libtz.a $(DESTDIR)$(LIBDIR)/.
++ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
++ cp -f newctime.3 newtzset.3 $(DESTDIR)$(MANDIR)/man3/.
++ cp -f tzfile.5 $(DESTDIR)$(MANDIR)/man5/.
++ cp -f tzselect.8 zdump.8 zic.8 $(DESTDIR)$(MANDIR)/man8/.
++
++INSTALL: ALL install date.1
++ mkdir -p $(DESTDIR)$(BINDIR) $(DESTDIR)$(MANDIR)/man1
++ cp date $(DESTDIR)$(BINDIR)/.
++ cp -f date.1 $(DESTDIR)$(MANDIR)/man1/.
++
++version: $(VERSION_DEPS)
++ { (type git) >/dev/null 2>&1 && \
++ V=`git describe --match '[0-9][0-9][0-9][0-9][a-z]*' \
++ --abbrev=7 --dirty` || \
++ V=$(VERSION); } && \
++ printf '%s\n' "$$V" >$@.out
++ mv $@.out $@
++
++version.h: version
++ VERSION=`cat version` && printf '%s\n' \
++ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
++ "static char const TZVERSION[]=\"$$VERSION\";" \
++ 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";' \
++ >$@.out
++ mv $@.out $@
++
++zdump: $(TZDOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
++
++zic: $(TZCOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZCOBJS) $(LDLIBS)
++
++yearistype: yearistype.sh
++ cp yearistype.sh yearistype
++ chmod +x yearistype
++
++leapseconds: $(LEAP_DEPS)
++ $(AWK) -f leapseconds.awk leap-seconds.list >$@.out
++ mv $@.out $@
++
++# Arguments to pass to submakes of install_data.
++# They can be overridden by later submake arguments.
++INSTALLARGS = \
++ DESTDIR=$(DESTDIR) \
++ LEAPSECONDS='$(LEAPSECONDS)' \
++ PACKRATDATA='$(PACKRATDATA)' \
++ TZDIR=$(TZDIR) \
++ YEARISTYPE=$(YEARISTYPE) \
++ ZIC='$(ZIC)'
++
++# 'make install_data' installs one set of tz binary files.
++# It can be tailored by setting LEAPSECONDS, PACKRATDATA, etc.
++install_data: zic leapseconds yearistype $(PACKRATDATA) $(TDATA)
++ $(ZIC_INSTALL) $(TDATA)
++ $(AWK) '/^Rule/' $(TDATA) | $(ZIC_INSTALL) - $(PACKRATDATA)
++
++posix_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
++
++right_only:
++ $(MAKE) $(INSTALLARGS) LEAPSECONDS='-L leapseconds' \
++ install_data
++
++# In earlier versions of this makefile, the other two directories were
++# subdirectories of $(TZDIR). However, this led to configuration errors.
++# For example, with posix_right under the earlier scheme,
++# TZ='right/Australia/Adelaide' got you localtime with leap seconds,
++# but gmtime without leap seconds, which led to problems with applications
++# like sendmail that subtract gmtime from localtime.
++# Therefore, the other two directories are now siblings of $(TZDIR).
++# You must replace all of $(TZDIR) to switch from not using leap seconds
++# to using them, or vice versa.
++right_posix: right_only
++ rm -fr $(DESTDIR)$(TZDIR)-leaps
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-leaps || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++
++posix_right: posix_only
++ rm -fr $(DESTDIR)$(TZDIR)-posix
++ ln -s $(TZDIR_BASENAME) $(DESTDIR)$(TZDIR)-posix || \
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-posix posix_only
++ $(MAKE) $(INSTALLARGS) TZDIR=$(TZDIR)-leaps right_only
++
++# This obsolescent rule is present for backwards compatibility with
++# tz releases 2014g through 2015g. It should go away eventually.
++posix_packrat:
++ $(MAKE) $(INSTALLARGS) PACKRATDATA=backzone posix_only
++
++zones: $(REDO)
++
++$(TZS_NEW): $(TDATA) zdump zic
++ mkdir -p tzs.dir
++ $(zic) -d tzs.dir $(TDATA)
++ $(AWK) '/^Link/{print $$1 "\t" $$2 "\t" $$3}' \
++ $(TDATA) | LC_ALL=C sort >$@.out
++ wd=`pwd` && \
++ zones=`$(AWK) -v wd="$$wd" \
++ '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ | LC_ALL=C sort` && \
++ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
++ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
++ rm -fr tzs.dir $@.out
++ mv $@.sed.out $@
++
++# If $(TZS) does not already exist (e.g., old-format tarballs), create it.
++# If it exists but 'make check_tzs' fails, a maintainer should inspect the
++# failed output and fix the inconsistency, perhaps by running 'make force_tzs'.
++$(TZS):
++ $(MAKE) force_tzs
++
++force_tzs: $(TZS_NEW)
++ cp $(TZS_NEW) $(TZS)
++
++libtz.a: $(LIBOBJS)
++ $(AR) ru $@ $(LIBOBJS)
++ $(RANLIB) $@
++
++date: $(DATEOBJS)
++ $(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(DATEOBJS) $(LDLIBS)
++
++tzselect: tzselect.ksh version
++ VERSION=`cat version` && sed \
++ -e 's|#!/bin/bash|#!$(KSHELL)|g' \
++ -e 's|AWK=[^}]*|AWK=$(AWK)|g' \
++ -e 's|\(PKGVERSION\)=.*|\1='\''($(PACKAGE)) '\''|' \
++ -e 's|\(REPORT_BUGS_TO\)=.*|\1=$(BUGEMAIL)|' \
++ -e 's|TZDIR=[^}]*|TZDIR=$(TZDIR)|' \
++ -e 's|\(TZVERSION\)=.*|\1='"$$VERSION"'|' \
++ <$@.ksh >$@.out
++ chmod +x $@.out
++ mv $@.out $@
++
++check: check_character_set check_white_space check_links check_sorted \
++ check_tables check_tzs check_web
++
++check_character_set: $(ENCHILADA)
++ LC_ALL=en_US.utf8 && export LC_ALL && \
++ sharp='#' && \
++ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
++ $(MISC) $(SOURCES) $(WEB_PAGES) \
++ CONTRIBUTING LICENSE Makefile README version && \
++ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
++ leapseconds yearistype.sh zone.tab && \
++ ! grep -Env $(OK_LINE) $(ENCHILADA)
++
++check_white_space: $(ENCHILADA)
++ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
++ ! grep -En "$$pat" $(ENCHILADA)
++ ! grep -n '[[:space:]]$$' $(ENCHILADA)
++
++CHECK_CC_LIST = { n = split($$1,a,/,/); for (i=2; i<=n; i++) print a[1], a[i]; }
++
++check_sorted: backward backzone iso3166.tab zone.tab zone1970.tab
++ $(AWK) '/^Link/ {print $$3}' backward | LC_ALL=C sort -cu
++ $(AWK) '/^Zone/ {print $$2}' backzone | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' iso3166.tab | LC_ALL=C sort -cu
++ $(AWK) '/^[^#]/ {print $$1}' zone.tab | LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ {print substr($$0, 1, 2)}' zone1970.tab | \
++ LC_ALL=C sort -c
++ $(AWK) '/^[^#]/ $(CHECK_CC_LIST)' zone1970.tab | \
++ LC_ALL=C sort -cu
++
++check_links: checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk $(TDATA)
++
++check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
++ for tab in $(ZONETABLES); do \
++ $(AWK) -f checktab.awk -v zone_table=$$tab $(PRIMARY_YDATA) \
++ || exit; \
++ done
++
++check_tzs: $(TZS) $(TZS_NEW)
++ diff -u $(TZS) $(TZS_NEW)
++
++check_web: $(WEB_PAGES)
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++
++clean_misc:
++ rm -f core *.o *.out \
++ date tzselect version.h zdump zic yearistype libtz.a
++clean: clean_misc
++ rm -fr *.dir tzdb-*/ $(TZS_NEW)
++
++maintainer-clean: clean
++ @echo 'This command is intended for maintainers to use; it'
++ @echo 'deletes files that may need special tools to rebuild.'
++ rm -f leapseconds version $(MANTXTS) $(TZS) *.asc *.tar.*
++
++names:
++ @echo $(ENCHILADA)
++
++public: check check_public $(CHECK_TIME_T_ALTERNATIVES) \
++ tarballs signatures
++
++date.1.txt: date.1
++newctime.3.txt: newctime.3
++newstrftime.3.txt: newstrftime.3
++newtzset.3.txt: newtzset.3
++time2posix.3.txt: time2posix.3
++tzfile.5.txt: tzfile.5
++tzselect.8.txt: tzselect.8
++zdump.8.txt: zdump.8
++zic.8.txt: zic.8
++
++$(MANTXTS): workman.sh
++ LC_ALL=C sh workman.sh `expr $@ : '\(.*\)\.txt$$'` >$@.out
++ mv $@.out $@
++
++# Set the time stamps to those of the git repository, if available,
++# and if the files have not changed since then.
++# This uses GNU 'touch' syntax 'touch -d@N FILE',
++# where N is the number of seconds since 1970.
++# If git or GNU 'touch' is absent, don't bother to sync with git timestamps.
++# Also, set the timestamp of each prebuilt file like 'leapseconds'
++# to be the maximum of the files it depends on.
++set-timestamps.out: $(ENCHILADA)
++ rm -f $@
++ if (type git) >/dev/null 2>&1 && \
++ files=`git ls-files $(ENCHILADA)` && \
++ touch -md @1 test.out; then \
++ rm -f test.out && \
++ for file in $$files; do \
++ if git diff --quiet $$file; then \
++ time=`git log -1 --format='tformat:%ct' $$file` && \
++ touch -cmd @$$time $$file; \
++ else \
++ echo >&2 "$$file: warning: does not match repository"; \
++ fi || exit; \
++ done; \
++ fi
++ touch -cmr `ls -t $(LEAP_DEPS) | sed 1q` leapseconds
++ for file in `ls $(MANTXTS) | sed 's/\.txt$$//'`; do \
++ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
++ exit; \
++ done
++ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
++ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
++ touch $@
++
++# The zics below ensure that each data file can stand on its own.
++# We also do an all-files run to catch links to links.
++
++check_public:
++ $(MAKE) maintainer-clean
++ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
++ mkdir -p public.dir
++ for i in $(TDATA) ; do \
++ $(zic) -v -d public.dir $$i 2>&1 || exit; \
++ done
++ $(zic) -v -d public.dir $(TDATA)
++ rm -fr public.dir
++
++# Check that the code works under various alternative
++# implementations of time_t.
++check_time_t_alternatives:
++ if diff -q Makefile Makefile 2>/dev/null; then \
++ quiet_option='-q'; \
++ else \
++ quiet_option=''; \
++ fi && \
++ wd=`pwd` && \
++ zones=`$(AWK) '/^[^#]/ { print $$3 }' <zone1970.tab` && \
++ for type in $(TIME_T_ALTERNATIVES); do \
++ mkdir -p time_t.dir/$$type && \
++ $(MAKE) clean_misc && \
++ $(MAKE) TOPDIR="$$wd/time_t.dir/$$type" \
++ CFLAGS='$(CFLAGS) -Dtime_tz='"'$$type'" \
++ REDO='$(REDO)' \
++ install && \
++ diff $$quiet_option -r \
++ time_t.dir/int64_t/etc/zoneinfo \
++ time_t.dir/$$type/etc/zoneinfo && \
++ case $$type in \
++ int32_t) range=-2147483648,2147483647;; \
++ uint32_t) range=0,4294967296;; \
++ int64_t) continue;; \
++ *u*) range=0,10000000000;; \
++ *) range=-10000000000,10000000000;; \
++ esac && \
++ echo checking $$type zones ... && \
++ time_t.dir/int64_t/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/int64_t.out && \
++ time_t.dir/$$type/etc/zdump -V -t $$range $$zones \
++ >time_t.dir/$$type.out && \
++ diff -u time_t.dir/int64_t.out time_t.dir/$$type.out \
++ || exit; \
++ done
++ rm -fr time_t.dir
++
++tarballs traditional_tarballs signatures traditional_signatures: version
++ VERSION=`cat version` && \
++ $(MAKE) VERSION="$$VERSION" $@_version
++
++tarballs_version: traditional_tarballs_version tzdb-$(VERSION).tar.lz
++traditional_tarballs_version: \
++ tzcode$(VERSION).tar.gz tzdata$(VERSION).tar.gz
++signatures_version: traditional_signatures_version tzdb-$(VERSION).tar.lz.asc
++traditional_signatures_version: \
++ tzcode$(VERSION).tar.gz.asc tzdata$(VERSION).tar.gz.asc \
++
++tzcode$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - \
++ $(COMMON) $(DOCS) $(SOURCES) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdata$(VERSION).tar.gz: set-timestamps.out
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - $(COMMON) $(DATA) $(MISC) | \
++ gzip $(GZIPFLAGS) >$@.out
++ mv $@.out $@
++
++tzdb-$(VERSION).tar.lz: set-timestamps.out
++ rm -fr tzdb-$(VERSION)
++ mkdir tzdb-$(VERSION)
++ ln $(ENCHILADA) tzdb-$(VERSION)
++ touch -cmr `ls -t tzdb-$(VERSION)/* | sed 1q` tzdb-$(VERSION)
++ LC_ALL=C && export LC_ALL && \
++ tar $(TARFLAGS) -cf - tzdb-$(VERSION) | lzip -9 >$@.out
++ mv $@.out $@
++
++tzcode$(VERSION).tar.gz.asc: tzcode$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdata$(VERSION).tar.gz.asc: tzdata$(VERSION).tar.gz
++ gpg --armor --detach-sign $?
++
++tzdb-$(VERSION).tar.lz.asc: tzdb-$(VERSION).tar.lz
++ gpg --armor --detach-sign $?
++
++typecheck:
++ $(MAKE) clean
++ for i in "long long" unsigned; \
++ do \
++ $(MAKE) CFLAGS="-DTYPECHECK -D__time_t_defined -D_TIME_T \"-Dtime_t=$$i\"" ; \
++ ./zdump -v Europe/Rome ; \
++ $(MAKE) clean ; \
++ done
++
++zonenames: $(TDATA)
++ @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++
++asctime.o: private.h tzfile.h
++date.o: private.h
++difftime.o: private.h
++localtime.o: private.h tzfile.h
++strftime.o: private.h tzfile.h
++zdump.o: version.h
++zic.o: private.h tzfile.h version.h
++
++.KEEP_STATE:
++
++.PHONY: ALL INSTALL all
++.PHONY: check check_character_set check_links
++.PHONY: check_public check_sorted check_tables
++.PHONY: check_time_t_alternatives check_tzs check_web check_white_space
++.PHONY: clean clean_misc force_tzs
++.PHONY: install install_data maintainer-clean names
++.PHONY: posix_only posix_packrat posix_right
++.PHONY: public right_only right_posix signatures signatures_version
++.PHONY: tarballs tarballs_version typecheck
++.PHONY: zonenames zones
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -0,0 +1,3782 @@
++News for the tz database
++
++Release 2016i - 2016-11-01 23:19:52 -0700
++
++ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
++ reintroduces DST on 2016-11-06.
++
++ Changes to future time stamps
++
++ Pacific/Tongatapu begins DST on 2016-11-06 at 02:00, ending on
++ 2017-01-15 at 03:00. Assume future observances in Tonga will be
++ from the first Sunday in November through the third Sunday in
++ January, like Fiji. (Thanks to Pulu ʻAnau.) Switch to numeric
++ time zone abbreviations for this zone.
++
++ Changes to past and future time stamps
++
++ Northern Cyprus is now +03 year round, causing a split in Cyprus
++ time zones starting 2016-10-30 at 04:00. This creates a zone
++ Asia/Famagusta. (Thanks to Even Scharning and Matt Johnson.)
++
++ Antarctica/Casey switched from +08 to +11 on 2016-10-22.
++ (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Several corrections were made for pre-1975 time stamps in Italy.
++ These affect Europe/Malta, Europe/Rome, Europe/San_Marino, and
++ Europe/Vatican.
++
++ First, the 1893-11-01 00:00 transition in Italy used the new UT
++ offset (+01), not the old (+00:49:56). (Thanks to Michael
++ Deckers.)
++
++ Second, rules for daylight saving in Italy were changed to agree
++ with Italy's National Institute of Metrological Research (INRiM)
++ except for 1944, as follows (thanks to Pierpaolo Bernardi, Brian
++ Inglis, and Michael Deckers):
++
++ The 1916-06-03 transition was at 24:00, not 00:00.
++
++ The 1916-10-01, 1919-10-05, and 1920-09-19 transitions were at
++ 00:00, not 01:00.
++
++ The 1917-09-30 and 1918-10-06 transitions were at 24:00, not
++ 01:00.
++
++ The 1944-09-17 transition was at 03:00, not 01:00. This
++ particular change is taken from Italian law as INRiM's table,
++ (which says 02:00) appears to have a typo here. Also, keep the
++ 1944-04-03 transition for Europe/Rome, as Rome was controlled by
++ Germany then.
++
++ The 1967-1970 and 1972-1974 fallback transitions were at 01:00,
++ not 00:00.
++
++ Changes to code
++
++ The code should now be buildable on AmigaOS merely by setting the
++ appropriate Makefile variables. (From a patch by Carsten Larsen.)
++
++
++Release 2016h - 2016-10-19 23:17:57 -0700
++
++ Changes to future time stamps
++
++ Asia/Gaza and Asia/Hebron end DST on 2016-10-29 at 01:00, not
++ 2016-10-21 at 00:00. (Thanks to Sharef Mustafa.) Predict that
++ future fall transitions will be on the last Saturday of October
++ at 01:00, which is consistent with predicted spring transitions
++ on the last Saturday of March. (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ In Turkey, transitions in 1986-1990 were at 01:00 standard time
++ not at 02:00, and the spring 1994 transition was on March 20, not
++ March 27. (Thanks to Kıvanç Yazan.)
++
++ Changes to past and future time zone abbreviations
++
++ Asia/Colombo now uses numeric time zone abbreviations like "+0530"
++ instead of alphabetic ones like "IST" and "LKT". Various
++ English-language sources use "IST", "LKT" and "SLST", with no
++ working consensus. (Usage of "SLST" mentioned by Sadika
++ Sumanapala.)
++
++ Changes to code
++
++ zic no longer mishandles relativizing file names when creating
++ symbolic links like /etc/localtime, when these symbolic links
++ are outside the usual directory hierarchy. This fixes a bug
++ introduced in 2016g. (Problem reported by Andreas Stieger.)
++
++ Changes to build procedure
++
++ New rules 'traditional_tarballs' and 'traditional_signatures' for
++ building just the traditional-format distribution. (Requested by
++ Deborah Goldsmith.)
++
++ The file 'version' is now put into the tzdata tarball too.
++ (Requested by Howard Hinnant.)
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now has a section on interface stability.
++ (Requested by Paul Koning.) It also mentions features like
++ tm_zone and localtime_rz that have long been supported by the
++ reference code.
++
++ tz-link.htm has improved coverage of time zone boundaries suitable
++ for geolocation. (Thanks to heads-ups from Evan Siroky and Matt
++ Johnson.)
++
++ The US commentary now mentions Allen and the "day of two noons".
++
++ The Fiji commentary mentions the government's 2016-10-03 press
++ release. (Thanks to Raymond Kumar.)
++
++
++Release 2016g - 2016-09-13 08:56:38 -0700
++
++ Changes to future time stamps
++
++ Turkey switched from EET/EEST (+02/+03) to permanent +03,
++ effective 2016-09-07. (Thanks to Burak AYDIN.) Use "+03" rather
++ than an invented abbreviation for the new time.
++
++ New leap second 2016-12-31 23:59:60 UTC as per IERS Bulletin C 52.
++ (Thanks to Tim Parenti.)
++
++ Changes to past time stamps
++
++ For America/Los_Angeles, spring-forward transition times have been
++ corrected from 02:00 to 02:01 in 1948, and from 02:00 to 01:00 in
++ 1950-1966.
++
++ For zones using Soviet time on 1919-07-01, transitions to UT-based
++ time were at 00:00 UT, not at 02:00 local time. The affected
++ zones are Europe/Kirov, Europe/Moscow, Europe/Samara, and
++ Europe/Ulyanovsk. (Thanks to Alexander Belopolsky.)
++
++ Changes to past and future time zone abbreviations
++
++ The Factory zone now uses the time zone abbreviation -00 instead
++ of a long English-language string, as -00 is now the normal way to
++ represent an undefined time zone.
++
++ Several zones in Antarctica and the former Soviet Union, along
++ with zones intended for ships at sea that cannot use POSIX TZ
++ strings, now use numeric time zone abbreviations instead of
++ invented or obsolete alphanumeric abbreviations. The affected
++ zones are Antarctica/Casey, Antarctica/Davis,
++ Antarctica/DumontDUrville, Antarctica/Mawson, Antarctica/Rothera,
++ Antarctica/Syowa, Antarctica/Troll, Antarctica/Vostok,
++ Asia/Anadyr, Asia/Ashgabat, Asia/Baku, Asia/Bishkek, Asia/Chita,
++ Asia/Dushanbe, Asia/Irkutsk, Asia/Kamchatka, Asia/Khandyga,
++ Asia/Krasnoyarsk, Asia/Magadan, Asia/Omsk, Asia/Sakhalin,
++ Asia/Samarkand, Asia/Srednekolymsk, Asia/Tashkent, Asia/Tbilisi,
++ Asia/Ust-Nera, Asia/Vladivostok, Asia/Yakutsk, Asia/Yekaterinburg,
++ Asia/Yerevan, Etc/GMT-14, Etc/GMT-13, Etc/GMT-12, Etc/GMT-11,
++ Etc/GMT-10, Etc/GMT-9, Etc/GMT-8, Etc/GMT-7, Etc/GMT-6, Etc/GMT-5,
++ Etc/GMT-4, Etc/GMT-3, Etc/GMT-2, Etc/GMT-1, Etc/GMT+1, Etc/GMT+2,
++ Etc/GMT+3, Etc/GMT+4, Etc/GMT+5, Etc/GMT+6, Etc/GMT+7, Etc/GMT+8,
++ Etc/GMT+9, Etc/GMT+10, Etc/GMT+11, Etc/GMT+12, Europe/Kaliningrad,
++ Europe/Minsk, Europe/Samara, Europe/Volgograd, and
++ Indian/Kerguelen. For Europe/Moscow the invented abbreviation MSM
++ was replaced by +05, whereas MSK and MSD were kept as they are not
++ our invention and are widely used.
++
++ Changes to zone names
++
++ Rename Asia/Rangoon to Asia/Yangon, with a backward compatibility link.
++ (Thanks to David Massoud.)
++
++ Changes to code
++
++ zic no longer generates binary files containing POSIX TZ-like
++ strings that disagree with the local time type after the last
++ explicit transition in the data. This fixes a bug with
++ Africa/Casablanca and Africa/El_Aaiun in some year-2037 time
++ stamps on the reference platform. (Thanks to Alexander Belopolsky
++ for reporting the bug and suggesting a way forward.)
++
++ If the installed localtime and/or posixrules files are symbolic
++ links, zic now keeps them symbolic links when updating them, for
++ compatibility with platforms like OpenSUSE where other programs
++ configure these files as symlinks.
++
++ zic now avoids hard linking to symbolic links, avoids some
++ unnecessary mkdir and stat system calls, and uses shorter file
++ names internally.
++
++ zdump has a new -i option to generate transitions in a
++ more-compact but still human-readable format. This option is
++ experimental, and the output format may change in future versions.
++ (Thanks to Jon Skeet for suggesting that an option was needed,
++ and thanks to Tim Parenti and Chris Rovick for further comments.)
++
++ Changes to build procedure
++
++ An experimental distribution format is available, in addition
++ to the traditional format which will continue to be distributed.
++ The new format is a tarball tzdb-VERSION.tar.lz with signature
++ file tzdb-VERSION.tar.lz.asc. It unpacks to a top-level directory
++ tzdb-VERSION containing the code and data of the traditional
++ two-tarball format, along with extra data that may be useful.
++ (Thanks to Antonio Diaz Diaz, Oscar van Vlijmen, and many others
++ for comments about the experimental format.)
++
++ The release version number is now more accurate in the usual case
++ where releases are built from a Git repository. For example, if
++ 23 commits and some working-file changes have been made since
++ release 2016g, the version number is now something like
++ '2016g-23-g50556e3-dirty' instead of the misleading '2016g'.
++ Official releases uses the same version number format as before,
++ e.g., '2016g'. To support the more-accurate version number, its
++ specification has moved from a line in the Makefile to a new
++ source file 'version'.
++
++ The experimental distribution contains a file to2050.tzs that
++ contains what should be the output of 'zdump -i -c 2050' on
++ primary zones. If this file is available, 'make check' now checks
++ that zdump generates this output.
++
++ 'make check_web' now works on Fedora-like distributions.
++
++ Changes to documentation and commentary
++
++ tzfile.5 now documents the new restriction on POSIX TZ-like
++ strings that is now implemented by zic.
++
++ Comments now cite URLs for some 1917-1921 Russian DST decrees.
++ (Thanks to Alexander Belopolsky.)
++
++ tz-link.htm mentions JuliaTime (thanks to Curtis Vogt) and Time4J
++ (thanks to Meno Hochschild) and ThreeTen-Extra, and its
++ description of Java 8 has been brought up to date (thanks to
++ Stephen Colebourne). Its description of local time on Mars has
++ been updated to match current practice, and URLs have been updated
++ and some obsolete ones removed.
++
++
++Release 2016f - 2016-07-05 16:26:51 +0200
++
++ 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.)
++
++
++Release 2016e - 2016-06-14 08:46:16 -0700
++
++ Changes affecting future time stamps
++
++ Africa/Cairo observes DST in 2016 from July 7 to the end of October.
++ Guess October 27 and 24:00 transitions. (Thanks to Steffen Thorsen.)
++ For future years, guess April's last Thursday to October's last
++ Thursday except for Ramadan.
++
++ Changes affecting past time stamps
++
++ Locations while uninhabited now use '-00', not 'zzz', as a
++ placeholder time zone abbreviation. This is inspired by Internet
++ RFC 3339 and is more consistent with numeric time zone
++ abbreviations already used elsewhere. The change affects several
++ arctic and antarctic locations, e.g., America/Cambridge_Bay before
++ 1920 and Antarctica/Troll before 2005.
++
++ Asia/Baku's 1992-09-27 transition from +04 (DST) to +04 (non-DST) was
++ at 03:00, not 23:00 the previous day. (Thanks to Michael Deckers.)
++
++ Changes to code
++
++ zic now outputs a dummy transition at time 2**31 - 1 in zones
++ whose POSIX-style TZ strings contain a '<'. This mostly works
++ around Qt bug 53071 <https://bugreports.qt.io/browse/QTBUG-53071>.
++ (Thanks to Zhanibek Adilbekov for reporting the Qt bug.)
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm says why governments should give plenty of notice for
++ time zone or DST changes, and refers to Matt Johnson's blog post.
++
++ tz-link.htm mentions Tzdata for Elixir. (Thanks to Matt Johnson.)
++
++
++Release 2016d - 2016-04-17 22:50:29 -0700
++
++ Changes affecting future time stamps
++
++ America/Caracas switches from -0430 to -04 on 2016-05-01 at 02:30.
++ (Thanks to Alexander Krivenyshev for the heads-up.)
++
++ Asia/Magadan switches from +10 to +11 on 2016-04-24 at 02:00.
++ (Thanks to Alexander Krivenyshev and Matt Johnson.)
++
++ New zone Asia/Tomsk, split off from Asia/Novosibirsk. It covers
++ Tomsk Oblast, Russia, which switches from +06 to +07 on 2016-05-29
++ at 02:00. (Thanks to Stepan Golosunov.)
++
++ Changes affecting past time stamps
++
++ New zone Europe/Kirov, split off from Europe/Volgograd. It covers
++ Kirov Oblast, Russia, which switched from +04/+05 to +03/+04 on
++ 1989-03-26 at 02:00, roughly a year after Europe/Volgograd made
++ the same change. (Thanks to Stepan Golosunov.)
++
++ Russia and nearby locations had daylight-saving transitions on
++ 1992-03-29 at 02:00 and 1992-09-27 at 03:00, instead of on
++ 1992-03-28 at 23:00 and 1992-09-26 at 23:00. (Thanks to Stepan
++ Golosunov.)
++
++ Many corrections to historical time in Kazakhstan from 1991
++ through 2005. (Thanks to Stepan Golosunov.) Replace Kazakhstan's
++ invented time zone abbreviations with numeric abbreviations.
++
++ Changes to commentary
++
++ Mention Internet RFCs 7808 (TZDIST) and 7809 (CalDAV time zone references).
++
++
++Release 2016c - 2016-03-23 00:51:27 -0700
++
++ Changes affecting future time stamps
++
++ Azerbaijan no longer observes DST. (Thanks to Steffen Thorsen.)
++
++ Chile reverts from permanent to seasonal DST. (Thanks to Juan
++ Correa for the heads-up, and to Tim Parenti for corrections.)
++ Guess that future transitions are August's and May's second
++ Saturdays at 24:00 mainland time. Also, call the period from
++ 2014-09-07 through 2016-05-14 daylight saving time instead of
++ standard time, as that seems more appropriate now.
++
++ Changes affecting past time stamps
++
++ Europe/Kaliningrad and Europe/Vilnius changed from +03/+04 to
++ +02/+03 on 1989-03-26, not 1991-03-31. Europe/Volgograd changed
++ from +04/+05 to +03/+04 on 1988-03-27, not 1989-03-26.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to commentary
++
++ Several updates and URLs for historical and proposed Russian changes.
++ (Thanks to Stepan Golosunov, Matt Johnson, and Alexander Krivenyshev.)
++
++
++Release 2016b - 2016-03-12 17:30:14 -0800
++
++ Compatibility note
++
++ Starting with release 2016b, some data entries cause zic implementations
++ derived from tz releases 2005j through 2015e to issue warnings like
++ "time zone abbreviation differs from POSIX standard (+03)".
++ These warnings should not otherwise affect zic's output and can safely be
++ ignored on today's platforms, as the warnings refer to a restriction in
++ POSIX.1-1988 that was removed in POSIX.1-2001. One way to suppress the
++ warnings is to upgrade to zic derived from tz releases 2015f and later.
++
++ Changes affecting future time stamps
++
++ New zones Europe/Astrakhan and Europe/Ulyanovsk for Astrakhan and
++ Ulyanovsk Oblasts, Russia, both of which will switch from +03 to +04 on
++ 2016-03-27 at 02:00 local time. They need distinct zones since their
++ post-1970 histories disagree. New zone Asia/Barnaul for Altai Krai and
++ Altai Republic, Russia, which will switch from +06 to +07 on the same date
++ and local time. The Astrakhan change is already official; the others have
++ passed the first reading in the State Duma and are extremely likely.
++ Also, Asia/Sakhalin moves from +10 to +11 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev for the heads-up, and to Matt Johnson
++ and Stepan Golosunov for followup.)
++
++ As a trial of a new system that needs less information to be made up,
++ the new zones use numeric time zone abbreviations like "+04"
++ instead of invented abbreviations like "ASTT".
++
++ Haiti will not observe DST in 2016. (Thanks to Jean Antoine via
++ Steffen Thorsen.)
++
++ Palestine's spring-forward transition on 2016-03-26 is at 01:00, not 00:00.
++ (Thanks to Hannah Kreitem.) Guess future transitions will be March's last
++ Saturday at 01:00, not March's last Friday at 24:00.
++
++ Changes affecting past time stamps
++
++ Europe/Chisinau observed DST during 1990, and switched from +04 to
++ +03 at 1990-05-06 02:00, instead of switching from +03 to +02.
++ (Thanks to Stepan Golosunov.)
++
++ 1991 abbreviations in Europe/Samara should be SAMT/SAMST, not
++ KUYT/KUYST. (Thanks to Stepan Golosunov.)
++
++ Changes to code
++
++ tzselect's diagnostics and checking, and checktab.awk's checking,
++ have been improved. (Thanks to J William Piggott.)
++
++ tzcode now builds under MinGW. (Thanks to Ian Abbott and Esben Haabendal.)
++
++ tzselect now tests Julian-date TZ settings more accurately.
++ (Thanks to J William Piggott.)
++
++ Changes to commentary
++
++ Comments in zone tables have been improved. (Thanks to J William Piggott.)
++
++ tzselect again limits its menu comments so that menus fit on a
++ 24x80 alphanumeric display.
++
++ A new web page tz-how-to.html. (Thanks to Bill Seymour.)
++
++ In the Theory file, the description of possible time zone abbreviations in
++ tzdata has been cleaned up, as the old description was unclear and
++ inconsistent. (Thanks to Alain Mouette for reporting the problem.)
++
++
++Release 2016a - 2016-01-26 23:28:02 -0800
++
++ Changes affecting future time stamps
++
++ America/Cayman will not observe daylight saving this year after all.
++ Revert our guess that it would. (Thanks to Matt Johnson.)
++
++ Asia/Chita switches from +0800 to +0900 on 2016-03-27 at 02:00.
++ (Thanks to Alexander Krivenyshev.)
++
++ Asia/Tehran now has DST predictions for the year 2038 and later,
++ to be March 21 00:00 to September 21 00:00. This is likely better
++ than predicting no DST, albeit off by a day every now and then.
++
++ Changes affecting past and future time stamps
++
++ America/Metlakatla switched from PST all year to AKST/AKDT on
++ 2015-11-01 at 02:00. (Thanks to Steffen Thorsen.)
++
++ America/Santa_Isabel has been removed, and replaced with a
++ backward compatibility link to America/Tijuana. Its contents were
++ apparently based on a misreading of Mexican legislation.
++
++ Changes affecting past time stamps
++
++ Asia/Karachi's two transition times in 2002 were off by a minute.
++ (Thanks to Matt Johnson.)
++
++ Changes affecting build procedure
++
++ An installer can now combine leap seconds with use of the backzone file,
++ e.g., with 'make PACKRATDATA=backzone REDO=posix_right zones'.
++ The old 'make posix_packrat' rule is now marked as obsolescent.
++ (Thanks to Ian Abbott for an initial implementation.)
++
++ Changes affecting documentation and commentary
++
++ A new file LICENSE makes it easier to see that the code and data
++ are mostly public-domain. (Thanks to James Knight.) The three
++ non-public-domain files now use the current (3-clause) BSD license
++ instead of older versions of that license.
++
++ tz-link.htm mentions the BDE library (thanks to Andrew Paprocki),
++ CCTZ (thanks to Tim Parenti), TimeJones.com, and has a new section
++ on editing tz source files (with a mention of Sublime zoneinfo,
++ thanks to Gilmore Davidson).
++
++ The Theory and asia files now mention the 2015 book "The Global
++ Transformation of Time, 1870-1950", and cite a couple of reviews.
++
++ The America/Chicago entry now documents the informal use of US
++ central time in Fort Pierre, South Dakota. (Thanks to Rick
++ McDermid, Matt Johnson, and Steve Jones.)
++
++
++Release 2015g - 2015-10-01 00:39:51 -0700
++
++ Changes affecting future time stamps
++
++ Turkey's 2015 fall-back transition is scheduled for Nov. 8, not Oct. 25.
++ (Thanks to Fatih.)
++
++ Norfolk moves from +1130 to +1100 on 2015-10-04 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.)
++
++ Fiji's 2016 fall-back transition is scheduled for January 17, not 24.
++ (Thanks to Ken Rylander.)
++
++ Fort Nelson, British Columbia will not fall back on 2015-11-01. It has
++ effectively been on MST (-0700) since it advanced its clocks on 2015-03-08.
++ New zone America/Fort_Nelson. (Thanks to Matt Johnson.)
++
++ Changes affecting past time stamps
++
++ Norfolk observed DST from 1974-10-27 02:00 to 1975-03-02 02:00.
++
++ Changes affecting code
++
++ localtime no longer mishandles America/Anchorage after 2037.
++ (Thanks to Bradley White for reporting the bug.)
++
++ On hosts with signed 32-bit time_t, localtime no longer mishandles
++ Pacific/Fiji after 2038-01-16 14:00 UTC.
++
++ The localtime module allows the variables 'timezone', 'daylight',
++ and 'altzone' to be in common storage shared with other modules,
++ and declares them in case the system <time.h> does not.
++ (Problems reported by Kees Dekker.)
++
++ On platforms with tm_zone, strftime.c now assumes it is not NULL.
++ This simplifies the code and is consistent with zdump.c.
++ (Problem reported by Christos Zoulas.)
++
++ Changes affecting documentation
++
++ The tzfile man page now documents that transition times denote the
++ starts (not the ends) of the corresponding time periods.
++ (Ambiguity reported by Bill Seymour.)
++
++
++Release 2015f - 2015-08-10 18:06:56 -0700
++
++ Changes affecting future time stamps
++
++ North Korea switches to +0830 on 2015-08-15. (Thanks to Steffen Thorsen.)
++ The abbreviation remains "KST". (Thanks to Robert Elz.)
++
++ Uruguay no longer observes DST. (Thanks to Steffen Thorsen
++ and Pablo Camargo.)
++
++ Changes affecting past and future time stamps
++
++ Moldova starts and ends DST at 00:00 UTC, not at 01:00 UTC.
++ (Thanks to Roman Tudos.)
++
++ Changes affecting data format and code
++
++ zic's '-y YEARISTYPE' option is no longer documented. The TYPE
++ field of a Rule line should now be '-'; the old values 'even',
++ 'odd', 'uspres', 'nonpres', 'nonuspres' were already undocumented.
++ Although the implementation has not changed, these features do not
++ work in the default installation, they are not used in the data,
++ and they are now considered obsolescent.
++
++ zic now checks that two rules don't take effect at the same time.
++ (Thanks to Jon Skeet and Arthur David Olson.) Constraints on
++ simultaneity are now documented.
++
++ The two characters '%z' in a zone format now stand for the UTC
++ offset, e.g., '-07' for seven hours behind UTC and '+0530' for
++ five hours and thirty minutes ahead. This better supports time
++ zone abbreviations conforming to POSIX.1-2001 and later.
++
++ Changes affecting installed data files
++
++ Comments for America/Halifax and America/Glace_Bay have been improved.
++ (Thanks to Brian Inglis.)
++
++ Data entries have been simplified for Atlantic/Canary, Europe/Simferopol,
++ Europe/Sofia, and Europe/Tallinn. This yields slightly smaller
++ installed data files for Europe/Simferopol and Europe/Tallinn.
++ It does not affect timestamps. (Thanks to Howard Hinnant.)
++
++ Changes affecting code
++
++ zdump and zic no longer warn about valid time zone abbreviations
++ like '-05'.
++
++ Some Visual Studio 2013 warnings have been suppressed.
++ (Thanks to Kees Dekker.)
++
++ 'date' no longer sets the time of day and its -a, -d, -n and -t
++ options have been removed. Long obsolescent, the implementation
++ of these features had porting problems. Builders no longer need
++ to configure HAVE_ADJTIME, HAVE_SETTIMEOFDAY, or HAVE_UTMPX_H.
++ (Thanks to Kees Dekker for pointing out the problem.)
++
++ Changes affecting documentation
++
++ The Theory file mentions naming issues earlier, as these seem to be
++ poorly publicized (thanks to Gilmore Davidson for reporting the problem).
++
++ tz-link.htm mentions Time Zone Database Parser (thanks to Howard Hinnant).
++
++ Mention that Herbert Samuel introduced the term "Summer Time".
++
++
++Release 2015e - 2015-06-13 10:56:02 -0700
++
++ Changes affecting future time stamps
++
++ Morocco will suspend DST from 2015-06-14 03:00 through 2015-07-19 02:00,
++ not 06-13 and 07-18 as we had guessed. (Thanks to Milamber.)
++
++ Assume Cayman Islands will observe DST starting next year, using US rules.
++ Although it isn't guaranteed, it is the most likely.
++
++ Changes affecting data format
++
++ The file 'iso3166.tab' now uses UTF-8, so that its entries can better
++ spell the names of Åland Islands, Côte d'Ivoire, and Réunion.
++
++ Changes affecting code
++
++ When displaying data, tzselect converts it to the current locale's
++ encoding if the iconv command works. (Problem reported by random832.)
++
++ tzselect no longer mishandles Dominica, fixing a bug introduced
++ in Release 2014f. (Problem reported by Owen Leibman.)
++
++ zic -l no longer fails when compiled with -DTZDEFAULT=\"/etc/localtime\".
++ This fixes a bug introduced in Release 2014f.
++ (Problem reported by Leonardo Chiquitto.)
++
++
++Release 2015d - 2015-04-24 08:09:46 -0700
++
++ Changes affecting future time stamps
++
++ Egypt will not observe DST in 2015 and will consider canceling it
++ permanently. For now, assume no DST indefinitely.
++ (Thanks to Ahmed Nazmy and Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ America/Whitehorse switched from UT -09 to -08 on 1967-05-28, not
++ 1966-07-01. Also, Yukon's time zone history is documented better.
++ (Thanks to Brian Inglis and Dennis Ferguson.)
++
++ Change affecting past and future time zone abbreviations
++
++ The abbreviations for Hawaii-Aleutian standard and daylight times
++ have been changed from HAST/HADT to HST/HDT, as per US Government
++ Printing Office style. This affects only America/Adak since 1983,
++ as America/Honolulu was already using the new style.
++
++ Changes affecting code
++
++ zic has some minor performance improvements.
++
++
++Release 2015c - 2015-04-11 08:55:55 -0700
++
++ Changes affecting future time stamps
++
++ Egypt's spring-forward transition is at 24:00 on April's last Thursday,
++ not 00:00 on April's last Friday. 2015's transition will therefore be on
++ Thursday, April 30 at 24:00, not Friday, April 24 at 00:00. Similar fixes
++ apply to 2026, 2037, 2043, etc. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The following changes affect some pre-1991 Chile-related time stamps
++ in America/Santiago, Antarctica/Palmer, and Pacific/Easter.
++
++ The 1910 transition was January 10, not January 1.
++
++ The 1918 transition was September 10, not September 1.
++
++ The UT -04 time observed from 1932 to 1942 is now considered to
++ be standard time, not year-round DST.
++
++ Santiago observed DST (UT -03) from 1946-07-15 through
++ 1946-08-31, then reverted to standard time, then switched to -05
++ on 1947-04-01.
++
++ Assume transitions before 1968 were at 00:00, since we have no data
++ saying otherwise.
++
++ The spring 1988 transition was 1988-10-09, not 1988-10-02.
++ The fall 1990 transition was 1990-03-11, not 1990-03-18.
++
++ Assume no UTC offset change for Pacific/Easter on 1890-01-01,
++ and omit all transitions on Pacific/Easter from 1942 through 1946
++ since we have no data suggesting that they existed.
++
++ One more zone has been turned into a link, as it differed
++ from an existing zone only for older time stamps. As usual,
++ this change affects UTC offsets in pre-1970 time stamps only.
++ The zone's old contents have been moved to the 'backzone' file.
++ The affected zone is America/Montreal.
++
++ Changes affecting commentary
++
++ Mention the TZUpdater tool.
++
++ Mention "The Time Now". (Thanks to Brandon Ramsey.)
++
++
++Release 2015b - 2015-03-19 23:28:11 -0700
++
++ Changes affecting future time stamps
++
++ Mongolia will start observing DST again this year, from the last
++ Saturday in March at 02:00 to the last Saturday in September at 00:00.
++ (Thanks to Ganbold Tsagaankhuu.)
++
++ Palestine will start DST on March 28, not March 27. Also,
++ correct the fall 2014 transition from September 26 to October 24.
++ Adjust future predictions accordingly. (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps
++
++ The 1982 zone shift in Pacific/Easter has been corrected, fixing a 2015a
++ regression. (Thanks to Stuart Bishop for reporting the problem.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: America/Antigua, America/Cayman,
++ Pacific/Midway, and Pacific/Saipan.
++
++ Changes affecting time zone abbreviations
++
++ Correct the 1992-2010 DST abbreviation in Volgograd from "MSK" to "MSD".
++ (Thanks to Hank W.)
++
++ Changes affecting code
++
++ Fix integer overflow bug in reference 'mktime' implementation.
++ (Problem reported by Jörg Richter.)
++
++ Allow -Dtime_tz=time_t compilations, and allow -Dtime_tz=... libraries
++ to be used in the same executable as standard-library time_t functions.
++ (Problems reported by Bradley White.)
++
++ Changes affecting commentary
++
++ Cite the recent Mexican decree changing Quintana Roo's time zone.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Likewise for the recent Chilean decree. (Thanks to Eduardo Romero Urra.)
++
++ Update info about Mars time.
++
++
++Release 2015a - 2015-01-29 22:35:20 -0800
++
++ Changes affecting future time stamps
++
++ The Mexican state of Quintana Roo, represented by America/Cancun,
++ will shift from Central Time with DST to Eastern Time without DST
++ on 2015-02-01 at 02:00. (Thanks to Steffen Thorsen and Gwillim Law.)
++
++ Chile will not change clocks in April or thereafter; its new standard time
++ will be its old daylight saving time. This affects America/Santiago,
++ Pacific/Easter, and Antarctica/Palmer. (Thanks to Juan Correa.)
++
++ New leap second 2015-06-30 23:59:60 UTC as per IERS Bulletin C 49.
++ (Thanks to Tim Parenti.)
++
++ Changes affecting past time stamps
++
++ Iceland observed DST in 1919 and 1921, and its 1939 fallback
++ transition was Oct. 29, not Nov. 29. Remove incorrect data from
++ Shanks about time in Iceland between 1837 and 1908.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Asia/Aden, Asia/Bahrain, Asia/Kuwait,
++ and Asia/Muscat.
++
++ Changes affecting code
++
++ tzalloc now scrubs time zone abbreviations compatibly with the way
++ that tzset always has, by replacing invalid bytes with '_' and by
++ shortening too-long abbreviations.
++
++ tzselect ports to POSIX awk implementations, no longer mishandles
++ POSIX TZ settings when GNU awk is used, and reports POSIX TZ
++ settings to the user. (Thanks to Stefan Kuhn.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks for links to links in the data.
++ One such link (for Africa/Asmera) has been fixed.
++ (Thanks to Stephen Colebourne for pointing out the problem.)
++
++ Changes affecting commentary
++
++ The leapseconds file commentary now mentions the expiration date.
++ (Problem reported by Martin Burnicki.)
++
++ Update Mexican Library of Congress URL.
++
++
++Release 2014j - 2014-11-10 17:37:11 -0800
++
++ Changes affecting current and future time stamps
++
++ Turks & Caicos' switch from US eastern time to UT -04 year-round
++ did not occur on 2014-11-02 at 02:00. It's currently scheduled
++ for 2015-11-01 at 02:00. (Thanks to Chris Walton.)
++
++ Changes affecting past time stamps
++
++ Many pre-1989 time stamps have been corrected for Asia/Seoul and
++ Asia/Pyongyang, based on sources for the Korean-language Wikipedia
++ entry for time in Korea. (Thanks to Sanghyuk Jung.) Also, no
++ longer guess that Pyongyang mimicked Seoul time after World War II,
++ as this is politically implausible.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Addis_Ababa, Africa/Asmara,
++ Africa/Dar_es_Salaam, Africa/Djibouti, Africa/Kampala,
++ Africa/Mogadishu, Indian/Antananarivo, Indian/Comoro, and
++ Indian/Mayotte.
++
++ Changes affecting commentary
++
++ The commentary is less enthusiastic about Shanks as a source,
++ and is more careful to distinguish UT from UTC.
++
++
++Release 2014i - 2014-10-21 22:04:57 -0700
++
++ Changes affecting future time stamps
++
++ Pacific/Fiji will observe DST from 2014-11-02 02:00 to 2015-01-18 03:00.
++ (Thanks to Ken Rylander for the heads-up.) Guess that future
++ years will use a similar pattern.
++
++ A new Zone Pacific/Bougainville, for the part of Papua New Guinea
++ that plans to switch from UT +10 to +11 on 2014-12-28 at 02:00.
++ (Thanks to Kiley Walbom for the heads-up.)
++
++ Changes affecting time zone abbreviations
++
++ Since Belarus is not changing its clocks even though Moscow is,
++ the time zone abbreviation in Europe/Minsk is changing from FET
++ to its more-traditional value MSK on 2014-10-26 at 01:00.
++ (Thanks to Alexander Bokovoy for the heads-up about Belarus.)
++
++ The new abbreviation IDT stands for the pre-1976 use of UT +08 in
++ Indochina, to distinguish it better from ICT (+07).
++
++ Changes affecting past time stamps
++
++ Many time stamps have been corrected for Asia/Ho_Chi_Minh before 1976
++ (thanks to Trần Ngọc Quân for an indirect pointer to Trần Tiến Bình's
++ authoritative book). Asia/Ho_Chi_Minh has been added to
++ zone1970.tab, to give tzselect users in Vietnam two choices,
++ since north and south Vietnam disagreed after our 1970 cutoff.
++
++ Asia/Phnom_Penh and Asia/Vientiane have been turned into links, as
++ they differed from existing zones only for older time stamps. As
++ usual, these changes affect pre-1970 time stamps only. Their old
++ contents have been moved to the 'backzone' file.
++
++ Changes affecting code
++
++ The time-related library functions now set errno on failure, and
++ some crashes in the new tzalloc-related library functions have
++ been fixed. (Thanks to Christos Zoulas for reporting most of
++ these problems and for suggesting fixes.)
++
++ If USG_COMPAT is defined and the requested time stamp is standard time,
++ the tz library's localtime and mktime functions now set the extern
++ variable timezone to a value appropriate for that time stamp; and
++ similarly for ALTZONE, daylight saving time, and the altzone variable.
++ This change is a companion to the tzname change in 2014h, and is
++ designed to make timezone and altzone more compatible with tzname.
++
++ The tz library's functions now set errno to EOVERFLOW if they fail
++ because the result cannot be represented. ctime and ctime_r now
++ return NULL and set errno when a time stamp is out of range, rather
++ than having undefined behavior.
++
++ Some bugs associated with the new 2014g functions have been fixed.
++ This includes a bug that largely incapacitated the new functions
++ time2posix_z and posix2time_z. (Thanks to Christos Zoulas.)
++ It also includes some uses of uninitialized variables after tzalloc.
++ The new code uses the standard type 'ssize_t', which the Makefile
++ now gives porting advice about.
++
++ Changes affecting commentary
++
++ Updated URLs for NRC Canada (thanks to Matt Johnson and Brian Inglis).
++
++
++Release 2014h - 2014-09-25 18:59:03 -0700
++
++ Changes affecting past time stamps
++
++ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
++
++ Shanks says Asia/Novokuznetsk switched from LMT (not "NMT") on 1924-05-01,
++ not 1920-01-06. The old entry was based on a misinterpretation of Shanks.
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Blantyre, Africa/Bujumbura,
++ Africa/Gaborone, Africa/Harare, Africa/Kigali, Africa/Lubumbashi,
++ Africa/Lusaka, Africa/Maseru, and Africa/Mbabane.
++
++ Changes affecting code
++
++ zdump -V and -v now output gmtoff= values on all platforms,
++ not merely on platforms defining TM_GMTOFF.
++
++ The tz library's localtime and mktime functions now set tzname to a value
++ appropriate for the requested time stamp, and zdump now uses this
++ on platforms not defining TM_ZONE, fixing a 2014g regression.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ The tz library no longer sets tzname if localtime or mktime fails.
++
++ zdump -c no longer mishandles transitions near year boundaries.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ An access to uninitialized data has been fixed.
++ (Thanks to Jörg Richter for reporting the problem.)
++
++ When THREAD_SAFE is defined, the code ports to the C11 memory model.
++ A memory leak has been fixed if ALL_STATE and THREAD_SAFE are defined
++ and two threads race to initialize data used by gmtime-like functions.
++ (Thanks to Andy Heninger for reporting the problems.)
++
++ Changes affecting build procedure
++
++ 'make check' now checks better for properly-sorted data.
++
++ Changes affecting documentation and commentary
++
++ zdump's gmtoff=N output is now documented, and its isdst=D output
++ is now documented to possibly output D values other than 0 or 1.
++
++ zdump -c's treatment of years is now documented to use the
++ Gregorian calendar and Universal Time without leap seconds,
++ and its behavior at cutoff boundaries is now documented better.
++ (Thanks to Arthur David Olson and Tim Parenti for reporting the problems.)
++
++ Programs are now documented to use the proleptic Gregorian calendar.
++ (Thanks to Alan Barrett for the suggestion.)
++
++ Fractional-second GMT offsets have been documented for civil time
++ in 19th-century Chennai, Jakarta, and New York.
++
++
++Release 2014g - 2014-08-28 12:31:23 -0700
++
++ Changes affecting future time stamps
++
++ Turks & Caicos is switching from US eastern time to UT -04
++ year-round, modeled as a switch on 2014-11-02 at 02:00.
++ [As noted in 2014j, this switch was later delayed.]
++
++ Changes affecting past time stamps
++
++ Time in Russia or the USSR before 1926 or so has been corrected by
++ a few seconds in the following zones: Asia/Irkutsk,
++ Asia/Krasnoyarsk, Asia/Omsk, Asia/Samarkand, Asia/Tbilisi,
++ Asia/Vladivostok, Asia/Yakutsk, Europe/Riga, Europe/Samara. For
++ Asia/Yekaterinburg the correction is a few minutes. (Thanks to
++ Vladimir Karpinsky.)
++
++ The Portuguese decree of 1911-05-26 took effect on 1912-01-01.
++ This affects 1911 time stamps in Africa/Bissau, Africa/Luanda,
++ Atlantic/Azores, and Atlantic/Madeira. Also, Lisbon's pre-1912
++ GMT offset was -0:36:45 (rounded from -0:36:44.68), not -0:36:32.
++ (Thanks to Stephen Colebourne for pointing to the decree.)
++
++ Asia/Dhaka ended DST on 2009-12-31 at 24:00, not 23:59.
++
++ A new file 'backzone' contains data which may appeal to
++ connoisseurs of old time stamps, although it is out of scope for
++ the tz database, is often poorly sourced, and contains some data
++ that is known to be incorrect. The new file is not recommended
++ for ordinary use and its entries are not installed by default.
++ (Thanks to Lester Caine for the high-quality Jersey, Guernsey, and
++ Isle of Man entries.)
++
++ Some more zones have been turned into links, when they differed
++ from existing zones only for older time stamps. As usual,
++ these changes affect UTC offsets in pre-1970 time stamps only.
++ Their old contents have been moved to the 'backzone' file.
++ The affected zones are: Africa/Bangui, Africa/Brazzaville,
++ Africa/Douala, Africa/Kinshasa, Africa/Libreville, Africa/Luanda,
++ Africa/Malabo, Africa/Niamey, and Africa/Porto-Novo.
++
++ Changes affecting code
++
++ Unless NETBSD_INSPIRED is defined to 0, the tz library now
++ supplies functions for creating and using objects that represent
++ time zones. The new functions are tzalloc, tzfree, localtime_rz,
++ mktime_z, and (if STD_INSPIRED is also defined) posix2time_z and
++ time2posix_z. They are intended for performance: for example,
++ localtime_rz (unlike localtime_r) is trivially thread-safe without
++ locking. (Thanks to Christos Zoulas for proposing NetBSD-inspired
++ functions, and to Alan Barrett and Jonathan Lennox for helping to
++ debug the change.)
++
++ zdump now builds with the tz library unless USE_LTZ is defined to 0,
++ This lets zdump use tz features even if the system library lacks them.
++ To build zdump with the system library, use 'make CFLAGS=-DUSE_LTZ=0
++ TZDOBJS=zdump.o CHECK_TIME_T_ALTERNATIVES='.
++
++ zdump now uses localtime_rz if available, as it's significantly faster,
++ and it can help zdump better diagnose invalid time zone names.
++ Define HAVE_LOCALTIME_RZ to 0 to suppress this. HAVE_LOCALTIME_RZ
++ defaults to 1 if NETBSD_INSPIRED && USE_LTZ. When localtime_rz is
++ not available, zdump now uses localtime_r and tzset if available,
++ as this is a bit cleaner and faster than plain localtime. Compile
++ with -DHAVE_LOCALTIME_R=0 and/or -DHAVE_TZSET=0 if your system
++ lacks these two functions.
++
++ If THREAD_SAFE is defined to 1, the tz library is now thread-safe.
++ Although not needed for tz's own applications, which are single-threaded,
++ this supports POSIX better if the tz library is used in multithreaded apps.
++
++ Some crashes have been fixed when zdump or the tz library is given
++ invalid or outlandish input.
++
++ The tz library no longer mishandles leap seconds on platforms with
++ unsigned time_t in time zones that lack ordinary transitions after 1970.
++
++ The tz code now attempts to infer TM_GMTOFF and TM_ZONE if not
++ already defined, to make it easier to configure on common platforms.
++ Define NO_TM_GMTOFF and NO_TM_ZONE to suppress this.
++
++ Unless the new macro UNINIT_TRAP is defined to 1, the tz code now
++ assumes that reading uninitialized memory yields garbage values
++ but does not cause other problems such as traps.
++
++ If TM_GMTOFF is defined and UNINIT_TRAP is 0, mktime is now
++ more likely to guess right for ambiguous time stamps near
++ transitions where tm_isdst does not change.
++
++ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
++ strftime_l for compatibility with recent versions of POSIX.
++ Only the C locale is supported, though. HAVE_STRFTIME_L defaults
++ to 1 on recent POSIX versions, and to 0 otherwise.
++
++ tzselect -c now uses a hybrid distance measure that works better
++ in Africa. (Thanks to Alan Barrett for noting the problem.)
++
++ The C source code now ports to NetBSD when GCC_DEBUG_FLAGS is used,
++ or when time_tz is defined.
++
++ When HAVE_UTMPX_H is set the 'date' command now builds on systems
++ whose <utmpx.h> file does not define WTMPX_FILE, and when setting
++ the date it updates the wtmpx file if _PATH_WTMPX is defined.
++ This affects GNU/Linux and similar systems.
++
++ For easier maintenance later, some C code has been simplified,
++ some lint has been removed, and the code has been tweaked so that
++ plain 'make' is more likely to work.
++
++ The C type 'bool' is now used for boolean values, instead of 'int'.
++
++ The long-obsolete LOCALE_HOME code has been removed.
++
++ The long-obsolete 'gtime' function has been removed.
++
++ Changes affecting build procedure
++
++ 'zdump' no longer links in ialloc.o, as it's not needed.
++
++ 'make check_time_t_alternatives' no longer assumes GNU diff.
++
++ Changes affecting distribution tarballs
++
++ The files checktab.awk and zoneinfo2tdf.pl are now distributed in
++ the tzdata tarball instead of the tzcode tarball, since they help
++ maintain the data. The NEWS and Theory files are now also
++ distributed in the tzdata tarball, as they're relevant for data.
++ (Thanks to Alan Barrett for pointing this out.) Also, the
++ leapseconds.awk file is no longer distributed in the tzcode
++ tarball, since it belongs in the tzdata tarball (where 2014f
++ inadvertently also distributed it).
++
++ Changes affecting documentation and commentary
++
++ A new file CONTRIBUTING is distributed. (Thanks to Tim Parenti for
++ suggesting a CONTRIBUTING file, and to Tony Finch and Walter Harms
++ for debugging it.)
++
++ The man pages have been updated to use function prototypes,
++ to document thread-safe variants like localtime_r, and to document
++ the NetBSD-inspired functions tzalloc, tzfree, localtime_rz, and
++ mktime_z.
++
++ The fields in Link lines have been renamed to be more descriptive
++ and more like the parameters of 'ln'. LINK-FROM has become TARGET,
++ and LINK-TO has become LINK-NAME.
++
++ tz-link.htm mentions the IETF's tzdist working group; Windows
++ Runtime etc. (thanks to Matt Johnson); and HP-UX's tztab.
++
++ Some broken URLs have been fixed in the commentary. (Thanks to
++ Lester Caine.)
++
++ Commentary about Philippines DST has been updated, and commentary
++ on pre-1970 time in India has been added.
++
++
++Release 2014f - 2014-08-05 17:42:36 -0700
++
++ Changes affecting future time stamps
++
++ Russia will subtract an hour from most of its time zones on 2014-10-26
++ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
++ There are a few exceptions: Magadan Oblast (Asia/Magadan) and Zabaykalsky
++ Krai are subtracting two hours; conversely, Chukotka Autonomous Okrug
++ (Asia/Anadyr), Kamchatka Krai (Asia/Kamchatka), Kemerovo Oblast
++ (Asia/Novokuznetsk), and the Samara Oblast and the Udmurt Republic
++ (Europe/Samara) are not changing their clocks. The changed zones are
++ Europe/Kaliningrad, Europe/Moscow, Europe/Simferopol, Europe/Volgograd,
++ Asia/Yekaterinburg, Asia/Omsk, Asia/Novosibirsk, Asia/Krasnoyarsk,
++ Asia/Irkutsk, Asia/Yakutsk, Asia/Vladivostok, Asia/Khandyga,
++ Asia/Sakhalin, and Asia/Ust-Nera; Asia/Magadan will have two hours
++ subtracted; and Asia/Novokuznetsk's time zone abbreviation is affected,
++ but not its UTC offset. Two zones are added: Asia/Chita (split
++ from Asia/Yakutsk, and also with two hours subtracted) and
++ Asia/Srednekolymsk (split from Asia/Magadan, but with only one hour
++ subtracted). (Thanks to Tim Parenti for much of the above.)
++
++ Changes affecting time zone abbreviations
++
++ Australian eastern time zone abbreviations are now AEST/AEDT not EST,
++ and similarly for the other Australian zones. That is, for eastern
++ standard and daylight saving time the abbreviations are AEST and AEDT
++ instead of the former EST for both; similarly, ACST/ACDT, ACWST/ACWDT,
++ and AWST/AWDT are now used instead of the former CST, CWST, and WST.
++ This change does not affect UTC offsets, only time zone abbreviations.
++ (Thanks to Rich Tibbett and many others.)
++
++ Asia/Novokuznetsk shifts from NOVT to KRAT (remaining on UT +07)
++ effective 2014-10-26 at 02:00 local time.
++
++ The time zone abbreviation for Xinjiang Time (observed in Ürümqi)
++ has been changed from URUT to XJT. (Thanks to Luther Ma.)
++
++ Prefer MSK/MSD for Moscow time in Russia, even in other cities.
++ Similarly, prefer EET/EEST for eastern European time in Russia.
++
++ Change time zone abbreviations in (western) Samoa to use "ST" and
++ "DT" suffixes, as this is more likely to match common practice.
++ Prefix "W" to (western) Samoa time when its standard-time offset
++ disagrees with that of American Samoa.
++
++ America/Metlakatla now uses PST, not MeST, to abbreviate its time zone.
++
++ Time zone abbreviations have been updated for Japan's two time
++ zones used 1896-1937. JWST now stands for Western Standard
++ Time, and JCST for Central Standard Time (formerly this was CJT).
++ These abbreviations are now used for time in Korea, Taiwan,
++ and Sakhalin while controlled by Japan.
++
++ Changes affecting past time stamps
++
++ China's five zones have been simplified to two, since the post-1970
++ differences in the other three seem to have been imaginary. The
++ zones Asia/Harbin, Asia/Chongqing, and Asia/Kashgar have been
++ removed; backwards-compatibility links still work, albeit with
++ different behaviors for time stamps before May 1980. Asia/Urumqi's
++ 1980 transition to UT +08 has been removed, so that it is now at
++ +06 and not +08. (Thanks to Luther Ma and to Alois Treindl;
++ Treindl sent helpful translations of two papers by Guo Qingsheng.)
++
++ Some zones have been turned into links, when they differed from existing
++ zones only for older UTC offsets where data entries were likely invented.
++ These changes affect UTC offsets in pre-1970 time stamps only. This is
++ similar to the change in release 2013e, except this time for western
++ Africa. The affected zones are: Africa/Bamako, Africa/Banjul,
++ Africa/Conakry, Africa/Dakar, Africa/Freetown, Africa/Lome,
++ Africa/Nouakchott, Africa/Ouagadougou, Africa/Sao_Tome, and
++ Atlantic/St_Helena. This also affects the backwards-compatibility
++ link Africa/Timbuktu. (Thanks to Alan Barrett, Stephen Colebourne,
++ Tim Parenti, and David Patte for reporting problems in earlier
++ versions of this change.)
++
++ Asia/Shanghai's pre-standard-time UT offset has been changed from
++ 8:05:57 to 8:05:43, the location of Xujiahui Observatory. Its
++ transition to standard time has been changed from 1928 to 1901.
++
++ Asia/Taipei switched to JWST on 1896-01-01, then to JST on 1937-10-01,
++ then to CST on 1945-09-21 at 01:00, and did not observe DST in 1945.
++ In 1946 it observed DST from 05-15 through 09-30; in 1947
++ from 04-15 through 10-31; and in 1979 from 07-01 through 09-30.
++ (Thanks to Yu-Cheng Chuang.)
++
++ Asia/Riyadh's transition to standard time is now 1947-03-14, not 1950.
++
++ Europe/Helsinki's 1942 fall-back transition was 10-04 at 01:00, not
++ 10-03 at 00:00. (Thanks to Konstantin Hyppönen.)
++
++ Pacific/Pago_Pago has been changed from UT -11:30 to -11 for the
++ period from 1911 to 1950.
++
++ Pacific/Chatham has been changed to New Zealand standard time plus
++ 45 minutes for the period before 1957, reflecting a 1956 remark in
++ the New Zealand parliament.
++
++ Europe/Budapest has several pre-1946 corrections: in 1918 the transition
++ out of DST was on 09-16, not 09-29; in 1919 it was on 11-24, not 09-15; in
++ 1945 it was on 11-01, not 11-03; in 1941 the transition to DST was 04-08
++ not 04-06 at 02:00; and there was no DST in 1920.
++
++ Africa/Accra is now assumed to have observed DST from 1920 through 1935.
++
++ Time in Russia before 1927 or so has been corrected by a few seconds in
++ the following zones: Europe/Moscow, Asia/Irkutsk, Asia/Tbilisi,
++ Asia/Tashkent, Asia/Vladivostok, Asia/Yekaterinburg, Europe/Helsinki, and
++ Europe/Riga. Also, Moscow's location has been changed to its Kilometer 0
++ point. (Thanks to Vladimir Karpinsky for the Moscow changes.)
++
++ Changes affecting data format
++
++ A new file 'zone1970.tab' supersedes 'zone.tab' in the installed data.
++ The new file's extended format allows multiple country codes per zone.
++ The older file is still installed but is deprecated; its format is
++ not changing and it will still be distributed for a while, but new
++ applications should use the new file.
++
++ The new file format simplifies maintenance of obscure locations.
++ To test this, it adds coverage for the Crozet Islands and the
++ Scattered Islands. (Thanks to Tobias Conradi and Antoine Leca.)
++
++ The file 'iso3166.tab' is planned to switch from ASCII to UTF-8.
++ It is still ASCII now, but commentary about the switch has been added.
++ The new file 'zone1970.tab' already uses UTF-8.
++
++ Changes affecting code
++
++ 'localtime', 'mktime', etc. now use much less stack space if ALL_STATE
++ is defined. (Thanks to Elliott Hughes for reporting the problem.)
++
++ 'zic' no longer mishandles input when ignoring case in locales that
++ are not compatible with English, e.g., unibyte Turkish locales when
++ compiled with HAVE_GETTEXT.
++
++ Error diagnostics of 'zic' and 'yearistype' have been reworded so that
++ they no longer use ASCII '-' as if it were a dash.
++
++ 'zic' now rejects output file names that contain '.' or '..' components.
++ (Thanks to Tim Parenti for reporting the problem.)
++
++ 'zic -v' now warns about output file names that do not follow
++ POSIX rules, or that contain a digit or '.'. (Thanks to Arthur
++ David Olson for starting the ball rolling on this.)
++
++ Some lint has been removed when using GCC_DEBUG_FLAGS with GCC 4.9.0.
++
++ Changes affecting build procedure
++
++ 'zic' no longer links in localtime.o and asctime.o, as they're not needed.
++ (Thanks to John Cochran.)
++
++ Changes affecting documentation and commentary
++
++ The 'Theory' file documents legacy names, the longstanding
++ exceptions to the POSIX-inspired file name rules.
++
++ The 'zic' documentation clarifies the role of time types when
++ interpreting dates. (Thanks to Arthur David Olson.)
++
++ Documentation and commentary now prefer UTF-8 to US-ASCII,
++ allowing the use of proper accents in foreign words and names.
++ Code and data have not changed because of this. (Thanks to
++ Garrett Wollman, Ian Abbott, and Guy Harris for helping to debug
++ this.)
++
++ Non-HTML documentation and commentary now use plain-text URLs instead of
++ HTML insertions, and are more consistent about bracketing URLs when they
++ are not already surrounded by white space. (Thanks to suggestions by
++ Steffen Nurpmeso.)
++
++ There is new commentary about Xujiahui Observatory, the five time-zone
++ project in China from 1918 to 1949, timekeeping in Japanese-occupied
++ Shanghai, and Tibet Time in the 1950s. The sharp-eyed can spot the
++ warlord Jin Shuren in the data.
++
++ Commentary about the coverage of each Russian zone has been standardized.
++ (Thanks to Tim Parenti).
++
++ There is new commentary about contemporary timekeeping in Ethiopia.
++
++ Obsolete comments about a 2007 proposal for DST in Kuwait has been removed.
++
++ There is new commentary about time in Poland in 1919.
++
++ Proper credit has been given to DST inventor George Vernon Hudson.
++
++ Commentary about time in Metlakatla, AK and Resolute, NU has been
++ improved, with a new source for the former.
++
++ In zone.tab, Pacific/Easter no longer mentions Salas y Gómez, as it
++ is uninhabited.
++
++ Commentary about permanent Antarctic bases has been updated.
++
++ Several typos have been corrected. (Thanks to Tim Parenti for
++ contributing some of these fixes.)
++
++ tz-link.htm now mentions the JavaScript libraries Moment Timezone,
++ TimezoneJS.Date, Walltime-js, and Timezone. (Thanks to a heads-up
++ from Matt Johnson.) Also, it mentions the Go 'latlong' package.
++ (Thanks to a heads-up from Dirkjan Ochtman.)
++
++ The files usno1988, usno1989, usno1989a, usno1995, usno1997, and usno1998
++ have been removed. These obsolescent US Naval Observatory entries were no
++ longer helpful for maintenance. (Thanks to Tim Parenti for the suggestion.)
++
++
++Release 2014e - 2014-06-12 21:53:52 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt's 2014 Ramadan-based transitions are June 26 and July 31 at 24:00.
++ (Thanks to Imed Chihi.) Guess that from 2015 on Egypt will temporarily
++ switch to standard time at 24:00 the last Thursday before Ramadan, and
++ back to DST at 00:00 the first Friday after Ramadan.
++
++ Similarly, Morocco's are June 28 at 03:00 and August 2 at 02:00. (Thanks
++ to Milamber Space Network.) Guess that from 2015 on Morocco will
++ temporarily switch to standard time at 03:00 the last Saturday before
++ Ramadan, and back to DST at 02:00 the first Saturday after Ramadan.
++
++ Changes affecting past time stamps
++
++ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
++ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
++ "VLASST" has been repaired to be "VLAST" for Vladivostok summer time
++ in 1991. (Thanks to Hank W. for reporting the problems.)
++
++ Changes affecting commentary
++
++ tz-link.htm now cites RFC 7265 for jCal, mentions PTP and the
++ draft CalDAV extension, updates URLs for TSP, TZInfo, IATA, and
++ removes stale pointers to World Time Explorer and WORLDTIME.
++
++
++Release 2014d - 2014-05-27 21:34:40 -0700
++
++ Changes affecting code
++
++ zic no longer generates files containing time stamps before the Big Bang.
++ This works around GNOME bug 730332
++ <https://bugzilla.gnome.org/show_bug.cgi?id=730332>.
++ (Thanks to Leonardo Chiquitto for reporting the bug, and to
++ Arthur David Olson and James Cloos for suggesting improvements to the fix.)
++
++ Changes affecting documentation
++
++ tz-link.htm now mentions GNOME.
++
++
++Release 2014c - 2014-05-13 07:44:13 -0700
++
++ Changes affecting near-future time stamps
++
++ Egypt observes DST starting 2014-05-15 at 24:00.
++ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
++ Details have not been announced, except that DST will not be observed
++ during Ramadan. Guess that DST will stop during the same Ramadan dates as
++ Morocco, and that Egypt's future spring and fall transitions will be the
++ same as 2010 when it last observed DST, namely April's last Friday at
++ 00:00 to September's last Thursday at 23:00 standard time. Also, guess
++ that Ramadan transitions will be at 00:00 standard time.
++
++ Changes affecting code
++
++ zic now generates transitions for minimum time values, eliminating guesswork
++ when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++
++ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
++
++ Changes affecting commentary and documentation
++
++ Remove now-confusing comment about Jordan. (Thanks to Oleksii Nochovnyi.)
++
++
++Release 2014b - 2014-03-24 21:28:50 -0700
++
++ Changes affecting near-future time stamps
++
++ Crimea switches to Moscow time on 2014-03-30 at 02:00 local time.
++ (Thanks to Alexander Krivenyshev.) Move its zone.tab entry from UA to RU.
++
++ New entry for Troll station, Antarctica. (Thanks to Paul-Inge Flakstad and
++ Bengt-Inge Larsson.) This is currently an approximation; a better version
++ will require the zic and localtime fixes mentioned below, and the plan is
++ to wait for a while until at least the zic fixes propagate.
++
++ Changes affecting code
++
++ 'zic' and 'localtime' no longer reject locations needing four transitions
++ per year for the foreseeable future. (Thanks to Andrew Main (Zefram).)
++ Also, 'zic' avoids some unlikely failures due to integer overflow.
++
++ Changes affecting build procedure
++
++ 'make check' now detects Rule lines defined but never used.
++ The NZAQ rules, an instance of this problem, have been removed.
++
++ Changes affecting commentary and documentation
++
++ Fix Tuesday/Thursday typo in description of time in Israel.
++ (Thanks to Bert Katz via Pavel Kharitonov and Mike Frysinger.)
++
++ Microsoft Windows 8.1 doesn't support tz database names. (Thanks
++ to Donald MacQueen.) Instead, the Microsoft Windows Store app
++ library supports them.
++
++ Add comments about Johnston Island time in the 1960s.
++ (Thanks to Lyle McElhaney.)
++
++ Morocco's 2014 DST start will be as predicted.
++ (Thanks to Sebastien Willemijns.)
++
++
++Release 2014a - 2014-03-07 23:30:29 -0800
++
++ Changes affecting near-future time stamps
++
++ Turkey begins DST on 2014-03-31, not 03-30. (Thanks to Faruk Pasin for
++ the heads-up, and to Tim Parenti for simplifying the update.)
++
++ Changes affecting past time stamps
++
++ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
++ (Thanks to Steffen Thorsen.)
++
++ Ukraine switched from Moscow to Eastern European time on 1990-07-01
++ (not 1992-01-01), and observed DST during the entire next winter.
++ (Thanks to Vladimir in Moscow via Alois Treindl.)
++
++ In 1988 Israel observed DST from 04-10 to 09-04, not 04-09 to 09-03.
++ (Thanks to Avigdor Finkelstein.)
++
++ Changes affecting code
++
++ A uninitialized-storage bug in 'localtime' has been fixed.
++ (Thanks to Logan Chien.)
++
++ Changes affecting the build procedure
++
++ The settings for 'make check_web' now default to Ubuntu 13.10.
++
++ Changes affecting commentary and documentation
++
++ The boundary of the US Pacific time zone is given more accurately.
++ (Thanks to Alan Mintz.)
++
++ Chile's 2014 DST will be as predicted. (Thanks to José Miguel Garrido.)
++
++ Paraguay's 2014 DST will be as predicted. (Thanks to Carlos Raúl Perasso.)
++
++ Better descriptions of countries with same time zone history as
++ Trinidad and Tobago since 1970. (Thanks to Alan Barrett for suggestion.)
++
++ Several changes affect tz-link.htm, the main web page.
++
++ Mention Time.is (thanks to Even Scharning) and WX-now (thanks to
++ David Braverman).
++
++ Mention xCal (Internet RFC 6321) and jCal.
++
++ Microsoft has some support for tz database names.
++
++ CLDR data formats include both XML and JSON.
++
++ Mention Maggiolo's map of solar vs standard time.
++ (Thanks to Arthur David Olson.)
++
++ Mention TZ4Net. (Thanks to Matt Johnson.)
++
++ Mention the timezone-olson Haskell package.
++
++ Mention zeitverschiebung.net. (Thanks to Martin Jäger.)
++
++ Remove moribund links to daylight-savings-time.info and to
++ Simple Timer + Clocks.
++
++ Update two links. (Thanks to Oscar van Vlijmen.)
++
++ Fix some formatting glitches, e.g., remove random newlines from
++ abbr elements' title attributes.
++
++
++Release 2013i - 2013-12-17 07:25:23 -0800
++
++ Changes affecting near-future time stamps:
++
++ Jordan switches back to standard time at 00:00 on December 20, 2013.
++ The 2006-2011 transition schedule is planned to resume in 2014.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting past time stamps:
++
++ In 2004, Cuba began DST on March 28, not April 4.
++ (Thanks to Steffen Thorsen.)
++
++ Changes affecting code
++
++ The compile-time flag NOSOLAR has been removed, as nowadays the
++ benefit of slightly shrinking runtime table size is outweighed by the
++ cost of disallowing potential future updates that exceed old limits.
++
++ Changes affecting documentation and commentary
++
++ The files solar87, solar88, and solar89 are no longer distributed.
++ They were a negative experiment - that is, a demonstration that
++ tz data can represent solar time only with some difficulty and error.
++ Their presence in the distribution caused confusion, as Riyadh
++ civil time was generally not solar time in those years.
++
++ tz-link.htm now mentions Noda Time. (Thanks to Matt Johnson.)
++
++
++Release 2013h - 2013-10-25 15:32:32 -0700
++
++ Changes affecting current and future time stamps:
++
++ Libya has switched its UT offset back to +02 without DST, instead
++ of +01 with DST. (Thanks to Even Scharning.)
++
++ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
++ (Thanks to Gwillim Law.)
++
++ Changes affecting future time stamps:
++
++ Acre and (we guess) western Amazonas will switch from UT -04 to -05
++ on 2013-11-10. This affects America/Rio_Branco and America/Eirunepe.
++ (Thanks to Steffen Thorsen.)
++
++ Add entries for DST transitions in Morocco in the year 2038.
++ This avoids some year-2038 glitches introduced in 2013g.
++ (Thanks to Yoshito Umaoka for reporting the problem.)
++
++ Changes affecting API
++
++ The 'tzselect' command no longer requires the 'select' command,
++ and should now work with /bin/sh on more platforms. It also works
++ around a bug in BusyBox awk before version 1.21.0. (Thanks to
++ Patrick 'P. J.' McDermott and Alan Barrett.)
++
++ Changes affecting code
++
++ Fix localtime overflow bugs with 32-bit unsigned time_t.
++
++ zdump no longer assumes sscanf returns maximal values on overflow.
++
++ Changes affecting the build procedure
++
++ The builder can specify which programs to use, if any, instead of
++ 'ar' and 'ranlib', and libtz.a is now built locally before being
++ installed. (Thanks to Michael Forney.)
++
++ A dependency typo in the 'zdump' rule has been fixed.
++ (Thanks to Andrew Paprocki.)
++
++ The Makefile has been simplified by assuming that 'mkdir -p' and 'cp -f'
++ work as specified by POSIX.2-1992 or later; this is portable nowadays.
++
++ 'make clean' no longer removes 'leapseconds', since it's
++ host-independent and is part of the distribution.
++
++ The unused makefile macros TZCSRCS, TZDSRCS, DATESRCS have been removed.
++
++ Changes affecting documentation and commentary
++
++ tz-link.htm now mentions TC TIMEZONE's draft time zone service protocol
++ (thanks to Mike Douglass) and TimezoneJS.Date (thanks to Jim Fehrle).
++
++ Update URLs in tz-link page. Add URLs for Microsoft Windows, since
++ 8.1 introduces tz support. Remove URLs for Tru64 and UnixWare (no
++ longer maintained) and for old advisories. SOFA now does C.
++
++Release 2013g - 2013-09-30 21:08:26 -0700
++
++ Changes affecting current and near-future time stamps
++
++ Morocco now observes DST from the last Sunday in March to the last
++ Sunday in October, not April to September respectively. (Thanks
++ to Steffen Thorsen.)
++
++ Changes affecting 'zic'
++
++ 'zic' now runs on platforms that lack both hard links and symlinks.
++ (Thanks to Theo Veenker for reporting the problem, for MinGW.)
++ Also, fix some bugs on platforms that lack hard links but have symlinks.
++
++ 'zic -v' again warns that Asia/Tehran has no POSIX environment variable
++ to predict the far future, fixing a bug introduced in 2013e.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is again put into the tzdata tarball.
++ Also, 'leapseconds.awk', so tzdata is self-contained. (Thanks to
++ Matt Burgess and Ian Abbott.) The timestamps of these and other
++ dependent files in tarballs are adjusted more consistently.
++
++ Changes affecting documentation and commentary
++
++ The README file is now part of the data tarball as well as the code.
++ It now states that files are public domain unless otherwise specified.
++ (Thanks to Andrew Main (Zefram) for asking for clarifications.)
++ Its details about the 1989 release moved to a place of honor near
++ the end of NEWS.
++
++
++Release 2013f - 2013-09-24 23:37:36 -0700
++
++ Changes affecting near-future time stamps
++
++ Tocantins will very likely not observe DST starting this spring.
++ (Thanks to Steffen Thorsen.)
++
++ Jordan will likely stay at UT +03 indefinitely, and will not fall
++ back this fall.
++
++ Palestine will fall back at 00:00, not 01:00. (Thanks to Steffen Thorsen.)
++
++ Changes affecting API
++
++ The types of the global variables 'timezone' and 'altzone' (if present)
++ have been changed back to 'long'. This is required for 'timezone'
++ by POSIX, and for 'altzone' by common practice, e.g., Solaris 11.
++ These variables were originally 'long' in the tz code, but were
++ mistakenly changed to 'time_t' in 1987; nobody reported the
++ incompatibility until now. The difference matters on x32, where
++ 'long' is 32 bits and 'time_t' is 64. (Thanks to Elliott Hughes.)
++
++ Changes affecting the build procedure
++
++ Avoid long strings in leapseconds.awk to work around a mawk bug.
++ (Thanks to Cyril Baurand.)
++
++ Changes affecting documentation and commentary
++
++ New file 'NEWS' that contains release notes like this one.
++
++ Paraguay's law does not specify DST transition time; 00:00 is customary.
++ (Thanks to Waldemar Villamayor-Venialbo.)
++
++ Minor capitalization fixes.
++
++ Changes affecting version-control only
++
++ The experimental GitHub repository now contains annotated and
++ signed tags for recent releases, e.g., '2013e' for Release 2013e.
++ Releases are tagged starting with 2012e; earlier releases were
++ done differently, and tags would either not have a simple name or
++ not exactly match what was released.
++
++ 'make set-timestamps' is now simpler and a bit more portable.
++
++
++Release 2013e - 2013-09-19 23:50:04 -0700
++
++ Changes affecting near-future time stamps
++
++ This year Fiji will start DST on October 27, not October 20.
++ (Thanks to David Wheeler for the heads-up.) For now, guess that
++ Fiji will continue to spring forward the Sunday before the fourth
++ Monday in October.
++
++ Changes affecting current and future time zone abbreviations
++
++ Use WIB/WITA/WIT rather than WIT/CIT/EIT for alphabetic Indonesian
++ time zone abbreviations since 1932. (Thanks to George Ziegler,
++ Priyadi Iman Nurcahyo, Zakaria, Jason Grimes, Martin Pitt, and
++ Benny Lin.) This affects Asia/Dili, Asia/Jakarta, Asia/Jayapura,
++ Asia/Makassar, and Asia/Pontianak.
++
++ Use ART (UT -03, standard time), rather than WARST (also -03, but
++ daylight saving time) for San Luis, Argentina since 2009.
++
++ Changes affecting Godthåb time stamps after 2037 if version mismatch
++
++ Allow POSIX-like TZ strings where the transition time's hour can
++ range from -167 through 167, instead of the POSIX-required 0
++ through 24. E.g., TZ='FJT-12FJST,M10.3.1/146,M1.3.4/75' for the
++ new Fiji rules. This is a more-compact way to represent
++ far-future time stamps for America/Godthab, America/Santiago,
++ Antarctica/Palmer, Asia/Gaza, Asia/Hebron, Asia/Jerusalem,
++ Pacific/Easter, and Pacific/Fiji. Other zones are unaffected by
++ this change. (Derived from a suggestion by Arthur David Olson.)
++
++ Allow POSIX-like TZ strings where daylight saving time is in
++ effect all year. E.g., TZ='WART4WARST,J1/0,J365/25' for Western
++ Argentina Summer Time all year. This supports a more-compact way
++ to represent the 2013d data for America/Argentina/San_Luis.
++ Because of the change for San Luis noted above this change does not
++ affect the current data. (Thanks to Andrew Main (Zefram) for
++ suggestions that improved this change.)
++
++ Where these two TZ changes take effect, there is a minor extension
++ to the tz file format in that it allows new values for the
++ embedded TZ-format string, and the tz file format version number
++ has therefore been increased from 2 to 3 as a precaution.
++ Version-2-based client code should continue to work as before for
++ all time stamps before 2038. Existing version-2-based client code
++ (tzcode, GNU/Linux, Solaris) has been tested on version-3-format
++ files, and typically works in practice even for time stamps after
++ 2037; the only known exception is America/Godthab.
++
++ Changes affecting time stamps before 1970
++
++ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
++ some errors before 1947.
++
++ Some zones have been turned into links, when they differ from existing
++ zones only in older data entries that were likely invented or that
++ differ only in LMT or transitions from LMT. These changes affect
++ only time stamps before 1943. The affected zones are:
++ Africa/Juba, America/Anguilla, America/Aruba, America/Dominica,
++ America/Grenada, America/Guadeloupe, America/Marigot,
++ America/Montserrat, America/St_Barthelemy, America/St_Kitts,
++ America/St_Lucia, America/St_Thomas, America/St_Vincent,
++ America/Tortola, and Europe/Vaduz. (Thanks to Alois Treindl for
++ confirming that the old Europe/Vaduz zone was wrong and the new
++ link is better for WWII-era times.)
++
++ Change Kingston Mean Time from -5:07:12 to -5:07:11. This affects
++ America/Cayman, America/Jamaica and America/Grand_Turk time stamps
++ from 1890 to 1912.
++
++ Change the UT offset of Bern Mean Time from 0:29:44 to 0:29:46.
++ This affects Europe/Zurich time stamps from 1853 to 1894. (Thanks
++ to Alois Treindl).
++
++ Change the date of the circa-1850 Zurich transition from 1849-09-12
++ to 1853-07-16, overriding Shanks with data from Messerli about
++ postal and telegraph time in Switzerland.
++
++ Changes affecting time zone abbreviations before 1970
++
++ For Asia/Jakarta, use BMT (not JMT) for mean time from 1923 to 1932,
++ as Jakarta was called Batavia back then.
++
++ Changes affecting API
++
++ The 'zic' command now outputs a dummy transition when far-future
++ data can't be summarized using a TZ string, and uses a 402-year
++ window rather than a 400-year window. For the current data, this
++ affects only the Asia/Tehran file. It does not affect any of the
++ time stamps that this file represents, so zdump outputs the same
++ information as before. (Thanks to Andrew Main (Zefram).)
++
++ The 'date' command has a new '-r' option, which lets you specify
++ the integer time to display, a la FreeBSD.
++
++ The 'tzselect' command has two new options '-c' and '-n', which lets you
++ select a zone based on latitude and longitude.
++
++ The 'zic' command's '-v' option now warns about constructs that
++ require the new version-3 binary file format. (Thanks to Arthur
++ David Olson for the suggestion.)
++
++ Support for floating-point time_t has been removed.
++ It was always dicey, and POSIX no longer requires it.
++ (Thanks to Eric Blake for suggesting to the POSIX committee to
++ remove it, and thanks to Alan Barrett, Clive D.W. Feather, Andy
++ Heninger, Arthur David Olson, and Alois Treindl, for reporting
++ bugs and elucidating some of the corners of the old floating-point
++ implementation.)
++
++ The signatures of 'offtime', 'timeoff', and 'gtime' have been
++ changed back to the old practice of using 'long' to represent UT
++ offsets. This had been inadvertently and mistakenly changed to
++ 'int_fast32_t'. (Thanks to Christos Zoulas.)
++
++ The code avoids undefined behavior on integer overflow in some
++ more places, including gmtime, localtime, mktime and zdump.
++
++ Changes affecting the zdump utility
++
++ zdump now outputs "UT" when referring to Universal Time, not "UTC".
++ "UTC" does not make sense for time stamps that predate the introduction
++ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
++ for clarifying UT vs UTC.)
++
++ Data changes affecting behavior of tzselect and similar programs
++
++ Country code BQ is now called the more-common name "Caribbean Netherlands"
++ rather than the more-official "Bonaire, St Eustatius & Saba".
++
++ Remove from zone.tab the names America/Montreal, America/Shiprock,
++ and Antarctica/South_Pole, as they are equivalent to existing
++ same-country-code zones for post-1970 time stamps. The data entries for
++ these names are unchanged, so the names continue to work as before.
++
++ Changes affecting code internals
++
++ zic -c now runs way faster on 64-bit hosts when given large numbers.
++
++ zic now uses vfprintf to avoid allocating and freeing some memory.
++
++ tzselect now computes the list of continents from the data,
++ rather than have it hard-coded.
++
++ Minor changes pacify GCC 4.7.3 and GCC 4.8.1.
++
++ Changes affecting the build procedure
++
++ The 'leapseconds' file is now generated automatically from a
++ new file 'leap-seconds.list', which is a copy of
++ <ftp://time.nist.gov/pub/leap-seconds.list>.
++ A new source file 'leapseconds.awk' implements this.
++ The goal is simplification of the future maintenance of 'leapseconds'.
++
++ When building the 'posix' or 'right' subdirectories, if the
++ subdirectory would be a copy of the default subdirectory, it is
++ now made a symbolic link if that is supported. This saves about
++ 2 MB of file system space.
++
++ The links America/Shiprock and Antarctica/South_Pole have been
++ moved to the 'backward' file. This affects only nondefault builds
++ that omit 'backward'.
++
++ Changes affecting version-control only
++
++ .gitignore now ignores 'date'.
++
++ Changes affecting documentation and commentary
++
++ Changes to the 'tzfile' man page
++
++ It now mentions that the binary file format may be extended in
++ future versions by appending data.
++
++ It now refers to the 'zdump' and 'zic' man pages.
++
++ Changes to the 'zic' man page
++
++ It lists conditions that elicit a warning with '-v'.
++
++ It says that the behavior is unspecified when duplicate names
++ are given, or if the source of one link is the target of another.
++
++ Its examples are updated to match the latest data.
++
++ The definition of white space has been clarified slightly.
++ (Thanks to Michael Deckers.)
++
++ Changes to the 'Theory' file
++
++ There is a new section about the accuracy of the tz database,
++ describing the many ways that errors can creep in, and
++ explaining why so many of the pre-1970 time stamps are wrong or
++ misleading (thanks to Steve Allen, Lester Caine, and Garrett
++ Wollman for discussions that contributed to this).
++
++ The 'Theory' file describes LMT better (this follows a
++ suggestion by Guy Harris).
++
++ It refers to the 2013 edition of POSIX rather than the 2004 edition.
++
++ It's mentioned that excluding 'backward' should not affect the
++ other data, and it suggests at least one zone.tab name per
++ inhabited country (thanks to Stephen Colebourne).
++
++ Some longstanding restrictions on names are documented, e.g.,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++
++ It gives more reasons for the 1970 cutoff.
++
++ It now mentions which time_t variants are supported, such as
++ signed integer time_t. (Thanks to Paul Goyette for reporting
++ typos in an experimental version of this change.)
++
++ (Thanks to Philip Newton for correcting typos in these changes.)
++
++ Documentation and commentary is more careful to distinguish UT in
++ general from UTC in particular. (Thanks to Steve Allen.)
++
++ Add a better source for the Zurich 1894 transition.
++ (Thanks to Pierre-Yves Berger.)
++
++ Update shapefile citations in tz-link.htm. (Thanks to Guy Harris.)
++
++
++Release 2013d - 2013-07-05 07:38:01 -0700
++
++ Changes affecting future time stamps:
++
++ Morocco's midsummer transitions this year are July 7 and August 10,
++ not July 9 and August 8. (Thanks to Andrew Paprocki.)
++
++ Israel now falls back on the last Sunday of October.
++ (Thanks to Ephraim Silverberg.)
++
++ Changes affecting past time stamps:
++
++ Specify Jerusalem's location more precisely; this changes the pre-1880
++ times by 2 s.
++
++ Changing affecting metadata only:
++
++ Fix typos in the entries for country codes BQ and SX.
++
++ Changes affecting code:
++
++ Rework the code to fix a bug with handling Australia/Macquarie on
++ 32-bit hosts (thanks to Arthur David Olson).
++
++ Port to platforms like NetBSD, where time_t can be wider than long.
++
++ Add support for testing time_t types other than the system's.
++ Run 'make check_time_t_alternatives' to try this out.
++ Currently, the tests fail for unsigned time_t;
++ this should get fixed at some point.
++
++ Changes affecting documentation and commentary:
++
++ Deemphasize the significance of national borders.
++
++ Update the zdump man page.
++
++ Remove obsolete NOID comment (thanks to Denis Excoffier).
++
++ Update several URLs and comments in the web pages.
++
++ Spelling fixes (thanks to Kevin Lyda and Jonathan Leffler).
++
++ Update URL for CLDR Zone->Tzid table (thanks to Yoshito Umaoka).
++
++
++Release 2013c - 2013-04-19 16:17:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Palestine observed DST starting March 29, 2013. (Thanks to
++ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
++ with the predicted rules being the last Thursday in March at 24:00
++ to the first Friday on or after September 21 at 01:00.
++
++ Assume that the recent change to Paraguay's DST rules is permanent,
++ by moving the end of DST to the 4th Sunday in March every year.
++ (Thanks to Carlos Raúl Perasso.)
++
++ Changes affecting past time stamps:
++
++ Fix some historical data for Palestine to agree with that of
++ timeanddate.com, as follows:
++
++ The spring 2008 change in Gaza and Hebron was on 00:00 Mar 28, not
++ 00:00 Apr 1.
++
++ The fall 2009 change in Gaza and Hebron on Sep 4 was at 01:00, not
++ 02:00.
++
++ The spring 2010 change in Hebron was 00:00 Mar 26, not 00:01 Mar 27.
++
++ The spring 2011 change in Gaza was 00:01 Apr 1, not 12:01 Apr 2.
++
++ The spring 2011 change in Hebron on Apr 1 was at 00:01, not 12:01.
++
++ The fall 2011 change in Hebron on Sep 30 was at 00:00, not 03:00.
++
++ Fix times of habitation for Macquarie to agree with the Tasmania
++ Parks & Wildlife Service history, which indicates that permanent
++ habitation was 1899-1919 and 1948 on.
++
++ Changing affecting metadata only:
++
++ Macquarie Island is politically part of Australia, not Antarctica.
++ (Thanks to Tobias Conradi.)
++
++ Sort Macquarie more-consistently with other parts of Australia.
++ (Thanks to Tim Parenti.)
++
++
++Release 2013b - 2013-03-10 22:33:40 -0700
++
++ Changes affecting current and future time stamps:
++
++ Haiti uses US daylight-saving rules this year, and presumably future years.
++ This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++
++ Paraguay will end DST on March 24 this year.
++ (Thanks to Steffen Thorsen.) For now, assume it's just this year.
++
++ Morocco does not observe DST during Ramadan;
++ try to predict Ramadan in Morocco as best we can.
++ (Thanks to Erik Homoet for the heads-up.)
++
++ Changes affecting commentary:
++
++ Update URLs in tz-link page. Add URLs for webOS, BB10, iOS.
++ Update URL for Solaris. Mention Internet RFC 6557.
++ Update Internet RFCs 2445->5545, 2822->5322.
++ Switch from FTP to HTTP for Internet RFCs.
++
++
++Release 2013a - 2013-02-27 09:20:35 -0800
++
++ Change affecting binary data format:
++
++ The zone offset at the end of version-2-format zone files is now
++ allowed to be 24:00, as per POSIX.1-2008. (Thanks to Arthur David Olson.)
++
++ Changes affecting current and future time stamps:
++
++ Chile's 2013 rules, and we guess rules for 2014 and later, will be
++ the same as 2012, namely Apr Sun>=23 03:00 UTC to Sep Sun>=2 04:00 UTC.
++ (Thanks to Steffen Thorsen and Robert Elz.)
++
++ New Zones Asia/Khandyga, Asia/Ust-Nera, Europe/Busingen.
++ (Thanks to Tobias Conradi and Arthur David Olson.)
++
++ Many changes affect historical time stamps before 1940.
++ These were deduced from: Milne J. Civil time. Geogr J. 1899
++ Feb;13(2):173-94 <http://www.jstor.org/stable/1774359>.
++
++ Changes affecting the code:
++
++ Fix zic bug that mishandled Egypt's 2010 changes (this also affected
++ the data). (Thanks to Arthur David Olson.)
++
++ Fix localtime bug when time_t is unsigned and data files were generated
++ by a signed time_t system. (Thanks to Doug Bailey for reporting and
++ to Arthur David Olson for fixing.)
++
++ Allow the email address for bug reports to be set by the packager.
++ The default is tz@iana.org, as before. (Thanks to Joseph S. Myers.)
++
++ Update HTML checking to be compatible with Ubuntu 12.10.
++
++ Check that files are a safe subset of ASCII. At some point we may
++ relax this requirement to a safe subset of UTF-8. Without the
++ check, some non-UTF-8 encodings were leaking into the distribution.
++
++ Commentary changes:
++
++ Restore a comment about copyright notices that was inadvertently deleted.
++ (Thanks to Arthur David Olson.)
++
++ Improve the commentary about which districts observe what times
++ in Russia. (Thanks to Oscar van Vlijmen and Arthur David Olson).
++
++ Add web page links to tz.js.
++
++ Add "Run by the Monkeys" to tz-art. (Thanks to Arthur David Olson.)
++
++
++Release 2012j - 2012-11-12 18:34:49 -0800
++
++ Libya moved to CET this weekend, but with DST planned next year.
++ (Thanks to Even Scharning, Steffen Thorsen, and Tim Parenti.)
++
++ Signatures now have the extension .asc, not .sign, as that's more
++ standard. (Thanks to Phil Pennock.)
++
++ The output of 'zdump --version', and of 'zic --version', now
++ uses a format that is more typical for --version.
++ (Thanks to Joseph S. Myers.)
++
++ The output of 'tzselect --help', 'zdump --help', and 'zic --help'
++ now uses tz@iana.org rather than the old elsie address.
++
++ zic -v now complains about abbreviations that are less than 3
++ or more than 6 characters, as per Posix. Formerly, it checked
++ for abbreviations that were more than 3.
++
++ 'make public' no longer puts its temporary directory under /tmp,
++ and uses the just-built zic rather than the system zic.
++
++ Various fixes to documentation and commentary.
++
++
++Release 2012i - 2012-11-03 12:57:09 -0700
++
++ Cuba switches from DST tomorrow at 01:00. (Thanks to Steffen Thorsen.)
++
++ Linker flags can now be specified via LDFLAGS.
++ AWK now defaults to 'awk', not 'nawk'.
++ The shell in tzselect now defaults to /bin/bash, but this can
++ be overridden by specifying KSHELL.
++ The main web page now mentions the unofficial GitHub repository.
++ (Thanks to Mike Frysinger.)
++
++ Tarball signatures can now be built by running 'make signatures'.
++ There are also new makefile rules 'tarballs', 'check_public', and
++ separate makefile rules for each tarball and signature file.
++ A few makefile rules are now more portable to strict POSIX.
++
++ The main web page now lists the canonical IANA URL.
++
++
++Release 2012h - 2012-10-26 22:49:10 -0700
++
++ Bahia no longer has DST. (Thanks to Kelley Cook.)
++
++ Tocantins has DST. (Thanks to Rodrigo Severo.)
++
++ Israel has new DST rules next year. (Thanks to Ephraim Silverberg.)
++
++ Jordan stays on DST this winter. (Thanks to Steffen Thorsen.)
++
++ Web page updates.
++
++ More C modernization, except that at Arthur David Olson's suggestion
++ the instances of 'register' were kept.
++
++
++Release 2012g - 2012-10-17 20:59:45 -0700
++
++ Samoa fall 2012 and later. (Thanks to Nicholas Pereira and Robert Elz.)
++
++ Palestine fall 2012. (Thanks to Steffen Thorsen.)
++
++ Assume C89.
++
++ To attack the version-number problem, this release ships the file
++ 'Makefile' (which contains the release number) in both the tzcode and
++ the tzdata tarballs. The two Makefiles are identical, and should be
++ identical in any matching pair of tarballs, so it shouldn't matter
++ which order you extract the tarballs. Perhaps we can come up with a
++ better version-number scheme at some point; this scheme does have the
++ virtue of not adding more files.
++
++
++Release 2012f - 2012-09-12 23:17:03 -0700
++
++ * australasia (Pacific/Fiji): Fiji DST is October 21 through January
++ 20 this year. (Thanks to Steffen Thorsen.)
++
++
++Release 2012e - 2012-08-02 20:44:55 -0700
++
++ * australasia (Pacific/Fakaofo): Tokelau is UT +13, not +14.
++ (Thanks to Steffen Thorsen.)
++
++ * Use a single version number for both code and data.
++
++ * .gitignore: New file.
++
++ * Remove trailing white space.
++
++
++Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
++
++ Changes for Morocco's time stamps, which take effect in a couple of
++ hours, along with infrastructure changes to accommodate how the tz
++ code and data are released on IANA.
++
++
++Release data2012c - 2012-03-27 12:17:25 -0400
++
++ africa
++ Summer time changes for Morocco (to start late April 2012)
++
++ asia
++ Changes for 2012 for Gaza & the West Bank (Hebron) and Syria
++
++ northamerica
++ Haiti following US/Canada rules for 2012 (and we're assuming,
++ for now anyway, for the future).
++
++
++Release 2012b - 2012-03-02 12:29:15 +0700
++
++ There is just one change to tzcode2012b (compared with 2012a):
++ the Makefile that was accidentally included with 2012a has been
++ replaced with the version that should have been there, which is
++ identical with the previous version (from tzcode2011i).
++
++ There are just two changes in tzdata2012b compared with 2012a.
++
++ Most significantly, summer time in Cuba has been delayed 3 weeks
++ (now starts April 1 rather than March 11). Since Mar 11 (the old start
++ date, as listed in 2012a) is just a little over a week away, this
++ change is urgent.
++
++ Less importantly, an excess tab in one of the changes in zone.tab
++ in 2012a has been removed.
++
++
++Release 2012a - 2012-03-01 18:28:10 +0700
++
++ The changes in tzcode2012a (compared to the previous version, 2011i)
++ are entirely to the README and tz-art.htm and tz-link.htm files, if
++ none of those concern you, you can ignore the code update. The changes
++ reflect the changed addresses for the mailing list and the code and
++ data distribution points & methods (and a link to DateTime::TimeZone::Tzfile
++ has been added to tz-link.htm).
++
++ In tzdata2012a (compared to the previous release, which was 2011n)
++ the major changes are:
++ Chile 2011/2012 and 2012/2013 summer time date adjustments.
++ Falkland Islands onto permanent summer time (we're assuming for the
++ foreseeable future, though 2012 is all we're fairly certain of.)
++ Armenia has abolished Summer Time.
++ Tokelau jumped the International Date Line back last December
++ (just the same as their near neighbour, Samoa).
++ America/Creston is a new zone for a small area of British Columbia
++ There will be a leapsecond 2012-06-30 23:59:60 UTC.
++
++ Other minor changes are:
++ Corrections to 1918 Canadian summer time end dates.
++ Updated URL for UK time zone history (in comments)
++ A few typos in Le Corre's list of free French place names (comments)
++
++
++Release data2011n - 2011-10-30 14:57:54 +0700
++
++ There are three changes of note - most urgently, Cuba (America/Havana)
++ has extended summer time by two weeks, now to end on Nov 13, rather than
++ the (already past) Oct 30. Second, the Pridnestrovian Moldavian Republic
++ (Europe/Tiraspol) decided not to split from the rest of Moldova after
++ all, and consequently that zone has been removed (again) and reinstated
++ in the "backward" file as a link to Europe/Chisinau. And third, the
++ end date for Fiji's summer time this summer was moved forward from the
++ earlier planned Feb 26, to Jan 22.
++
++ Apart from that, Moldova (MD) returns to a single entry in zone.tab
++ (and the incorrect syntax that was in the 2011m version of that file
++ is so fixed - it would have been fixed in a different way had this
++ change not happened - that's the "missing" sccs version id).
++
++
++Release data2011m - 2011-10-24 21:42:16 +0700
++
++ In particular, the typos in comments in the data (2011-11-17 should have
++ been 2011-10-17 as Alan Barrett noted, and spelling of Tiraspol that
++ Tim Parenti noted) have been fixed, and the change for Ukraine has been
++ made in all 4 Ukrainian zones, rather than just Kiev (again, thanks to
++ Tim Parenti, and also Denys Gavrysh)
++
++ In addition, I added Europe/Tiraspol to zone.tab.
++
++ This time, all the files have new version numbers... (including the files
++ otherwise unchanged in 2011m that were changed in 2011l but didn't get new
++ version numbers there...)
++
++
++Release data2011l - 2011-10-10 11:15:43 +0700
++
++ There are just 2 changes that cause different generated tzdata files from
++ zic, to Asia/Hebron and Pacific/Fiji - the possible change for Bahia, Brazil
++ is included, but commented out. Compared with the diff I sent out last week,
++ this version also includes attributions for the sources for the changes
++ (in much the same format as ado used, but the html tags have not been
++ checked, verified, or used in any way at all, so if there are errors there,
++ please let me know.)
++
++
++Release data2011k - 2011-09-20 17:54:03 -0400
++
++ [not summarized]
++
++
++Release data2011j - 2011-09-12 09:22:49 -0400
++
++ (contemporary changes for Samoa; past changes for Kenya, Uganda, and
++ Tanzania); there are also two spelling corrections to comments in
++ the australasia file (with thanks to Christos Zoulas).
++
++
++Release 2011i - 2011-08-29 05:56:32 -0400
++
++ [not summarized]
++
++
++Release data2011h - 2011-06-15 18:41:48 -0400
++
++ Russia and Curaçao changes
++
++
++Release 2011g - 2011-04-25 09:07:22 -0400
++
++ update the rules for Egypt to reflect its abandonment of DST this year
++
++
++Release 2011f - 2011-04-06 17:14:53 -0400
++
++ [not summarized]
++
++
++Release 2011e - 2011-03-31 16:04:38 -0400
++
++ Morocco, Chile, and tz-link changes
++
++
++Release 2011d - 2011-03-14 09:18:01 -0400
++
++ changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++
++
++Release 2011c - 2011-03-07 09:30:09 -0500
++
++ These do affect current time stamps in Chile and Annette Island, Canada.
++
++
++Release 2011b - 2011-02-07 08:44:50 -0500
++
++ [not summarized]
++
++
++Release 2011a - 2011-01-24 10:30:16 -0500
++
++ [not summarized]
++
++
++Release data2010o - 2010-11-01 09:18:23 -0400
++
++ change to the end of DST in Fiji in 2011
++
++
++Release 2010n - 2010-10-25 08:19:17 -0400
++
++ [not summarized]
++
++
++Release 2010m - 2010-09-27 09:24:48 -0400
++
++ Hong Kong, Vostok, and zic.c changes
++
++
++Release 2010l - 2010-08-16 06:57:25 -0400
++
++ [not summarized]
++
++
++Release 2010k - 2010-07-26 10:42:27 -0400
++
++ [not summarized]
++
++
++Release 2010j - 2010-05-10 09:07:48 -0400
++
++ changes for Bahía de Banderas and for version naming
++
++
++Release data2010i - 2010-04-16 18:50:45 -0400
++
++ the end of DST in Morocco on 2010-08-08
++
++
++Release data2010h - 2010-04-05 09:58:56 -0400
++
++ [not summarized]
++
++
++Release data2010g - 2010-03-24 11:14:53 -0400
++
++ [not summarized]
++
++
++Release 2010f - 2010-03-22 09:45:46 -0400
++
++ [not summarized]
++
++
++Release data2010e - 2010-03-08 14:24:27 -0500
++
++ corrects the Dhaka bug found by Danvin Ruangchan
++
++
++Release data2010d - 2010-03-06 07:26:01 -0500
++
++ [not summarized]
++
++
++Release 2010c - 2010-03-01 09:20:58 -0500
++
++ changes including KRE's suggestion for earlier initialization of
++ "goahead" and "goback" structure elements
++
++
++Release code2010a - 2010-02-16 10:40:04 -0500
++
++ [not summarized]
++
++
++Release data2010b - 2010-01-20 12:37:01 -0500
++
++ Mexico changes
++
++
++Release data2010a - 2010-01-18 08:30:04 -0500
++
++ changes to Dhaka
++
++
++Release data2009u - 2009-12-26 08:32:28 -0500
++
++ changes to DST in Bangladesh
++
++
++Release 2009t - 2009-12-21 13:24:27 -0500
++
++ [not summarized]
++
++
++Release data2009s - 2009-11-14 10:26:32 -0500
++
++ (cosmetic) Antarctica change and the DST-in-Fiji-in-2009-and-2010 change
++
++
++Release 2009r - 2009-11-09 10:10:31 -0500
++
++ "antarctica" and "tz-link.htm" changes
++
++
++Release 2009q - 2009-11-02 09:12:40 -0500
++
++ with two corrections as reported by Eric Muller and Philip Newton
++
++
++Release data2009p - 2009-10-23 15:05:27 -0400
++
++ Argentina (including San Luis) changes (with the correction from
++ Mariano Absatz)
++
++
++Release data2009o - 2009-10-14 16:49:38 -0400
++
++ Samoa (commentary only), Pakistan, and Bangladesh changes
++
++
++Release data2009n - 2009-09-22 15:13:38 -0400
++
++ added commentary for Argentina and a change to the end of DST in
++ 2009 in Pakistan
++
++
++Release data2009m - 2009-09-03 10:23:43 -0400
++
++ Samoa and Palestine changes
++
++
++Release data2009l - 2009-08-14 09:13:07 -0400
++
++ Samoa (comments only) and Egypt
++
++
++Release 2009k - 2009-07-20 09:46:08 -0400
++
++ [not summarized]
++
++
++Release data2009j - 2009-06-15 06:43:59 -0400
++
++ Bangladesh change (with a short turnaround since the DST change is
++ impending)
++
++
++Release 2009i - 2009-06-08 09:21:22 -0400
++
++ updating for DST in Bangladesh this year
++
++
++Release 2009h - 2009-05-26 09:19:14 -0400
++
++ [not summarized]
++
++
++Release data2009g - 2009-04-20 16:34:07 -0400
++
++ Cairo
++
++
++Release data2009f - 2009-04-10 11:00:52 -0400
++
++ correct DST in Pakistan
++
++
++Release 2009e - 2009-04-06 09:08:11 -0400
++
++ [not summarized]
++
++
++Release 2009d - 2009-03-23 09:38:12 -0400
++
++ Morocco, Tunisia, Argentina, and American Astronomical Society changes
++
++
++Release data2009c - 2009-03-16 09:47:51 -0400
++
++ change to the start of Cuban DST
++
++
++Release 2009b - 2009-02-09 11:15:22 -0500
++
++ [not summarized]
++
++
++Release 2009a - 2009-01-21 10:09:39 -0500
++
++ [not summarized]
++
++
++Release data2008i - 2008-10-21 12:10:25 -0400
++
++ southamerica and zone.tab files, with Argentina DST rule changes and
++ United States zone reordering and recommenting
++
++
++Release 2008h - 2008-10-13 07:33:56 -0400
++
++ [not summarized]
++
++
++Release 2008g - 2008-10-06 09:03:18 -0400
++
++ Fix a broken HTML anchor and update Brazil's DST transitions;
++ there's also a slight reordering of information in tz-art.htm.
++
++
++Release data2008f - 2008-09-09 22:33:26 -0400
++
++ [not summarized]
++
++
++Release 2008e - 2008-07-28 14:11:17 -0400
++
++ changes by Arthur David Olson and Jesper Nørgaard Welen
++
++
++Release data2008d - 2008-07-07 09:51:38 -0400
++
++ changes by Arthur David Olson, Paul Eggert, and Rodrigo Severo
++
++
++Release data2008c - 2008-05-19 17:48:03 -0400
++
++ Pakistan, Morocco, and Mongolia
++
++
++Release data2008b - 2008-03-24 08:30:59 -0400
++
++ including renaming Asia/Calcutta to Asia/Kolkata, with a backward
++ link provided
++
++
++Release 2008a - 2008-03-08 05:42:16 -0500
++
++ [not summarized]
++
++
++Release 2007k - 2007-12-31 10:25:22 -0500
++
++ most importantly, changes to the "southamerica" file based on
++ Argentina's readoption of daylight saving time
++
++
++Release 2007j - 2007-12-03 09:51:01 -0500
++
++ 1. eliminate the "P" (parameter) macro;
++
++ 2. the "noncontroversial" changes circulated on the time zone
++ mailing list (less the changes to "logwtmp.c");
++
++ 3. eliminate "too many transition" errors when "min" is used in time
++ zone rules;
++
++ 4. changes by Paul Eggert (including updated information for Venezuela).
++
++
++Release data2007i - 2007-10-30 10:28:11 -0400
++
++ changes for Cuba and Syria
++
++
++Release 2007h - 2007-10-01 10:05:51 -0400
++
++ changes by Paul Eggert, as well as an updated link to the ICU
++ project in tz-link.htm
++
++
++Release 2007g - 2007-08-20 10:47:59 -0400
++
++ changes by Paul Eggert
++
++ The "leapseconds" file has been updated to incorporate the most
++ recent International Earth Rotation and Reference Systems Service
++ (IERS) bulletin.
++
++ There's an addition to tz-art.htm regarding the television show "Medium".
++
++
++Release 2007f - 2007-05-07 10:46:46 -0400
++
++ changes by Paul Eggert (including Haiti, Turks and Caicos, and New
++ Zealand)
++
++ changes to zic.c to allow hour values greater than 24 (along with
++ Paul's improved time value overflow checking)
++
++
++Release 2007e - 2007-04-02 10:11:52 -0400
++
++ Syria and Honduras changes by Paul Eggert
++
++ zic.c variable renaming changes by Arthur David Olson
++
++
++Release 2007d - 2007-03-20 08:48:30 -0400
++
++ changes by Paul Eggert
++
++ the elimination of white space at the ends of lines
++
++
++Release 2007c - 2007-02-26 09:09:37 -0500
++
++ changes by Paul Eggert
++
++
++Release 2007b - 2007-02-12 09:34:20 -0500
++
++ Paul Eggert's proposed change to the quotation handling logic in zic.c.
++
++ changes to the commentary in "leapseconds" reflecting the IERS
++ announcement that there is to be no positive leap second at the end
++ of June 2007.
++
++
++Release 2007a - 2007-01-08 12:28:29 -0500
++
++ changes by Paul Eggert
++
++ Derick Rethan's Asmara change
++
++ Oscar van Vlijmen's Easter Island local mean time change
++
++ symbolic link changes
++
++
++Release 2006p - 2006-11-27 08:54:27 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006o - 2006-11-06 09:18:07 -0500
++
++ changes by Paul Eggert
++
++
++Release 2006n - 2006-10-10 11:32:06 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006m - 2006-10-02 15:32:35 -0400
++
++ changes for Uruguay, Palestine, and Egypt by Paul Eggert
++
++ (minimalist) changes to zic.8 to clarify "until" information
++
++
++Release data2006l - 2006-09-18 12:58:11 -0400
++
++ Paul's best-effort work on this coming weekend's Egypt time change
++
++
++Release 2006k - 2006-08-28 12:19:09 -0400
++
++ changes by Paul Eggert
++
++
++Release 2006j - 2006-08-21 09:56:32 -0400
++
++ changes by Paul Eggert
++
++
++Release code2006i - 2006-08-07 12:30:55 -0400
++
++ localtime.c fixes
++
++ Ken Pizzini's conversion script
++
++
++Release code2006h - 2006-07-24 09:19:37 -0400
++
++ adds public domain notices to four files
++
++ includes a fix for transition times being off by a second
++
++ adds a new recording to the "arts" file (information courtesy Colin Bowern)
++
++
++Release 2006g - 2006-05-08 17:18:09 -0400
++
++ northamerica changes by Paul Eggert
++
++
++Release 2006f - 2006-05-01 11:46:00 -0400
++
++ a missing version number problem is fixed (with thanks to Bradley
++ White for catching the problem)
++
++
++Release 2006d - 2006-04-17 14:33:43 -0400
++
++ changes by Paul Eggert
++
++ added new items to tz-arts.htm that were found by Paul
++
++
++Release 2006c - 2006-04-03 10:09:32 -0400
++
++ two sets of data changes by Paul Eggert
++
++ a fencepost error fix in zic.c
++
++ changes to zic.c and the "europe" file to minimize differences
++ between output produced by the old 32-bit zic and the new 64-bit
++ version
++
++
++Release 2006b - 2006-02-20 10:08:18 -0500
++ [tz32code2006b + tz64code2006b + tzdata2006b]
++
++ 64-bit code
++
++ All SCCS IDs were bumped to "8.1" for this release.
++
++
++Release 2006a - 2006-01-30 08:59:31 -0500
++
++ changes by Paul Eggert (in particular, Indiana time zone moves)
++
++ an addition to the zic manual page to describe how special-case
++ transitions are handled
++
++
++Release 2005r - 2005-12-27 09:27:13 -0500
++
++ Canadian changes by Paul Eggert
++
++ They also add "<pre>" directives to time zone data files and reflect
++ changes to warning message logic in "zdump.c" (but with calls to
++ "gettext" kept unbundled at the suggestion of Ken Pizzini).
++
++
++Release 2005q - 2005-12-13 09:17:09 -0500
++
++ Nothing earth-shaking here:
++ 1. Electronic mail addresses have been removed.
++ 2. Casts of the return value of exit have been removed.
++ 3. Casts of the argument of is.* macros have been added.
++ 4. Indentation in one section of zic.c has been fixed.
++ 5. References to dead URLs in the data files have been dealt with.
++
++
++Release 2005p - 2005-12-05 10:30:53 -0500
++
++ "systemv", "tz-link.htm", and "zdump.c" changes
++ (less the casts of arguments to the is* macros)
++
++
++Release 2005o - 2005-11-28 10:55:26 -0500
++
++ Georgia, Cuba, Nicaragua, and Jordan changes by Paul Eggert
++
++ zdump.c lint fixes by Arthur David Olson
++
++
++Release 2005n - 2005-10-03 09:44:09 -0400
++
++ changes by Paul Eggert (both the Uruguay changes and the Kyrgyzstan
++ et al. changes)
++
++
++Release 2005m - 2005-08-29 12:15:40 -0400
++
++ changes by Paul Eggert (with a small tweak to the tz-art change)
++
++ a declaration of an unused variable has been removed from zdump.c
++
++
++Release 2005l - 2005-08-22 12:06:39 -0400
++
++ changes by Paul Eggert
++
++ overflow/underflow checks by Arthur David Olson, minus changes to
++ the "Theory" file about the pending addition of 64-bit data (I grow
++ less confident of the changes being accepted with each passing day,
++ and the changes no longer increase the data files nine-fold--there's
++ less than a doubling in size by my local Sun's reckoning)
++
++
++Release 2005k - 2005-07-14 14:14:24 -0400
++
++ The "leapseconds" file has been edited to reflect the recently
++ announced leap second at the end of 2005.
++
++ I've also deleted electronic mail addresses from the files as an
++ anti-spam measure.
++
++
++Release 2005j - 2005-06-13 14:34:13 -0400
++
++ These reflect changes to limit the length of time zone abbreviations
++ and the characters used in those abbreviations.
++
++ There are also changes to handle POSIX-style "quoted" time zone
++ environment variables.
++
++ The changes were circulated on the time zone mailing list; the only
++ change since then was the removal of a couple of minimum-length of
++ abbreviation checks.
++
++
++Release data2005i - 2005-04-21 15:04:16 -0400
++
++ changes (most importantly to Nicaragua and Haiti) by Paul Eggert
++
++
++Release 2005h - 2005-04-04 11:24:47 -0400
++
++ changes by Paul Eggert
++
++ minor changes to Makefile and zdump.c to produce more useful output
++ when doing a "make typecheck"
++
++
++Release 2005g - 2005-03-14 10:11:21 -0500
++
++ changes by Paul Eggert (a change to current DST rules in Uruguay and
++ an update to a link to time zone software)
++
++
++Release 2005f - 2005-03-01 08:45:32 -0500
++
++ data and documentation changes by Paul Eggert
++
++
++Release 2005e - 2005-02-10 15:59:44 -0500
++
++ [not summarized]
++
++
++Release code2005d - 2005-01-31 09:21:47 -0500
++
++ make zic complain about links to links if the -v flag is used
++
++ have "make public" do more code checking
++
++ add an include to "localtime.c" for the benefit of gcc systems
++
++
++Release 2005c - 2005-01-17 18:36:29 -0500
++
++ get better results when mktime runs on a system where time_t is double
++
++ changes to the data files (most importantly to Paraguay)
++
++
++Release 2005b - 2005-01-10 09:19:54 -0500
++
++ Get localtime and gmtime working on systems with exotic time_t types.
++
++ Update the leap second commentary in the "leapseconds" file.
++
++
++Release 2005a - 2005-01-01 13:13:44 -0500
++
++ [not summarized]
++
++
++Release code2004i - 2004-12-14 13:42:58 -0500
++
++ Deal with systems where time_t is unsigned.
++
++
++Release code2004h - 2004-12-07 11:40:18 -0500
++
++ 64-bit-time_t changes
++
++
++Release 2004g - 2004-11-02 09:06:01 -0500
++
++ update to Cuba (taking effect this weekend)
++
++ other changes by Paul Eggert
++
++ correction of the spelling of Oslo
++
++ changed versions of difftime.c and private.h
++
++
++Release code2004f - 2004-10-21 10:25:22 -0400
++
++ Cope with wide-ranging tm_year values.
++
++
++Release 2004e - 2004-10-11 14:47:21 -0400
++
++ Brazil/Argentina/Israel changes by Paul Eggert
++
++ changes to tz-link.htm by Paul
++
++ one small fix to Makefile
++
++
++Release 2004d - 2004-09-22 08:27:29 -0400
++
++ Avoid overflow problems when TM_YEAR_BASE is added to an integer.
++
++
++Release 2004c - 2004-08-11 12:06:26 -0400
++
++ asctime-related changes
++
++ (variants of) some of the documentation changes suggested by Paul Eggert
++
++
++Release 2004b - 2004-07-19 14:33:35 -0400
++
++ data changes by Paul Eggert - most importantly, updates for Argentina
++
++
++Release 2004a - 2004-05-27 12:00:47 -0400
++
++ changes by Paul Eggert
++
++ Handle DST transitions that occur at the end of a month in some
++ years but at the start of the following month in other years.
++
++ Add a copy of the correspondence that's the basis for claims about
++ DST in the Navajo Nation.
++
++
++Release 2003e - 2003-12-15 09:36:47 -0500
++
++ changes by Arthur David Olson (primarily code changes)
++
++ changes by Paul Eggert (primarily data changes)
++
++ minor changes to "Makefile" and "northamerica" (in the latter case,
++ optimization of the "Toronto" rules)
++
++
++Release 2003d - 2003-10-06 09:34:44 -0400
++
++ changes by Paul Eggert
++
++
++Release 2003c - 2003-09-16 10:47:05 -0400
++
++ Fix bad returns in zic.c's inleap function.
++ Thanks to Bradley White for catching the problem!
++
++
++Release 2003b - 2003-09-16 07:13:44 -0400
++
++ Add a "--version" option (and documentation) to the zic and zdump commands.
++
++ changes to overflow/underflow checking in zic
++
++ a localtime typo fix.
++
++ Update the leapseconds and tz-art.htm files.
++
++
++Release 2003a - 2003-03-24 09:30:54 -0500
++
++ changes by Paul Eggert
++
++ a few additions and modifications to the tz-art.htm file
++
++
++Release 2002d - 2002-10-15 13:12:42 -0400
++
++ changes by Paul Eggert, less the "Britain (UK)" change in iso3166.tab
++
++ There's also a new time zone quote in "tz-art.htm".
++
++
++Release 2002c - 2002-04-04 11:55:20 -0500
++
++ changes by Paul Eggert
++
++ Change zic.c to avoid creating symlinks to files that don't exist.
++
++
++Release 2002b - 2002-01-28 12:56:03 -0500
++
++ [These change notes are for Release 2002a, which was corrupted.
++ 2002b was a corrected version of 2002a.]
++
++ changes by Paul Eggert
++
++ Update the "leapseconds" file to note that there'll be no leap
++ second at the end of June, 2002.
++
++ Change "zic.c" to deal with a problem in handling the "Asia/Bishkek" zone.
++
++ Change to "difftime.c" to avoid sizeof problems.
++
++
++Release 2001d - 2001-10-09 13:31:32 -0400
++
++ changes by Paul Eggert
++
++
++Release 2001c - 2001-06-05 13:59:55 -0400
++
++ changes by Paul Eggert and Andrew Brown
++
++
++Release 2001b - 2001-04-05 16:44:38 -0400
++
++ changes by Paul Eggert (modulo jnorgard's typo fix)
++
++ tz-art.htm has been HTMLified.
++
++
++Release 2001a - 2001-03-13 12:57:44 -0500
++
++ changes by Paul Eggert
++
++ An addition to the "leapseconds" file: comments with the text of the
++ latest IERS leap second notice.
++
++ Trailing white space has been removed from data file lines, and
++ repeated spaces in "Rule Jordan" lines in the "asia" file have been
++ converted to tabs.
++
++
++Release 2000h - 2000-12-14 15:33:38 -0500
++
++ changes by Paul Eggert
++
++ one typo fix in the "art" file
++
++ With providence, this is the last update of the millennium.
++
++
++Release 2000g - 2000-10-10 11:35:22 -0400
++
++ changes by Paul Eggert
++
++ correction of John Mackin's name submitted by Robert Elz
++
++ Garry Shandling's Daylight Saving Time joke (!?!) from the recent
++ Emmy Awards broadcast.
++
++
++Release 2000f - 2000-08-10 09:31:58 -0400
++
++ changes by Paul Eggert
++
++ Added information in "tz-art.htm" on a Seinfeld reference to DST.
++
++ Error checking and messages in the "yearistype" script have been
++ improved.
++
++
++Release 2000e - 2000-07-31 09:27:54 -0400
++
++ data changes by Paul Eggert
++
++ a change to the default value of the defined constant HAVE_STRERROR
++
++ the addition of a Dave Barry quote on DST to the tz-arts file
++
++
++Release 2000d - 2000-04-20 15:43:04 -0400
++
++ changes to the documentation and code of strftime for C99 conformance
++
++ a bug fix for date.c
++
++ These are based on (though modified from) changes by Paul Eggert.
++
++
++Release 2000c - 2000-03-04 10:31:43 -0500
++
++ changes by Paul Eggert
++
++
++Release 2000b - 2000-02-21 12:16:29 -0500
++
++ changes by Paul Eggert and Joseph Myers
++
++ modest tweaks to the tz-art.htm and tz-link.htm files
++
++
++Release 2000a - 2000-01-18 09:21:26 -0500
++
++ changes by Paul Eggert
++
++ The two hypertext documents have also been renamed.
++
++
++Release code1999i-data1999j - 1999-11-15 18:43:22 -0500
++
++ Paul Eggert's changes
++
++ additions to the "zic" manual page and the "Arts.htm" file
++
++
++Release code1999h-data1999i - 1999-11-08 14:55:21 -0500
++
++ [not summarized]
++
++
++Release data1999h - 1999-10-07 03:50:29 -0400
++
++ changes by Paul Eggert to "europe" (most importantly, fixing
++ Lithuania and Estonia)
++
++
++Release 1999g - 1999-09-28 11:06:18 -0400
++
++ data changes by Paul Eggert (most importantly, the change for
++ Lebanon that buys correctness for this coming Sunday)
++
++ The "code" file contains changes to "Makefile" and "checktab.awk" to
++ allow better checking of time zone files before they are published.
++
++
++Release 1999f - 1999-09-23 09:48:14 -0400
++
++ changes by Arthur David Olson and Paul Eggert
++
++
++Release 1999e - 1999-08-17 15:20:54 -0400
++
++ changes circulated by Paul Eggert, although the change to handling
++ of DST-specifying time zone names has been commented out for now
++ (search for "XXX" in "localtime.c" for details). These files also
++ do not make any changes to the start of DST in Brazil.
++
++ In addition to Paul's changes, there are updates to "Arts.htm" and
++ cleanups of URLs.
++
++
++Release 1999d - 1999-03-30 11:31:07 -0500
++
++ changes by Paul Eggert
++
++ The Makefile's "make public" rule has also been changed to do a test
++ compile of each individual time zone data file (which should help
++ avoid problems such as the one we had with Nicosia).
++
++
++Release 1999c - 1999-03-25 09:47:47 -0500
++
++ changes by Paul Eggert, most importantly the change for Chile.
++
++
++Release 1999b - 1999-02-01 17:51:44 -0500
++
++ changes by Paul Eggert
++
++ code changes (suggested by Mani Varadarajan, mani at be.com) for
++ correct handling of symbolic links when building using a relative directory
++
++ code changes to generate correct messages for failed links
++
++ updates to the URLs in Arts.htm
++
++
++Release 1999a - 1999-01-19 16:20:29 -0500
++
++ error message internationalizations and corrections in zic.c and
++ zdump.c (as suggested by Vladimir Michl, vladimir.michl at upol.cz,
++ to whom thanks!)
++
++
++Release code1998h-data1998i - 1998-10-01 09:56:10 -0400
++
++ changes for Brazil, Chile, and Germany
++
++ support for use of "24:00" in the input files for the time zone compiler
++
++
++Release code1998g-data1998h - 1998-09-24 10:50:28 -0400
++
++ changes by Paul Eggert
++
++ correction to a define in the "private.h" file
++
++
++Release data1998g - 1998-08-11 03:28:35 -0000
++ [tzdata1998g.tar.gz is missing!]
++
++ Lithuanian change provided by mgedmin at pub.osf.it
++
++ Move creation of the GMT link with Etc/GMT to "etcetera" (from
++ "backward") to ensure that the GMT file is created even where folks
++ don't want the "backward" links (as suggested by Paul Eggert).
++
++
++Release data1998f - 1998-07-20 13:50:00 -0000
++ [tzdata1998f.tar.gz is missing!]
++
++ Update the "leapseconds" file to include the newly-announced
++ insertion at the end of 1998.
++
++
++Release code1998f - 1998-06-01 10:18:31 -0400
++
++ addition to localtime.c by Guy Harris
++
++
++Release 1998e - 1998-05-28 09:56:26 -0400
++
++ The Makefile is changed to produce zoneinfo-posix rather than
++ zoneinfo/posix, and to produce zoneinfo-leaps rather than
++ zoneinfo/right.
++
++ data changes by Paul Eggert
++
++ changes from Guy Harris to provide asctime_r and ctime_r
++
++ A usno1998 file (substantially identical to usno1997) has been added.
++
++
++Release 1998d - 1998-05-14 11:58:34 -0400
++
++ changes to comments (in particular, elimination of references to CIA maps).
++ "Arts.htm", "WWW.htm", "asia", and "australasia" are the only places
++ where changes occur.
++
++
++Release 1998c - 1998-02-28 12:32:26 -0500
++
++ changes by Paul Eggert (save the "French correction," on which I'll
++ wait for the dust to settle)
++
++ symlink changes
++
++ changes and additions to Arts.htm
++
++
++Release 1998b - 1998-01-17 14:31:51 -0500
++
++ URL cleanups and additions
++
++
++Release 1998a - 1998-01-13 12:37:35 -0500
++
++ changes by Paul Eggert
++
++
++Release code1997i-data1997k - 1997-12-29 09:53:41 -0500
++
++ changes by Paul Eggert, with minor modifications from Arthur David
++ Olson to make the files more browser friendly
++
++
++Release code1997h-data1997j - 1997-12-18 17:47:35 -0500
++
++ minor changes to put "TZif" at the start of each time zone information file
++
++ a rule has also been added to the Makefile so you can
++ make zones
++ to just recompile the zone information files (rather than doing a
++ full "make install" with its other effects).
++
++
++Release data1997i - 1997-10-07 08:45:38 -0400
++
++ changes to Africa by Paul Eggert
++
++
++Release code1997g-data1997h - 1997-09-04 16:56:54 -0400
++
++ corrections for Uruguay (and other locations)
++
++ Arthur David Olson's simple-minded fix allowing mktime to both
++ correctly handle leap seconds and correctly handle tm_sec values
++ upon which arithmetic has been performed.
++
++
++Release code1997f-data1997g - 1997-07-19 13:15:02 -0400
++
++ Paul Eggert's updates
++
++ a small change to a function prototype;
++
++ "Music" has been renamed "Arts.htm", HTMLified, and augmented to
++ include information on Around the World in Eighty Days.
++
++
++Release code1997e-data1997f - 1997-05-03 18:52:34 -0400
++
++ fixes to zic's error handling
++
++ changes inspired by the item circulated on Slovenia
++
++ The description of Web resources has been HTMLified for browsing
++ convenience.
++
++ A new piece of tz-related music has been added to the "Music" file.
++
++
++Release code1997d-data1997e - 1997-03-29 12:48:52 -0500
++
++ Paul Eggert's latest suggestions
++
++
++Release code1997c-data1997d - 1997-03-07 20:37:54 -0500
++
++ changes to "zic.c" to correct performance of the "-s" option
++
++ a new file "usno1997"
++
++
++Release data1997c - 1997-03-04 09:58:18 -0500
++
++ changes in Israel
++
++
++Release 1997b - 1997-02-27 18:34:19 -0500
++
++ The data file incorporates the 1997 leap second.
++
++ The code file incorporates Arthur David Olson's take on the
++ zic/multiprocessor/directory-creation situation.
++
++
++Release 1997a - 1997-01-21 09:11:10 -0500
++
++ Paul Eggert's Antarctica (and other changes)
++
++ Arthur David Olson finessed the "getopt" issue by checking against
++ both -1 and EOF (regardless of POSIX, SunOS 4.1.1's manual says -1
++ is returned while SunOS 5.5's manual says EOF is returned).
++
++
++Release code1996o-data1996n - 1996-12-27 21:42:05 -0500
++
++ Paul Eggert's latest changes
++
++
++Release code1996n - 1996-12-16 09:42:02 -0500
++
++ link snapping fix from Bruce Evans (via Garrett Wollman)
++
++
++Release data1996m - 1996-11-24 02:37:34 -0000
++ [tzdata1996m.tar.gz is missing!]
++
++ Paul Eggert's batch of changes
++
++
++Release code1996m-data1996l - 1996-11-05 14:00:12 -0500
++
++ No functional changes here; the files have simply been changed to
++ make more use of ISO style dates in comments. The names of the above
++ files now include the year in full.
++
++
++Release code96l - 1996-09-08 17:12:20 -0400
++
++ tzcode96k was missing a couple of pieces.
++
++
++Release 96k - 1996-09-08 16:06:22 -0400
++
++ the latest round of changes from Paul Eggert
++
++ the recent Year 2000 material
++
++
++Release code96j - 1996-07-30 13:18:53 -0400
++
++ Set sp->typecnt as suggested by Timothy Patrick Murphy.
++
++
++Release code96i - 1996-07-27 20:11:35 -0400
++
++ Paul's suggested patch for strftime %V week numbers
++
++
++Release data96i - 1996-07-01 18:13:04 -0400
++
++ "northamerica" and "europe" changes by Paul Eggert
++
++
++Release code96h - 1996-06-05 08:02:21 -0400
++
++ fix for handling transitions specified in Universal Time
++
++ Some "public domain" notices have also been added.
++
++
++Release code96g - 1996-05-16 14:00:26 -0400
++
++ fix for the simultaneous-DST-and-zone-change challenge
++
++
++Release data96h - 1996-05-09 17:40:51 -0400
++
++ changes by Paul Eggert
++
++
++Release code96f-data96g - 1996-05-03 03:09:59 -0000
++ [tzcode96f.tar.gz + tzdata96g.tar.gz are both missing!]
++
++ The changes get us some of the way to fixing the problems noted in Paul
++ Eggert's letter yesterday (in addition to a few others). The approach
++ has been to make zic a bit smarter about figuring out what time zone
++ abbreviations apply just after the time specified in the "UNTIL" part
++ of a zone line. Putting the smarts in zic means avoiding having
++ transition times show up in both "Zone" lines and "Rule" lines, which
++ in turn avoids multiple transition time entries in time zone files.
++ (This also makes the zic input files such as "europe" a bit shorter and
++ should ease maintenance.)
++
++
++Release data96f - 1996-04-19 19:20:03 -0000
++ [tzdata96f.tar.gz is missing!]
++
++ The only changes are to the "northamerica" file; the time zone
++ abbreviation for Denver is corrected to MST (and MDT), and the
++ comments for Mexico have been updated.
++
++
++Release data96e - 1996-03-19 17:37:26 -0500
++
++ Proposals by Paul Eggert, in particular the Portugal change that
++ comes into play at the end of this month.
++
++
++Release data96d - 1996-03-18 20:49:39 -0500
++
++ [not summarized]
++
++
++Release code96e - 1996-02-29 15:43:27 -0000
++ [tzcode96e.tar.gz is missing!]
++
++ internationalization changes and the fix to the documentation for strftime
++
++
++Release code96d-data96c - 1996-02-12 11:05:27 -0500
++
++ The "code" file simply updates Bob Kridle's electronic address.
++
++ The "data" file updates rules for Mexico.
++
++
++Release data96b - 1996-01-27 15:44:42 -0500
++
++ Kiribati change
++
++
++Release code96c - 1996-01-16 16:58:15 -0500
++
++ leap-year streamlining and binary-search changes
++
++ fix to newctime.3
++
++
++Release code96b - 1996-01-10 20:42:39 -0500
++
++ fixes and enhancements from Paul Eggert, including code that
++ emulates the behavior of recent versions of the SunOS "date"
++ command.
++
++
++Release 96a - 1996-01-06 09:08:24 -0500
++
++ Israel updates
++
++ fixes to strftime.c for correct ISO 8601 week number generation,
++ plus support for two new formats ('G' and 'g') to give ISO 8601 year
++ numbers (which are not necessarily the same as calendar year numbers)
++
++
++Release code95i-data95m - 1995-12-21 12:46:47 -0500
++
++ The latest revisions from Paul Eggert are included, the usno1995
++ file has been updated, and a new file ("WWW") covering useful URLs
++ has been added.
++
++
++Release code95h-data95l - 1995-12-19 18:10:12 -0500
++
++ A simplification of a macro definition, a change to data for Sudan,
++ and (for last minute shoppers) notes in the "Music" file on the CD
++ "Old Man Time".
++
++
++Release code95g-data95k - 1995-10-30 10:32:47 -0500
++
++ (slightly reformatted) 8-bit-clean proposed patch
++
++ minor patch: US/Eastern -> America/New_York
++
++ snapshot of the USNO's latest data ("usno1995")
++
++ some other minor cleanups
++
++
++Release code95f-data95j - 1995-10-28 21:01:34 -0000
++ [tzcode95f.tar.gz + tzdata95j.tar.gz are both missing!]
++
++ European cleanups
++
++ support for 64-bit time_t's
++
++ optimization in localtime.c
++
++
++Release code95e - 1995-10-13 13:23:57 -0400
++
++ the mktime change to scan from future to past when trying to find time zone
++ offsets
++
++
++Release data95i - 1995-09-26 10:43:26 -0400
++
++ For Canada/Central, guess that the Sun customer's "one week too
++ early" was just a approximation, and the true error is one month
++ too early. This is consistent with the rest of Canada.
++
++
++Release data95h - 1995-09-21 11:26:48 -0400
++
++ latest changes from Paul Eggert
++
++
++Release code95d - 1995-09-14 11:14:45 -0400
++
++ the addition of a "Music" file, which documents four recorded
++ versions of the tune "Save That Time".
++
++
++Release data95g - 1995-09-01 17:21:36 -0400
++
++ "yearistype" correction
++
++
++Release data95f - 1995-08-28 20:46:56 -0400
++
++ Paul Eggert's change to the australasia file
++
++
++Release data95e - 1995-07-08 18:02:34 -0400
++
++ The only change is a leap second at the end of this year.
++ Thanks to Bradley White for forwarding news on the leap second.
++
++
++Release data95d - 1995-07-03 13:26:22 -0400
++
++ Paul Eggert's changes
++
++
++Release data95c - 1995-07-02 19:19:28 -0400
++
++ changes to "asia", "backward", "europe", and "southamerica"
++ (read: northamericacentrics need not apply)
++
++
++Release code95c - 1995-03-13 14:00:46 -0500
++
++ one-line fix for sign extension problems in detzcode
++
++
++Release 95b - 1995-03-04 11:22:38 -0500
++
++ Minor changes in both:
++
++ The "code" file contains a workaround for the lack of "unistd.h" in
++ Microsoft C++ version 7.
++
++ The "data" file contains a fixed "Link" for America/Shiprock.
++
++
++Release 94h - 1994-12-10 12:51:14 -0500
++
++ The files:
++
++ * incorporate the changes to "zdump" and "date" to make changes to
++ the "TZ" environment variable permanent;
++
++ * incorporate the table changes by Paul Eggert;
++
++ * include (and document) support for universal time specifications in
++ data files - but do not (yet) include use of this feature in the
++ data files.
++
++ Think of this as "TZ Classic" - the software has been set up not to break if
++ universal time shows up in its input, and data entries have been
++ left as is so as not to break existing implementations.
++
++
++Release data94f - 1994-08-20 12:56:09 -0400
++
++ (with thanks!) the latest data updates from Paul Eggert
++
++
++Release data94e - 1994-06-04 13:13:53 -0400
++
++ [not summarized]
++
++
++Release code94g - 1994-05-05 12:14:07 -0400
++
++ fix missing "optind.c" and a reference to it in the Makefile
++
++
++Release code94f - 1994-05-05 13:00:33 -0000
++ [tzcode94f.tar.gz is missing!]
++
++ changes to avoid overflow in difftime, as well as changes to cope
++ with the 52/53 challenge in strftime
++
++
++Release code94e - 1994-03-30 23:32:59 -0500
++
++ change for the benefit of PCTS
++
++
++Release 94d - 1994-02-24 15:42:25 -0500
++
++ Avoid clashes with POSIX semantics for zones such as GMT+4.
++
++ Some other very minor housekeeping is also present.
++
++
++Release code94c - 1994-02-10 08:52:40 -0500
++
++ Fix bug where mkdirs was broken unless you compile with
++ -fwritable-strings (which is generally losing to do).
++
++
++Release 94b - 1994-02-07 10:04:33 -0500
++
++ work by Paul Eggert who notes:
++
++ I found another book of time zone histories by E W Whitman; it's not
++ as extensive as Shanks but has a few goodies of its own. I used it
++ to update the tables. I also fixed some more as a result of
++ correspondence with Adam David and Peter Ilieve, and move some stray
++ links from 'europe' to 'backward'. I corrected some scanning errors
++ in usno1989.
++
++ As far as the code goes, I fixed zic to allow years in the range
++ INT_MIN to INT_MAX; this fixed a few boundary conditions around 1900.
++ And I cleaned up the zic documentation a little bit.
++
++
++Release data94a - 1994-02-03 08:58:54 -0500
++
++ It simply incorporates the recently announced leap second into the
++ "leapseconds" file.
++
++
++Release 93g - 1993-11-22 17:28:27 -0500
++
++ Paul Eggert has provided a good deal of historic information (based
++ on Shanks), and there are some code changes to deal with the buglets
++ that crawled out in dealing with the new information.
++
++
++Release 93f - 1993-10-15 12:27:46 -0400
++
++ Paul Eggert's changes
++
++
++Release 93e - 1993-09-05 21:21:44 -0400
++
++ This has updated data for Israel, England, and Kwajalein. There's
++ also an update to "zdump" to cope with Kwajalein's 24-hour jump.
++ Thanks to Paul Eggert and Peter Ilieve for the changes.
++
++
++Release 93d - 1993-06-17 23:34:17 -0400
++
++ new fix and new data on Israel
++
++
++Release 93c - 1993-06-06 19:31:55 -0400
++
++ [not summarized]
++
++
++Release 93b - 1993-02-02 14:53:58 -0500
++
++ updated "leapseconds" file
++
++
++Release 93 - 1993-01-08 07:01:06 -0500
++
++ At kre's suggestion, the package has been split in two - a code piece
++ (which also includes documentation) that's only of use to folks who
++ want to recompile things and a data piece useful to anyone who can
++ run "zic".
++
++ The new version has a few changes to the data files, a few
++ portability changes, and an off-by-one fix (with thanks to
++ Tom Karzes at deshaw.com for providing a description and a
++ solution).
++
++
++Release 92c - 1992-11-21 17:35:36 -0000
++ [tz92c.tar.Z is missing!]
++
++ The fallout from the latest round of DST transitions.
++
++ There are changes for Portugal, Saskatchewan, and "Pacific-New";
++ there's also a change to "zic.c" that makes it portable to more systems.
++
++
++Release 92 - 1992-04-25 18:17:03 -0000
++ [tz92.tar.Z is missing!]
++
++ By popular demand (well, at any rate, following a request by kre at munnari)
++
++
++The 1989 update of the time zone package featured:
++
++ * POSIXization (including interpretation of POSIX-style TZ environment
++ variables, provided by Guy Harris),
++ * ANSIfication (including versions of "mktime" and "difftime"),
++ * SVIDulation (an "altzone" variable)
++ * MACHination (the "gtime" function)
++ * corrections to some time zone data (including corrections to the rules
++ for Great Britain and New Zealand)
++ * reference data from the United States Naval Observatory for folks who
++ want to do additional time zones
++ * and the 1989 data for Saudi Arabia.
++
++ (Since this code will be treated as "part of the implementation" in some
++ places and as "part of the application" in others, there's no good way to
++ name functions, such as timegm, that are not part of the proposed ANSI C
++ standard; such functions have kept their old, underscore-free names in this
++ update.)
++
++ And the "dysize" function has disappeared; it was present to allow
++ compilation of the "date" command on old BSD systems, and a version of "date"
++ is now provided in the package. The "date" command is not created when you
++ "make all" since it may lack options provided by the version distributed with
++ your operating system, or may not interact with the system in the same way
++ the native version does.
++
++ Since POSIX frowns on correct leap second handling, the default behavior of
++ the "zic" command (in the absence of a "-L" option) has been changed to omit
++ leap second information from its output files.
++
++
++-----
++Notes
++
++This file contains copies of the part of each release announcement
++that talks about the changes in that release. The text has been
++adapted and reformatted for the purposes of this file.
++
++Traditionally a release R consists of a pair of tarball files,
++tzcodeR.tar.gz and tzdataR.tar.gz. However, some releases (e.g.,
++code2010a, data2012c) consist of just one or the other tarball, and a
++few (e.g., code2012c-data2012d) have tarballs with mixed version
++numbers. Recent releases also come in an experimental format
++consisting of a single tarball tzdb-R.tar.lz with extra data.
++
++Release time stamps are taken from the release's commit (for newer,
++Git-based releases), from the newest file in the tarball (for older
++releases, where this info is available) or from the email announcing
++the release (if all else fails; these are marked with a time zone of
++-0000 and an "is missing!" comment).
++
++Earlier versions of the code and data were not announced on the tz
++list and are not summarized here.
++
++This file is in the public domain.
++
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -0,0 +1,71 @@
++README for the tz distribution
++
++"What time is it?" -- Richard Deacon as The King
++"Any time you want it to be." -- Frank Baxter as The Scientist
++ (from the Bell System film "About Time")
++
++The Time Zone Database (often called tz or zoneinfo) contains code and
++data that represent the history of local time for many representative
++locations around the globe. It is updated periodically to reflect
++changes made by political bodies to time zone boundaries, UTC offsets,
++and daylight-saving rules.
++
++Here is a recipe for acquiring, building, installing, and testing the
++tz distribution on a GNU/Linux or similar host.
++
++To acquire the distribution, run the following shell commands:
++
++ mkdir tz
++ cd tz
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tz*-latest.tar.gz'
++ gzip -dc tzcode-latest.tar.gz | tar -xf -
++ gzip -dc tzdata-latest.tar.gz | tar -xf -
++
++Alternatively, the following shell commands acquire the same
++distribution, with extra data useful for regression testing:
++
++ wget --retr-symlinks 'ftp://ftp.iana.org/tz/tzdb-latest.tar.lz'
++ lzip -dc tzdb-latest.tar.lz | tar -xf -
++
++Be sure to read the comments in "Makefile" and make any changes needed
++to make things right for your system, especially if you are using some
++platform other than GNU/Linux. Then run the following commands,
++substituting your desired installation directory for "$HOME/tzdir":
++
++ make TOPDIR=$HOME/tzdir install
++ $HOME/tzdir/etc/zdump -v America/Los_Angeles
++
++Historical local time information has been included here to:
++
++* provide a compendium of data about the history of civil time
++ that is useful even if not 100% accurate;
++
++* give an idea of the variety of local time rules that have
++ existed in the past and thus an idea of the variety that may be
++ expected in the future;
++
++* provide a test of the generality of the local time rule description
++ system.
++
++The information in the time zone data files is by no means authoritative;
++fixes and enhancements are welcome. Please see the file CONTRIBUTING
++for details.
++
++Thanks to these Time Zone Caballeros who've made major contributions to the
++time conversion package: Keith Bostic; Bob Devine; Paul Eggert; Robert Elz;
++Guy Harris; Mark Horton; John Mackin; and Bradley White. Thanks also to
++Michael Bloom, Art Neilson, Stephen Prince, John Sovereign, and Frank Wales
++for testing work, and to Gwillim Law for checking local mean time data.
++Thanks in particular to Arthur David Olson, the project's founder and first
++maintainer, to whom the time zone community owes the greatest debt of all.
++None of them are responsible for remaining errors.
++
++Look in <ftp://ftp.iana.org/tz/releases/> for updated versions of these files.
++
++Please send comments or information to tz@iana.org.
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson. The other files in this distribution are either
++public domain or BSD licensed; see the file LICENSE for details.
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -0,0 +1,840 @@
++Theory and pragmatics of the tz code and data
++
++
++----- Outline -----
++
++ Scope of the tz database
++ Names of time zone rules
++ Time zone abbreviations
++ Accuracy of the tz database
++ Time and date functions
++ Calendrical issues
++ Time and time zones on Mars
++
++
++----- Scope of the tz database -----
++
++The tz database attempts to record the history and predicted future of
++all computer-based clocks that track civil time. To represent this
++data, the world is partitioned into regions whose clocks all agree
++about time stamps that occur after the somewhat-arbitrary cutoff point
++of the POSIX Epoch (1970-01-01 00:00:00 UTC). For each such region,
++the database records all known clock transitions, and labels the region
++with a notable location. Although 1970 is a somewhat-arbitrary
++cutoff, there are significant challenges to moving the cutoff earlier
++even by a decade or two, due to the wide variety of local practices
++before computer timekeeping became prevalent.
++
++Clock transitions before 1970 are recorded for each such location,
++because most systems support time stamps before 1970 and could
++misbehave if data entries were omitted for pre-1970 transitions.
++However, the database is not designed for and does not suffice for
++applications requiring accurate handling of all past times everywhere,
++as it would take far too much effort and guesswork to record all
++details of pre-1970 civil timekeeping.
++
++As described below, reference source code for using the tz database is
++also available. The tz code is upwards compatible with POSIX, an
++international standard for UNIX-like systems. As of this writing, the
++current edition of POSIX is:
++
++ The Open Group Base Specifications Issue 7
++ IEEE Std 1003.1, 2013 Edition
++ <http://pubs.opengroup.org/onlinepubs/9699919799/>
++
++
++
++----- Names of time zone rules -----
++
++Each of the database's time zone rules has a unique name.
++Inexperienced users are not expected to select these names unaided.
++Distributors should provide documentation and/or a simple selection
++interface that explains the names; for one example, see the 'tzselect'
++program in the tz code. The Unicode Common Locale Data Repository
++<http://cldr.unicode.org/> contains data that may be useful for other
++selection interfaces.
++
++The time zone rule naming conventions attempt to strike a balance
++among the following goals:
++
++ * Uniquely identify every region where clocks have agreed since 1970.
++ This is essential for the intended use: static clocks keeping local
++ civil time.
++
++ * Indicate to experts where that region is.
++
++ * Be robust in the presence of political changes. For example, names
++ of countries are ordinarily not used, to avoid incompatibilities
++ when countries change their name (e.g. Zaire->Congo) or when
++ locations change countries (e.g. Hong Kong from UK colony to
++ China).
++
++ * Be portable to a wide variety of implementations.
++
++ * Use a consistent naming conventions over the entire world.
++
++Names normally have the form AREA/LOCATION, where AREA is the name
++of a continent or ocean, and LOCATION is the name of a specific
++location within that region. North and South America share the same
++area, 'America'. Typical names are 'Africa/Cairo', 'America/New_York',
++and 'Pacific/Honolulu'.
++
++Here are the general rules used for choosing location names,
++in decreasing order of importance:
++
++ Use only valid POSIX file name components (i.e., the parts of
++ names other than '/'). Do not use the file name
++ components '.' and '..'. Within a file name component,
++ use only ASCII letters, '.', '-' and '_'. Do not use
++ digits, as that might create an ambiguity with POSIX
++ TZ strings. A file name component must not exceed 14
++ characters or start with '-'. E.g., prefer 'Brunei'
++ to 'Bandar_Seri_Begawan'. Exceptions: see the discussion
++ of legacy names below.
++ A name must not be empty, or contain '//', or start or end with '/'.
++ Do not use names that differ only in case. Although the reference
++ implementation is case-sensitive, some other implementations
++ are not, and they would mishandle names differing only in case.
++ If one name A is an initial prefix of another name AB (ignoring case),
++ then B must not start with '/', as a regular file cannot have
++ the same name as a directory in POSIX. For example,
++ 'America/New_York' precludes 'America/New_York/Bronx'.
++ Uninhabited regions like the North Pole and Bouvet Island
++ do not need locations, since local time is not defined there.
++ There should typically be at least one name for each ISO 3166-1
++ officially assigned two-letter code for an inhabited country
++ or territory.
++ If all the clocks in a region have agreed since 1970,
++ don't bother to include more than one location
++ even if subregions' clocks disagreed before 1970.
++ Otherwise these tables would become annoyingly large.
++ If a name is ambiguous, use a less ambiguous alternative;
++ e.g. many cities are named San José and Georgetown, so
++ prefer 'Costa_Rica' to 'San_Jose' and 'Guyana' to 'Georgetown'.
++ Keep locations compact. Use cities or small islands, not countries
++ or regions, so that any future time zone changes do not split
++ locations into different time zones. E.g. prefer 'Paris'
++ to 'France', since France has had multiple time zones.
++ Use mainstream English spelling, e.g. prefer 'Rome' to 'Roma', and
++ prefer 'Athens' to the Greek 'Αθήνα' or the Romanized 'Athína'.
++ The POSIX file name restrictions encourage this rule.
++ Use the most populous among locations in a zone,
++ e.g. prefer 'Shanghai' to 'Beijing'. Among locations with
++ similar populations, pick the best-known location,
++ e.g. prefer 'Rome' to 'Milan'.
++ Use the singular form, e.g. prefer 'Canary' to 'Canaries'.
++ Omit common suffixes like '_Islands' and '_City', unless that
++ would lead to ambiguity. E.g. prefer 'Cayman' to
++ 'Cayman_Islands' and 'Guatemala' to 'Guatemala_City',
++ but prefer 'Mexico_City' to 'Mexico' because the country
++ of Mexico has several time zones.
++ Use '_' to represent a space.
++ Omit '.' from abbreviations in names, e.g. prefer 'St_Helena'
++ to 'St._Helena'.
++ Do not change established names if they only marginally
++ violate the above rules. For example, don't change
++ the existing name 'Rome' to 'Milan' merely because
++ Milan's population has grown to be somewhat greater
++ than Rome's.
++ If a name is changed, put its old spelling in the 'backward' file.
++ This means old spellings will continue to work.
++
++The file 'zone1970.tab' lists geographical locations used to name time
++zone rules. It is intended to be an exhaustive list of names for
++geographic regions as described above; this is a subset of the names
++in the data. Although a 'zone1970.tab' location's longitude
++corresponds to its LMT offset with one hour for every 15 degrees east
++longitude, this relationship is not exact.
++
++Older versions of this package used a different naming scheme,
++and these older names are still supported.
++See the file 'backward' for most of these older names
++(e.g., 'US/Eastern' instead of 'America/New_York').
++The other old-fashioned names still supported are
++'WET', 'CET', 'MET', and 'EET' (see the file 'europe').
++
++Older versions of this package defined legacy names that are
++incompatible with the first rule of location names, but which are
++still supported. These legacy names are mostly defined in the file
++'etcetera'. Also, the file 'backward' defines the legacy names
++'GMT0', 'GMT-0', 'GMT+0' and 'Canada/East-Saskatchewan', and the file
++'northamerica' defines the legacy names 'EST5EDT', 'CST6CDT',
++'MST7MDT', and 'PST8PDT'.
++
++Excluding 'backward' should not affect the other data. If
++'backward' is excluded, excluding 'etcetera' should not affect the
++remaining data.
++
++
++----- Time zone abbreviations -----
++
++When this package is installed, it generates time zone abbreviations
++like 'EST' to be compatible with human tradition and POSIX.
++Here are the general rules used for choosing time zone abbreviations,
++in decreasing order of importance:
++
++ Use three or more characters that are ASCII alphanumerics or '+' or '-'.
++ Previous editions of this database also used characters like
++ ' ' and '?', but these characters have a special meaning to
++ the shell and cause commands like
++ set `date`
++ to have unexpected effects.
++ Previous editions of this rule required upper-case letters,
++ but the Congressman who introduced Chamorro Standard Time
++ preferred "ChST", so lower-case letters are now allowed.
++ Also, POSIX from 2001 on relaxed the rule to allow '-', '+',
++ and alphanumeric characters from the portable character set
++ in the current locale. In practice ASCII alphanumerics and
++ '+' and '-' are safe in all locales.
++
++ In other words, in the C locale the POSIX extended regular
++ expression [-+[:alnum:]]{3,} should match the abbreviation.
++ This guarantees that all abbreviations could have been
++ specified by a POSIX TZ string.
++
++ Use abbreviations that are in common use among English-speakers,
++ e.g. 'EST' for Eastern Standard Time in North America.
++ We assume that applications translate them to other languages
++ as part of the normal localization process; for example,
++ a French application might translate 'EST' to 'HNE'.
++
++ For zones whose times are taken from a city's longitude, use the
++ traditional xMT notation, e.g. 'PMT' for Paris Mean Time.
++ The only name like this in current use is 'GMT'.
++
++ Use 'LMT' for local mean time of locations before the introduction
++ of standard time; see "Scope of the tz database".
++
++ If there is no common English abbreviation, use numeric offsets like
++ -05 and +0830 that are generated by zic's %z notation.
++
++ [The remaining guidelines predate the introduction of %z.
++ They are problematic as they mean tz data entries invent
++ notation rather than record it. These guidelines are now
++ deprecated and the plan is to gradually move to %z for
++ inhabited locations and to "-00" for uninhabited locations.]
++
++ If there is no common English abbreviation, abbreviate the English
++ translation of the usual phrase used by native speakers.
++ If this is not available or is a phrase mentioning the country
++ (e.g. "Cape Verde Time"), then:
++
++ When a country is identified with a single or principal zone,
++ append 'T' to the country's ISO code, e.g. 'CVT' for
++ Cape Verde Time. For summer time append 'ST';
++ for double summer time append 'DST'; etc.
++ Otherwise, take the first three letters of an English place
++ name identifying each zone and append 'T', 'ST', etc.
++ as before; e.g. 'VLAST' for VLAdivostok Summer Time.
++
++ Use UT (with time zone abbreviation '-00') for locations while
++ uninhabited. The leading '-' is a flag that the time
++ zone is in some sense undefined; this notation is
++ derived from Internet RFC 3339.
++
++Application writers should note that these abbreviations are ambiguous
++in practice: e.g. 'CST' has a different meaning in China than
++it does in the United States. In new applications, it's often better
++to use numeric UT offsets like '-0600' instead of time zone
++abbreviations like 'CST'; this avoids the ambiguity.
++
++
++----- Accuracy of the tz database -----
++
++The tz database is not authoritative, and it surely has errors.
++Corrections are welcome and encouraged; see the file CONTRIBUTING.
++Users requiring authoritative data should consult national standards
++bodies and the references cited in the database's comments.
++
++Errors in the tz database arise from many sources:
++
++ * The tz database predicts future time stamps, and current predictions
++ will be incorrect after future governments change the rules.
++ For example, if today someone schedules a meeting for 13:00 next
++ October 1, Casablanca time, and tomorrow Morocco changes its
++ daylight saving rules, software can mess up after the rule change
++ if it blithely relies on conversions made before the change.
++
++ * The pre-1970 entries in this database cover only a tiny sliver of how
++ clocks actually behaved; the vast majority of the necessary
++ information was lost or never recorded. Thousands more zones would
++ be needed if the tz database's scope were extended to cover even
++ just the known or guessed history of standard time; for example,
++ the current single entry for France would need to split into dozens
++ of entries, perhaps hundreds. And in most of the world even this
++ approach would be misleading due to widespread disagreement or
++ indifference about what times should be observed. In her 2015 book
++ "The Global Transformation of Time, 1870-1950", Vanessa Ogle writes
++ "Outside of Europe and North America there was no system of time
++ zones at all, often not even a stable landscape of mean times,
++ prior to the middle decades of the twentieth century". See:
++ Timothy Shenk, Booked: A Global History of Time. Dissent 2015-12-17
++ https://www.dissentmagazine.org/blog/booked-a-global-history-of-time-vanessa-ogle
++
++ * Most of the pre-1970 data entries come from unreliable sources, often
++ astrology books that lack citations and whose compilers evidently
++ invented entries when the true facts were unknown, without
++ reporting which entries were known and which were invented.
++ These books often contradict each other or give implausible entries,
++ and on the rare occasions when they are checked they are
++ typically found to be incorrect.
++
++ * For the UK the tz database relies on years of first-class work done by
++ Joseph Myers and others; see <http://www.polyomino.org.uk/british-time/>.
++ Other countries are not done nearly as well.
++
++ * Sometimes, different people in the same city would maintain clocks
++ that differed significantly. Railway time was used by railroad
++ companies (which did not always agree with each other),
++ church-clock time was used for birth certificates, etc.
++ Often this was merely common practice, but sometimes it was set by law.
++ For example, from 1891 to 1911 the UT offset in France was legally
++ 0:09:21 outside train stations and 0:04:21 inside.
++
++ * Although a named location in the tz database stands for the
++ containing region, its pre-1970 data entries are often accurate for
++ only a small subset of that region. For example, Europe/London
++ stands for the United Kingdom, but its pre-1847 times are valid
++ only for locations that have London's exact meridian, and its 1847
++ transition to GMT is known to be valid only for the L&NW and the
++ Caledonian railways.
++
++ * The tz database does not record the earliest time for which a zone's
++ data entries are thereafter valid for every location in the region.
++ For example, Europe/London is valid for all locations in its
++ region after GMT was made the standard time, but the date of
++ standardization (1880-08-02) is not in the tz database, other than
++ in commentary. For many zones the earliest time of validity is
++ unknown.
++
++ * The tz database does not record a region's boundaries, and in many
++ cases the boundaries are not known. For example, the zone
++ America/Kentucky/Louisville represents a region around the city of
++ Louisville, the boundaries of which are unclear.
++
++ * Changes that are modeled as instantaneous transitions in the tz
++ database were often spread out over hours, days, or even decades.
++
++ * Even if the time is specified by law, locations sometimes
++ deliberately flout the law.
++
++ * Early timekeeping practices, even assuming perfect clocks, were
++ often not specified to the accuracy that the tz database requires.
++
++ * Sometimes historical timekeeping was specified more precisely
++ than what the tz database can handle. For example, from 1909 to
++ 1937 Netherlands clocks were legally UT +00:19:32.13, but the tz
++ database cannot represent the fractional second.
++
++ * Even when all the timestamp transitions recorded by the tz database
++ are correct, the tz rules that generate them may not faithfully
++ reflect the historical rules. For example, from 1922 until World
++ War II the UK moved clocks forward the day following the third
++ Saturday in April unless that was Easter, in which case it moved
++ clocks forward the previous Sunday. Because the tz database has no
++ way to specify Easter, these exceptional years are entered as
++ separate tz Rule lines, even though the legal rules did not change.
++
++ * The tz database models pre-standard time using the proleptic Gregorian
++ calendar and local mean time (LMT), but many people used other
++ calendars and other timescales. For example, the Roman Empire used
++ the Julian calendar, and had 12 varying-length daytime hours with a
++ non-hour-based system at night.
++
++ * Early clocks were less reliable, and data entries do not represent
++ this unreliability.
++
++ * As for leap seconds, civil time was not based on atomic time before
++ 1972, and we don't know the history of earth's rotation accurately
++ enough to map SI seconds to historical solar time to more than
++ about one-hour accuracy. See: Morrison LV, Stephenson FR.
++ Historical values of the Earth's clock error Delta T and the
++ calculation of eclipses. J Hist Astron. 2004;35:327-36
++ <http://adsabs.harvard.edu/full/2004JHA....35..327M>;
++ Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
++ <http://adsabs.harvard.edu/full/2005JHA....36..339M>.
++
++ * The relationship between POSIX time (that is, UTC but ignoring leap
++ seconds) and UTC is not agreed upon after 1972. Although the POSIX
++ clock officially stops during an inserted leap second, at least one
++ proposed standard has it jumping back a second instead; and in
++ practice POSIX clocks more typically either progress glacially during
++ a leap second, or are slightly slowed while near a leap second.
++
++ * The tz database does not represent how uncertain its information is.
++ Ideally it would contain information about when data entries are
++ incomplete or dicey. Partial temporal knowledge is a field of
++ active research, though, and it's not clear how to apply it here.
++
++In short, many, perhaps most, of the tz database's pre-1970 and future
++time stamps are either wrong or misleading. Any attempt to pass the
++tz database off as the definition of time should be unacceptable to
++anybody who cares about the facts. In particular, the tz database's
++LMT offsets should not be considered meaningful, and should not prompt
++creation of zones merely because two locations differ in LMT or
++transitioned to standard time at different dates.
++
++
++----- Time and date functions -----
++
++The tz code contains time and date functions that are upwards
++compatible with those of POSIX.
++
++POSIX has the following properties and limitations.
++
++* In POSIX, time display in a process is controlled by the
++ environment variable TZ. Unfortunately, the POSIX TZ string takes
++ a form that is hard to describe and is error-prone in practice.
++ Also, POSIX TZ strings can't deal with other (for example, Israeli)
++ daylight saving time rules, or situations where more than two
++ time zone abbreviations are used in an area.
++
++ The POSIX TZ string takes the following form:
++
++ stdoffset[dst[offset][,date[/time],date[/time]]]
++
++ where:
++
++ std and dst
++ are 3 or more characters specifying the standard
++ and daylight saving time (DST) zone names.
++ Starting with POSIX.1-2001, std and dst may also be
++ in a quoted form like "<UTC+10>"; this allows
++ "+" and "-" in the names.
++ offset
++ is of the form '[+-]hh:[mm[:ss]]' and specifies the
++ offset west of UT. 'hh' may be a single digit; 0<=hh<=24.
++ The default DST offset is one hour ahead of standard time.
++ date[/time],date[/time]
++ specifies the beginning and end of DST. If this is absent,
++ the system supplies its own rules for DST, and these can
++ differ from year to year; typically US DST rules are used.
++ time
++ takes the form 'hh:[mm[:ss]]' and defaults to 02:00.
++ This is the same format as the offset, except that a
++ leading '+' or '-' is not allowed.
++ date
++ takes one of the following forms:
++ Jn (1<=n<=365)
++ origin-1 day number not counting February 29
++ n (0<=n<=365)
++ origin-0 day number counting February 29 if present
++ Mm.n.d (0[Sunday]<=d<=6[Saturday], 1<=n<=5, 1<=m<=12)
++ for the dth day of week n of month m of the year,
++ where week 1 is the first week in which day d appears,
++ and '5' stands for the last week in which day d appears
++ (which may be either the 4th or 5th week).
++ Typically, this is the only useful form;
++ the n and Jn forms are rarely used.
++
++ Here is an example POSIX TZ string, for US Pacific time using rules
++ appropriate from 1987 through 2006:
++
++ TZ='PST8PDT,M4.1.0/02:00,M10.5.0/02:00'
++
++ This POSIX TZ string is hard to remember, and mishandles time stamps
++ before 1987 and after 2006. With this package you can use this
++ instead:
++
++ TZ='America/Los_Angeles'
++
++* POSIX does not define the exact meaning of TZ values like "EST5EDT".
++ Typically the current US DST rules are used to interpret such values,
++ but this means that the US DST rules are compiled into each program
++ that does time conversion. This means that when US time conversion
++ rules change (as in the United States in 1987), all programs that
++ do time conversion must be recompiled to ensure proper results.
++
++* The TZ environment variable is process-global, which makes it hard
++ to write efficient, thread-safe applications that need access
++ to multiple time zones.
++
++* In POSIX, there's no tamper-proof way for a process to learn the
++ system's best idea of local wall clock. (This is important for
++ applications that an administrator wants used only at certain times -
++ without regard to whether the user has fiddled the "TZ" environment
++ variable. While an administrator can "do everything in UTC" to get
++ around the problem, doing so is inconvenient and precludes handling
++ daylight saving time shifts - as might be required to limit phone
++ calls to off-peak hours.)
++
++* POSIX provides no convenient and efficient way to determine the UT
++ offset and time zone abbreviation of arbitrary time stamps,
++ particularly for time zone settings that do not fit into the
++ POSIX model.
++
++* POSIX requires that systems ignore leap seconds.
++
++* The tz code attempts to support all the time_t implementations
++ allowed by POSIX. The time_t type represents a nonnegative count of
++ seconds since 1970-01-01 00:00:00 UTC, ignoring leap seconds.
++ In practice, time_t is usually a signed 64- or 32-bit integer; 32-bit
++ signed time_t values stop working after 2038-01-19 03:14:07 UTC, so
++ new implementations these days typically use a signed 64-bit integer.
++ Unsigned 32-bit integers are used on one or two platforms,
++ and 36-bit and 40-bit integers are also used occasionally.
++ Although earlier POSIX versions allowed time_t to be a
++ floating-point type, this was not supported by any practical
++ systems, and POSIX.1-2013 and the tz code both require time_t
++ to be an integer type.
++
++These are the extensions that have been made to the POSIX functions:
++
++* The "TZ" environment variable is used in generating the name of a file
++ from which time zone information is read (or is interpreted a la
++ POSIX); "TZ" is no longer constrained to be a three-letter time zone
++ name followed by a number of hours and an optional three-letter
++ daylight time zone name. The daylight saving time rules to be used
++ for a particular time zone are encoded in the time zone file;
++ the format of the file allows U.S., Australian, and other rules to be
++ encoded, and allows for situations where more than two time zone
++ abbreviations are used.
++
++ It was recognized that allowing the "TZ" environment variable to
++ take on values such as "America/New_York" might cause "old" programs
++ (that expect "TZ" to have a certain form) to operate incorrectly;
++ consideration was given to using some other environment variable
++ (for example, "TIMEZONE") to hold the string used to generate the
++ time zone information file name. In the end, however, it was decided
++ to continue using "TZ": it is widely used for time zone purposes;
++ separately maintaining both "TZ" and "TIMEZONE" seemed a nuisance;
++ and systems where "new" forms of "TZ" might cause problems can simply
++ use TZ values such as "EST5EDT" which can be used both by
++ "new" programs (a la POSIX) and "old" programs (as zone names and
++ offsets).
++
++* The code supports platforms with a UT offset member in struct tm,
++ e.g., tm_gmtoff.
++
++* The code supports platforms with a time zone abbreviation member in
++ struct tm, e.g., tm_zone.
++
++* Since the "TZ" environment variable can now be used to control time
++ conversion, the "daylight" and "timezone" variables are no longer
++ needed. (These variables are defined and set by "tzset"; however, their
++ values will not be used by "localtime.")
++
++* Functions tzalloc, tzfree, localtime_rz, and mktime_z for
++ more-efficient thread-safe applications that need to use
++ multiple time zones. The tzalloc and tzfree functions
++ allocate and free objects of type timezone_t, and localtime_rz
++ and mktime_z are like localtime_r and mktime with an extra
++ timezone_t argument. The functions were inspired by NetBSD.
++
++* A function "tzsetwall" has been added to arrange for the system's
++ best approximation to local wall clock time to be delivered by
++ subsequent calls to "localtime." Source code for portable
++ applications that "must" run on local wall clock time should call
++ "tzsetwall();" if such code is moved to "old" systems that don't
++ provide tzsetwall, you won't be able to generate an executable program.
++ (These time zone functions also arrange for local wall clock time to be
++ used if tzset is called - directly or indirectly - and there's no "TZ"
++ environment variable; portable applications should not, however, rely
++ on this behavior since it's not the way SVR2 systems behave.)
++
++* Negative time_t values are supported, on systems where time_t is signed.
++
++* These functions can account for leap seconds, thanks to Bradley White.
++
++Points of interest to folks with other systems:
++
++* Code compatible with this package is already part of many platforms,
++ including GNU/Linux, Android, the BSDs, Chromium OS, Cygwin, AIX, iOS,
++ BlackBery 10, macOS, Microsoft Windows, OpenVMS, and Solaris.
++ On such hosts, the primary use of this package
++ is to update obsolete time zone rule tables.
++ To do this, you may need to compile the time zone compiler
++ 'zic' supplied with this package instead of using the system 'zic',
++ since the format of zic's input is occasionally extended,
++ and a platform may still be shipping an older zic.
++
++* The UNIX Version 7 "timezone" function is not present in this package;
++ it's impossible to reliably map timezone's arguments (a "minutes west
++ of GMT" value and a "daylight saving time in effect" flag) to a
++ time zone abbreviation, and we refuse to guess.
++ Programs that in the past used the timezone function may now examine
++ tzname[localtime(&clock)->tm_isdst] to learn the correct time
++ zone abbreviation to use. Alternatively, use
++ localtime(&clock)->tm_zone if this has been enabled.
++
++* The 4.2BSD gettimeofday function is not used in this package.
++ This formerly let users obtain the current UTC offset and DST flag,
++ but this functionality was removed in later versions of BSD.
++
++* In SVR2, time conversion fails for near-minimum or near-maximum
++ time_t values when doing conversions for places that don't use UT.
++ This package takes care to do these conversions correctly.
++ A comment in the source code tells how to get compatibly wrong
++ results.
++
++The functions that are conditionally compiled if STD_INSPIRED is defined
++should, at this point, be looked on primarily as food for thought. They are
++not in any sense "standard compatible" - some are not, in fact, specified in
++*any* standard. They do, however, represent responses of various authors to
++standardization proposals.
++
++Other time conversion proposals, in particular the one developed by folks at
++Hewlett Packard, offer a wider selection of functions that provide capabilities
++beyond those provided here. The absence of such functions from this package
++is not meant to discourage the development, standardization, or use of such
++functions. Rather, their absence reflects the decision to make this package
++contain valid extensions to POSIX, to ensure its broad acceptability. If
++more powerful time conversion functions can be standardized, so much the
++better.
++
++
++----- Interface stability -----
++
++The tz code and data supply the following interfaces:
++
++ * A set of zone names as per "Names of time zone rules" above.
++
++ * Library functions described in "Time and date functions" above.
++
++ * The programs tzselect, zdump, and zic, documented in their man pages.
++
++ * The format of zic input files, documented in the zic man page.
++
++ * The format of zic output files, documented in the tzfile man page.
++
++ * The format of zone table files, documented in zone1970.tab.
++
++ * The format of the country code file, documented in iso3166.tab.
++
++When these interfaces are changed, an effort is made to preserve
++backward compatibility. For example, tz data files typically do not
++rely on recently-added zic features, so that users can run older zic
++versions to process newer data files.
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for time
++stamps, as data entries are often based on guesswork and these guesses
++may be corrected or improved.
++
++
++----- Calendrical issues -----
++
++Calendrical issues are a bit out of scope for a time zone database,
++but they indicate the sort of problems that we would run into if we
++extended the time zone database further into the past. An excellent
++resource in this area is Nachum Dershowitz and Edward M. Reingold,
++Calendrical Calculations: Third Edition, Cambridge University Press (2008)
++<http://emr.cs.iit.edu/home/reingold/calendar-book/third-edition/>.
++Other information and sources are given below. They sometimes disagree.
++
++
++France
++
++Gregorian calendar adopted 1582-12-20.
++French Revolutionary calendar used 1793-11-24 through 1805-12-31,
++and (in Paris only) 1871-05-06 through 1871-05-23.
++
++
++Russia
++
++From Chris Carrier (1996-12-02):
++On 1929-10-01 the Soviet Union instituted an "Eternal Calendar"
++with 30-day months plus 5 holidays, with a 5-day week.
++On 1931-12-01 it changed to a 6-day week; in 1934 it reverted to the
++Gregorian calendar while retaining the 6-day week; on 1940-06-27 it
++reverted to the 7-day week. With the 6-day week the usual days
++off were the 6th, 12th, 18th, 24th and 30th of the month.
++(Source: Evitiar Zerubavel, _The Seven Day Circle_)
++
++
++Mark Brader reported a similar story in "The Book of Calendars", edited
++by Frank Parise (1982, Facts on File, ISBN 0-8719-6467-8), page 377. But:
++
++From: Petteri Sulonen (via Usenet)
++Date: 14 Jan 1999 00:00:00 GMT
++...
++
++If your source is correct, how come documents between 1929 and 1940 were
++still dated using the conventional, Gregorian calendar?
++
++I can post a scan of a document dated December 1, 1934, signed by
++Yenukidze, the secretary, on behalf of Kalinin, the President of the
++Executive Committee of the Supreme Soviet, if you like.
++
++
++
++Sweden (and Finland)
++
++From: Mark Brader
++Subject: Re: Gregorian reform - a part of locale?
++<news:1996Jul6.012937.29190@sq.com>
++Date: 1996-07-06
++
++In 1700, Denmark made the transition from Julian to Gregorian. Sweden
++decided to *start* a transition in 1700 as well, but rather than have one of
++those unsightly calendar gaps :-), they simply decreed that the next leap
++year after 1696 would be in 1744 - putting the whole country on a calendar
++different from both Julian and Gregorian for a period of 40 years.
++
++However, in 1704 something went wrong and the plan was not carried through;
++they did, after all, have a leap year that year. And one in 1708. In 1712
++they gave it up and went back to Julian, putting 30 days in February that
++year!...
++
++Then in 1753, Sweden made the transition to Gregorian in the usual manner,
++getting there only 13 years behind the original schedule.
++
++(A previous posting of this story was challenged, and Swedish readers
++produced the following references to support it: "Tideräkning och historia"
++by Natanael Beckman (1924) and "Tid, en bok om tideräkning och
++kalenderväsen" by Lars-Olof Lodén (1968).
++
++
++Grotefend's data
++
++From: "Michael Palmer" [with one obvious typo fixed]
++Subject: Re: Gregorian Calendar (was Re: Another FHC related question
++Newsgroups: soc.genealogy.german
++Date: Tue, 9 Feb 1999 02:32:48 -800
++...
++
++The following is a(n incomplete) listing, arranged chronologically, of
++European states, with the date they converted from the Julian to the
++Gregorian calendar:
++
++04/15 Oct 1582 - Italy (with exceptions), Spain, Portugal, Poland (Roman
++ Catholics and Danzig only)
++09/20 Dec 1582 - France, Lorraine
++
++21 Dec 1582/
++ 01 Jan 1583 - Holland, Brabant, Flanders, Hennegau
++10/21 Feb 1583 - bishopric of Liege (Lüttich)
++13/24 Feb 1583 - bishopric of Augsburg
++04/15 Oct 1583 - electorate of Trier
++05/16 Oct 1583 - Bavaria, bishoprics of Freising, Eichstedt, Regensburg,
++ Salzburg, Brixen
++13/24 Oct 1583 - Austrian Oberelsaß and Breisgau
++20/31 Oct 1583 - bishopric of Basel
++02/13 Nov 1583 - duchy of Jülich-Berg
++02/13 Nov 1583 - electorate and city of Köln
++04/15 Nov 1583 - bishopric of Würzburg
++11/22 Nov 1583 - electorate of Mainz
++16/27 Nov 1583 - bishopric of Strassburg and the margraviate of Baden
++17/28 Nov 1583 - bishopric of Münster and duchy of Cleve
++14/25 Dec 1583 - Steiermark
++
++06/17 Jan 1584 - Austria and Bohemia
++11/22 Jan 1584 - Lucerne, Uri, Schwyz, Zug, Freiburg, Solothurn
++12/23 Jan 1584 - Silesia and the Lausitz
++22 Jan/
++ 02 Feb 1584 - Hungary (legally on 21 Oct 1587)
++ Jun 1584 - Unterwalden
++01/12 Jul 1584 - duchy of Westfalen
++
++16/27 Jun 1585 - bishopric of Paderborn
++
++14/25 Dec 1590 - Transylvania
++
++22 Aug/
++ 02 Sep 1612 - duchy of Prussia
++
++13/24 Dec 1614 - Pfalz-Neuburg
++
++ 1617 - duchy of Kurland (reverted to the Julian calendar in
++ 1796)
++
++ 1624 - bishopric of Osnabrück
++
++ 1630 - bishopric of Minden
++
++15/26 Mar 1631 - bishopric of Hildesheim
++
++ 1655 - Kanton Wallis
++
++05/16 Feb 1682 - city of Strassburg
++
++18 Feb/
++ 01 Mar 1700 - Protestant Germany (including Swedish possessions in
++ Germany), Denmark, Norway
++30 Jun/
++ 12 Jul 1700 - Gelderland, Zutphen
++10 Nov/
++ 12 Dec 1700 - Utrecht, Overijssel
++
++31 Dec 1700/
++ 12 Jan 1701 - Friesland, Groningen, Zürich, Bern, Basel, Geneva,
++ Turgau, and Schaffhausen
++
++ 1724 - Glarus, Appenzell, and the city of St. Gallen
++
++01 Jan 1750 - Pisa and Florence
++
++02/14 Sep 1752 - Great Britain
++
++17 Feb/
++ 01 Mar 1753 - Sweden
++
++1760-1812 - Graubünden
++
++The Russian empire (including Finland and the Baltic states) did not
++convert to the Gregorian calendar until the Soviet revolution of 1917.
++
++Source: H. Grotefend, _Taschenbuch der Zeitrechnung des deutschen
++Mittelalters und der Neuzeit_, herausgegeben von Dr. O. Grotefend
++(Hannover: Hahnsche Buchhandlung, 1941), pp. 26-28.
++
++
++----- Time and time zones on Mars -----
++
++Some people's work schedules use Mars time. Jet Propulsion Laboratory
++(JPL) coordinators have kept Mars time on and off at least since 1997
++for the Mars Pathfinder mission. Some of their family members have
++also adapted to Mars time. Dozens of special Mars watches were built
++for JPL workers who kept Mars time during the Mars Exploration
++Rovers mission (2004). These timepieces look like normal Seikos and
++Citizens but use Mars seconds rather than terrestrial seconds.
++
++A Mars solar day is called a "sol" and has a mean period equal to
++about 24 hours 39 minutes 35.244 seconds in terrestrial time. It is
++divided into a conventional 24-hour clock, so each Mars second equals
++about 1.02749125 terrestrial seconds.
++
++The prime meridian of Mars goes through the center of the crater
++Airy-0, named in honor of the British astronomer who built the
++Greenwich telescope that defines Earth's prime meridian. Mean solar
++time on the Mars prime meridian is called Mars Coordinated Time (MTC).
++
++Each landed mission on Mars has adopted a different reference for
++solar time keeping, so there is no real standard for Mars time zones.
++For example, the Mars Exploration Rover project (2004) defined two
++time zones "Local Solar Time A" and "Local Solar Time B" for its two
++missions, each zone designed so that its time equals local true solar
++time at approximately the middle of the nominal mission. Such a "time
++zone" is not particularly suited for any application other than the
++mission itself.
++
++Many calendars have been proposed for Mars, but none have achieved
++wide acceptance. Astronomers often use Mars Sol Date (MSD) which is a
++sequential count of Mars solar days elapsed since about 1873-12-29
++12:00 GMT.
++
++The tz database does not currently support Mars time, but it is
++documented here in the hopes that support will be added eventually.
++
++Sources:
++
++Michael Allison and Robert Schmunk,
++"Technical Notes on Mars Solar Time as Adopted by the Mars24 Sunclock"
++<http://www.giss.nasa.gov/tools/mars24/help/notes.html> (2012-08-08).
++
++Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
++<http://articles.latimes.com/2004/jan/14/science/sci-marstime14>
++(2004-01-14), pp A1, A20-A21.
++
++Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
++<http://www.theatlantic.com/technology/archive/2015/02/jet-lag-is-worse-on-mars/386033/>
++
++-----
++
++This file is in the public domain, so clarified as of 2009-05-17 by
++Arthur David Olson.
++
++-----
++Local Variables:
++coding: utf-8
++End:
+--- contrib/tzdata/africa.orig
++++ contrib/tzdata/africa
+@@ -1,32 +1,32 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-02-21):
++# From Paul Eggert (2014-10-31):
+ #
+-# A good source for time zone historical data outside the U.S. is
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -64,7 +64,6 @@
+ # 3:00 CAST Central Africa Summer Time (no longer used)
+ # 3:00 SAST South Africa Summer Time (no longer used)
+ # 3:00 EAT East Africa Time
+-# 4:00 EAST East Africa Summer Time (no longer used)
+
+ # Algeria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -93,9 +92,9 @@
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+ # more precise 0:09:21.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+- 0:00 Algeria WE%sT 1940 Feb 25 2:00
++Zone Africa/Algiers 0:12:12 - LMT 1891 Mar 15 0:01
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:00 Algeria WE%sT 1940 Feb 25 2:00
+ 1:00 Algeria CE%sT 1946 Oct 7
+ 0:00 - WET 1956 Jan 29
+ 1:00 - CET 1963 Apr 14
+@@ -105,82 +104,55 @@
+ 1:00 - CET
+
+ # Angola
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Luanda 0:52:56 - LMT 1892
+- 0:52:04 - AOT 1911 May 26 # Angola Time
+- 1:00 - WAT
+-
+ # Benin
+-# Whitman says they switched to 1:00 in 1946, not 1934;
+-# go with Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Porto-Novo 0:10:28 - LMT 1912
+- 0:00 - GMT 1934 Feb 26
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Botswana
+-# From Paul Eggert (2013-02-21):
+-# Milne says they were regulated by the Cape Town Signal in 1899;
+-# assume they switched to 2:00 when Cape Town did.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Gaborone 1:43:40 - LMT 1885
+- 1:30 - SAST 1903 Mar
+- 2:00 - CAT 1943 Sep 19 2:00
+- 2:00 1:00 CAST 1944 Mar 19 2:00
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Burkina Faso
+ # See Africa/Abidjan.
+
+ # Burundi
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bujumbura 1:57:28 - LMT 1890
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Cameroon
+-# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Douala 0:38:48 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Cape Verde
++#
++# Shanks gives 1907 for the transition to CVT.
++# Perhaps the 1911-05-26 Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# merely made it official?
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
++Zone Atlantic/Cape_Verde -1:34:04 - LMT 1907 # Praia
+ -2:00 - CVT 1942 Sep
+ -2:00 1:00 CVST 1945 Oct 15
+- -2:00 - CVT 1975 Nov 25 2:00
++ -2:00 - CVT 1975 Nov 25 2:00
+ -1:00 - CVT
+
+ # Central African Republic
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bangui 1:14:20 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Chad
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena
++Zone Africa/Ndjamena 1:00:12 - LMT 1912 # N'Djamena
+ 1:00 - WAT 1979 Oct 14
+ 1:00 1:00 WAST 1980 Mar 8
+ 1:00 - WAT
+
+ # Comoros
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+-# Democratic Republic of Congo
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
+- 1:00 - WAT
+-Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
+- 2:00 - CAT
++# Democratic Republic of the Congo
++# See Africa/Lagos for the western part and Africa/Maputo for the eastern.
+
+ # Republic of the Congo
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Brazzaville 1:01:08 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+-# Côte D'Ivoire / Ivory Coast
++# Côte d'Ivoire / Ivory Coast
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Abidjan -0:16:08 - LMT 1912
+ 0:00 - GMT
+@@ -196,9 +168,7 @@
+ Link Africa/Abidjan Atlantic/St_Helena # St Helena
+
+ # Djibouti
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ ###############################################################################
+
+@@ -327,7 +297,7 @@
+ # Egypt is to change back to Daylight system on May 15
+ # http://english.ahram.org.eg/NewsContent/1/64/100735/Egypt/Politics-/Egypts-government-to-reapply-daylight-saving-time-.aspx
+
+-# From Gunther Vermier (2015-05-13):
++# From Gunther Vermier (2014-05-13):
+ # our Egypt office confirms that the change will be at 15 May "midnight" (24:00)
+
+ # From Imed Chihi (2014-06-04):
+@@ -349,35 +319,36 @@
+ # above) says DST had no affect on electricity consumption. There is
+ # no information about when DST will end this fall. See:
+ # http://abcnews.go.com/International/wireStory/el-sissi-pushes-egyptians-line-23614833
+-#
+-# For now, guess that later spring and fall transitions will use
+-# 2010's rules, and guess that Egypt will switch to standard time at
+-# 24:00 the last Thursday before Ramadan, and back to DST at 00:00 the
+-# first Friday after Ramadan. To implement this,
+-# transition dates for 2015 through 2037 were determined by running
+-# the following program under GNU Emacs 24.3, with the results integrated
+-# by hand into the table below. Ramadan again intrudes on the guessed
+-# DST starting in 2038, but that's beyond our somewhat-arbitrary cutoff.
+-# (let ((islamic-year 1436))
+-# (while (< islamic-year 1460)
+-# (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
+-# (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
+-# (friday 5))
+-# (while (/= friday (mod a 7))
+-# (setq a (1- a)))
+-# (while (/= friday (mod b 7))
+-# (setq b (1+ b)))
+-# (setq a (1- a))
+-# (setq b (1- b))
+-# (setq a (calendar-gregorian-from-absolute a))
+-# (setq b (calendar-gregorian-from-absolute b))
+-# (insert
+-# (format
+-# (concat "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t0\t-\n"
+-# "Rule\tEgypt\t%d\tonly\t-\t%s\t%2d\t24:00\t1:00\tS\n")
+-# (car (cdr (cdr a))) (calendar-month-name (car a) t) (car (cdr a))
+-# (car (cdr (cdr b))) (calendar-month-name (car b) t) (car (cdr b)))))
+-# (setq islamic-year (+ 1 islamic-year))))
++
++# From Steffen Thorsen (2015-04-08):
++# Egypt will start DST on midnight after Thursday, April 30, 2015.
++# This is based on a law (no 35) from May 15, 2014 saying it starts the last
++# Thursday of April.... Clocks will still be turned back for Ramadan, but
++# dates not yet announced....
++# http://almogaz.com/news/weird-news/2015/04/05/1947105 ...
++# http://www.timeanddate.com/news/time/egypt-starts-dst-2015.html
++
++# From Ahmed Nazmy (2015-04-20):
++# Egypt's ministers cabinet just announced ... that it will cancel DST at
++# least for 2015.
++#
++# From Tim Parenti (2015-04-20):
++# http://english.ahram.org.eg/WriterArticles/NewsContentP/1/128195/Egypt/No-daylight-saving-this-summer-Egypts-prime-minist.aspx
++# "Egypt's cabinet agreed on Monday not to switch clocks for daylight saving
++# time this summer, and carry out studies on the possibility of canceling the
++# practice altogether in future years."
++#
++# From Paul Eggert (2015-04-24):
++# Yesterday the office of Egyptian President El-Sisi announced his
++# decision to abandon DST permanently. See Ahram Online 2015-04-24.
++# http://english.ahram.org.eg/NewsContent/1/64/128509/Egypt/Politics-/Sisi-cancels-daylight-saving-time-in-Egypt.aspx
++
++# From Steffen Thorsen (2016-04-29):
++# Egypt will have DST from July 7 until the end of October....
++# http://english.ahram.org.eg/NewsContentP/1/204655/Egypt/Daylight-savings-time-returning-to-Egypt-on--July.aspx
++# From Mina Samuel (2016-07-04):
++# Egyptian government took the decision to cancel the DST,
++
+ Rule Egypt 2008 only - Aug lastThu 24:00 0 -
+ Rule Egypt 2009 only - Aug 20 24:00 0 -
+ Rule Egypt 2010 only - Aug 10 24:00 0 -
+@@ -386,59 +357,21 @@
+ Rule Egypt 2014 only - May 15 24:00 1:00 S
+ Rule Egypt 2014 only - Jun 26 24:00 0 -
+ Rule Egypt 2014 only - Jul 31 24:00 1:00 S
+-Rule Egypt 2014 max - Sep lastThu 24:00 0 -
+-Rule Egypt 2015 2019 - Apr lastFri 0:00s 1:00 S
+-Rule Egypt 2015 only - Jun 11 24:00 0 -
+-Rule Egypt 2015 only - Jul 23 24:00 1:00 S
+-Rule Egypt 2016 only - Jun 2 24:00 0 -
+-Rule Egypt 2016 only - Jul 7 24:00 1:00 S
+-Rule Egypt 2017 only - May 25 24:00 0 -
+-Rule Egypt 2017 only - Jun 29 24:00 1:00 S
+-Rule Egypt 2018 only - May 10 24:00 0 -
+-Rule Egypt 2018 only - Jun 14 24:00 1:00 S
+-Rule Egypt 2019 only - May 2 24:00 0 -
+-Rule Egypt 2019 only - Jun 6 24:00 1:00 S
+-Rule Egypt 2020 only - May 28 24:00 1:00 S
+-Rule Egypt 2021 only - May 13 24:00 1:00 S
+-Rule Egypt 2022 only - May 5 24:00 1:00 S
+-Rule Egypt 2023 max - Apr lastFri 0:00s 1:00 S
++Rule Egypt 2014 only - Sep lastThu 24:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Cairo 2:05:09 - LMT 1900 Oct
+ 2:00 Egypt EE%sT
+
+ # Equatorial Guinea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Malabo 0:35:08 - LMT 1912
+- 0:00 - GMT 1963 Dec 15
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Eritrea
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Asmara 2:35:32 - LMT 1870
+- 2:35:32 - AMT 1890 # Asmara Mean Time
+- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+- 3:00 - EAT
+-
+ # Ethiopia
+-# From Paul Eggert (2014-07-31):
+-# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
+-# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
+-# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
+-#
+-# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
+-# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
+-# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
+-# was for Adis Dera. Quite likely the Shanks data are wrong anyway.
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
+- 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Gabon
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Libreville 0:37:48 - LMT 1912
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Gambia
+ # See Africa/Abidjan.
+@@ -461,8 +394,14 @@
+ # See Africa/Abidjan.
+
+ # Guinea-Bissau
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Bissau -1:02:20 - LMT 1911 May 26
++Zone Africa/Bissau -1:02:20 - LMT 1912 Jan 1
+ -1:00 - WAT 1975
+ 0:00 - GMT
+
+@@ -473,13 +412,18 @@
+ 2:30 - BEAT 1940
+ 2:45 - BEAUT 1960
+ 3:00 - EAT
++Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
++Link Africa/Nairobi Africa/Asmara # Eritrea
++Link Africa/Nairobi Africa/Dar_es_Salaam # Tanzania
++Link Africa/Nairobi Africa/Djibouti
++Link Africa/Nairobi Africa/Kampala # Uganda
++Link Africa/Nairobi Africa/Mogadishu # Somalia
++Link Africa/Nairobi Indian/Antananarivo # Madagascar
++Link Africa/Nairobi Indian/Comoro
++Link Africa/Nairobi Indian/Mayotte
+
+ # Lesotho
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
+- 2:00 - SAST 1943 Sep 19 2:00
+- 2:00 1:00 SAST 1944 Mar 19 2:00
+- 2:00 - SAST
++# See Africa/Johannesburg.
+
+ # Liberia
+ # From Paul Eggert (2006-03-22):
+@@ -520,7 +464,7 @@
+ # http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
+ #
+ # From Paul Eggert (2013-10-25):
+-# For now, assume they're reverting to the pre-2012 rules of permanent UTC+2.
++# For now, assume they're reverting to the pre-2012 rules of permanent UT +02.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Libya 1951 only - Oct 14 2:00 1:00 S
+@@ -546,24 +490,18 @@
+ 2:00 - EET 1982
+ 1:00 Libya CE%sT 1990 May 4
+ # The 1996 and 1997 entries are from Shanks & Pottenger;
+-# the IATA SSIM data contain some obvious errors.
++# the IATA SSIM data entries contain some obvious errors.
+ 2:00 - EET 1996 Sep 30
+ 1:00 Libya CE%sT 1997 Oct 4
+- 2:00 - EET 2012 Nov 10 2:00
+- 1:00 Libya CE%sT 2013 Oct 25 2:00
++ 2:00 - EET 2012 Nov 10 2:00
++ 1:00 Libya CE%sT 2013 Oct 25 2:00
+ 2:00 - EET
+
+ # Madagascar
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
+- 3:00 - EAT 1954 Feb 27 23:00s
+- 3:00 1:00 EAST 1954 May 29 23:00s
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Malawi
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # Mali
+ # Mauritania
+@@ -606,7 +544,7 @@
+
+ # From Alex Krivenyshev (2008-07-11):
+ # Seems that English language article "The revival of daylight saving
+-# time: Energy conservation?"-# No. 16578 (07/11/2008) was originally
++# time: Energy conservation?"- No. 16578 (07/11/2008) was originally
+ # published on Monday, June 30, 2008...
+ #
+ # I guess that article in French "Le gouvernement avance l'introduction
+@@ -657,15 +595,13 @@
+ Rule Mauritius 2008 only - Oct lastSun 2:00 1:00 S
+ Rule Mauritius 2009 only - Mar lastSun 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
++Zone Indian/Mauritius 3:50:00 - LMT 1907 # Port Louis
+ 4:00 Mauritius MU%sT # Mauritius Time
+ # Agalega Is, Rodriguez
+ # no information; probably like Indian/Mauritius
+
+ # Mayotte
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Morocco
+ # See the 'europe' file for Spanish Morocco (Africa/Ceuta).
+@@ -682,7 +618,8 @@
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+-# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe Presse:
++# The Morocco time change can be confirmed on Morocco web site Maghreb Arabe
++# Presse:
+ # http://www.map.ma/eng/sections/box3/morocco_shifts_to_da/view
+ #
+ # Morocco shifts to daylight time on June 1st through September 27, Govt.
+@@ -739,7 +676,7 @@
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+ # Ministère de la Modernisation des Secteurs Publics
+ #
+-# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 june 1967)
++# Under Article 1 of Royal Decree No. 455-67 of Act 23 safar 1387 (2 June 1967)
+ # concerning the amendment of the legal time, the Ministry of Modernization of
+ # Public Sectors announced that the official time in the Kingdom will be
+ # advanced 60 minutes from Sunday 31 May 2009 at midnight.
+@@ -760,8 +697,8 @@
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+-# The 3rd april 2011 at 00:00:00, [it] will be 3rd april 1:00:00
+-# The 31th july 2011 at 00:59:59, [it] will be 31th July 00:00:00
++# The 3rd April 2011 at 00:00:00, [it] will be 3rd April 01:00:00
++# The 31st July 2011 at 00:59:59, [it] will be 31st July 00:00:00
+ # ...Official links of change in morocco
+ # The change was broadcast on the FM Radio
+ # I ve called ANRT (telecom regulations in Morocco) at
+@@ -831,7 +768,7 @@
+ # announced a bit in advance. On 2012-07-11 the Moroccan government
+ # announced that year's Ramadan daylight-saving transitions would be
+ # 2012-07-20 and 2012-08-20; see
+-# <http://www.mmsp.gov.ma/fr/actualites.aspx?id=288>.
++# http://www.mmsp.gov.ma/fr/actualites.aspx?id=288
+
+ # From Andrew Paprocki (2013-07-02):
+ # Morocco announced that the year's Ramadan daylight-savings
+@@ -857,20 +794,41 @@
+ # will resume again at 02:00 on Saturday, August 2, 2014....
+ # http://www.mmsp.gov.ma/fr/actualites.aspx?id=586
+
+-# From Paul Eggert (2014-06-05):
+-# For now, guess that later spring and fall transitions will use 2014's rules,
++# From Milamber (2015-06-08):
++# (Google Translation) The hour will thus be delayed 60 minutes
++# Sunday, June 14 at 3:00, the ministry said in a statement, adding
++# that the time will be advanced again 60 minutes Sunday, July 19,
++# 2015 at 2:00. The move comes under 2.12.126 Decree of 26 Jumada I
++# 1433 (18 April 2012) and the decision of the Head of Government of
++# 16 N. 3-29-15 Chaaban 1435 (4 June 2015).
++# Source (french):
++# http://lnt.ma/le-maroc-reculera-dune-heure-le-dimanche-14-juin/
++#
++# From Milamber (2015-06-09):
++# http://www.mmsp.gov.ma/fr/actualites.aspx?id=863
++#
++# From Michael Deckers (2015-06-09):
++# [The gov.ma announcement] would (probably) make the switch on 2015-07-19 go
++# from 03:00 to 04:00 rather than from 02:00 to 03:00, as in the patch....
++# I think the patch is correct and the quoted text is wrong; the text in
++# <http://lnt.ma/le-maroc-reculera-dune-heure-le-dimanche-14-juin/> agrees
++# with the patch.
++
++# From Paul Eggert (2015-06-08):
++# For now, guess that later spring and fall transitions will use 2015's rules,
+ # and guess that Morocco will switch to standard time at 03:00 the last
+-# Saturday before Ramadan, and back to DST at 02:00 the first Saturday after
+-# Ramadan. To implement this, transition dates for 2015 through 2037 were
++# Sunday before Ramadan, and back to DST at 02:00 the first Sunday after
++# Ramadan. To implement this, transition dates for 2016 through 2037 were
+ # determined by running the following program under GNU Emacs 24.3, with the
+ # results integrated by hand into the table below.
+-# (let ((islamic-year 1436))
++# (let ((islamic-year 1437))
++# (require 'cal-islam)
+ # (while (< islamic-year 1460)
+ # (let ((a (calendar-islamic-to-absolute (list 9 1 islamic-year)))
+ # (b (calendar-islamic-to-absolute (list 10 1 islamic-year)))
+-# (saturday 6))
+-# (while (/= saturday (mod (setq a (1- a)) 7)))
+-# (while (/= saturday (mod b 7))
++# (sunday 0))
++# (while (/= sunday (mod (setq a (1- a)) 7)))
++# (while (/= sunday (mod b 7))
+ # (setq b (1+ b)))
+ # (setq a (calendar-gregorian-from-absolute a))
+ # (setq b (calendar-gregorian-from-absolute b))
+@@ -906,40 +864,38 @@
+ Rule Morocco 2010 only - May 2 0:00 1:00 S
+ Rule Morocco 2010 only - Aug 8 0:00 0 -
+ Rule Morocco 2011 only - Apr 3 0:00 1:00 S
+-Rule Morocco 2011 only - Jul 31 0 0 -
++Rule Morocco 2011 only - Jul 31 0:00 0 -
+ Rule Morocco 2012 2013 - Apr lastSun 2:00 1:00 S
+-Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2012 only - Jul 20 3:00 0 -
+ Rule Morocco 2012 only - Aug 20 2:00 1:00 S
++Rule Morocco 2012 only - Sep 30 3:00 0 -
+ Rule Morocco 2013 only - Jul 7 3:00 0 -
+ Rule Morocco 2013 only - Aug 10 2:00 1:00 S
+ Rule Morocco 2013 max - Oct lastSun 3:00 0 -
+-Rule Morocco 2014 2022 - Mar lastSun 2:00 1:00 S
++Rule Morocco 2014 2021 - Mar lastSun 2:00 1:00 S
+ Rule Morocco 2014 only - Jun 28 3:00 0 -
+ Rule Morocco 2014 only - Aug 2 2:00 1:00 S
+-Rule Morocco 2015 only - Jun 13 3:00 0 -
+-Rule Morocco 2015 only - Jul 18 2:00 1:00 S
+-Rule Morocco 2016 only - Jun 4 3:00 0 -
+-Rule Morocco 2016 only - Jul 9 2:00 1:00 S
+-Rule Morocco 2017 only - May 20 3:00 0 -
+-Rule Morocco 2017 only - Jul 1 2:00 1:00 S
+-Rule Morocco 2018 only - May 12 3:00 0 -
+-Rule Morocco 2018 only - Jun 16 2:00 1:00 S
+-Rule Morocco 2019 only - May 4 3:00 0 -
+-Rule Morocco 2019 only - Jun 8 2:00 1:00 S
+-Rule Morocco 2020 only - Apr 18 3:00 0 -
+-Rule Morocco 2020 only - May 30 2:00 1:00 S
+-Rule Morocco 2021 only - Apr 10 3:00 0 -
+-Rule Morocco 2021 only - May 15 2:00 1:00 S
+-Rule Morocco 2022 only - Apr 2 3:00 0 -
+-Rule Morocco 2022 only - May 7 2:00 1:00 S
+-Rule Morocco 2023 only - Apr 22 2:00 1:00 S
+-Rule Morocco 2024 only - Apr 13 2:00 1:00 S
+-Rule Morocco 2025 only - Apr 5 2:00 1:00 S
++Rule Morocco 2015 only - Jun 14 3:00 0 -
++Rule Morocco 2015 only - Jul 19 2:00 1:00 S
++Rule Morocco 2016 only - Jun 5 3:00 0 -
++Rule Morocco 2016 only - Jul 10 2:00 1:00 S
++Rule Morocco 2017 only - May 21 3:00 0 -
++Rule Morocco 2017 only - Jul 2 2:00 1:00 S
++Rule Morocco 2018 only - May 13 3:00 0 -
++Rule Morocco 2018 only - Jun 17 2:00 1:00 S
++Rule Morocco 2019 only - May 5 3:00 0 -
++Rule Morocco 2019 only - Jun 9 2:00 1:00 S
++Rule Morocco 2020 only - Apr 19 3:00 0 -
++Rule Morocco 2020 only - May 24 2:00 1:00 S
++Rule Morocco 2021 only - Apr 11 3:00 0 -
++Rule Morocco 2021 only - May 16 2:00 1:00 S
++Rule Morocco 2022 only - May 8 2:00 1:00 S
++Rule Morocco 2023 only - Apr 23 2:00 1:00 S
++Rule Morocco 2024 only - Apr 14 2:00 1:00 S
++Rule Morocco 2025 only - Apr 6 2:00 1:00 S
+ Rule Morocco 2026 max - Mar lastSun 2:00 1:00 S
+-Rule Morocco 2035 only - Oct 27 3:00 0 -
+-Rule Morocco 2036 only - Oct 18 3:00 0 -
+-Rule Morocco 2037 only - Oct 10 3:00 0 -
++Rule Morocco 2036 only - Oct 19 3:00 0 -
++Rule Morocco 2037 only - Oct 4 3:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Casablanca -0:30:20 - LMT 1913 Oct 26
+@@ -963,16 +919,29 @@
+ 0:00 Morocco WE%sT
+
+ # Mozambique
++#
++# Shanks gives 1903-03-01 for the transition to CAT.
++# Perhaps the 1911-05-26 Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# merely made it official?
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Maputo 2:10:20 - LMT 1903 Mar
+ 2:00 - CAT
++Link Africa/Maputo Africa/Blantyre # Malawi
++Link Africa/Maputo Africa/Bujumbura # Burundi
++Link Africa/Maputo Africa/Gaborone # Botswana
++Link Africa/Maputo Africa/Harare # Zimbabwe
++Link Africa/Maputo Africa/Kigali # Rwanda
++Link Africa/Maputo Africa/Lubumbashi # E Dem. Rep. of Congo
++Link Africa/Maputo Africa/Lusaka # Zambia
+
+ # Namibia
+ # The 1994-04-03 transition is from Shanks & Pottenger.
+ # Shanks & Pottenger report no DST after 1998-04; go with IATA.
+
+-# From Petronella Sibeene (2007-03-30) in
+-# <http://allafrica.com/stories/200703300178.html>:
++# From Petronella Sibeene (2007-03-30):
++# http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+ # settlements in Caprivi unofficially will not because the sun there
+ # rises and sets earlier compared to other regions. Chief of
+@@ -989,28 +958,33 @@
+ Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
+- 1:30 - SWAT 1903 Mar # SW Africa Time
+- 2:00 - SAST 1942 Sep 20 2:00
+- 2:00 1:00 SAST 1943 Mar 21 2:00
++ 1:30 - SWAT 1903 Mar # SW Africa Time
++ 2:00 - SAST 1942 Sep 20 2:00
++ 2:00 1:00 SAST 1943 Mar 21 2:00
+ 2:00 - SAST 1990 Mar 21 # independence
+ 2:00 - CAT 1994 Apr 3
+ 1:00 Namibia WA%sT
+
+ # Niger
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Niamey 0:08:28 - LMT 1912
+- -1:00 - WAT 1934 Feb 26
+- 0:00 - GMT 1960
+- 1:00 - WAT
++# See Africa/Lagos.
+
+ # Nigeria
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Lagos 0:13:36 - LMT 1919 Sep
+ 1:00 - WAT
++Link Africa/Lagos Africa/Bangui # Central African Republic
++Link Africa/Lagos Africa/Brazzaville # Rep. of the Congo
++Link Africa/Lagos Africa/Douala # Cameroon
++Link Africa/Lagos Africa/Kinshasa # Dem. Rep. of the Congo (west)
++Link Africa/Lagos Africa/Libreville # Gabon
++Link Africa/Lagos Africa/Luanda # Angola
++Link Africa/Lagos Africa/Malabo # Equatorial Guinea
++Link Africa/Lagos Africa/Niamey # Niger
++Link Africa/Lagos Africa/Porto-Novo # Benin
+
+ # Réunion
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
++Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
+ 4:00 - RET # Réunion Time
+ #
+ # Crozet Islands also observes Réunion time; see the 'antarctica' file.
+@@ -1028,9 +1002,7 @@
+ # Tromelin - inhabited until at least 1958
+
+ # Rwanda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
+- 2:00 - CAT
++# See Africa/Maputo.
+
+ # St Helena
+ # See Africa/Abidjan.
+@@ -1047,7 +1019,7 @@
+
+ # Seychelles
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
++Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
+ 4:00 - SCT # Seychelles Time
+ # From Paul Eggert (2001-05-30):
+ # Aldabra, Farquhar, and Desroches, originally dependencies of the
+@@ -1060,11 +1032,7 @@
+ # See Africa/Abidjan.
+
+ # Somalia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
+- 3:00 - EAT 1931
+- 2:30 - BEAT 1957
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # South Africa
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1074,6 +1042,9 @@
+ Zone Africa/Johannesburg 1:52:00 - LMT 1892 Feb 8
+ 1:30 - SAST 1903 Mar
+ 2:00 SA SAST
++Link Africa/Johannesburg Africa/Maseru # Lesotho
++Link Africa/Johannesburg Africa/Mbabane # Swaziland
++#
+ # Marion and Prince Edward Is
+ # scientific station since 1947
+ # no information
+@@ -1101,16 +1072,10 @@
+ Link Africa/Khartoum Africa/Juba
+
+ # Swaziland
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
+- 2:00 - SAST
++# See Africa/Johannesburg.
+
+ # Tanzania
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
+- 3:00 - EAT 1948
+- 2:45 - BEAUT 1961
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Togo
+ # See Africa/Abidjan.
+@@ -1128,7 +1093,7 @@
+ #
+ # From Oscar van Vlijmen (2005-05-02):
+ # La Presse, the first national daily newspaper ...
+-# <http://www.lapresse.tn/archives/archives280405/actualites/lheure.html>
++# http://www.lapresse.tn/archives/archives280405/actualites/lheure.html
+ # ... DST for 2005: on: Sun May 1 0h standard time, off: Fri Sept. 30,
+ # 1h standard time.
+ #
+@@ -1212,23 +1177,12 @@
+ # Shanks & Pottenger say the 1911 switch was on Mar 9; go with Howse's Mar 11.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Tunis 0:40:44 - LMT 1881 May 12
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+ 1:00 Tunisia CE%sT
+
+ # Uganda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
+- 3:00 - EAT 1930
+- 2:30 - BEAT 1948
+- 2:45 - BEAUT 1957
+- 3:00 - EAT
++# See Africa/Nairobi.
+
+ # Zambia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
+- 2:00 - CAT
+-
+ # Zimbabwe
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Africa/Harare 2:04:12 - LMT 1903 Mar
+- 2:00 - CAT
++# See Africa/Maputo.
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -4,51 +4,14 @@
+ # From Paul Eggert (1999-11-15):
+ # To keep things manageable, we list only locations occupied year-round; see
+ # COMNAP - Stations and Bases
+-# <http://www.comnap.aq/comnap/comnap.nsf/P/Stations/>
++# http://www.comnap.aq/comnap/comnap.nsf/P/Stations/
+ # and
+ # Summary of the Peri-Antarctic Islands (1998-07-23)
+-# <http://www.spri.cam.ac.uk/bob/periant.htm>
++# http://www.spri.cam.ac.uk/bob/periant.htm
+ # for information.
+ # Unless otherwise specified, we have no time zone information.
+-#
+-# Except for the French entries,
+-# I made up all time zone abbreviations mentioned here; corrections welcome!
+-# FORMAT is 'zzz' and GMTOFF is 0 for locations while uninhabited.
+
+-# These rules are stolen from the 'southamerica' file.
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule ArgAQ 1964 1966 - Mar 1 0:00 0 -
+-Rule ArgAQ 1964 1966 - Oct 15 0:00 1:00 S
+-Rule ArgAQ 1967 only - Apr 2 0:00 0 -
+-Rule ArgAQ 1967 1968 - Oct Sun>=1 0:00 1:00 S
+-Rule ArgAQ 1968 1969 - Apr Sun>=1 0:00 0 -
+-Rule ArgAQ 1974 only - Jan 23 0:00 1:00 S
+-Rule ArgAQ 1974 only - May 1 0:00 0 -
+-Rule ChileAQ 1972 1986 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1987 only - Apr 12 3:00u 0 -
+-Rule ChileAQ 1988 1989 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1988 only - Oct Sun>=1 4:00u 1:00 S
+-Rule ChileAQ 1989 only - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1990 only - Mar 18 3:00u 0 -
+-Rule ChileAQ 1990 only - Sep 16 4:00u 1:00 S
+-Rule ChileAQ 1991 1996 - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 1997 only - Mar 30 3:00u 0 -
+-Rule ChileAQ 1998 only - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 1998 only - Sep 27 4:00u 1:00 S
+-Rule ChileAQ 1999 only - Apr 4 3:00u 0 -
+-Rule ChileAQ 1999 2010 - Oct Sun>=9 4:00u 1:00 S
+-Rule ChileAQ 2000 2007 - Mar Sun>=9 3:00u 0 -
+-# N.B.: the end of March 29 in Chile is March 30 in Universal time,
+-# which is used below in specifying the transition.
+-Rule ChileAQ 2008 only - Mar 30 3:00u 0 -
+-Rule ChileAQ 2009 only - Mar Sun>=9 3:00u 0 -
+-Rule ChileAQ 2010 only - Apr Sun>=1 3:00u 0 -
+-Rule ChileAQ 2011 only - May Sun>=2 3:00u 0 -
+-Rule ChileAQ 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule ChileAQ 2012 max - Apr Sun>=23 3:00u 0 -
+-Rule ChileAQ 2012 max - Sep Sun>=2 4:00u 1:00 S
++# FORMAT is '-00' and GMTOFF is 0 for locations while uninhabited.
+
+ # Argentina - year-round bases
+ # Belgrano II, Confin Coast, -770227-0343737, since 1972-02-05
+@@ -63,8 +26,8 @@
+ # Heard Island, McDonald Islands (uninhabited)
+ # previously sealers and scientific personnel wintered
+ # Margaret Turner reports
+-# <http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html>
+-# (1999-09-30) that they're UTC+5, with no DST;
++# http://web.archive.org/web/20021204222245/http://www.dstc.qut.edu.au/DST/marg/daylight.html
++# (1999-09-30) that they're UT +05, with no DST;
+ # presumably this is when they have visitors.
+ #
+ # year-round bases
+@@ -101,34 +64,36 @@
+ # Background:
+ # http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
+
++# From Steffen Thorsen (2016-10-28):
++# Australian Antarctica Division informed us that Casey changed time
++# zone to UTC+11 in "the morning of 22nd October 2016".
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Casey 0 - zzz 1969
+- 8:00 - AWST 2009 Oct 18 2:00
+- # Australian Western Std Time
+- 11:00 - CAST 2010 Mar 5 2:00
+- # Casey Time
+- 8:00 - AWST 2011 Oct 28 2:00
+- 11:00 - CAST 2012 Feb 21 17:00u
+- 8:00 - AWST
+-Zone Antarctica/Davis 0 - zzz 1957 Jan 13
+- 7:00 - DAVT 1964 Nov # Davis Time
+- 0 - zzz 1969 Feb
+- 7:00 - DAVT 2009 Oct 18 2:00
+- 5:00 - DAVT 2010 Mar 10 20:00u
+- 7:00 - DAVT 2011 Oct 28 2:00
+- 5:00 - DAVT 2012 Feb 21 20:00u
+- 7:00 - DAVT
+-Zone Antarctica/Mawson 0 - zzz 1954 Feb 13
+- 6:00 - MAWT 2009 Oct 18 2:00
+- # Mawson Time
+- 5:00 - MAWT
++Zone Antarctica/Casey 0 - -00 1969
++ 8:00 - +08 2009 Oct 18 2:00
++ 11:00 - +11 2010 Mar 5 2:00
++ 8:00 - +08 2011 Oct 28 2:00
++ 11:00 - +11 2012 Feb 21 17:00u
++ 8:00 - +08 2016 Oct 22
++ 11:00 - +11
++Zone Antarctica/Davis 0 - -00 1957 Jan 13
++ 7:00 - +07 1964 Nov
++ 0 - -00 1969 Feb
++ 7:00 - +07 2009 Oct 18 2:00
++ 5:00 - +05 2010 Mar 10 20:00u
++ 7:00 - +07 2011 Oct 28 2:00
++ 5:00 - +05 2012 Feb 21 20:00u
++ 7:00 - +07
++Zone Antarctica/Mawson 0 - -00 1954 Feb 13
++ 6:00 - +06 2009 Oct 18 2:00
++ 5:00 - +05
+ # References:
+ # Casey Weather (1998-02-26)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/casey/casey_aws.html
+ # Davis Station, Antarctica (1998-02-26)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/davis/video.html
+ # Mawson Station, Antarctica (1998-02-25)
+-# <http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html>
++# http://www.antdiv.gov.au/aad/exop/sfo/mawson/video.html
+
+ # Belgium - year-round base
+ # Princess Elisabeth, Queen Maud Land, -713412+0231200, since 2007
+@@ -154,7 +119,7 @@
+ # France - year-round bases (also see "France & Italy")
+ #
+ # From Antoine Leca (1997-01-20):
+-# Time data are from Nicole Pailleau at the IFRTP
++# Time data entries are from Nicole Pailleau at the IFRTP
+ # (French Institute for Polar Research and Technology).
+ # She confirms that French Southern Territories and Terre Adélie bases
+ # don't observe daylight saving time, even if Terre Adélie supplies came
+@@ -174,8 +139,8 @@
+ # fishing stations operated variously 1819/1931
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Kerguelen 0 - zzz 1950 # Port-aux-Français
+- 5:00 - TFT # ISO code TF Time
++Zone Indian/Kerguelen 0 - -00 1950 # Port-aux-Français
++ 5:00 - +05
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+@@ -185,10 +150,10 @@
+ # It was destroyed by fire on 1952-01-14.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/DumontDUrville 0 - zzz 1947
+- 10:00 - PMT 1952 Jan 14 # Port-Martin Time
+- 0 - zzz 1956 Nov
+- 10:00 - DDUT # Dumont-d'Urville Time
++Zone Antarctica/DumontDUrville 0 - -00 1947
++ 10:00 - +10 1952 Jan 14
++ 0 - -00 1956 Nov
++ 10:00 - +10
+
+ # France & Italy - year-round base
+ # Concordia, -750600+1232000, since 2005
+@@ -213,11 +178,11 @@
+ # was established on 1957-01-29. Since Syowa station is still the main
+ # station of Japan, it's appropriate for the principal location.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Syowa 0 - zzz 1957 Jan 29
+- 3:00 - SYOT # Syowa Time
++Zone Antarctica/Syowa 0 - -00 1957 Jan 29
++ 3:00 - +03
+ # See:
+ # NIPR Antarctic Research Activities (1999-08-17)
+-# <http://www.nipr.ac.jp/english/ara01.html>
++# http://www.nipr.ac.jp/english/ara01.html
+
+ # S Korea - year-round base
+ # Jang Bogo, Terra Nova Bay, -743700+1641205 since 2014
+@@ -251,20 +216,20 @@
+ # correct, but they should be quite close to the actual dates.
+ #
+ # From Paul Eggert (2014-03-21):
+-# The CET-switching Troll rules require zic from tzcode 2014b or later, so as
++# The CET-switching Troll rules require zic from tz 2014b or later, so as
+ # suggested by Bengt-Inge Larsson comment them out for now, and approximate
+ # with only UTC and CEST. Uncomment them when 2014b is more prevalent.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-#Rule Troll 2005 max - Mar 1 1:00u 1:00 CET
+-Rule Troll 2005 max - Mar lastSun 1:00u 2:00 CEST
+-#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 CET
+-#Rule Troll 2004 max - Nov 7 1:00u 0:00 UTC
++#Rule Troll 2005 max - Mar 1 1:00u 1:00 +01
++Rule Troll 2005 max - Mar lastSun 1:00u 2:00 +02
++#Rule Troll 2005 max - Oct lastSun 1:00u 1:00 +01
++#Rule Troll 2004 max - Nov 7 1:00u 0:00 +00
+ # Remove the following line when uncommenting the above '#Rule' lines.
+-Rule Troll 2004 max - Oct lastSun 1:00u 0:00 UTC
++Rule Troll 2004 max - Oct lastSun 1:00u 0:00 +00
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Troll 0 - zzz 2005 Feb 12
+- 0:00 Troll %s
++Zone Antarctica/Troll 0 - -00 2005 Feb 12
++ 0:00 Troll %s
+
+ # Poland - year-round base
+ # Arctowski, King George Island, -620945-0582745, since 1977
+@@ -281,8 +246,8 @@
+ # year-round from 1960/61 to 1992
+
+ # Vostok, since 1957-12-16, temporarily closed 1994-02/1994-11
+-# From Craig Mundell (1994-12-15)
+-# <http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP>:
++# From Craig Mundell (1994-12-15):
++# http://quest.arc.nasa.gov/antarctica/QA/computers/Directions,Time,ZIP
+ # Vostok, which is one of the Russian stations, is set on the same
+ # time as Moscow, Russia.
+ #
+@@ -302,10 +267,10 @@
+ # changes during the year and does not necessarily correspond to mean
+ # solar noon. So the Vostok time might have been whatever the clocks
+ # happened to be during their visit. So we still don't really know what time
+-# it is at Vostok. But we'll guess UTC+6.
++# it is at Vostok. But we'll guess +06.
+ #
+-Zone Antarctica/Vostok 0 - zzz 1957 Dec 16
+- 6:00 - VOST # Vostok time
++Zone Antarctica/Vostok 0 - -00 1957 Dec 16
++ 6:00 - +06
+
+ # S Africa - year-round bases
+ # Marion Island, -4653+03752
+@@ -337,8 +302,8 @@
+ # <http://webexhibits.org/daylightsaving/g.html> says Rothera is -03 all year.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Rothera 0 - zzz 1976 Dec 1
+- -3:00 - ROTT # Rothera time
++Zone Antarctica/Rothera 0 - -00 1976 Dec 1
++ -3:00 - -03
+
+ # Uruguay - year round base
+ # Artigas, King George Island, -621104-0585107
+@@ -346,20 +311,7 @@
+ # USA - year-round bases
+ #
+ # Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
+-#
+-# From Ethan Dicks (1996-10-06):
+-# It keeps the same time as Punta Arenas, Chile, because, just like us
+-# and the South Pole, that's the other end of their supply line....
+-# I verified with someone who was there that since 1980,
+-# Palmer has followed Chile. Prior to that, before the Falklands War,
+-# Palmer used to be supplied from Argentina.
+-#
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Antarctica/Palmer 0 - zzz 1965
+- -4:00 ArgAQ AR%sT 1969 Oct 5
+- -3:00 ArgAQ AR%sT 1982 May
+- -4:00 ChileAQ CL%sT
+-#
++# See 'southamerica' for Antarctica/Palmer, since it uses South American DST.
+ #
+ # McMurdo Station, Ross Island, since 1955-12
+ # Amundsen-Scott South Pole Station, continuously occupied since 1956-11-20
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -1,32 +1,36 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-08-11):
++# From Paul Eggert (2015-08-08):
+ #
+-# A good source for time zone historical data outside the U.S. is
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
++#
++# For Russian data circa 1919, a source is:
++# Byalokoz EL. New Counting of Time in Russia since July 1, 1919.
++# (See the 'europe' file for a fuller citation.)
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -39,18 +43,20 @@
+ # 2:00 EET EEST Eastern European Time
+ # 2:00 IST IDT Israel
+ # 3:00 AST ADT Arabia*
+-# 3:30 IRST IRDT Iran
++# 3:30 IRST IRDT Iran*
+ # 4:00 GST Gulf*
+ # 5:30 IST India
+-# 7:00 ICT Indochina*
++# 7:00 ICT Indochina, most times and locations*
+ # 7:00 WIB west Indonesia (Waktu Indonesia Barat)
+ # 8:00 WITA central Indonesia (Waktu Indonesia Tengah)
+ # 8:00 CST China
++# 8:00 IDT Indochina, 1943-45, 1947-55, 1960-75 (some locations)*
+ # 8:00 JWST Western Standard Time (Japan, 1896/1937)*
++# 8:30 KST KDT Korea when at +0830*
+ # 9:00 JCST Central Standard Time (Japan, 1896/1937)
+ # 9:00 WIT east Indonesia (Waktu Indonesia Timur)
+ # 9:00 JST JDT Japan
+-# 9:00 KST KDT Korea
++# 9:00 KST KDT Korea when at +09
+ # 9:30 ACST Australian Central Standard Time
+ #
+ # See the 'europe' file for Russia and Turkey in Asia.
+@@ -73,13 +79,9 @@
+ Rule E-EurAsia 1996 max - Oct lastSun 0:00 0 -
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 0 -
+-Rule RussiaAsia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule RussiaAsia 1992 only - Sep lastSat 23:00 0 -
+-Rule RussiaAsia 1993 max - Mar lastSun 2:00s 1:00 S
+-Rule RussiaAsia 1993 1995 - Sep lastSun 2:00s 0 -
+-Rule RussiaAsia 1996 max - Oct lastSun 2:00s 0 -
++Rule RussiaAsia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule RussiaAsia 1985 2011 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2011 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -114,36 +116,40 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+- 3:00 - YERT 1957 Mar # Yerevan Time
+- 4:00 RussiaAsia YER%sT 1991 Mar 31 2:00s
+- 3:00 1:00 YERST 1991 Sep 23 # independence
+- 3:00 RussiaAsia AM%sT 1995 Sep 24 2:00s
+- 4:00 - AMT 1997
+- 4:00 RussiaAsia AM%sT 2012 Mar 25 2:00s
+- 4:00 - AMT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1995 Sep 24 2:00s
++ 4:00 - +04 1997
++ 4:00 RussiaAsia +04/+05
+
+ # Azerbaijan
++
+ # From Rustam Aliyev of the Azerbaijan Internet Forum (2005-10-23):
+ # According to the resolution of Cabinet of Ministers, 1997
+-# Resolution available at: http://aif.az/docs/daylight_res.pdf
++# From Paul Eggert (2015-09-17): It was Resolution No. 21 (1997-03-17).
++# http://code.az/files/daylight_res.pdf
++
++# From Steffen Thorsen (2016-03-17):
++# ... the Azerbaijani Cabinet of Ministers has cancelled switching to
++# daylight saving time....
++# http://www.azernews.az/azerbaijan/94137.html
++# http://vestnikkavkaza.net/news/Azerbaijani-Cabinet-of-Ministers-cancels-daylight-saving-time.html
++# http://en.apa.az/xeber_azerbaijan_abolishes_daylight_savings_ti_240862.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Azer 1997 max - Mar lastSun 4:00 1:00 S
+-Rule Azer 1997 max - Oct lastSun 5:00 0 -
++Rule Azer 1997 2015 - Mar lastSun 4:00 1:00 S
++Rule Azer 1997 2015 - Oct lastSun 5:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baku 3:19:24 - LMT 1924 May 2
+- 3:00 - BAKT 1957 Mar # Baku Time
+- 4:00 RussiaAsia BAK%sT 1991 Mar 31 2:00s
+- 3:00 1:00 BAKST 1991 Aug 30 # independence
+- 3:00 RussiaAsia AZ%sT 1992 Sep lastSat 23:00
+- 4:00 - AZT 1996 # Azerbaijan time
+- 4:00 EUAsia AZ%sT 1997
+- 4:00 Azer AZ%sT
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992 Sep lastSun 2:00s
++ 4:00 - +04 1996
++ 4:00 EUAsia +04/+05 1997
++ 4:00 Azer +04/+05
+
+ # Bahrain
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++# See Asia/Qatar.
+
+ # Bangladesh
+ # From Alexander Krivenyshev (2009-05-13):
+@@ -219,7 +225,7 @@
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Dhaka 2009 only - Jun 19 23:00 1:00 S
+-Rule Dhaka 2009 only - Dec 31 23:59 0 -
++Rule Dhaka 2009 only - Dec 31 24:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dhaka 6:01:40 - LMT 1890
+@@ -250,7 +256,7 @@
+
+ # Brunei
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
++Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
+ 7:30 - BNT 1933
+ 8:00 - BNT
+
+@@ -259,19 +265,15 @@
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Rangoon 6:24:40 - LMT 1880 # or Yangon
+- 6:24:40 - RMT 1920 # Rangoon Mean Time?
+- 6:30 - BURT 1942 May # Burma Time
+- 9:00 - JST 1945 May 3
+- 6:30 - MMT # Myanmar Time
++Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
++ 6:24:40 - RMT 1920 # Rangoon Mean Time?
++ 6:30 - BURT 1942 May # Burma Time
++ 9:00 - JST 1945 May 3
++ 6:30 - MMT # Myanmar Time
+
+ # Cambodia
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jun 9
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
+- 7:00 - ICT
++# See Asia/Bangkok.
++
+
+ # China
+
+@@ -356,8 +358,8 @@
+ # * The Republic of China instituted Beijing mean solar time effective
+ # the official calendar book of 1914.
+ # * The French Concession in Shanghai set up signal stations in
+-# French docks in the 1890s, controled by Xujiahui (Zikawei)
+-# Obervatory and set to local mean time.
++# French docks in the 1890s, controlled by Xujiahui (Zikawei)
++# Observatory and set to local mean time.
+ # * "From the end of the 19th century" it changed to UT+8.
+ # * Chinese Customs (by then reduced to a tool of foreign powers)
+ # eventually standardized on this time for all ports, and it
+@@ -378,35 +380,35 @@
+ # Lewiston (ME) Daily Sun (1939-05-29), p 17, said "Even the time is
+ # different - the occupied districts going by Tokyo time, an hour
+ # ahead of that prevailing in the rest of Shanghai." Guess that the
+-# Xujiahui Observatory was under French control and stuck with UT+8.
++# Xujiahui Observatory was under French control and stuck with UT +08.
+ #
+ # In earlier versions of this file, China had many separate Zone entries, but
+-# this was based on what was apparently incorrect data in Shanks & Pottenger.
++# this was based on what were apparently incorrect data in Shanks & Pottenger.
+ # This has now been simplified to the two entries Asia/Shanghai and
+ # Asia/Urumqi, with the others being links for backward compatibility.
+ # Proposed in 1918 and theoretically in effect until 1949 (although in practice
+ # mainly observed in coastal areas), the five zones were:
+ #
+-# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT+8.5
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+ # Asia/Harbin (currently a link to Asia/Shanghai)
+ # Heilongjiang (except Mohe county), Jilin
+ #
+-# Zhongyuan Time ("Central plain Time") UT+8
++# Zhongyuan Time ("Central plain Time") UT +08
+ # Asia/Shanghai
+ # most of China
+ # This currently represents most other zones as well,
+ # as apparently these regions have been the same since 1970.
+ # Milne gives 8:05:43.2 for Xujiahui Observatory time; round to nearest.
+-# Guo says Shanghai switched to UT+8 "from the end of the 19th century".
++# Guo says Shanghai switched to UT +08 "from the end of the 19th century".
+ #
+-# Long-shu Time (probably due to Long and Shu being two names of that area) UT+7
++# Long-shu Time (probably due to Long and Shu being two names of the area) UT +07
+ # Asia/Chongqing (currently a link to Asia/Shanghai)
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+ # most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+-# Xin-zang Time ("Xinjiang-Tibet Time") UT+6
++# Xin-zang Time ("Xinjiang-Tibet Time") UT +06
+ # Asia/Urumqi
+ # This currently represents Kunlun Time as well,
+ # as apparently the two regions have been the same since 1970.
+@@ -419,7 +421,7 @@
+ # Shihezi, Changji, Yanqi, Heshuo, Tuokexun, Tulufan, Shanshan, Hami,
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+-# Kunlun Time UT+5.5
++# Kunlun Time UT +05:30
+ # Asia/Kashgar (currently a link to Asia/Urumqi)
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+@@ -435,7 +437,7 @@
+ #
+ # On the other hand, ethnic Uyghurs, who make up about half the
+ # population of Xinjiang, typically use "Xinjiang time" which is two
+-# hours behind Beijing time, or UTC +0600. The government of the Xinjiang
++# hours behind Beijing time, or UT +06. The government of the Xinjiang
+ # Uyghur Autonomous Region, (XAUR, or just Xinjiang for short) as well as
+ # local governments such as the Ürümqi city government use both times in
+ # publications, referring to what is popularly called Xinjiang time as
+@@ -491,8 +493,8 @@
+ # having the same time as Beijing.
+
+ # From Paul Eggert (2014-06-30):
+-# In the early days of the PRC, Tibet was given its own time zone (UT+6) but
+-# this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
++# In the early days of the PRC, Tibet was given its own time zone (UT +06)
++# but this was withdrawn in 1959 and never reinstated; see Tubten Khétsun,
+ # Memories of life in Lhasa under Chinese Rule, Columbia U Press, ISBN
+ # 978-0231142861 (2008), translator's introduction by Matthew Akester, p x.
+ # As this is before our 1970 cutoff, Tibet doesn't need a separate zone.
+@@ -501,17 +503,17 @@
+ # "The Working-Calendar for The Xinjiang Uygur Autonomous Region Government"
+ # <http://www.sinkiang.gov.cn/service/ourworking/> (2014-04-22).
+ # Unfortunately, we have no good records of time in Xinjiang before 1986.
+-# During the 20th century parts of Xinjiang were ruled by the Qing dyansty,
++# During the 20th century parts of Xinjiang were ruled by the Qing dynasty,
+ # the Republic of China, various warlords, the First and Second East Turkestan
+ # Republics, the Soviet Union, the Kuomintang, and the People's Republic of
+ # China, and tracking down all these organizations' timekeeping rules would be
+ # quite a trick. Approximate this lost history by a transition from LMT to
+-# XJT at the start of 1928, the year of accession of the warlord Jin Shuren,
++# UT +06 at the start of 1928, the year of accession of the warlord Jin Shuren,
+ # which happens to be the date given by Shanks & Pottenger (no doubt as a
+-# guess) as the transition from LMT. Ignore the usage of UT+8 before
+-# 1986-02-01 under the theory that the transition date to UT+8 is unknown and
++# guess) as the transition from LMT. Ignore the usage of +08 before
++# 1986-02-01 under the theory that the transition date to +08 is unknown and
+ # that the sort of users who prefer Asia/Urumqi now typically ignored the
+-# UT+8 mandate back then.
++# +08 mandate back then.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Beijing time, used throughout China; represented by Shanghai.
+@@ -698,25 +700,25 @@
+ # Central Weather Bureau website was not correct.
+ #
+ # Original Bulletin:
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF>
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0> (cont.)
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=03502F0AKM1AF
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=0350300AKM1B0 (cont.)
+ #
+ # In 1947, DST in Taiwan was expanded to Oct 31. There is a backup of that
+ # telegram announcement from Taiwan Province Government:
+ #
+-# <http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431>
++# http://subtpg.tpg.gov.tw/og/image2.asp?f=0360310AKZ431
+ #
+ # Here is a brief translation:
+ #
+ # The Summer Time this year is adopted from midnight Apr 15 until Sep 20
+ # midnight. To save (energy?) consumption, we're expanding Summer Time
+-# adption till Oct 31 midnight.
++# adoption till Oct 31 midnight.
+ #
+ # The Central Weather Bureau website didn't mention that, however it can
+ # be found from historical government announcement database.
+
+ # From Paul Eggert (2014-07-03):
+-# As per Yu-Cheng Chuang, say that Taiwan was at UT+9 from 1937-10-01
++# As per Yu-Cheng Chuang, say that Taiwan was at UT +09 from 1937-10-01
+ # until 1945-09-21 at 01:00, overriding Shanks & Pottenger.
+ # Likewise, use Yu-Cheng Chuang's data for DST in Taiwan.
+
+@@ -741,7 +743,7 @@
+ # Taipei or Taibei or T'ai-pei
+ Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1
+ 8:00 - JWST 1937 Oct 1
+- 9:00 - JST 1945 Sep 21 01:00
++ 9:00 - JST 1945 Sep 21 1:00
+ 8:00 Taiwan C%sT
+
+ # Macau (Macao, Aomen)
+@@ -761,7 +763,7 @@
+ Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
+ Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Macau 7:34:20 - LMT 1912
++Zone Asia/Macau 7:34:20 - LMT 1912 Jan 1
+ 8:00 Macau MO%sT 1999 Dec 20 # return to China
+ 8:00 PRC C%sT
+
+@@ -769,9 +771,19 @@
+ ###############################################################################
+
+ # Cyprus
+-#
++
+ # Milne says the Eastern Telegraph Company used 2:14:00. Stick with LMT.
+-#
++# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++
++# From Paul Eggert (2016-09-09):
++# Yesterday's Cyprus Mail reports that Northern Cyprus followed Turkey's
++# lead and switched from +02/+03 to +03 year-round.
++# http://cyprus-mail.com/2016/09/08/two-time-zones-cyprus-turkey-will-not-turn-clocks-back-next-month/
++#
++# From Even Scharning (2016-10-31):
++# Looks like the time zone split in Cyprus went through last night.
++# http://cyprus-mail.com/2016/10/30/cyprus-new-division-two-time-zones-now-reality/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Cyprus 1975 only - Apr 13 0:00 1:00 S
+ Rule Cyprus 1975 only - Oct 12 0:00 0 -
+@@ -786,7 +798,10 @@
+ Zone Asia/Nicosia 2:13:28 - LMT 1921 Nov 14
+ 2:00 Cyprus EE%sT 1998 Sep
+ 2:00 EUAsia EE%sT
+-# IATA SSIM (1998-09) has Cyprus using EU rules for the first time.
++Zone Asia/Famagusta 2:15:48 - LMT 1921 Nov 14
++ 2:00 Cyprus EE%sT 1998 Sep
++ 2:00 EUAsia EE%sT 2016 Sep 8
++ 3:00 - +03
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -823,21 +838,22 @@
+ # I don't know what can be done, especially knowing that some years ago our
+ # DST rules where changed THREE TIMES during one month.
+
+-# Milne says Tbilisi (Tiflis) time was 2:59:05.7; round to nearest.)
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Tbilisi 2:59:06 - LMT 1880
+- 2:59:06 - TBMT 1924 May 2 # Tbilisi Mean Time
+- 3:00 - TBIT 1957 Mar # Tbilisi Time
+- 4:00 RussiaAsia TBI%sT 1991 Mar 31 2:00s
+- 3:00 1:00 TBIST 1991 Apr 9 # independence
+- 3:00 RussiaAsia GE%sT 1992 # Georgia Time
+- 3:00 E-EurAsia GE%sT 1994 Sep lastSun
+- 4:00 E-EurAsia GE%sT 1996 Oct lastSun
+- 4:00 1:00 GEST 1997 Mar lastSun
+- 4:00 E-EurAsia GE%sT 2004 Jun 27
+- 3:00 RussiaAsia GE%sT 2005 Mar lastSun 2:00
+- 4:00 - GET
++# Milne 1899 says Tbilisi (Tiflis) time was 2:59:05.7.
++# Byalokoz 1919 says Georgia was 2:59:11.
++# Go with Byalokoz.
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Asia/Tbilisi 2:59:11 - LMT 1880
++ 2:59:11 - TBMT 1924 May 2 # Tbilisi Mean Time
++ 3:00 - +03 1957 Mar
++ 4:00 RussiaAsia +04/+05 1991 Mar 31 2:00s
++ 3:00 RussiaAsia +03/+04 1992
++ 3:00 E-EurAsia +03/+04 1994 Sep lastSun
++ 4:00 E-EurAsia +04/+05 1996 Oct lastSun
++ 4:00 1:00 +05 1997 Mar lastSun
++ 4:00 E-EurAsia +04/+05 2004 Jun 27
++ 3:00 RussiaAsia +03/+04 2005 Mar lastSun 2:00
++ 4:00 - +04
+
+ # East Timor
+
+@@ -864,16 +880,25 @@
+ # midnight on Saturday, September 16.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Dili 8:22:20 - LMT 1912
++Zone Asia/Dili 8:22:20 - LMT 1912 Jan 1
+ 8:00 - TLT 1942 Feb 21 23:00 # E Timor Time
+ 9:00 - JST 1945 Sep 23
+ 9:00 - TLT 1976 May 3
+- 8:00 - WITA 2000 Sep 17 00:00
++ 8:00 - WITA 2000 Sep 17 0:00
+ 9:00 - TLT
+
+ # India
++
++# From Ian P. Beacock, in "A brief history of (modern) time", The Atlantic
++# http://www.theatlantic.com/technology/archive/2015/12/the-creation-of-modern-time/421419/
++# (2015-12-22):
++# In January 1906, several thousand cotton-mill workers rioted on the
++# outskirts of Bombay.... They were protesting the proposed abolition of
++# local time in favor of Indian Standard Time.... Journalists called this
++# dispute the "Battle of the Clocks." It lasted nearly half a century.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
++Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+ 6:30 - BURT 1942 May 15 # Burma Time
+ 5:30 - IST 1942 Sep
+@@ -886,8 +911,12 @@
+
+ # Indonesia
+ #
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 306 says that Batavia
++# civil time was 7:07:12.5; round to even for Jakarta.
++#
+ # From Gwillim Law (2001-05-28), overriding Shanks & Pottenger:
+-# <http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime>
++# http://www.sumatera-inc.com/go_to_invest/about_indonesia.asp#standtime
+ # says that Indonesia's time zones changed on 1988-01-01. Looking at some
+ # time zone maps, I think that must refer to Western Borneo (Kalimantan Barat
+ # and Kalimantan Tengah) switching from UTC+8 to UTC+7.
+@@ -901,7 +930,7 @@
+ # These would be the earliest possible times for a change.
+ # Régimes horaires pour le monde entier, by Henri Le Corre, (Éditions
+ # Traditionnelles, 1987, Paris) says that Java and Madura switched
+-# from JST to UTC+07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
++# from UT +09 to +07:30 on 1945-09-23, and gives 1944-09-01 for Jayapura
+ # (Hollandia). For now, assume all Indonesian locations other than Jayapura
+ # switched on 1945-09-23.
+ #
+@@ -912,11 +941,11 @@
+ # summary published by the Time and Frequency Laboratory of the
+ # Research Center for Calibration, Instrumentation and Metrology,
+ # Indonesia, <http://time.kim.lipi.go.id/time-eng.php> (2006-09-29).
+-# The abbreviations are:
++# The time zone abbreviations and UT offsets are:
+ #
+-# WIB - UTC+7 - Waktu Indonesia Barat (Indonesia western time)
+-# WITA - UTC+8 - Waktu Indonesia Tengah (Indonesia central time)
+-# WIT - UTC+9 - Waktu Indonesia Timur (Indonesia eastern time)
++# WIB - +07 - Waktu Indonesia Barat (Indonesia western time)
++# WITA - +08 - Waktu Indonesia Tengah (Indonesia central time)
++# WIT - +09 - Waktu Indonesia Timur (Indonesia eastern time)
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Java, Sumatra
+@@ -924,7 +953,7 @@
+ # Shanks & Pottenger say the next transition was at 1924 Jan 1 0:13,
+ # but this must be a typo.
+ 7:07:12 - BMT 1923 Dec 31 23:47:12 # Batavia
+- 7:20 - JAVT 1932 Nov # Java Time
++ 7:20 - JAVT 1932 Nov # Java Time
+ 7:30 - WIB 1942 Mar 23
+ 9:00 - JST 1945 Sep 23
+ 7:30 - WIB 1948 May
+@@ -1023,7 +1052,7 @@
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+-# Iran, Volume 63, Number 18242, dated Tuesday 1386/6/24
++# Iran, Volume 63, No. 18242, dated Tuesday 1386/6/24
+ # [2007-10-16]. I am doing the best translation I can:...
+ # The official time of the country will be moved forward for one hour
+ # on the 24 hours of the first day of the month of Farvardin and will
+@@ -1078,11 +1107,18 @@
+ Rule Iran 2032 2033 - Sep 21 0:00 0 S
+ Rule Iran 2034 2035 - Mar 22 0:00 1:00 D
+ Rule Iran 2034 2035 - Sep 22 0:00 0 S
+-Rule Iran 2036 2037 - Mar 21 0:00 1:00 D
+-Rule Iran 2036 2037 - Sep 21 0:00 0 S
++#
++# The following rules are approximations starting in the year 2038.
++# These are the best post-2037 approximations available, given the
++# restrictions of a single rule using a Gregorian-based data format.
++# At some point this table will need to be extended, though quite
++# possibly Iran will change the rules first.
++Rule Iran 2036 max - Mar 21 0:00 1:00 D
++Rule Iran 2036 max - Sep 21 0:00 0 S
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+- 3:25:44 - TMT 1946 # Tehran Mean Time
++ 3:25:44 - TMT 1946 # Tehran Mean Time
+ 3:30 - IRST 1977 Nov
+ 4:00 Iran IR%sT 1979
+ 3:30 Iran IR%sT
+@@ -1127,7 +1163,7 @@
+ Rule Iraq 1991 2007 - Oct 1 3:00s 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baghdad 2:57:40 - LMT 1890
+- 2:57:36 - BMT 1918 # Baghdad Mean Time?
++ 2:57:36 - BMT 1918 # Baghdad Mean Time?
+ 3:00 - AST 1982 May
+ 3:00 Iraq A%sT
+
+@@ -1355,7 +1391,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Jerusalem 2:20:54 - LMT 1880
+- 2:20:40 - JMT 1918 # Jerusalem Mean Time?
++ 2:20:40 - JMT 1918 # Jerusalem Mean Time?
+ 2:00 Zion I%sT
+
+
+@@ -1371,8 +1407,8 @@
+ # daylight saving between 1948 and 1951, but "the system was discontinued
+ # because the public believed it would lead to longer working hours."
+
+-# From Mayumi Negishi in the 2005-08-10 Japan Times
+-# <http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm>:
++# From Mayumi Negishi in the 2005-08-10 Japan Times:
++# http://www.japantimes.co.jp/cgi-bin/getarticle.pl5?nn20050810f2.htm
+ # Occupation authorities imposed daylight-saving time on Japan on
+ # [1948-05-01].... But lack of prior debate and the execution of
+ # daylight-saving time just three days after the bill was passed generated
+@@ -1396,7 +1432,8 @@
+
+ # From Hideyuki Suzuki (1998-11-09):
+ # 'Tokyo' usually stands for the former location of Tokyo Astronomical
+-# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s), 35 degrees 39' 16.0" N.
++# Observatory: 139 degrees 44' 40.90" E (9h 18m 58.727s),
++# 35 degrees 39' 16.0" N.
+ # This data is from 'Rika Nenpyou (Chronological Scientific Tables) 1996'
+ # edited by National Astronomical Observatory of Japan....
+ # JST (Japan Standard Time) has been used since 1888-01-01 00:00 (JST).
+@@ -1535,24 +1572,7 @@
+
+ # Kazakhstan
+
+-# From Paul Eggert (1996-11-22):
+-# Andrew Evtichov (1996-04-13) writes that Kazakhstan
+-# stayed in sync with Moscow after 1990, and that Aqtobe (formerly Aktyubinsk)
+-# and Aqtau (formerly Shevchenko) are the largest cities in their zones.
+-# Guess that Aqtau and Aqtobe diverged in 1995, since that's the first time
+-# IATA SSIM mentions a third time zone in Kazakhstan.
+-
+-# From Paul Eggert (2006-03-22):
+-# German Iofis, ELSI, Almaty (2001-10-09) reports that Kazakhstan uses
+-# RussiaAsia rules, instead of switching at 00:00 as the IATA has it.
+-# Go with Shanks & Pottenger, who have them always using RussiaAsia rules.
+-# Also go with the following claims of Shanks & Pottenger:
+-#
+-# - Kazakhstan did not observe DST in 1991.
+-# - Qyzylorda switched from +5:00 to +6:00 on 1992-01-19 02:00.
+-# - Oral switched from +5:00 to +4:00 in spring 1989.
+-
+-# From Kazakhstan Embassy's News Bulletin #11
++# From Kazakhstan Embassy's News Bulletin No. 11
+ # <http://www.kazsociety.org.uk/news/2005/03/30.htm> (2005-03-21):
+ # The Government of Kazakhstan passed a resolution March 15 abolishing
+ # daylight saving time citing lack of economic benefits and health
+@@ -1568,68 +1588,239 @@
+ # everything else.... I guess that would make Kazakhstan time zones
+ # de jure UTC+5 and UTC+6 respectively.
+
++# From Stepan Golosunov (2016-03-27) ([*] means see later comments below):
++# Review of the linked documents from http://adilet.zan.kz/
++# produced the following data for post-1991 Kazakhstan:
++#
++# 0. Act of the Cabinet of Ministers of the USSR
++# from 1991-02-04 No. 20
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102010545
++# removed the extra hour ("decree time") on the territory of the USSR
++# starting with the last Sunday of March 1991.
++# It also allowed (but not mandated) Kazakh SSR, Kirghiz SSR, Tajik SSR,
++# Turkmen SSR and Uzbek SSR to not have "summer" time.
++#
++# The 1992-01-13 act also refers to the act of the Cabinet of Ministers
++# of the Kazakh SSR from 1991-03-20 No. 170 "About the act of the Cabinet
++# of Ministers of the USSR from 1991-02-04 No. 20" but I didn't found its
++# text.
++#
++# According to Izvestia newspaper No. 68 (23334) from 1991-03-20
++# (page 6; available at http://libinfo.org/newsr/newsr2574.djvu via
++# http://libinfo.org/index.php?id=58564) on 1991-03-31 at 2:00 during
++# transition to "summer" time:
++# Republic of Georgia, Latvian SSR, Lithuanian SSR, SSR Moldova,
++# Estonian SSR; Komi ASSR; Kaliningrad oblast; Nenets autonomous okrug
++# were to move clocks 1 hour forward.
++# Kazakh SSR (excluding Uralsk oblast); Republic of Kyrgyzstan, Tajik
++# SSR; Andijan, Jizzakh, Namangan, Sirdarya, Tashkent, Fergana oblasts
++# of the Uzbek SSR were to move clocks 1 hour backwards.
++# Other territories were to not move clocks.
++# When the "summer" time would end on 1991-09-29, clocks were to be
++# moved 1 hour backwards on the territory of the USSR excluding
++# Kazakhstan, Kirghizia, Uzbekistan, Turkmenia, Tajikistan.
++#
++# Apparently there were last minute changes. Apparently Kazakh act No. 170
++# was one of such changes.
++#
++# https://ru.wikipedia.org/wiki/Декретное время
++# claims that Sovetskaya Rossiya newspaper on 1991-03-29 published that
++# Nenets autonomous okrug, Komi and Kazakhstan (excluding Uralsk oblast)
++# were to not move clocks and Uralsk oblast was to move clocks
++# forward; on 1991-09-29 Kazakhstan was to move clocks backwards.
++# (Probably there were changes even after that publication. There is an
++# article claiming that Kaliningrad oblast decided on 1991-03-29 to not
++# move clocks.)
++#
++# This implies that on 1991-03-31 Asia/Oral remained on +04/+05 while
++# the rest of Kazakhstan switched from +06/+07 to +05/06 or from +05/06
++# to +04/+05. It's unclear how Kzyl-Orda oblast moved into the fifth
++# time belt. (By switching from +04/+05 to +05/+06 on 1991-09-29?) ...
++#
++# 1. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-01-13 No. 28
++# http://adilet.zan.kz/rus/docs/P920000028_
++# (text includes modification from the 1996 act)
++# introduced new rules for calculation of time, mirroring Russian
++# 1992-01-08 act. It specified that time would be calculated
++# according to time belts plus extra hour ("decree time"), moved clocks
++# on the whole territory of Kazakhstan 1 hour forward on 1992-01-19 at
++# 2:00, specified DST rules. It acknowledged that Kazakhstan was
++# located in the fourth and the fifth time belts and specified the
++# border between them to be located east of Kustanay and Aktyubinsk
++# oblasts (notably including Turgai and Kzyl-Orda oblasts into the fifth
++# time belt).
++#
++# This means switch on 1992-01-19 at 2:00 from +04/+05 to +05/+06 for
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyrau and Kustanay oblasts; from
++# +05/+06 to +06/+07 for Asia/Almaty and Asia/Qyzylorda (and Arkalyk) [*]....
++#
++# 2. Act of the Cabinet of Ministers of the Republic of Kazakhstan
++# from 1992-03-27 No. 284
++# http://adilet.zan.kz/rus/docs/P920000284_
++# cancels extra hour ("decree time") for Uralsk and Kzyl-Orda oblasts
++# since the last Sunday of March 1992, while keeping them in the fourth
++# and the fifth time belts respectively.
++#
++# 3. Order of the Prime Minister of the Republic of Kazakhstan
++# from 1994-09-23 No. 384
++# http://adilet.zan.kz/rus/docs/R940000384_
++# cancels the extra hour ("decree time") on the territory of Mangystau
++# oblast since the last Sunday of September 1994 (saying that time on
++# the territory would correspond to the third time belt as a
++# result)....
++#
++# 4. Act of the Government of the Republic of Kazakhstan
++# from 1996-05-08 No. 575
++# http://adilet.zan.kz/rus/docs/P960000575_
++# amends the 1992-01-13 act to end summer time in October instead
++# of September, mirroring identical Russian change from 1996-04-23 act.
++#
++# 5. Act of the Government of the Republic of Kazakhstan
++# from 1999-03-26 No. 305
++# http://adilet.zan.kz/rus/docs/P990000305_
++# cancels the extra hour ("decree time") for Atyrau oblast since the
++# last Sunday of March 1999 while retaining the oblast in the fourth
++# time belt.
++#
++# This means change from +05/+06 to +04/+05.
++#
++# There is no zone for Atyrau currently (listed under Asia/Aqtau in
++# zone1970.tab).[*]
++#
++# 6. Act of the Government of the Republic of Kazakhstan
++# from 2000-11-23 No. 1749
++# http://adilet.zan.kz/rus/archive/docs/P000001749_/23.11.2000
++# replaces the previous five documents.
++#
++# The only changes I noticed are in definition of the border between the
++# fourth and the fifth time belts. They account for changes in spelling
++# and administrative division (splitting of Turgai oblast in 1997
++# probably changed time in territories incorporated into Kostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Kyzylorda oblast
++# from being in the fifth time belt and not using decree time into the
++# fourth time belt (no change in practice).[*]
++#
++# 7. Act of the Government of the Republic of Kazakhstan
++# from 2003-12-29 No. 1342
++# http://adilet.zan.kz/rus/docs/P030001342_
++# modified the 2000-11-23 act. No relevant changes, apparently.
++#
++# 8. Act of the Government of the Republic of Kazakhstan
++# from 2004-07-20 No. 775
++# http://adilet.zan.kz/rus/archive/docs/P040000775_/20.07.2004
++# modified the 2000-11-23 act to move Kostanay and Kyzylorda oblasts into
++# the fifth time belt and add Aktobe oblast to the list of regions not
++# using extra hour ("decree time"), leaving Kazakhstan with only 2 time
++# zones (+04/+05 and +06/+07). The changes were to be implemented
++# during DST transitions in 2004 and 2005 but the acts got radically
++# amended before implementation happened.
++#
++# 9. Act of the Government of the Republic of Kazakhstan
++# from 2004-09-15 No. 1059
++# http://adilet.zan.kz/rus/docs/P040001059_
++# modified the 2000-11-23 act to remove exceptions from the "decree time"
++# (leaving Kazakhstan in +05/+06 and +06/+07 zones), amended the
++# 2004-07-20 act to implement changes for Atyrau, West Kazakhstan,
++# Kostanay, Kyzylorda and Mangystau oblasts by not moving clocks
++# during the 2014 transition to "winter" time.
++#
++# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# zone currently), Asia/Oral, Asia/Aqtau and transition from +05/+06 to
++# +06/+07 for Kostanay oblast (Kostanay and Arkalyk, no zones currently)
++# and Asia/Qyzylorda on 2004-10-31 at 3:00....[*]
++#
++# 10. Act of the Government of the Republic of Kazakhstan
++# from 2005-03-15 No. 231
++# http://adilet.zan.kz/rus/docs/P050000231_
++# removes DST provisions from the 2000-11-23 act, removes most of the
++# (already implemented) provisions from the 2004-07-20 and 2004-09-15
++# acts, comes into effect 10 days after official publication.
++# The only practical effect seems to be the abolition of the summer
++# time.
++#
++# Unamended version of the act of the Government of the Russian Federation
++# No. 23 from 1992-01-08 [See 'europe' file for details].
++# Kazakh 1992-01-13 act appears to provide the same rules and 1992-03-27
++# act was to be enacted on the last Sunday of March 1992.
++
++# From Paul Eggert (2016-04-15):
++# The tables below should reflect Stepan Golosunov's remarks above,
++# except for the items marked "[*]" which I haven't gotten to yet.
++# It looks like we will need new zones Asia/Atyrau and Asia/Qostanay
++# to handle changes from 1992 through 2004 that we did not previously
++# know about.
++
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
++# This includes KZ-AKM, KZ-ALA, KZ-ALM, KZ-AST, KZ-BAY, KZ-VOS, KZ-ZHA,
++# KZ-KAR, KZ-SEV, KZ-PAV, and KZ-YUZ.
+ Zone Asia/Almaty 5:07:48 - LMT 1924 May 2 # or Alma-Ata
+- 5:00 - ALMT 1930 Jun 21 # Alma-Ata Time
+- 6:00 RussiaAsia ALM%sT 1991
+- 6:00 - ALMT 1992
+- 6:00 RussiaAsia ALM%sT 2005 Mar 15
+- 6:00 - ALMT
+-# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.)
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
++ 6:00 - +06
++# Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+- 4:00 - KIZT 1930 Jun 21 # Kizilorda Time
+- 5:00 - KIZT 1981 Apr 1
+- 5:00 1:00 KIZST 1981 Oct 1
+- 6:00 - KIZT 1982 Apr 1
+- 5:00 RussiaAsia KIZ%sT 1991
+- 5:00 - KIZT 1991 Dec 16 # independence
+- 5:00 - QYZT 1992 Jan 19 2:00
+- 6:00 RussiaAsia QYZ%sT 2005 Mar 15
+- 6:00 - QYZT
+-# Aqtobe (aka Aktobe, formerly Akt'ubinsk)
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1991 Sep 29 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Jan 19 2:00s
++ 6:00 RussiaAsia +06/+07 1992 Mar 29 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 6:00 - +06
++# Aqtobe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+- 4:00 - AKTT 1930 Jun 21 # Aktyubinsk Time
+- 5:00 - AKTT 1981 Apr 1
+- 5:00 1:00 AKTST 1981 Oct 1
+- 6:00 - AKTT 1982 Apr 1
+- 5:00 RussiaAsia AKT%sT 1991
+- 5:00 - AKTT 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 2005 Mar 15 # Aqtobe Time
+- 5:00 - AQTT
+-# Mangghystau
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 2004 Oct 31 2:00s
++ 5:00 - +05
++# Qostanay (KZ-KUS)
++
++# Mangghystau (KZ-MAN)
+ # Aqtau was not founded until 1963, but it represents an inhabited region,
+ # so include time stamps before 1963.
+ Zone Asia/Aqtau 3:21:04 - LMT 1924 May 2
+- 4:00 - FORT 1930 Jun 21 # Fort Shevchenko T
+- 5:00 - FORT 1963
+- 5:00 - SHET 1981 Oct 1 # Shevchenko Time
+- 6:00 - SHET 1982 Apr 1
+- 5:00 RussiaAsia SHE%sT 1991
+- 5:00 - SHET 1991 Dec 16 # independence
+- 5:00 RussiaAsia AQT%sT 1995 Mar lastSun 2:00 # Aqtau Time
+- 4:00 RussiaAsia AQT%sT 2005 Mar 15
+- 5:00 - AQTT
+-# West Kazakhstan
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1963
++ 5:00 - +05 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
++
++# West Kazakhstan (KZ-ZAP)
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
+ Zone Asia/Oral 3:25:24 - LMT 1924 May 2 # or Ural'sk
+- 4:00 - URAT 1930 Jun 21 # Ural'sk time
+- 5:00 - URAT 1981 Apr 1
+- 5:00 1:00 URAST 1981 Oct 1
+- 6:00 - URAT 1982 Apr 1
+- 5:00 RussiaAsia URA%sT 1989 Mar 26 2:00
+- 4:00 RussiaAsia URA%sT 1991
+- 4:00 - URAT 1991 Dec 16 # independence
+- 4:00 RussiaAsia ORA%sT 2005 Mar 15 # Oral Time
+- 5:00 - ORAT
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1989 Mar 26 2:00s
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00s
++ 5:00 RussiaAsia +05/+06 1992 Mar 29 2:00s
++ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
++ 5:00 - +05
+
+ # Kyrgyzstan (Kirgizstan)
+ # Transitions through 1991 are from Shanks & Pottenger.
+
+ # From Paul Eggert (2005-08-15):
+ # According to an article dated today in the Kyrgyzstan Development Gateway
+-# <http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml>
++# http://eng.gateway.kg/cgi-bin/page.pl?id=1&story_name=doc9979.shtml
+ # Kyrgyzstan is canceling the daylight saving time system. I take the article
+ # to mean that they will leave their clocks at 6 hours ahead of UTC.
+ # From Malik Abdugaliev (2005-09-21):
+@@ -1643,71 +1834,103 @@
+ Rule Kyrgyz 1997 2004 - Oct lastSun 2:30 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bishkek 4:58:24 - LMT 1924 May 2
+- 5:00 - FRUT 1930 Jun 21 # Frunze Time
+- 6:00 RussiaAsia FRU%sT 1991 Mar 31 2:00s
+- 5:00 1:00 FRUST 1991 Aug 31 2:00 # independence
+- 5:00 Kyrgyz KG%sT 2005 Aug 12 # Kyrgyzstan Time
+- 6:00 - KGT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 RussiaAsia +05/+06 1991 Aug 31 2:00
++ 5:00 Kyrgyz +05/+06 2005 Aug 12
++ 6:00 - +06
+
+ ###############################################################################
+
+ # Korea (North and South)
+
+-# From Annie I. Bang (2006-07-10) in
+-# <http://www.koreaherald.co.kr/SITE/data/html_dir/2006/07/10/200607100012.asp>:
+-# The Ministry of Commerce, Industry and Energy has already
+-# commissioned a research project [to reintroduce DST] and has said
+-# the system may begin as early as 2008.... Korea ran a daylight
+-# saving program from 1949-61 but stopped it during the 1950-53 Korean War.
+-
+-# From Shanks & Pottenger:
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule ROK 1960 only - May 15 0:00 1:00 D
+-Rule ROK 1960 only - Sep 13 0:00 0 S
+-Rule ROK 1987 1988 - May Sun>=8 0:00 1:00 D
+-Rule ROK 1987 1988 - Oct Sun>=8 0:00 0 S
+-
+-# From Paul Eggert (2014-07-01):
+-# The following entries are from Shanks & Pottenger, except that I
+-# guessed that time zone abbreviations through 1945 followed the same
++# From Annie I. Bang (2006-07-10):
++# http://www.koreaherald.com/view.php?ud=200607100012
++# Korea ran a daylight saving program from 1949-61 but stopped it
++# during the 1950-53 Korean War. The system was temporarily enforced
++# between 1987 and 1988 ...
++
++# From Sanghyuk Jung (2014-10-29):
++# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# According to the Korean Wikipedia
++# http://ko.wikipedia.org/wiki/한국_표준시
++# [oldid=12896437 2014-09-04 08:03 UTC]
++# DST in Republic of Korea was as follows.... And I checked old
++# newspapers in Korean, all articles correspond with data in Wikipedia.
++# For example, the article in 1948 (Korean Language) proved that DST
++# started at June 1 in that year. For another example, the article in
++# 1988 said that DST started at 2:00 AM in that year.
++
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule ROK 1948 only - Jun 1 0:00 1:00 D
++Rule ROK 1948 only - Sep 13 0:00 0 S
++Rule ROK 1949 only - Apr 3 0:00 1:00 D
++Rule ROK 1949 1951 - Sep Sun>=8 0:00 0 S
++Rule ROK 1950 only - Apr 1 0:00 1:00 D
++Rule ROK 1951 only - May 6 0:00 1:00 D
++Rule ROK 1955 only - May 5 0:00 1:00 D
++Rule ROK 1955 only - Sep 9 0:00 0 S
++Rule ROK 1956 only - May 20 0:00 1:00 D
++Rule ROK 1956 only - Sep 30 0:00 0 S
++Rule ROK 1957 1960 - May Sun>=1 0:00 1:00 D
++Rule ROK 1957 1960 - Sep Sun>=18 0:00 0 S
++Rule ROK 1987 1988 - May Sun>=8 2:00 1:00 D
++Rule ROK 1987 1988 - Oct Sun>=8 3:00 0 S
++
++# From Paul Eggert (2016-08-23):
++# The Korean Wikipedia entry gives the following sources for UT offsets:
++#
++# 1908: Official Journal Article No. 3994 (decree No. 5)
++# 1912: Governor-General of Korea Official Gazette Issue No. 367
++# (Announcement No. 338)
++# 1954: Presidential Decree No. 876 (1954-03-17)
++# 1961: Law No. 676 (1961-08-07)
++#
++# (Another source "1987: Law No. 3919 (1986-12-31)" was in the 2014-10-30
++# edition of the Korean Wikipedia entry.)
++#
++# I guessed that time zone abbreviations through 1945 followed the same
+ # rules as discussed under Taiwan, with nominal switches from JST to KST
+ # when the respective cities were taken over by the Allies after WWII.
++#
++# For Pyongyang, guess no changes from World War II until 2015, as we
++# have no information otherwise.
++
++# From Steffen Thorsen (2015-08-07):
++# According to many news sources, North Korea is going to change to
++# the 8:30 time zone on August 15, one example:
++# http://www.bbc.com/news/world-asia-33815049
++#
++# From Paul Eggert (2015-08-15):
++# Bells rang out midnight (00:00) Friday as part of the celebrations. See:
++# Talmadge E. North Korea celebrates new time zone, 'Pyongyang Time'
++# http://news.yahoo.com/north-korea-celebrates-time-zone-pyongyang-time-164038128.html
++# There is no common English-language abbreviation for this time zone.
++# Use KST, as that's what we already use for 1954-1961 in ROK.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Seoul 8:27:52 - LMT 1890
+- 8:30 - KST 1904 Dec
+- 9:00 - JCST 1928
+- 8:30 - KST 1932
++Zone Asia/Seoul 8:27:52 - LMT 1908 Apr 1
++ 8:30 - KST 1912 Jan 1
+ 9:00 - JCST 1937 Oct 1
+ 9:00 - JST 1945 Sep 8
+ 9:00 - KST 1954 Mar 21
+- 8:00 ROK K%sT 1961 Aug 10
+- 8:30 - KST 1968 Oct
++ 8:30 ROK K%sT 1961 Aug 10
+ 9:00 ROK K%sT
+-Zone Asia/Pyongyang 8:23:00 - LMT 1890
+- 8:30 - KST 1904 Dec
+- 9:00 - JCST 1928
+- 8:30 - KST 1932
++Zone Asia/Pyongyang 8:23:00 - LMT 1908 Apr 1
++ 8:30 - KST 1912 Jan 1
+ 9:00 - JCST 1937 Oct 1
+ 9:00 - JST 1945 Aug 24
+- 9:00 - KST 1954 Mar 21
+- 8:00 - KST 1961 Aug 10
+- 9:00 - KST
++ 9:00 - KST 2015 Aug 15 00:00
++ 8:30 - KST
+
+ ###############################################################################
+
+ # Kuwait
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kuwait 3:11:56 - LMT 1950
+- 3:00 - AST
++# See Asia/Riyadh.
+
+ # Laos
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Vientiane 6:50:24 - LMT 1906 Jun 9 # or Viangchan
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
+- 7:00 - ICT
++# See Asia/Bangkok.
++
+
+ # Lebanon
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1745,8 +1968,8 @@
+ Rule NBorneo 1935 1941 - Dec 14 0:00 0 -
+ #
+ # peninsular Malaysia
+-# The data here are taken from Mok Ly Yng (2003-10-30)
+-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
++# taken from Mok Ly Yng (2003-10-30)
++# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuala_Lumpur 6:46:46 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+@@ -1758,12 +1981,12 @@
+ 7:30 - MALT 1982 Jan 1
+ 8:00 - MYT # Malaysia Time
+ # Sabah & Sarawak
+-# From Paul Eggert (2006-03-22):
+-# The data here are mostly from Shanks & Pottenger, but the 1942, 1945 and 1982
+-# transition dates are from Mok Ly Yng.
++# From Paul Eggert (2014-08-12):
++# The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945
++# and 1982 transition dates are from Mok Ly Yng.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kuching 7:21:20 - LMT 1926 Mar
+- 7:30 - BORT 1933 # Borneo Time
++ 7:30 - BORT 1933 # Borneo Time
+ 8:00 NBorneo BOR%sT 1942 Feb 16
+ 9:00 - JST 1945 Sep 12
+ 8:00 - BORT 1982 Jan 1
+@@ -1771,9 +1994,9 @@
+
+ # Maldives
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
+- 4:54:00 - MMT 1960 # Male Mean Time
+- 5:00 - MVT # Maldives Time
++Zone Indian/Maldives 4:54:00 - LMT 1880 # Male
++ 4:54:00 - MMT 1960 # Male Mean Time
++ 5:00 - MVT # Maldives Time
+
+ # Mongolia
+
+@@ -1831,11 +2054,11 @@
+ # Bill Bonnet (2005-05-19) reports that the US Embassy in Ulaanbaatar says
+ # there is only one time zone and that DST is observed, citing Microsoft
+ # Windows XP as the source. Risto Nykänen (2005-05-16) reports that
+-# travelmongolia.org says there are two time zones (UTC+7, UTC+8) with no DST.
++# travelmongolia.org says there are two time zones (UT +07, +08) with no DST.
+ # Oscar van Vlijmen (2005-05-20) reports that the Mongolian Embassy in
+ # Washington, DC says there are two time zones, with DST observed.
+ # He also found
+-# <http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&>
++# http://ubpost.mongolnews.mn/index.php?subaction=showcomments&id=1111634894&archive=&start_from=&ucat=1&
+ # which also says that there is DST, and which has a comment by "Toddius"
+ # (2005-03-31 06:05 +0700) saying "Mongolia actually has 3.5 time zones.
+ # The West (OLGII) is +7 GMT, most of the country is ULAT is +8 GMT
+@@ -1879,6 +2102,13 @@
+ # was at the start of 2008-03-31 (the day of Steffen Thorsen's report);
+ # this is almost surely wrong.
+
++# From Ganbold Tsagaankhuu (2015-03-10):
++# It seems like yesterday Mongolian Government meeting has concluded to use
++# daylight saving time in Mongolia.... Starting at 2:00AM of last Saturday of
++# March 2015, daylight saving time starts. And 00:00AM of last Saturday of
++# September daylight saving time ends. Source:
++# http://zasag.mn/news/view/8969
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Mongol 1983 1984 - Apr 1 0:00 1:00 S
+ Rule Mongol 1983 only - Oct 1 0:00 0 -
+@@ -1899,17 +2129,19 @@
+ Rule Mongol 2001 only - Apr lastSat 2:00 1:00 S
+ Rule Mongol 2001 2006 - Sep lastSat 2:00 0 -
+ Rule Mongol 2002 2006 - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 max - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 max - Sep lastSat 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Hovd, a.k.a. Chovd, Dund-Us, Dzhargalant, Khovd, Jirgalanta
+ Zone Asia/Hovd 6:06:36 - LMT 1905 Aug
+- 6:00 - HOVT 1978 # Hovd Time
++ 6:00 - HOVT 1978 # Hovd Time
+ 7:00 Mongol HOV%sT
+ # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+ Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
+- 7:00 - ULAT 1978 # Ulaanbaatar Time
++ 7:00 - ULAT 1978 # Ulaanbaatar Time
+ 8:00 Mongol ULA%sT
+-# Choibalsan, a.k.a. Bajan Tuemen, Bajan Tumen, Chojbalsan,
++# Choibalsan, a.k.a. Bajan Tümen, Bajan Tumen, Chojbalsan,
+ # Choybalsan, Sanbejse, Tchoibalsan
+ Zone Asia/Choibalsan 7:38:00 - LMT 1905 Aug
+ 7:00 - ULAT 1978
+@@ -1924,12 +2156,7 @@
+ 5:45 - NPT # Nepal Time
+
+ # Oman
+-
+-# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Muscat 3:54:24 - LMT 1920
+- 4:00 - GST
++# See Asia/Dubai.
+
+ # Pakistan
+
+@@ -1973,10 +2200,9 @@
+ # Here is an article that Pakistan plan to introduce Daylight Saving Time
+ # on June 1, 2008 for 3 months.
+ #
+-# "... The federal cabinet on Wednesday announced a new conservation plan to help
+-# reduce load shedding by approving the closure of commercial centres at 9pm and
+-# moving clocks forward by one hour for the next three months.
+-# ...."
++# "... The federal cabinet on Wednesday announced a new conservation plan to
++# help reduce load shedding by approving the closure of commercial centres at
++# 9pm and moving clocks forward by one hour for the next three months. ...."
+ #
+ # http://www.worldtimezone.net/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+@@ -2023,19 +2249,14 @@
+
+ # From Alexander Krivenyshev (2009-09-28):
+ # According to Associated Press Of Pakistan, it is confirmed that
+-# Pakistan clocks across the country would be turned back by an hour from October
+-# 1, 2009.
++# Pakistan clocks across the country would be turned back by an hour from
++# October 1, 2009.
+ #
+ # "Clocks to go back one hour from 1 Oct"
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=86715&Itemid=2
+ # http://www.worldtimezone.com/dst_news/dst_news_pakistan07.htm
+-
+-# From Steffen Thorsen (2009-09-29):
+-# Alexander Krivenyshev wrote:
+-# > According to Associated Press Of Pakistan, it is confirmed that
+-# > Pakistan clocks across the country would be turned back by an hour from October
+-# > 1, 2009.
+ #
++# From Steffen Thorsen (2009-09-29):
+ # Now they seem to have changed their mind, November 1 is the new date:
+ # http://www.thenews.com.pk/top_story_detail.asp?Id=24742
+ # "The country's clocks will be reversed by one hour on November 1.
+@@ -2073,12 +2294,11 @@
+ # http://www.app.com.pk/en_/index.php?option=com_content&task=view&id=99374&Itemid=2
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Pakistan 2002 only - Apr Sun>=2 0:01 1:00 S
+-Rule Pakistan 2002 only - Oct Sun>=2 0:01 0 -
++Rule Pakistan 2002 only - Apr Sun>=2 0:00 1:00 S
++Rule Pakistan 2002 only - Oct Sun>=2 0:00 0 -
+ Rule Pakistan 2008 only - Jun 1 0:00 1:00 S
+-Rule Pakistan 2008 only - Nov 1 0:00 0 -
++Rule Pakistan 2008 2009 - Nov 1 0:00 0 -
+ Rule Pakistan 2009 only - Apr 15 0:00 1:00 S
+-Rule Pakistan 2009 only - Nov 1 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Karachi 4:28:12 - LMT 1907
+@@ -2153,7 +2373,7 @@
+
+ # From Paul Eggert (1999-09-20):
+ # Daoud Kuttab writes in Holiday havoc
+-# <http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html>
++# http://www.jpost.com/com/Archive/22.Apr.1999/Opinion/Article-2.html
+ # (Jerusalem Post, 1999-04-22) that
+ # the Palestinian National Authority changed to DST on 1999-04-15.
+ # I vaguely recall that they switch back in October (sorry, forgot the source).
+@@ -2329,13 +2549,38 @@
+ # official source...:
+ # http://www.palestinecabinet.gov.ps/ar/Views/ViewDetails.aspx?pid=1252
+
+-# From Paul Eggert (2013-09-24):
+-# For future dates, guess the last Thursday in March at 24:00 through
+-# the first Friday on or after September 21 at 00:00. This is consistent with
+-# the predictions in today's editions of the following URLs,
+-# which are for Gaza and Hebron respectively:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=702
+-# http://www.timeanddate.com/worldclock/timezone.html?n=2364
++# From Steffen Thorsen (2015-03-03):
++# Sources such as http://www.alquds.com/news/article/view/id/548257
++# and http://www.raya.ps/ar/news/890705.html say Palestine areas will
++# start DST on 2015-03-28 00:00 which is one day later than expected.
++#
++# From Paul Eggert (2015-03-03):
++# http://www.timeanddate.com/time/change/west-bank/ramallah?year=2014
++# says that the fall 2014 transition was Oct 23 at 24:00.
++
++# From Hannah Kreitem (2016-03-09):
++# http://www.palestinecabinet.gov.ps/WebSite/ar/ViewDetails?ID=31728
++# [Google translation]: "The Council also decided to start daylight
++# saving in Palestine as of one o'clock on Saturday morning,
++# 2016-03-26, to provide the clock 60 minutes ahead."
++#
++# From Paul Eggert (2016-03-12):
++# Predict spring transitions on March's last Saturday at 01:00 from now on.
++
++# From Sharef Mustafa (2016-10-19):
++# [T]he Palestinian cabinet decision (Mar 8th 2016) published on
++# http://www.palestinecabinet.gov.ps/WebSite/Upload/Decree/GOV_17/16032016134830.pdf
++# states that summer time will end on Oct 29th at 01:00.
++#
++# From Tim Parenti (2016-10-19):
++# Predict fall transitions on October's last Saturday at 01:00 from now on.
++# This is consistent with the 2016 transition as well as our spring
++# predictions.
++#
++# From Paul Eggert (2016-10-19):
++# It's also consistent with predictions in the following URLs today:
++# http://www.timeanddate.com/time/change/gaza-strip/gaza
++# http://www.timeanddate.com/time/change/west-bank/hebron
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule EgyptAsia 1957 only - May 10 0:00 1:00 S
+@@ -2361,9 +2606,13 @@
+ Rule Palestine 2011 only - Aug 1 0:00 0 -
+ Rule Palestine 2011 only - Aug 30 0:00 1:00 S
+ Rule Palestine 2011 only - Sep 30 0:00 0 -
+-Rule Palestine 2012 max - Mar lastThu 24:00 1:00 S
++Rule Palestine 2012 2014 - Mar lastThu 24:00 1:00 S
+ Rule Palestine 2012 only - Sep 21 1:00 0 -
+-Rule Palestine 2013 max - Sep Fri>=21 0:00 0 -
++Rule Palestine 2013 only - Sep Fri>=21 0:00 0 -
++Rule Palestine 2014 2015 - Oct Fri>=21 0:00 0 -
++Rule Palestine 2015 only - Mar lastFri 24:00 1:00 S
++Rule Palestine 2016 max - Mar lastSat 1:00 1:00 S
++Rule Palestine 2016 max - Oct lastSat 1:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+@@ -2371,10 +2620,10 @@
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+- 2:00 Palestine EE%sT 2008 Aug 29 0:00
++ 2:00 Palestine EE%sT 2008 Aug 29 0:00
+ 2:00 - EET 2008 Sep
+ 2:00 Palestine EE%sT 2010
+- 2:00 - EET 2010 Mar 27 0:01
++ 2:00 - EET 2010 Mar 27 0:01
+ 2:00 Palestine EE%sT 2011 Aug 1
+ 2:00 - EET 2012
+ 2:00 Palestine EE%sT
+@@ -2394,22 +2643,23 @@
+ # Philippines, issued a proclamation announcing that 1844-12-30 was to
+ # be immediately followed by 1845-01-01; see R.H. van Gent's
+ # History of the International Date Line
+-# <http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm>.
+-# The rest of the data are from Shanks & Pottenger.
++# http://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
++# The rest of the data entries are from Shanks & Pottenger.
+
+-# From Paul Eggert (2006-04-25):
+-# Tomorrow's Manila Standard reports that the Philippines Department of
+-# Trade and Industry is considering adopting DST this June when the
+-# rainy season begins. See
+-# <http://www.manilastandardtoday.com/?page=politics02_april26_2006>.
+-# For now, we'll ignore this, since it's not definite and we lack details.
+-#
+ # From Jesper Nørgaard Welen (2006-04-26):
+ # ... claims that Philippines had DST last time in 1990:
+ # http://story.philippinetimes.com/p.x/ct/9/id/145be20cc6b121c0/cid/3e5bbccc730d258c/
+ # [a story dated 2006-04-25 by Cris Larano of Dow Jones Newswires,
+ # but no details]
+
++# From Paul Eggert (2014-08-14):
++# The following source says DST may be instituted November-January and again
++# March-June, but this is not definite. It also says DST was last proclaimed
++# during the Ramos administration (1992-1998); but again, no details.
++# Carcamo D. PNoy urged to declare use of daylight saving time.
++# Philippine Star 2014-08-05
++# http://www.philstar.com/headlines/2014/08/05/1354152/pnoy-urged-declare-use-daylight-saving-time
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Phil 1936 only - Nov 1 0:00 1:00 S
+ Rule Phil 1937 only - Feb 1 0:00 0 -
+@@ -2426,9 +2676,10 @@
+
+ # Qatar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
++Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+ 4:00 - GST 1972 Jun
+ 3:00 - AST
++Link Asia/Qatar Asia/Bahrain
+
+ # Saudi Arabia
+ #
+@@ -2449,16 +2700,18 @@
+ # earlier date.
+ #
+ # Shanks & Pottenger also state that until 1968-05-01 Saudi Arabia had two
+-# time zones; the other zone, at UTC+4, was in the far eastern part of
++# time zones; the other zone, at UT +04, was in the far eastern part of
+ # the country. Ignore this, as it's before our 1970 cutoff.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14
+ 3:00 - AST
++Link Asia/Riyadh Asia/Aden # Yemen
++Link Asia/Riyadh Asia/Kuwait
+
+ # Singapore
+-# The data here are taken from Mok Ly Yng (2003-10-30)
+-# <http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html>.
++# taken from Mok Ly Yng (2003-10-30)
++# http://www.math.nus.edu.sg/aslaksen/teaching/timezone.html
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Singapore 6:55:25 - LMT 1901 Jan 1
+ 6:55:25 - SMT 1905 Jun 1 # Singapore M.T.
+@@ -2501,7 +2754,7 @@
+ # at present, become 2400 hours of April 14, 2006 (midnight of April 14, 2006).
+
+ # From Peter Apps and Ranga Sirila of Reuters (2006-04-12) in:
+-# <http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML>
++# http://today.reuters.co.uk/news/newsArticle.aspx?type=scienceNews&storyID=2006-04-12T172228Z_01_COL295762_RTRIDST_0_SCIENCE-SRILANKA-TIME-DC.XML
+ # [The Tamil Tigers] never accepted the original 1996 time change and simply
+ # kept their clocks set five and a half hours ahead of Greenwich Mean
+ # Time (GMT), in line with neighbor India.
+@@ -2509,45 +2762,31 @@
+ # People who live in regions under Tamil control can use [TZ='Asia/Kolkata'],
+ # as that zone has agreed with the Tamil areas since our cutoff date of 1970.
+
+-# From K Sethu (2006-04-25):
+-# I think the abbreviation LKT originated from the world of computers at
+-# the time of or subsequent to the time zone changes by SL Government
+-# twice in 1996 and probably SL Government or its standardization
+-# agencies never declared an abbreviation as a national standard.
+-#
+-# I recollect before the recent change the government announcements
+-# mentioning it as simply changing Sri Lanka Standard Time or Sri Lanka
+-# Time and no mention was made about the abbreviation.
+-#
+-# If we look at Sri Lanka Department of Government's "Official News
+-# Website of Sri Lanka" ... http://www.news.lk/ we can see that they
+-# use SLT as abbreviation in time stamp at the beginning of each news
+-# item....
+-#
+-# Within Sri Lanka I think LKT is well known among computer users and
+-# administrators. In my opinion SLT may not be a good choice because the
+-# nation's largest telcom / internet operator Sri Lanka Telcom is well
+-# known by that abbreviation - simply as SLT (there IP domains are
+-# slt.lk and sltnet.lk).
+-#
+-# But if indeed our government has adopted SLT as standard abbreviation
+-# (that we have not known so far) then it is better that it be used for
+-# all computers.
+-
+-# From Paul Eggert (2006-04-25):
+-# One possibility is that we wait for a bit for the dust to settle down
+-# and then see what people actually say in practice.
++# From Sadika Sumanapala (2016-10-19):
++# According to http://www.sltime.org (maintained by Measurement Units,
++# Standards & Services Department, Sri Lanka) abbreviation for Sri Lanka
++# standard time is SLST.
++#
++# From Paul Eggert (2016-10-18):
++# "SLST" seems to be reasonably recent and rarely-used outside time
++# zone nerd sources. I searched Google News and found three uses of
++# it in the International Business Times of India in February and
++# March of this year when discussing cricket match times, but nothing
++# since then (though there has been a lot of cricket) and nothing in
++# other English-language news sources. Our old abbreviation "LKT" is
++# even worse. For now, let's use a numeric abbreviation; we can
++# switch to "SLST" if it catches on.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+- 5:19:32 - MMT 1906 # Moratuwa Mean Time
+- 5:30 - IST 1942 Jan 5
+- 5:30 0:30 IHST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 16 2:00
+- 5:30 - IST 1996 May 25 0:00
+- 6:30 - LKT 1996 Oct 26 0:30
+- 6:00 - LKT 2006 Apr 15 0:30
+- 5:30 - IST
++ 5:19:32 - MMT 1906 # Moratuwa Mean Time
++ 5:30 - +0530 1942 Jan 5
++ 5:30 0:30 +0530/+06 1942 Sep
++ 5:30 1:00 +0530/+0630 1945 Oct 16 2:00
++ 5:30 - +0530 1996 May 25 0:00
++ 6:30 - +0630 1996 Oct 26 0:30
++ 6:00 - +06 2006 Apr 15 0:30
++ 5:30 - +0530
+
+ # Syria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -2622,8 +2861,7 @@
+
+ # From Stephen Colebourne (2008-03-17):
+ # For everyone's info, I saw an IATA time zone change for [Syria] for
+-# this month (March 2008) in the last day or so...This is the data IATA
+-# are now using:
++# this month (March 2008) in the last day or so....
+ # Country Time Standard --- DST Start --- --- DST End --- DST
+ # Name Zone Variation Time Date Time Date
+ # Variation
+@@ -2710,82 +2948,120 @@
+ Rule Syria 2009 max - Oct lastFri 0:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
++Zone Asia/Damascus 2:25:12 - LMT 1920 # Dimashq
+ 2:00 Syria EE%sT
+
+ # Tajikistan
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dushanbe 4:35:12 - LMT 1924 May 2
+- 5:00 - DUST 1930 Jun 21 # Dushanbe Time
+- 6:00 RussiaAsia DUS%sT 1991 Mar 31 2:00s
+- 5:00 1:00 DUSST 1991 Sep 9 2:00s
+- 5:00 - TJT # Tajikistan Time
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00s
++ 5:00 1:00 +05/+06 1991 Sep 9 2:00s
++ 5:00 - +05
+
+ # Thailand
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Bangkok 6:42:04 - LMT 1880
+ 6:42:04 - BMT 1920 Apr # Bangkok Mean Time
+ 7:00 - ICT
++Link Asia/Bangkok Asia/Phnom_Penh # Cambodia
++Link Asia/Bangkok Asia/Vientiane # Laos
+
+ # Turkmenistan
+ # From Shanks & Pottenger.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Ashgabat 3:53:32 - LMT 1924 May 2 # or Ashkhabad
+- 4:00 - ASHT 1930 Jun 21 # Ashkhabad Time
+- 5:00 RussiaAsia ASH%sT 1991 Mar 31 2:00
+- 4:00 RussiaAsia ASH%sT 1991 Oct 27 # independence
+- 4:00 RussiaAsia TM%sT 1992 Jan 19 2:00
+- 5:00 - TMT
++ 4:00 - +04 1930 Jun 21
++ 5:00 RussiaAsia +05/+06 1991 Mar 31 2:00
++ 4:00 RussiaAsia +04/+05 1992 Jan 19 2:00
++ 5:00 - +05
+
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dubai 3:41:12 - LMT 1920
+ 4:00 - GST
++Link Asia/Dubai Asia/Muscat # Oman
+
+ # Uzbekistan
++# Byalokoz 1919 says Uzbekistan was 4:27:53.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Samarkand 4:27:12 - LMT 1924 May 2
+- 4:00 - SAMT 1930 Jun 21 # Samarkand Time
+- 5:00 - SAMT 1981 Apr 1
+- 5:00 1:00 SAMST 1981 Oct 1
+- 6:00 - TAST 1982 Apr 1 # Tashkent Time
+- 5:00 RussiaAsia SAM%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++Zone Asia/Samarkand 4:27:53 - LMT 1924 May 2
++ 4:00 - +04 1930 Jun 21
++ 5:00 - +05 1981 Apr 1
++ 5:00 1:00 +06 1981 Oct 1
++ 6:00 - +06 1982 Apr 1
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+ # Milne says Tashkent was 4:37:10.8; round to nearest.
+ Zone Asia/Tashkent 4:37:11 - LMT 1924 May 2
+- 5:00 - TAST 1930 Jun 21 # Tashkent Time
+- 6:00 RussiaAsia TAS%sT 1991 Mar 31 2:00
+- 5:00 RussiaAsia TAS%sT 1991 Sep 1 # independence
+- 5:00 RussiaAsia UZ%sT 1992
+- 5:00 - UZT
++ 5:00 - +05 1930 Jun 21
++ 6:00 RussiaAsia +06/+07 1991 Mar 31 2:00
++ 5:00 RussiaAsia +05/+06 1992
++ 5:00 - +05
+
+ # Vietnam
+
+-# From Paul Eggert (2013-02-21):
++# From Paul Eggert (2014-10-04):
+ # Milne gives 7:16:56 for the meridian of Saigon in 1899, as being
+ # used in Lower Laos, Cambodia, and Annam. But this is quite a ways
+ # from Saigon's location. For now, ignore this and stick with Shanks
+-# and Pottenger.
++# and Pottenger for LMT before 1906.
+
+ # From Arthur David Olson (2008-03-18):
+ # The English-language name of Vietnam's most populous city is "Ho Chi Minh
+ # City"; use Ho_Chi_Minh below to avoid a name of more than 14 characters.
+
+-# From Shanks & Pottenger:
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jun 9
+- 7:06:20 - SMT 1911 Mar 11 0:01 # Saigon MT?
+- 7:00 - ICT 1912 May
+- 8:00 - ICT 1931 May
++# From Paul Eggert (2014-10-21) after a heads-up from Trần Ngọc Quân:
++# Trần Tiến Bình's authoritative book "Lịch Việt Nam: thế kỷ XX-XXI (1901-2100)"
++# (Nhà xuất bản Văn Hoá - Thông Tin, Hanoi, 2005), pp 49-50,
++# is quoted verbatim in:
++# http://www.thoigian.com.vn/?mPage=P80D01
++# is translated by Brian Inglis in:
++# http://mm.icann.org/pipermail/tz/2014-October/021654.html
++# and is the basis for the information below.
++#
++# The 1906 transition was effective July 1 and standardized Indochina to
++# Phù Liễn Observatory, legally 104 deg. 17'17" east of Paris.
++# It's unclear whether this meant legal Paris Mean Time (00:09:21) or
++# the Paris Meridian (2 deg. 20'14.03" E); the former yields 07:06:30.1333...
++# and the latter 07:06:29.333... so either way it rounds to 07:06:30,
++# which is used below even though the modern-day Phù Liễn Observatory
++# is closer to 07:06:31. Abbreviate Phù Liễn Mean Time as PLMT.
++#
++# The following transitions occurred in Indochina in general (before 1954)
++# and in South Vietnam in particular (after 1954):
++# To 07:00 on 1911-05-01.
++# To 08:00 on 1942-12-31 at 23:00.
++# To 09:00 in 1945-03-14 at 23:00.
++# To 07:00 on 1945-09-02 in Vietnam.
++# To 08:00 on 1947-04-01 in French-controlled Indochina.
++# To 07:00 on 1955-07-01 in South Vietnam.
++# To 08:00 on 1959-12-31 at 23:00 in South Vietnam.
++# To 07:00 on 1975-06-13 in South Vietnam.
++#
++# Trần cites the following sources; it's unclear which supplied the info above.
++#
++# Hoàng Xuân Hãn: "Lịch và lịch Việt Nam". Tập san Khoa học Xã hội,
++# No. 9, Paris, February 1982.
++#
++# Lê Thành Lân: "Lịch và niên biểu lịch sử hai mươi thế kỷ (0001-2010)",
++# NXB Thống kê, Hanoi, 2000.
++#
++# Lê Thành Lân: "Lịch hai thế kỷ (1802-2010) và các lịch vĩnh cửu",
++# NXB Thuận Hoá, Huế, 1995.
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Asia/Ho_Chi_Minh 7:06:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Jul 1
++ 7:00 - ICT 1959 Dec 31 23:00
++ 8:00 - IDT 1975 Jun 13
+ 7:00 - ICT
+
+ # Yemen
+-
+-# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
+-# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
+-
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Aden 2:59:54 - LMT 1950
+- 3:00 - AST
++# See Asia/Riyadh.
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -60,6 +60,14 @@
+ # Hamilton is the largest, but there is also a Hamilton in Victoria,
+ # so use Lindeman.
+ #
++# From J William Piggott (2016-02-20):
++# There is no location named Holiday Islands in Queensland Australia; holiday
++# islands is a colloquial term used globally. Hayman and Lindeman are at the
++# north and south extremes of the Whitsunday Islands archipelago, and
++# Hamilton is in between; it is reasonable to believe that this time zone
++# applies to all of the Whitsundays.
++# http://www.australia.gov.au/about-australia/australian-story/austn-islands
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule AQ 1971 only - Oct lastSun 2:00s 1:00 D
+ Rule AQ 1972 only - Feb lastSun 2:00s 0 S
+@@ -101,7 +109,7 @@
+ # Tasmania
+ #
+ # From Paul Eggert (2005-08-16):
+-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
++# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml
+ # says King Island didn't observe DST from WWII until late 1971.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -126,12 +134,12 @@
+ Rule AT 2008 max - Apr Sun>=1 2:00s 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Australia/Hobart 9:49:16 - LMT 1895 Sep
+- 10:00 - AEST 1916 Oct 1 2:00
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1967
+ 10:00 AT AE%sT
+ Zone Australia/Currie 9:35:28 - LMT 1895 Sep
+- 10:00 - AEST 1916 Oct 1 2:00
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+ 10:00 Aus AE%sT 1971 Jul
+ 10:00 AT AE%sT
+@@ -220,8 +228,8 @@
+ # Permanent occupation (scientific station) 1911-1915 and since 25 March 1948;
+ # sealing and penguin oil station operated Nov 1899 to Apr 1919. See the
+ # Tasmania Parks & Wildlife Service history of sealing at Macquarie Island
+-# <http://www.parks.tas.gov.au/index.aspx?base=1828>
+-# <http://www.parks.tas.gov.au/index.aspx?base=1831>.
++# http://www.parks.tas.gov.au/index.aspx?base=1828
++# http://www.parks.tas.gov.au/index.aspx?base=1831
+ # Guess that it was like Australia/Hobart while inhabited before 2010.
+ #
+ # From Steffen Thorsen (2010-03-10):
+@@ -235,13 +243,13 @@
+ # will produce a binary file with an [A]EST-type as the first 32-bit type;
+ # this is required for correct handling of times before 1916 by
+ # pre-2013 versions of localtime.
+-Zone Antarctica/Macquarie 0 - zzz 1899 Nov
+- 10:00 - AEST 1916 Oct 1 2:00
++Zone Antarctica/Macquarie 0 - -00 1899 Nov
++ 10:00 - AEST 1916 Oct 1 2:00
+ 10:00 1:00 AEDT 1917 Feb
+- 10:00 Aus AE%sT 1919 Apr 1 0:00s
+- 0 - zzz 1948 Mar 25
++ 10:00 Aus AE%sT 1919 Apr 1 0:00s
++ 0 - -00 1948 Mar 25
+ 10:00 Aus AE%sT 1967
+- 10:00 AT AE%sT 2010 Apr 4 3:00
++ 10:00 AT AE%sT 2010 Apr 4 3:00
+ 11:00 - MIST # Macquarie I Standard Time
+
+ # Christmas
+@@ -331,31 +339,51 @@
+ # Fiji will end DST on 2014-01-19 02:00:
+ # http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVINGS-TO-END-THIS-MONTH-%281%29.aspx
+
+-# From Paul Eggert (2014-01-10):
+-# For now, guess that Fiji springs forward the Sunday before the fourth
+-# Monday in October, and springs back the penultimate Sunday in January.
+-# This is ad hoc, but matches recent practice.
++# From Ken Rylander (2014-10-20):
++# DST will start Nov. 2 this year.
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-SUNDAY,-NOVEMBER-2ND.aspx
++
++# From a government order dated 2015-08-26 and published as Legal Notice No. 77
++# in the Government of Fiji Gazette Supplement No. 24 (2015-08-28),
++# via Ken Rylander (2015-09-02):
++# the daylight saving period is 1 hour in advance of the standard time
++# commencing at 2.00 am on Sunday 1st November, 2015 and ending at
++# 3.00 am on Sunday 17th January, 2016.
++
++# From Raymond Kumar (2016-10-04):
++# http://www.fiji.gov.fj/Media-Center/Press-Releases/DAYLIGHT-SAVING-STARTS-ON-6th-NOVEMBER,-2016.aspx
++# "Fiji's daylight savings will begin on Sunday, 6 November 2016, when
++# clocks go forward an hour at 2am to 3am.... Daylight Saving will
++# end at 3.00am on Sunday 15th January 2017."
++
++# From Paul Eggert (2016-10-03):
++# For now, guess DST from 02:00 the first Sunday in November to
++# 03:00 the third Sunday in January. Although ad hoc, it matches
++# transitions since late 2014 and seems more likely to match future
++# practice than guessing no DST.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Fiji 1998 1999 - Nov Sun>=1 2:00 1:00 S
+ Rule Fiji 1999 2000 - Feb lastSun 3:00 0 -
+ Rule Fiji 2009 only - Nov 29 2:00 1:00 S
+ Rule Fiji 2010 only - Mar lastSun 3:00 0 -
+-Rule Fiji 2010 max - Oct Sun>=21 2:00 1:00 S
++Rule Fiji 2010 2013 - Oct Sun>=21 2:00 1:00 S
+ Rule Fiji 2011 only - Mar Sun>=1 3:00 0 -
+ Rule Fiji 2012 2013 - Jan Sun>=18 3:00 0 -
+-Rule Fiji 2014 max - Jan Sun>=18 2:00 0 -
++Rule Fiji 2014 only - Jan Sun>=18 2:00 0 -
++Rule Fiji 2014 max - Nov Sun>=1 2:00 1:00 S
++Rule Fiji 2015 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
++Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji FJ%sT # Fiji Time
+
+ # French Polynesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
++Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+ -9:00 - GAMT # Gambier Time
+ Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+ -9:30 - MART # Marquesas Time
+-Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
++Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
+ -10:00 - TAHT # Tahiti Time
+ # Clipperton (near North America) is administered from French Polynesia;
+ # it is uninhabited.
+@@ -363,14 +391,15 @@
+ # Guam
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Guam -14:21:00 - LMT 1844 Dec 31
+- 9:39:00 - LMT 1901 # Agana
+- 10:00 - GST 2000 Dec 23 # Guam
++ 9:39:00 - LMT 1901 # Agana
++ 10:00 - GST 2000 Dec 23 # Guam
+ 10:00 - ChST # Chamorro Standard Time
++Link Pacific/Guam Pacific/Saipan # N Mariana Is
+
+ # Kiribati
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+- 12:00 - GILT # Gilbert Is Time
++Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
++ 12:00 - GILT # Gilbert Is Time
+ Zone Pacific/Enderbury -11:24:20 - LMT 1901
+ -12:00 - PHOT 1979 Oct # Phoenix Is Time
+ -11:00 - PHOT 1995
+@@ -381,12 +410,7 @@
+ 14:00 - LINT
+
+ # N Mariana Is
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
+- 9:43:00 - LMT 1901
+- 9:00 - MPT 1969 Oct # N Mariana Is Time
+- 10:00 - MPT 2000 Dec 23
+- 10:00 - ChST # Chamorro Standard Time
++# See Pacific/Guam.
+
+ # Marshall Is
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -395,24 +419,24 @@
+ 12:00 - MHT
+ Zone Pacific/Kwajalein 11:09:20 - LMT 1901
+ 11:00 - MHT 1969 Oct
+- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
++ -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
+ 12:00 - MHT
+
+ # Micronesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Chuuk 10:07:08 - LMT 1901
+- 10:00 - CHUT # Chuuk Time
+-Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
+- 11:00 - PONT # Pohnpei Time
++ 10:00 - CHUT # Chuuk Time
++Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
++ 11:00 - PONT # Pohnpei Time
+ Zone Pacific/Kosrae 10:51:56 - LMT 1901
+- 11:00 - KOST 1969 Oct # Kosrae Time
++ 11:00 - KOST 1969 Oct # Kosrae Time
+ 12:00 - KOST 1999
+ 11:00 - KOST
+
+ # Nauru
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
+- 11:30 - NRT 1942 Mar 15 # Nauru Time
++Zone Pacific/Nauru 11:07:40 - LMT 1921 Jan 15 # Uaobe
++ 11:30 - NRT 1942 Mar 15 # Nauru Time
+ 9:00 - JST 1944 Aug 15
+ 11:30 - NRT 1979 May
+ 12:00 - NRT
+@@ -489,8 +513,8 @@
+ Rule Cook 1979 1991 - Mar Sun>=1 0:00 0 -
+ Rule Cook 1979 1990 - Oct lastSun 0:00 0:30 HS
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
+- -10:30 - CKT 1978 Nov 12 # Cook Is Time
++Zone Pacific/Rarotonga -10:39:04 - LMT 1901 # Avarua
++ -10:30 - CKT 1978 Nov 12 # Cook Is Time
+ -10:00 Cook CK%sT
+
+ ###############################################################################
+@@ -498,40 +522,68 @@
+
+ # Niue
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
+- -11:20 - NUT 1951 # Niue Time
+- -11:30 - NUT 1978 Oct 1
++Zone Pacific/Niue -11:19:40 - LMT 1901 # Alofi
++ -11:20 - NUT 1951 # Niue Time
++ -11:30 - NUT 1978 Oct 1
+ -11:00 - NUT
+
+ # Norfolk
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
+- 11:12 - NMT 1951 # Norfolk Mean Time
+- 11:30 - NFT # Norfolk Time
++Zone Pacific/Norfolk 11:11:52 - LMT 1901 # Kingston
++ 11:12 - NMT 1951 # Norfolk Mean Time
++ 11:30 - NFT 1974 Oct 27 02:00 # Norfolk T.
++ 11:30 1:00 NFST 1975 Mar 2 02:00
++ 11:30 - NFT 2015 Oct 4 02:00
++ 11:00 - NFT
+
+ # Palau (Belau)
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
++Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
+ 9:00 - PWT # Palau Time
+
+ # Papua New Guinea
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Port_Moresby 9:48:40 - LMT 1880
+- 9:48:32 - PMMT 1895 # Port Moresby Mean Time
+- 10:00 - PGT # Papua New Guinea Time
++ 9:48:32 - PMMT 1895 # Port Moresby Mean Time
++ 10:00 - PGT # Papua New Guinea Time
++#
++# From Paul Eggert (2014-10-13):
++# Base the Bougainville entry on the Arawa-Kieta region, which appears to have
++# the most people even though it was devastated in the Bougainville Civil War.
++#
++# Although Shanks gives 1942-03-15 / 1943-11-01 for UT +09, these dates
++# are apparently rough guesswork from the starts of military campaigns.
++# The World War II entries below are instead based on Arawa-Kieta.
++# The Japanese occupied Kieta in July 1942,
++# according to the Pacific War Online Encyclopedia
++# http://pwencycl.kgbudge.com/B/o/Bougainville.htm
++# and seem to have controlled it until their 1945-08-21 surrender.
++#
++# The Autonomous Region of Bougainville switched from UT +10 to +11
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time";
++# abbreviate this as BST. See:
++# http://www.bougainville24.com/bougainville-issues/bougainville-gets-own-timezone/
++#
++Zone Pacific/Bougainville 10:22:16 - LMT 1880
++ 9:48:32 - PMMT 1895
++ 10:00 - PGT 1942 Jul
++ 9:00 - JST 1945 Aug 21
++ 10:00 - PGT 2014 Dec 28 2:00
++ 11:00 - BST
+
+ # Pitcairn
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+- -8:30 - PNT 1998 Apr 27 00:00
++Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
++ -8:30 - PNT 1998 Apr 27 0:00
+ -8:00 - PST # Pitcairn Standard Time
+
+ # American Samoa
+ Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
+ -11:22:48 - LMT 1911
+- -11:00 - NST 1967 Apr # N=Nome
+- -11:00 - BST 1983 Nov 30 # B=Bering
+- -11:00 - SST # S=Samoa
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+
+ # Samoa (formerly and also known as Western Samoa)
+
+@@ -574,7 +626,7 @@
+ # From Paul Eggert (2014-06-27):
+ # The International Date Line Act 2011
+ # http://www.parliament.gov.ws/images/ACTS/International_Date_Line_Act__2011_-_Eng.pdf
+-# changed Samoa from UTC-11 to UTC+13, effective "12 o'clock midnight, on
++# changed Samoa from UT -11 to +13, effective "12 o'clock midnight, on
+ # Thursday 29th December 2011". The International Date Line was adjusted
+ # accordingly.
+
+@@ -617,7 +669,7 @@
+ # Solomon Is
+ # excludes Bougainville, for which see Papua New Guinea
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
++Zone Pacific/Guadalcanal 10:39:48 - LMT 1912 Oct # Honiara
+ 11:00 - SBT # Solomon Is Time
+
+ # Tokelau Is
+@@ -641,7 +693,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+- -11:00 - TKT 2011 Dec 30 # Tokelau Time
++ -11:00 - TKT 2011 Dec 30 # Tokelau Time
+ 13:00 - TKT
+
+ # Tonga
+@@ -650,11 +702,13 @@
+ Rule Tonga 2000 only - Mar 19 2:00s 0 -
+ Rule Tonga 2000 2001 - Nov Sun>=1 2:00 1:00 S
+ Rule Tonga 2001 2002 - Jan lastSun 2:00 0 -
++Rule Tonga 2016 max - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 max - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+- 12:20 - TOT 1941 # Tonga Time
+- 13:00 - TOT 1999
+- 13:00 Tonga TO%sT
++ 12:20 - +1220 1941
++ 13:00 - +13 1999
++ 13:00 Tonga +13/+14
+
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -669,7 +723,7 @@
+ # 1886-1891; Baker was similar but exact dates are not known.
+ # Inhabited by civilians 1935-1942; U.S. military bases 1943-1944;
+ # uninhabited thereafter.
+-# Howland observed Hawaii Standard Time (UT-10:30) in 1937;
++# Howland observed Hawaii Standard Time (UT -10:30) in 1937;
+ # see page 206 of Elgen M. Long and Marie K. Long,
+ # Amelia Earhart: the Mystery Solved, Simon & Schuster (2000).
+ # So most likely Howland and Baker observed Hawaii Time from 1935
+@@ -701,8 +755,8 @@
+ # time from Operation Newsreel (Hardtack I/Teak shot, 1958-08-01) to the last
+ # Operation Fishbowl shot (Tightrope, 1962-11-04).... [See] Herman Hoerlin,
+ # "The United States High-Altitude Test Experience: A Review Emphasizing the
+-# Impact on the Environment", Los Alamos LA-6405, Oct 1976
+-# <http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf>.
++# Impact on the Environment", Los Alamos LA-6405, Oct 1976.
++# http://www.fas.org/sgp/othergov/doe/lanl/docs1/00322994.pdf
+ # See the table on page 4 where he lists GMT and local times for the tests; a
+ # footnote for the JI tests reads that local time is "JI time = Hawaii Time
+ # Minus One Hour".
+@@ -713,23 +767,7 @@
+ # uninhabited
+
+ # Midway
+-#
+-# From Mark Brader (2005-01-23):
+-# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
+-# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
+-# reproduced a Pan American Airways timeables from 1936, for their weekly
+-# "Orient Express" flights between San Francisco and Manila, and connecting
+-# flights to Chicago and the US East Coast. As it uses some time zone
+-# designations that I've never seen before:....
+-# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
+-# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
+-#
+-Zone Pacific/Midway -11:49:28 - LMT 1901
+- -11:00 - NST 1956 Jun 3
+- -11:00 1:00 NDT 1956 Sep 2
+- -11:00 - NST 1967 Apr # N=Nome
+- -11:00 - BST 1983 Nov 30 # B=Bering
+- -11:00 - SST # S=Samoa
++# See Pacific/Pago_Pago.
+
+ # Palmyra
+ # uninhabited since World War II; was probably like Pacific/Kiritimati
+@@ -749,7 +787,7 @@
+ Rule Vanuatu 1992 1993 - Jan Sun>=23 0:00 0 -
+ Rule Vanuatu 1992 only - Oct Sun>=23 0:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
++Zone Pacific/Efate 11:13:16 - LMT 1912 Jan 13 # Vila
+ 11:00 Vanuatu VU%sT # Vanuatu Time
+
+ # Wallis and Futuna
+@@ -761,31 +799,32 @@
+
+ # NOTES
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2013-02-21):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Another source occasionally used is Edward W. Whitman, World Time Differences,
+ # Whitman Publishing Co, 2 Niagara Av, Ealing, London (undated), which
+ # I found in the UCLA library.
+ #
+ # For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -802,6 +841,7 @@
+ # 10:00 AEST AEDT Eastern Australia
+ # 10:00 ChST Chamorro
+ # 10:30 LHST LHDT Lord Howe*
++# 11:00 BST Bougainville*
+ # 11:30 NZMT NZST New Zealand through 1945
+ # 12:00 NZST NZDT New Zealand 1946-present
+ # 12:15 CHAST Chatham through 1945*
+@@ -834,12 +874,12 @@
+
+ # From Paul Eggert (2005-12-08):
+ # Implementation Dates of Daylight Saving Time within Australia
+-# <http://www.bom.gov.au/climate/averages/tables/dst_times.shtml>
++# http://www.bom.gov.au/climate/averages/tables/dst_times.shtml
+ # summarizes daylight saving issues in Australia.
+
+ # From Arthur David Olson (2005-12-12):
+ # Lawlink NSW:Daylight Saving in New South Wales
+-# <http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving>
++# http://www.lawlink.nsw.gov.au/lawlink/Corporate/ll_agdinfo.nsf/pages/community_relations_daylight_saving
+ # covers New South Wales in particular.
+
+ # From John Mackin (1991-03-06):
+@@ -976,13 +1016,13 @@
+ #
+ # NSW (including LHI and Broken Hill):
+ # Standard Time Act 1987 (updated 1995-04-04)
+-# <http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html>
++# http://www.austlii.edu.au/au/legis/nsw/consol_act/sta1987137/index.html
+ # ACT
+ # Standard Time and Summer Time Act 1972
+-# <http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html>
++# http://www.austlii.edu.au/au/legis/act/consol_act/stasta1972279/index.html
+ # SA
+ # Standard Time Act, 1898
+-# <http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html>
++# http://www.austlii.edu.au/au/legis/sa/consol_act/sta1898137/index.html
+
+ # From David Grosz (2005-06-13):
+ # It was announced last week that Daylight Saving would be extended by
+@@ -1048,7 +1088,7 @@
+ # it matches what was used in the past.
+
+ # The Australian Bureau of Meteorology FAQ
+-# <http://www.bom.gov.au/faq/faqgen.htm>
++# http://www.bom.gov.au/faq/faqgen.htm
+ # (1999-09-27) writes that Giles Meteorological Station uses
+ # South Australian time even though it's located in Western Australia.
+
+@@ -1092,7 +1132,7 @@
+ # From Christopher Hunt (2006-11-21), after an advance warning
+ # from Jesper Nørgaard Welen (2006-11-01):
+ # WA are trialing DST for three years.
+-# <http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf>
++# http://www.parliament.wa.gov.au/parliament/bills.nsf/9A1B183144403DA54825721200088DF1/$File/Bill175-1B.pdf
+
+ # From Rives McDow (2002-04-09):
+ # The most interesting region I have found consists of three towns on the
+@@ -1106,7 +1146,7 @@
+ # From Paul Eggert (2002-04-09):
+ # This is confirmed by the section entitled
+ # "What's the deal with time zones???" in
+-# <http://www.earthsci.unimelb.edu.au/~awatkins/null.html>.
++# http://www.earthsci.unimelb.edu.au/~awatkins/null.html
+ #
+ # From Alex Livingston (2006-12-07):
+ # ... it was just on four years ago that I drove along the Eyre Highway,
+@@ -1262,33 +1302,32 @@
+
+ # From Eric Ulevik (1999-05-26):
+ # DST will start in NSW on the last Sunday of August, rather than the usual
+-# October in 2000. [See: Matthew Moore,
+-# Two months more daylight saving
+-# Sydney Morning Herald (1999-05-26)
+-# <http://www.smh.com.au/news/9905/26/pageone/pageone4.html>]
++# October in 2000. See: Matthew Moore,
++# Two months more daylight saving, Sydney Morning Herald (1999-05-26).
++# http://www.smh.com.au/news/9905/26/pageone/pageone4.html
+
+ # From Paul Eggert (1999-09-27):
+ # See the following official NSW source:
+ # Daylight Saving in New South Wales.
+-# <http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ>
++# http://dir.gis.nsw.gov.au/cgi-bin/genobject/document/other/daylightsaving/tigGmZ
+ #
+ # Narrabri Shire (NSW) council has announced it will ignore the extension of
+ # daylight saving next year. See:
+ # Narrabri Council to ignore daylight saving
+-# <http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm>
++# http://abc.net.au/news/regionals/neweng/monthly/regeng-22jul1999-1.htm
+ # (1999-07-22). For now, we'll wait to see if this really happens.
+ #
+ # Victoria will following NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+-# <http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm>
++# http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+ # However, South Australia rejected the DST request. See:
+ # South Australia rejects Olympics daylight savings request (1999-07-19)
+-# <http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm>
++# http://abc.net.au/news/olympics/1999/07/item19990719151754_1.htm
+ #
+ # Queensland also will not observe DST for the Olympics. See:
+ # Qld says no to daylight savings for Olympics
+-# <http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm>
++# http://abc.net.au/news/olympics/1999/06/item19990601114608_1.htm
+ # (1999-06-01), which quotes Queensland Premier Peter Beattie as saying
+ # "Look you've got to remember in my family when this came up last time
+ # I voted for it, my wife voted against it and she said to me it's all very
+@@ -1298,7 +1337,7 @@
+ #
+ # Broken Hill will stick with South Australian time in 2000. See:
+ # Broken Hill to be behind the times (1999-07-21)
+-# <http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm>
++# http://abc.net.au/news/regionals/brokenh/monthly/regbrok-21jul1999-6.htm
+
+ # IATA SSIM (1998-09) says that the spring 2000 change for Australian
+ # Capital Territory, New South Wales except Lord Howe Island and Broken
+@@ -1434,15 +1473,15 @@
+
+ # From Paul Eggert (2014-07-14):
+ # Chatham Island time was formally standardized on 1957-01-01 by
+-# New Zealand's Standard Time Amendment Act 1956 (1956-10-26)
+-# <http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf>.
++# New Zealand's Standard Time Amendment Act 1956 (1956-10-26).
++# http://www.austlii.edu.au/nz/legis/hist_act/staa19561956n100244.pdf
+ # According to Google Books snippet view, a speaker in the New Zealand
+ # parliamentary debates in 1956 said "Clause 78 makes provision for standard
+ # time in the Chatham Islands. The time there is 45 minutes in advance of New
+ # Zealand time. I understand that is the time they keep locally, anyhow."
+ # For now, assume this practice goes back to the introduction of standard time
+ # in New Zealand, as this would make Chatham Islands time almost exactly match
+-# LMT back when New Zealand was at UTC+11:30; also, assume Chatham Islands did
++# LMT back when New Zealand was at UT +11:30; also, assume Chatham Islands did
+ # not observe New Zealand's prewar DST.
+
+ ###############################################################################
+@@ -1498,7 +1537,7 @@
+ # For now, we assume the Ladrones switched at the same time as the Philippines;
+ # see Asia/Manila.
+
+-# US Public Law 106-564 (2000-12-23) made UTC+10 the official standard time,
++# US Public Law 106-564 (2000-12-23) made UT +10 the official standard time,
+ # under the name "Chamorro Standard Time". There is no official abbreviation,
+ # but Congressman Robert A. Underwood, author of the bill that became law,
+ # wrote in a press release (2000-12-27) that he will seek the use of "ChST".
+@@ -1510,15 +1549,15 @@
+ # "I am certain, having lived there for the past decade, that 'Truk'
+ # (now properly known as Chuuk) ... is in the time zone GMT+10."
+ #
+-# Shanks & Pottenger write that Truk switched from UTC+10 to UTC+11
++# Shanks & Pottenger write that Truk switched from UT +10 to +11
+ # on 1978-10-01; ignore this for now.
+
+ # From Paul Eggert (1999-10-29):
+ # The Federated States of Micronesia Visitors Board writes in
+ # The Federated States of Micronesia - Visitor Information (1999-01-26)
+-# <http://www.fsmgov.org/info/clocks.html>
+-# that Truk and Yap are UTC+10, and Ponape and Kosrae are UTC+11.
+-# We don't know when Kosrae switched from UTC+12; assume January 1 for now.
++# http://www.fsmgov.org/info/clocks.html
++# that Truk and Yap are UT +10, and Ponape and Kosrae are +11.
++# We don't know when Kosrae switched from +12; assume January 1 for now.
+
+
+ # Midway
+@@ -1537,6 +1576,20 @@
+ # started DST on June 3. Possibly DST was observed other years
+ # in Midway, but we have no record of it.
+
++# Norfolk
++
++# From Alexander Krivenyshev (2015-09-23):
++# Norfolk Island will change ... from +1130 to +1100:
++# https://www.comlaw.gov.au/Details/F2015L01483/Explanatory%20Statement/Text
++# ... at 12.30 am (by legal time in New South Wales) on 4 October 2015.
++# http://www.norfolkisland.gov.nf/nia/MediaRelease/Media%20Release%20Norfolk%20Island%20Standard%20Time%20Change.pdf
++
++# From Paul Eggert (2015-09-23):
++# Transitions before 2015 are from timeanddate.com, which consulted
++# the Norfolk Island Museum and the Australian Bureau of Meteorology's
++# Norfolk Island station, and found no record of Norfolk observing DST
++# other than in 1974/5. See:
++# http://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1570,11 +1623,11 @@
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
+
+-# Although Shanks & Pottenger says they both switched to UTC-11:30
+-# in 1911, and to UTC-11 in 1950. many earlier sources give UTC-11
++# Although Shanks & Pottenger says they both switched to UT -11:30
++# in 1911, and to -11 in 1950. many earlier sources give -11
+ # for American Samoa, e.g., the US National Bureau of Standards
+ # circular "Standard Time Throughout the World", 1932.
+-# Assume American Samoa switched to UTC-11 in 1911, not 1950,
++# Assume American Samoa switched to -11 in 1911, not 1950,
+ # and that after 1950 they agreed until (western) Samoa skipped a
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+@@ -1587,9 +1640,9 @@
+ # Since Kiribati has moved the Date Line it's not clear what Tonga will do.
+
+ # Don Mundell writes in the 1997-02-20 Tonga Chronicle
+-# How Tonga became 'The Land where Time Begins'
+-# <http://www.tongatapu.net.to/tonga/homeland/timebegins.htm>:
+-
++# How Tonga became 'The Land where Time Begins':
++# http://www.tongatapu.net.to/tonga/homeland/timebegins.htm
++#
+ # Until 1941 Tonga maintained a standard time 50 minutes ahead of NZST
+ # 12 hours and 20 minutes ahead of GMT. When New Zealand adjusted its
+ # standard time in 1940s, Tonga had the choice of subtracting from its
+@@ -1661,9 +1714,17 @@
+ # of January the standard time in the Kingdom shall be moved backward by one
+ # hour to 1:00am.
+
+-# From Pulu 'Anau (2002-11-05):
++# From Pulu ʻAnau (2002-11-05):
+ # The law was for 3 years, supposedly to get renewed. It wasn't.
+
++# From Pulu ʻAnau (2016-10-27):
++# http://mic.gov.to/news-today/press-releases/6375-daylight-saving-set-to-run-from-6-november-2016-to-15-january-2017
++# Cannot find anyone who knows the rules, has seen the duration or has seen
++# the cabinet decision, but it appears we are following Fiji's rule set.
++#
++# From Tim Parenti (2016-10-26):
++# Assume Tonga will observe DST from the first Sunday in November at 02:00
++# through the third Sunday in January at 03:00, like Fiji, for now.
+
+ # Wake
+
+@@ -1723,6 +1784,6 @@
+ # (2005-03-20):
+ #
+ # The American Practical Navigator (2002)
+-# <http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187>
++# http://pollux.nss.nima.mil/pubs/pubs_j_apn_sections.html?rid=187
+ # talks only about the 180-degree meridian with respect to ships in
+ # international waters; it ignores the international date line.
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -4,7 +4,8 @@
+ # This file provides links between current names for time zones
+ # and their old names. Many names changed in late 1993.
+
+-Link Africa/Asmara Africa/Asmera
++# Link TARGET LINK-NAME
++Link Africa/Nairobi Africa/Asmera
+ Link Africa/Abidjan Africa/Timbuktu
+ Link America/Argentina/Catamarca America/Argentina/ComodRivadavia
+ Link America/Adak America/Atka
+@@ -19,8 +20,10 @@
+ Link America/Indiana/Knox America/Knox_IN
+ Link America/Kentucky/Louisville America/Louisville
+ Link America/Argentina/Mendoza America/Mendoza
++Link America/Toronto America/Montreal
+ Link America/Rio_Branco America/Porto_Acre
+ Link America/Argentina/Cordoba America/Rosario
++Link America/Tijuana America/Santa_Isabel
+ Link America/Denver America/Shiprock
+ Link America/Port_of_Spain America/Virgin
+ Link Pacific/Auckland Antarctica/South_Pole
+@@ -33,6 +36,7 @@
+ Link Asia/Urumqi Asia/Kashgar
+ Link Asia/Kathmandu Asia/Katmandu
+ Link Asia/Macau Asia/Macao
++Link Asia/Yangon Asia/Rangoon
+ Link Asia/Ho_Chi_Minh Asia/Saigon
+ Link Asia/Jerusalem Asia/Tel_Aviv
+ Link Asia/Thimphu Asia/Thimbu
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -0,0 +1,677 @@
++# Zones that go back beyond the scope of the tz database
++
++# This file is in the public domain.
++
++# This file is by no means authoritative; if you think you know
++# better, go ahead and edit it (and please send any changes to
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
++
++
++# From Paul Eggert (2014-10-31):
++
++# This file contains data outside the normal scope of the tz database,
++# in that its zones do not differ from normal tz zones after 1970.
++# Links in this file point to zones in this file, superseding links in
++# the file 'backward'.
++
++# Although zones in this file may be of some use for analyzing
++# pre-1970 time stamps, they are less reliable, cover only a tiny
++# sliver of the pre-1970 era, and cannot feasibly be improved to cover
++# most of the era. Because the zones are out of normal scope for the
++# database, less effort is put into maintaining this file. Many of
++# the zones were formerly in other source files, but were removed or
++# replaced by links as their data entries were questionable and/or they
++# differed from other zones only in pre-1970 time stamps.
++
++# Unless otherwise specified, the source for data through 1990 is:
++# Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
++# San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
++
++# This file is not intended to be compiled standalone, as it
++# assumes rules from other files. In the tz distribution, use
++# 'make PACKRATDATA=backzone zones' to compile and install this file.
++
++# Zones are sorted by zone name. Each zone is preceded by the
++# name of the country that the zone is in, along with any other
++# commentary and rules associated with the entry.
++#
++# As explained in the zic man page, the zone columns are:
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++
++# Ethiopia
++# From Paul Eggert (2014-07-31):
++# Like the Swahili of Kenya and Tanzania, many Ethiopians keep a
++# 12-hour clock starting at our 06:00, so their "8 o'clock" is our
++# 02:00 or 14:00. Keep this in mind when you ask the time in Amharic.
++#
++# Shanks & Pottenger write that Ethiopia had six narrowly-spaced time
++# zones between 1870 and 1890, that they merged to 38E50 (2:35:20) in
++# 1890, and that they switched to 3:00 on 1936-05-05. Perhaps 38E50
++# was for Adis Dera. Quite likely the Shanks data entries are wrong
++# anyway.
++Zone Africa/Addis_Ababa 2:34:48 - LMT 1870
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++
++# Eritrea
++Zone Africa/Asmara 2:35:32 - LMT 1870
++ 2:35:32 - AMT 1890 # Asmara Mean Time
++ 2:35:20 - ADMT 1936 May 5 # Adis Dera MT
++ 3:00 - EAT
++Link Africa/Asmara Africa/Asmera
++
++# Mali (southern)
++Zone Africa/Bamako -0:32:00 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Jun 20
++ 0:00 - GMT
++
++# Central African Republic
++Zone Africa/Bangui 1:14:20 - LMT 1912
++ 1:00 - WAT
++
++# Gambia
++Zone Africa/Banjul -1:06:36 - LMT 1912
++ -1:06:36 - BMT 1935 # Banjul Mean Time
++ -1:00 - WAT 1964
++ 0:00 - GMT
++
++# Malawi
++Zone Africa/Blantyre 2:20:00 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Republic of the Congo
++Zone Africa/Brazzaville 1:01:08 - LMT 1912
++ 1:00 - WAT
++
++# Burundi
++Zone Africa/Bujumbura 1:57:28 - LMT 1890
++ 2:00 - CAT
++
++# Guinea
++Zone Africa/Conakry -0:54:52 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960
++ 0:00 - GMT
++
++# Senegal
++Zone Africa/Dakar -1:09:44 - LMT 1912
++ -1:00 - WAT 1941 Jun
++ 0:00 - GMT
++
++# Tanzania
++Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
++ 3:00 - EAT 1948
++ 2:45 - BEAUT 1961
++ 3:00 - EAT
++
++# Djibouti
++Zone Africa/Djibouti 2:52:36 - LMT 1911 Jul
++ 3:00 - EAT
++
++# Cameroon
++# Whitman says they switched to 1:00 in 1920; go with Shanks & Pottenger.
++Zone Africa/Douala 0:38:48 - LMT 1912
++ 1:00 - WAT
++# Sierra Leone
++# From Paul Eggert (2014-08-12):
++# The following table is from Shanks & Pottenger, but it can't be right.
++# Whitman gives Mar 31 - Aug 31 for 1931 on.
++# The International Hydrographic Bulletin, 1932-33, p 63 says that
++# Sierra Leone would advance its clocks by 20 minutes on 1933-10-01.
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule SL 1935 1942 - Jun 1 0:00 0:40 SLST
++Rule SL 1935 1942 - Oct 1 0:00 0 WAT
++Rule SL 1957 1962 - Jun 1 0:00 1:00 SLST
++Rule SL 1957 1962 - Sep 1 0:00 0 GMT
++Zone Africa/Freetown -0:53:00 - LMT 1882
++ -0:53:00 - FMT 1913 Jun # Freetown Mean Time
++ -1:00 SL %s 1957
++ 0:00 SL %s
++
++# Botswana
++# From Paul Eggert (2013-02-21):
++# Milne says they were regulated by the Cape Town Signal in 1899;
++# assume they switched to 2:00 when Cape Town did.
++Zone Africa/Gaborone 1:43:40 - LMT 1885
++ 1:30 - SAST 1903 Mar
++ 2:00 - CAT 1943 Sep 19 2:00
++ 2:00 1:00 CAST 1944 Mar 19 2:00
++ 2:00 - CAT
++
++# Zimbabwe
++Zone Africa/Harare 2:04:12 - LMT 1903 Mar
++ 2:00 - CAT
++
++# South Sudan
++Zone Africa/Juba 2:06:24 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
++
++# Uganda
++Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
++ 3:00 - EAT 1930
++ 2:30 - BEAT 1948
++ 2:45 - BEAUT 1957
++ 3:00 - EAT
++
++# Rwanda
++Zone Africa/Kigali 2:00:16 - LMT 1935 Jun
++ 2:00 - CAT
++
++# Democratic Republic of the Congo (west)
++Zone Africa/Kinshasa 1:01:12 - LMT 1897 Nov 9
++ 1:00 - WAT
++
++# Gabon
++Zone Africa/Libreville 0:37:48 - LMT 1912
++ 1:00 - WAT
++
++# Togo
++Zone Africa/Lome 0:04:52 - LMT 1893
++ 0:00 - GMT
++
++# Angola
++#
++# Shanks gives 1911-05-26 for the transition to WAT,
++# evidently confusing the date of the Portuguese decree
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# with the date that it took effect, namely 1912-01-01.
++#
++Zone Africa/Luanda 0:52:56 - LMT 1892
++ 0:52:04 - AOT 1912 Jan 1 # Angola Time
++ 1:00 - WAT
++
++# Democratic Republic of the Congo (east)
++Zone Africa/Lubumbashi 1:49:52 - LMT 1897 Nov 9
++ 2:00 - CAT
++
++# Zambia
++Zone Africa/Lusaka 1:53:08 - LMT 1903 Mar
++ 2:00 - CAT
++
++# Equatorial Guinea
++#
++# Although Shanks says that Malabo switched from UT +00 to +01 on 1963-12-15,
++# a Google Books search says that London Calling, Issues 432-465 (1948), p 19,
++# says that Spanish Guinea was at +01 back then. The Shanks data entries
++# are most likely wrong, but we have nothing better; use them here for now.
++#
++Zone Africa/Malabo 0:35:08 - LMT 1912
++ 0:00 - GMT 1963 Dec 15
++ 1:00 - WAT
++
++# Lesotho
++Zone Africa/Maseru 1:50:00 - LMT 1903 Mar
++ 2:00 - SAST 1943 Sep 19 2:00
++ 2:00 1:00 SAST 1944 Mar 19 2:00
++ 2:00 - SAST
++
++# Swaziland
++Zone Africa/Mbabane 2:04:24 - LMT 1903 Mar
++ 2:00 - SAST
++
++# Somalia
++Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
++ 3:00 - EAT 1931
++ 2:30 - BEAT 1957
++ 3:00 - EAT
++
++# Niger
++Zone Africa/Niamey 0:08:28 - LMT 1912
++ -1:00 - WAT 1934 Feb 26
++ 0:00 - GMT 1960
++ 1:00 - WAT
++
++# Mauritania
++Zone Africa/Nouakchott -1:03:48 - LMT 1912
++ 0:00 - GMT 1934 Feb 26
++ -1:00 - WAT 1960 Nov 28
++ 0:00 - GMT
++
++# Burkina Faso
++Zone Africa/Ouagadougou -0:06:04 - LMT 1912
++ 0:00 - GMT
++
++# Benin
++# Whitman says they switched to 1:00 in 1946, not 1934;
++# go with Shanks & Pottenger.
++Zone Africa/Porto-Novo 0:10:28 - LMT 1912 Jan 1
++ 0:00 - GMT 1934 Feb 26
++ 1:00 - WAT
++
++# São Tomé and Príncipe
++Zone Africa/Sao_Tome 0:26:56 - LMT 1884
++ -0:36:32 - LMT 1912 # Lisbon Mean Time
++ 0:00 - GMT
++
++# Mali (northern)
++Zone Africa/Timbuktu -0:12:04 - LMT 1912
++ 0:00 - GMT
++
++# Anguilla
++Zone America/Anguilla -4:12:16 - LMT 1912 Mar 2
++ -4:00 - AST
++
++# Antigua and Barbuda
++Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
++ -5:00 - EST 1951
++ -4:00 - AST
++
++# Chubut, Argentina
++# The name "Comodoro Rivadavia" exceeds the 14-byte POSIX limit.
++Zone America/Argentina/ComodRivadavia -4:30:00 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Mar 3
++ -4:00 - WART 1991 Oct 20
++ -3:00 Arg AR%sT 1999 Oct 3
++ -4:00 Arg AR%sT 2000 Mar 3
++ -3:00 - ART 2004 Jun 1
++ -4:00 - WART 2004 Jun 20
++ -3:00 - ART
++
++# Aruba
++Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
++ -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:00 - AST
++
++# Cayman Is
++Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST
++
++# Canada
++Zone America/Coral_Harbour -5:32:40 - LMT 1884
++ -5:00 NT_YK E%sT 1946
++ -5:00 - EST
++
++# Dominica
++Zone America/Dominica -4:05:36 - LMT 1911 Jul 1 0:01 # Roseau
++ -4:00 - AST
++
++# Baja California
++# See 'northamerica' for why this entry is here rather than there.
++Zone America/Ensenada -7:46:28 - LMT 1922 Jan 1 0:13:32
++ -8:00 - PST 1927 Jun 10 23:00
++ -7:00 - MST 1930 Nov 16
++ -8:00 - PST 1942 Apr
++ -7:00 - MST 1949 Jan 14
++ -8:00 - PST 1996
++ -8:00 Mexico P%sT
++
++# Grenada
++Zone America/Grenada -4:07:00 - LMT 1911 Jul # St George's
++ -4:00 - AST
++
++# Guadeloupe
++Zone America/Guadeloupe -4:06:08 - LMT 1911 Jun 8 # Pointe-à-Pitre
++ -4:00 - AST
++
++# Canada
++#
++# From Paul Eggert (2015-03-24):
++# Since 1970 most of Quebec has been like Toronto; see
++# America/Toronto. However, earlier versions of the tz database
++# mistakenly relied on data from Shanks & Pottenger saying that Quebec
++# differed from Ontario after 1970, and the following rules and zone
++# were created for most of Quebec from the incorrect Shanks &
++# Pottenger data. The post-1970 entries have been corrected, but the
++# pre-1970 entries are unchecked and probably have errors.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Mont 1917 only - Mar 25 2:00 1:00 D
++Rule Mont 1917 only - Apr 24 0:00 0 S
++Rule Mont 1919 only - Mar 31 2:30 1:00 D
++Rule Mont 1919 only - Oct 25 2:30 0 S
++Rule Mont 1920 only - May 2 2:30 1:00 D
++Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
++Rule Mont 1921 only - May 1 2:00 1:00 D
++Rule Mont 1922 only - Apr 30 2:00 1:00 D
++Rule Mont 1924 only - May 17 2:00 1:00 D
++Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
++Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
++Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
++Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
++Rule Mont 1938 1940 - Apr lastSun 0:00 1:00 D
++Rule Mont 1938 1939 - Sep lastSun 0:00 0 S
++Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
++Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
++Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
++Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
++Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
++Zone America/Montreal -4:54:16 - LMT 1884
++ -5:00 Mont E%sT 1918
++ -5:00 Canada E%sT 1919
++ -5:00 Mont E%sT 1942 Feb 9 2:00s
++ -5:00 Canada E%sT 1946
++ -5:00 Mont E%sT 1974
++ -5:00 Canada E%sT
++
++# Montserrat
++# From Paul Eggert (2006-03-22):
++# In 1995 volcanic eruptions forced evacuation of Plymouth, the capital.
++# world.gazetteer.com says Cork Hill is the most populous location now.
++Zone America/Montserrat -4:08:52 - LMT 1911 Jul 1 0:01 # Cork Hill
++ -4:00 - AST
++
++# Argentina
++# This entry was intended for the following areas, but has been superseded by
++# more detailed zones.
++# Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN), Chaco (CC),
++# Formosa (FM), La Pampa (LP), Chubut (CH)
++Zone America/Rosario -4:02:40 - LMT 1894 Nov
++ -4:16:44 - CMT 1920 May
++ -4:00 - ART 1930 Dec
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1991 Jul
++ -3:00 - ART 1999 Oct 3 0:00
++ -4:00 Arg AR%sT 2000 Mar 3 0:00
++ -3:00 - ART
++
++# St Kitts-Nevis
++Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
++ -4:00 - AST
++
++# St Lucia
++Zone America/St_Lucia -4:04:00 - LMT 1890 # Castries
++ -4:04:00 - CMT 1912 # Castries Mean Time
++ -4:00 - AST
++
++# Virgin Is
++Zone America/St_Thomas -4:19:44 - LMT 1911 Jul # Charlotte Amalie
++ -4:00 - AST
++
++# St Vincent and the Grenadines
++Zone America/St_Vincent -4:04:56 - LMT 1890 # Kingstown
++ -4:04:56 - KMT 1912 # Kingstown Mean Time
++ -4:00 - AST
++
++# British Virgin Is
++Zone America/Tortola -4:18:28 - LMT 1911 Jul # Road Town
++ -4:00 - AST
++
++# McMurdo, Ross Island, since 1955-12
++Zone Antarctica/McMurdo 0 - -00 1956
++ 12:00 NZ NZ%sT
++Link Antarctica/McMurdo Antarctica/South_Pole
++
++# Yemen
++# Milne says 2:59:54 was the meridian of the saluting battery at Aden,
++# and that Yemen was at 1:55:56, the meridian of the Hagia Sophia.
++Zone Asia/Aden 2:59:54 - LMT 1950
++ 3:00 - AST
++
++# Bahrain
++Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
++ 4:00 - GST 1972 Jun
++ 3:00 - AST
++
++# India
++#
++# From Paul Eggert (2014-09-06):
++# The 1876 Report of the Secretary of the [US] Navy, p 305 says that Madras
++# civil time was 5:20:57.3.
++#
++# From Paul Eggert (2014-08-21):
++# In tomorrow's The Hindu, Nitya Menon reports that India had two civil time
++# zones starting in 1884, one in Bombay and one in Calcutta, and that railways
++# used a third time zone based on Madras time (80 deg. 18'30" E). Also,
++# in 1881 Bombay briefly switched to Madras time, but switched back. See:
++# http://www.thehindu.com/news/cities/chennai/madras-375-when-madras-clocked-the-time/article6339393.ece
++#Zone Asia/Chennai [not enough info to complete]
++
++# China
++# Long-shu Time (probably due to Long and Shu being two names of that area)
++# Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
++# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
++# Yangchun, Yangjiang, Yu'nan, and Yunfu.
++Zone Asia/Chongqing 7:06:20 - LMT 1928 # or Chungking
++ 7:00 - LONT 1980 May # Long-shu Time
++ 8:00 PRC C%sT
++Link Asia/Chongqing Asia/Chungking
++
++# Vietnam
++# From Paul Eggert (2014-10-13):
++# See Asia/Ho_Chi_Minh for the source for this data.
++# Trần's book says the 1954-55 transition to 07:00 in Hanoi was in
++# October 1954, with exact date and time unspecified.
++Zone Asia/Hanoi 7:03:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1954 Oct
++ 7:00 - ICT
++
++# China
++# Changbai Time ("Long-white Time", Long-white = Heilongjiang area)
++# Heilongjiang (except Mohe county), Jilin
++Zone Asia/Harbin 8:26:44 - LMT 1928 # or Haerbin
++ 8:30 - CHAT 1932 Mar # Changbai Time
++ 8:00 - CST 1940
++ 9:00 - CHAT 1966 May
++ 8:30 - CHAT 1980 May
++ 8:00 PRC C%sT
++
++# far west China
++Zone Asia/Kashgar 5:03:56 - LMT 1928 # or Kashi or Kaxgar
++ 5:30 - KAST 1940 # Kashgar Time
++ 5:00 - KAST 1980 May
++ 8:00 PRC C%sT
++
++# Kuwait
++Zone Asia/Kuwait 3:11:56 - LMT 1950
++ 3:00 - AST
++
++
++# Oman
++# Milne says 3:54:24 was the meridian of the Muscat Tidal Observatory.
++Zone Asia/Muscat 3:54:24 - LMT 1920
++ 4:00 - GST
++
++# India
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Portuguese India switched to UT +05 on 1912-01-01.
++#Zone Asia/Panaji [not enough info to complete]
++
++# Cambodia
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data. Also, guess
++# (1) Cambodia reverted to UT +07 on 1945-09-02, when Vietnam did, and
++# (2) they also reverted to +07 on 1953-11-09, the date of independence.
++# These guesses are probably wrong but they're better than guessing no
++# transitions there.
++Zone Asia/Phnom_Penh 6:59:40 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1953 Nov 9
++ 7:00 - ICT
++
++# Israel
++Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
++ 2:21 - JMT 1918
++ 2:00 Zion I%sT
++
++# Laos
++# From Paul Eggert (2014-10-11):
++# See Asia/Ho_Chi_Minh for the source for most of this data.
++# Trần's book says that Laos reverted to UT +07 on 1955-04-15.
++# Also, guess that Laos reverted to +07 on 1945-09-02, when Vietnam did;
++# this is probably wrong but it's better than guessing no transition.
++Zone Asia/Vientiane 6:50:24 - LMT 1906 Jul 1
++ 7:06:30 - PLMT 1911 May 1
++ 7:00 - ICT 1942 Dec 31 23:00
++ 8:00 - IDT 1945 Mar 14 23:00
++ 9:00 - JST 1945 Sep 2
++ 7:00 - ICT 1947 Apr 1
++ 8:00 - IDT 1955 Apr 15
++ 7:00 - ICT
++
++# Jan Mayen
++# From Whitman:
++Zone Atlantic/Jan_Mayen -1:00 - EGT
++
++# St Helena
++Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
++ -0:22:48 - JMT 1951 # Jamestown Mean Time
++ 0:00 - GMT
++
++# Northern Ireland
++Zone Europe/Belfast -0:23:40 - LMT 1880 Aug 2
++ -0:25:21 - DMT 1916 May 21 2:00
++ # DMT = Dublin/Dunsink MT
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ # IST = Irish Summer Time
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Guernsey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.27N -2.33E - St.Peter Port
++Zone Europe/Guernsey -0:09:19 - LMT 1913 Jun 18
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Isle of Man
++#
++# From Lester Caine (2013-09-04):
++# The Isle of Man legislation is now on-line at
++# <http://www.legislation.gov.im>, starting with the original Statutory
++# Time Act in 1883 and including additional confirmation of some of
++# the dates of the 'Summer Time' orders originating at
++# Westminster. There is a little uncertainty as to the starting date
++# of the first summer time in 1916 which may have be announced a
++# couple of days late. There is still a substantial number of
++# documents to work through, but it is thought that every GB change
++# was also implemented on the island.
++#
++# AT4 of 1883 - The Statutory Time et cetera Act 1883 -
++# LMT Location - 54.1508N -4.4814E - Tynwald Hill ( Manx parliament )
++Zone Europe/Isle_of_Man -0:17:55 - LMT 1883 Mar 30 0:00s
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Jersey
++# Data from Joseph S. Myers
++# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# References to be added
++# LMT Location - 49.187N -2.107E - St. Helier
++Zone Europe/Jersey -0:08:25 - LMT 1898 Jun 11 16:00u
++ 0:00 GB-Eire %s 1940 Jul 2
++ 1:00 C-Eur CE%sT 1945 May 8
++ 0:00 GB-Eire %s 1968 Oct 27
++ 1:00 - BST 1971 Oct 31 2:00u
++ 0:00 GB-Eire %s 1996
++ 0:00 EU GMT/BST
++
++# Slovenia
++Zone Europe/Ljubljana 0:58:04 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Bosnia and Herzegovina
++Zone Europe/Sarajevo 1:13:40 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Macedonia
++Zone Europe/Skopje 1:25:44 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Moldova / Transnistria
++Zone Europe/Tiraspol 1:58:32 - LMT 1880
++ 1:55 - CMT 1918 Feb 15 # Chisinau MT
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1940 Aug 15
++ 2:00 1:00 EEST 1941 Jul 17
++ 1:00 C-Eur CE%sT 1944 Aug 24
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 2:00 Russia EE%sT 1992 Jan 19 2:00
++ 3:00 Russia MSK/MSD
++
++# Liechtenstein
++Zone Europe/Vaduz 0:38:04 - LMT 1894 Jun
++ 1:00 - CET 1981
++ 1:00 EU CE%sT
++
++# Croatia
++Zone Europe/Zagreb 1:03:52 - LMT 1884
++ 1:00 - CET 1941 Apr 18 23:00
++ 1:00 C-Eur CE%sT 1945 May 8 2:00s
++ 1:00 1:00 CEST 1945 Sep 16 2:00s
++ 1:00 - CET 1982 Nov 27
++ 1:00 EU CE%sT
++
++# Madagascar
++Zone Indian/Antananarivo 3:10:04 - LMT 1911 Jul
++ 3:00 - EAT 1954 Feb 27 23:00s
++ 3:00 1:00 EAST 1954 May 29 23:00s
++ 3:00 - EAT
++
++# Comoros
++Zone Indian/Comoro 2:53:04 - LMT 1911 Jul # Moroni, Gran Comoro
++ 3:00 - EAT
++
++# Mayotte
++Zone Indian/Mayotte 3:00:56 - LMT 1911 Jul # Mamoutzou
++ 3:00 - EAT
++
++# US minor outlying islands
++Zone Pacific/Johnston -10:00 - HST
++
++# US minor outlying islands
++#
++# From Mark Brader (2005-01-23):
++# [Fallacies and Fantasies of Air Transport History, by R.E.G. Davies,
++# published 1994 by Paladwr Press, McLean, VA, USA; ISBN 0-9626483-5-3]
++# reproduced a Pan American Airways timetable from 1936, for their weekly
++# "Orient Express" flights between San Francisco and Manila, and connecting
++# flights to Chicago and the US East Coast. As it uses some time zone
++# designations that I've never seen before:....
++# Fri. 6:30A Lv. HONOLOLU (Pearl Harbor), H.I. H.L.T. Ar. 5:30P Sun.
++# " 3:00P Ar. MIDWAY ISLAND . . . . . . . . . M.L.T. Lv. 6:00A "
++#
++Zone Pacific/Midway -11:49:28 - LMT 1901
++ -11:00 - NST 1956 Jun 3
++ -11:00 1:00 NDT 1956 Sep 2
++ -11:00 - NST 1967 Apr # N=Nome
++ -11:00 - BST 1983 Nov 30 # B=Bering
++ -11:00 - SST # S=Samoa
++
++# N Mariana Is
++Zone Pacific/Saipan -14:17:00 - LMT 1844 Dec 31
++ 9:43:00 - LMT 1901
++ 9:00 - MPT 1969 Oct # N Mariana Is Time
++ 10:00 - MPT 2000 Dec 23
++ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -0,0 +1,48 @@
++# Check links in tz tables.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ # Special marker indicating that the name is defined as a Zone.
++ # It is a newline so that it cannot match a valid name.
++ # It is not null so that its slot does not appear unset.
++ Zone = "\n"
++}
++
++/^Zone/ {
++ if (defined[$2]) {
++ if (defined[$2] == Zone) {
++ printf "%s: Zone has duplicate definition\n", $2
++ } else {
++ printf "%s: Link with same name as Zone\n", $2
++ }
++ status = 1
++ }
++ defined[$2] = Zone
++}
++
++/^Link/ {
++ if (defined[$3]) {
++ if (defined[$3] == Zone) {
++ printf "%s: Link with same name as Zone\n", $3
++ } else if (defined[$3] == $2) {
++ printf "%s: Link has duplicate definition\n", $3
++ } else {
++ printf "%s: Link to both %s and %s\n", $3, defined[$3], $2
++ }
++ status = 1
++ }
++ used[$2] = 1
++ defined[$3] = $2
++}
++
++END {
++ for (tz in used) {
++ if (defined[tz] != Zone) {
++ printf "%s: Link to non-zone\n", tz
++ status = 1
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/checktab.awk.orig
++++ contrib/tzdata/checktab.awk
+@@ -0,0 +1,177 @@
++# Check tz tables for consistency.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++BEGIN {
++ FS = "\t"
++
++ if (!iso_table) iso_table = "iso3166.tab"
++ if (!zone_table) zone_table = "zone1970.tab"
++ if (!want_warnings) want_warnings = -1
++
++ while (getline <iso_table) {
++ iso_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 2) {
++ printf "%s:%d: wrong number of columns\n", \
++ iso_table, iso_NR >>"/dev/stderr"
++ status = 1
++ }
++ cc = $1
++ name = $2
++ if (cc !~ /^[A-Z][A-Z]$/) {
++ printf "%s:%d: invalid country code '%s'\n", \
++ iso_table, iso_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ if (cc <= cc0) {
++ if (cc == cc0) {
++ s = "duplicate";
++ } else {
++ s = "out of order";
++ }
++
++ printf "%s:%d: country code '%s' is %s\n", \
++ iso_table, iso_NR, cc, s \
++ >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ if (name2cc[name]) {
++ printf "%s:%d: '%s' and '%s' have the same name\n", \
++ iso_table, iso_NR, name2cc[name], cc \
++ >>"/dev/stderr"
++ status = 1
++ }
++ name2cc[name] = cc
++ cc2name[cc] = name
++ cc2NR[cc] = iso_NR
++ }
++
++ cc0 = ""
++
++ while (getline <zone_table) {
++ zone_NR++
++ if ($0 ~ /^#/) continue
++ if (NF != 3 && NF != 4) {
++ printf "%s:%d: wrong number of columns\n", \
++ zone_table, zone_NR >>"/dev/stderr"
++ status = 1
++ }
++ split($1, cca, /,/)
++ cc = cca[1]
++ coordinates = $2
++ tz = $3
++ comments = $4
++ if (cc < cc0) {
++ printf "%s:%d: country code '%s' is out of order\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ cc0 = cc
++ tztab[tz] = 1
++ tz2comments[tz] = comments
++ tz2NR[tz] = zone_NR
++ for (i in cca) {
++ cc = cca[i]
++ cctz = cc tz
++ cctztab[cctz] = 1
++ if (cc2name[cc]) {
++ cc_used[cc]++
++ } else {
++ printf "%s:%d: %s: unknown country code\n", \
++ zone_table, zone_NR, cc >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (coordinates !~ /^[-+][0-9][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9]$/ \
++ && coordinates !~ /^[-+][0-9][0-9][0-5][0-9][0-5][0-9][-+][01][0-9][0-9][0-5][0-9][0-5][0-9]$/) {
++ printf "%s:%d: %s: invalid coordinates\n", \
++ zone_table, zone_NR, coordinates >>"/dev/stderr"
++ status = 1
++ }
++ }
++
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (1 < cc_used[cc]) {
++ comments_needed[tz] = cc
++ }
++ }
++ for (cctz in cctztab) {
++ cc = substr (cctz, 1, 2)
++ tz = substr (cctz, 3)
++ if (!comments_needed[tz] && tz2comments[tz]) {
++ printf "%s:%d: unnecessary comment '%s'\n", \
++ zone_table, tz2NR[tz], tz2comments[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 0
++ status = 1
++ } else if (comments_needed[tz] && !tz2comments[tz]) {
++ printf "%s:%d: missing comment for %s\n", \
++ zone_table, tz2NR[tz], comments_needed[tz] \
++ >>"/dev/stderr"
++ tz2comments[tz] = 1
++ status = 1
++ }
++ }
++ FS = " "
++}
++
++$1 ~ /^#/ { next }
++
++{
++ tz = rules = ""
++ if ($1 == "Zone") {
++ tz = $2
++ ruleUsed[$4] = 1
++ } else if ($1 == "Link" && zone_table == "zone.tab") {
++ # Ignore Link commands if source and destination basenames
++ # are identical, e.g. Europe/Istanbul versus Asia/Istanbul.
++ src = $2
++ dst = $3
++ while ((i = index(src, "/"))) src = substr(src, i+1)
++ while ((i = index(dst, "/"))) dst = substr(dst, i+1)
++ if (src != dst) tz = $3
++ } else if ($1 == "Rule") {
++ ruleDefined[$2] = 1
++ } else {
++ ruleUsed[$2] = 1
++ }
++ if (tz && tz ~ /\//) {
++ if (!tztab[tz]) {
++ printf "%s: no data for '%s'\n", zone_table, tz \
++ >>"/dev/stderr"
++ status = 1
++ }
++ zoneSeen[tz] = 1
++ }
++}
++
++END {
++ for (tz in ruleDefined) {
++ if (!ruleUsed[tz]) {
++ printf "%s: Rule never used\n", tz
++ status = 1
++ }
++ }
++ for (tz in tztab) {
++ if (!zoneSeen[tz]) {
++ printf "%s:%d: no Zone table for '%s'\n", \
++ zone_table, tz2NR[tz], tz >>"/dev/stderr"
++ status = 1
++ }
++ }
++ if (0 < want_warnings) {
++ for (cc in cc2name) {
++ if (!cc_used[cc]) {
++ printf "%s:%d: warning: " \
++ "no Zone entries for %s (%s)\n", \
++ iso_table, cc2NR[cc], cc, cc2name[cc]
++ }
++ }
++ }
++
++ exit status
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/etcetera.orig
++++ contrib/tzdata/etcetera
+@@ -8,6 +8,13 @@
+ # need now for the entries that are not on UTC are for ships at sea
+ # that cannot use POSIX TZ settings.
+
++# Starting with POSIX 1003.1-2001, the entries below are all
++# unnecessary as settings for the TZ environment variable. E.g.,
++# instead of TZ='Etc/GMT+4' one can use the POSIX setting TZ='<-04>+4'.
++#
++# Do not use a POSIX TZ setting like TZ='GMT+4', which is four hours
++# behind GMT but uses the completely misleading abbreviation "GMT".
++
+ Zone Etc/GMT 0 - GMT
+ Zone Etc/UTC 0 - UTC
+ Zone Etc/UCT 0 - UCT
+@@ -26,23 +33,13 @@
+ Link Etc/GMT Etc/GMT+0
+ Link Etc/GMT Etc/GMT0
+
+-# We use POSIX-style signs in the Zone names and the output abbreviations,
++# Be consistent with POSIX TZ settings in the Zone names,
+ # even though this is the opposite of what many people expect.
+ # POSIX has positive signs west of Greenwich, but many people expect
+ # positive signs east of Greenwich. For example, TZ='Etc/GMT+4' uses
+-# the abbreviation "GMT+4" and corresponds to 4 hours behind UT
++# the abbreviation "-04" and corresponds to 4 hours behind UT
+ # (i.e. west of Greenwich) even though many people would expect it to
+ # mean 4 hours ahead of UT (i.e. east of Greenwich).
+-#
+-# In the draft 5 of POSIX 1003.1-200x, the angle bracket notation allows for
+-# TZ='<GMT-4>+4'; if you want time zone abbreviations conforming to
+-# ISO 8601 you can use TZ='<-0400>+4'. Thus the commonly-expected
+-# offset is kept within the angle bracket (and is used for display)
+-# while the POSIX sign is kept outside the angle bracket (and is used
+-# for calculation).
+-#
+-# Do not use a TZ setting like TZ='GMT+4', which is four hours behind
+-# GMT but uses the completely misleading abbreviation "GMT".
+
+ # Earlier incarnations of this package were not POSIX-compliant,
+ # and had lines such as
+@@ -51,30 +48,31 @@
+ # way does a
+ # zic -l GMT-12
+ # so we moved the names into the Etc subdirectory.
++# Also, the time zone abbreviations are now compatible with %z.
+
+-Zone Etc/GMT-14 14 - GMT-14 # 14 hours ahead of GMT
+-Zone Etc/GMT-13 13 - GMT-13
+-Zone Etc/GMT-12 12 - GMT-12
+-Zone Etc/GMT-11 11 - GMT-11
+-Zone Etc/GMT-10 10 - GMT-10
+-Zone Etc/GMT-9 9 - GMT-9
+-Zone Etc/GMT-8 8 - GMT-8
+-Zone Etc/GMT-7 7 - GMT-7
+-Zone Etc/GMT-6 6 - GMT-6
+-Zone Etc/GMT-5 5 - GMT-5
+-Zone Etc/GMT-4 4 - GMT-4
+-Zone Etc/GMT-3 3 - GMT-3
+-Zone Etc/GMT-2 2 - GMT-2
+-Zone Etc/GMT-1 1 - GMT-1
+-Zone Etc/GMT+1 -1 - GMT+1
+-Zone Etc/GMT+2 -2 - GMT+2
+-Zone Etc/GMT+3 -3 - GMT+3
+-Zone Etc/GMT+4 -4 - GMT+4
+-Zone Etc/GMT+5 -5 - GMT+5
+-Zone Etc/GMT+6 -6 - GMT+6
+-Zone Etc/GMT+7 -7 - GMT+7
+-Zone Etc/GMT+8 -8 - GMT+8
+-Zone Etc/GMT+9 -9 - GMT+9
+-Zone Etc/GMT+10 -10 - GMT+10
+-Zone Etc/GMT+11 -11 - GMT+11
+-Zone Etc/GMT+12 -12 - GMT+12
++Zone Etc/GMT-14 14 - +14
++Zone Etc/GMT-13 13 - +13
++Zone Etc/GMT-12 12 - +12
++Zone Etc/GMT-11 11 - +11
++Zone Etc/GMT-10 10 - +10
++Zone Etc/GMT-9 9 - +09
++Zone Etc/GMT-8 8 - +08
++Zone Etc/GMT-7 7 - +07
++Zone Etc/GMT-6 6 - +06
++Zone Etc/GMT-5 5 - +05
++Zone Etc/GMT-4 4 - +04
++Zone Etc/GMT-3 3 - +03
++Zone Etc/GMT-2 2 - +02
++Zone Etc/GMT-1 1 - +01
++Zone Etc/GMT+1 -1 - -01
++Zone Etc/GMT+2 -2 - -02
++Zone Etc/GMT+3 -3 - -03
++Zone Etc/GMT+4 -4 - -04
++Zone Etc/GMT+5 -5 - -05
++Zone Etc/GMT+6 -6 - -06
++Zone Etc/GMT+7 -7 - -07
++Zone Etc/GMT+8 -8 - -08
++Zone Etc/GMT+9 -9 - -09
++Zone Etc/GMT+10 -10 - -10
++Zone Etc/GMT+11 -11 - -11
++Zone Etc/GMT+12 -12 - -12
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -1,20 +1,24 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2014-05-31):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -38,6 +42,16 @@
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+ #
++# Byalokoz EL. New Counting of Time in Russia since July 1, 1919.
++# This Russian-language source was consulted by Vladimir Karpinsky; see
++# http://mm.icann.org/pipermail/tz/2014-August/021320.html
++# The full Russian citation is:
++# Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
++# введенный декретом Совета народных комиссаров для всей России с 1-го
++# июля 1919 г. / Изд. 2-е Междуведомственной комиссии. - Петроград:
++# Десятая гос. тип., 1919.
++# http://resolver.gpntb.ru/purl?docushare/dsweb/Get/Resource-2011/Byalokoz__E.L.__Novyy__schet__vremeni__v__techenie__sutok__izd__2(1).pdf
++#
+ # Brazil's Divisão Serviço da Hora (DSHO),
+ # History of Summer Time
+ # <http://pcdsh01.on.br/HISTHV.htm>
+@@ -57,11 +71,11 @@
+ # 0:00 WET WEST WEMT Western Europe
+ # 0:19:32.13 AMT NST Amsterdam, Netherlands Summer (1835-1937)*
+ # 0:20 NET NEST Netherlands (1937-1940)*
++# 1:00 BST British Standard (1968-1971)
+ # 1:00 CET CEST CEMT Central Europe
+ # 1:00:14 SET Swedish (1879-1899)*
+ # 2:00 EET EEST Eastern Europe
+-# 3:00 FET Further-eastern Europe*
+-# 3:00 MSK MSD MSM* Moscow
++# 3:00 MSK MSD Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -174,14 +188,18 @@
+ # between 160 and 170 hours more daylight leisure, to a war which
+ # plunged Europe into darkness for four years, and shook the
+ # foundations of civilization throughout the world.
+-# <http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf>
+-# "A Silent Toast to William Willett", Pictorial Weekly
++# -- "A Silent Toast to William Willett", Pictorial Weekly;
++# republished in Finest Hour (Spring 2002) 1(114):26
++# http://www.winstonchurchill.org/images/finesthour/Vol.01%20No.114.pdf
+
+-# From Paul Eggert (1996-09-03):
++# From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+ # when they were debating the adoption of DST in 1908; but by 1916 this
+ # term appears only in quotes taken from DST's opponents, whereas the
+ # proponents (who eventually won the argument) are quoted as using "Summer".
++# The term "Summer Time" was introduced by Herbert Samuel, Home Secretary; see:
++# Viscount Samuel. Leisure in a Democracy. Cambridge University Press
++# ISBN 978-1-107-49471-8 (1949, reissued 2015), p 8.
+
+ # From Arthur David Olson (1989-01-19):
+ # A source at the British Information Office in New York avers that it's
+@@ -210,8 +228,8 @@
+ # official designation; the reply of the 21st was that there wasn't
+ # but he couldn't think of anything better than the "Double British
+ # Summer Time" that the BBC had been using informally.
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/bbc-19410418.png
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/ho-19410421.png
++# http://www.polyomino.org.uk/british-time/bbc-19410418.png
++# http://www.polyomino.org.uk/british-time/ho-19410421.png
+
+ # From Sir Alexander Maxwell in the above-mentioned letter (1941-04-21):
+ # [N]o official designation has as far as I know been adopted for the time
+@@ -228,15 +246,13 @@
+ # the history of summer time legislation in the United Kingdom.
+ # Since 1998 Joseph S. Myers has been updating
+ # and extending this list, which can be found in
+-# http://student.cusu.cam.ac.uk/~jsm28/british-time/
+-# History of legal time in Britain
+ # http://www.polyomino.org.uk/british-time/
+
+ # From Joseph S. Myers (1998-01-06):
+ #
+ # The legal time in the UK outside of summer time is definitely GMT, not UTC;
+ # see Lord Tanlaw's speech
+-# <http://www.parliament.the-stationery-office.co.uk/pa/ld199697/ldhansrd/pdvn/lds97/text/70611-20.htm#70611-20_head0>
++# http://www.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
+ # (Lords Hansard 11 June 1997 columns 964 to 976).
+
+ # From Paul Eggert (2006-03-22):
+@@ -276,6 +292,14 @@
+ # "Timeball on the ballast office is down. Dunsink time."
+ # -- James Joyce, Ulysses
+
++# "Countess Markievicz ... claimed that the [1916] abolition of Dublin Mean Time
++# was among various actions undertaken by the 'English' government that
++# would 'put the whole country into the SF (Sinn Féin) camp'. She claimed
++# Irish 'public feeling (was) outraged by forcing of English time on us'."
++# -- Parsons M. Dublin lost its time zone - and 25 minutes - after 1916 Rising.
++# Irish Times 2014-10-27.
++# http://www.irishtimes.com/news/politics/dublin-lost-its-time-zone-and-25-minutes-after-1916-rising-1.1977411
++
+ # From Joseph S. Myers (2005-01-26):
+ # Irish laws are available online at <http://www.irishstatutebook.ie>.
+ # These include various relating to legal time, for example:
+@@ -321,7 +345,7 @@
+
+ # From an anonymous contributor (1996-06-02):
+ # The law governing time in Ireland is under Statutory Instrument SI 395/94,
+-# which gives force to European Union 7th Council Directive # 94/21/EC.
++# which gives force to European Union 7th Council Directive No. 94/21/EC.
+ # Under this directive, the Minister for Justice in Ireland makes appropriate
+ # regulations. I spoke this morning with the Secretary of the Department of
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+@@ -440,25 +464,27 @@
+ # Use Europe/London for Jersey, Guernsey, and the Isle of Man.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
++Zone Europe/London -0:01:15 - LMT 1847 Dec 1 0:00s
+ 0:00 GB-Eire %s 1968 Oct 27
+- 1:00 - BST 1971 Oct 31 2:00u
++ 1:00 - BST 1971 Oct 31 2:00u
+ 0:00 GB-Eire %s 1996
+ 0:00 EU GMT/BST
+ Link Europe/London Europe/Jersey
+ Link Europe/London Europe/Guernsey
+ Link Europe/London Europe/Isle_of_Man
++
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Dublin -0:25:00 - LMT 1880 Aug 2
+- -0:25:21 - DMT 1916 May 21 2:00
+- -0:25:21 1:00 IST 1916 Oct 1 2:00s
++ -0:25:21 - DMT 1916 May 21 2:00
++ -0:25:21 1:00 IST 1916 Oct 1 2:00s
+ 0:00 GB-Eire %s 1921 Dec 6 # independence
+- 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
+- 0:00 1:00 IST 1946 Oct 6 2:00
+- 0:00 - GMT 1947 Mar 16 2:00
+- 0:00 1:00 IST 1947 Nov 2 2:00
+- 0:00 - GMT 1948 Apr 18 2:00
++ 0:00 GB-Eire GMT/IST 1940 Feb 25 2:00
++ 0:00 1:00 IST 1946 Oct 6 2:00
++ 0:00 - GMT 1947 Mar 16 2:00
++ 0:00 1:00 IST 1947 Nov 2 2:00
++ 0:00 - GMT 1948 Apr 18 2:00
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+- 1:00 - IST 1971 Oct 31 2:00u
++ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+ 0:00 EU GMT/IST
+
+@@ -479,7 +505,7 @@
+ # The most recent directive covers the years starting in 2002. See:
+ # Directive 2000/84/EC of the European Parliament and of the Council
+ # of 19 January 2001 on summer-time arrangements.
+-# <http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT>
++# http://eur-lex.europa.eu/LexUriServ/LexUriServ.do?uri=CELEX:32000L0084:EN:NOT
+
+ # W-Eur differs from EU only in that W-Eur uses standard time.
+ Rule W-Eur 1977 1980 - Apr Sun>=1 1:00s 1:00 S
+@@ -513,7 +539,7 @@
+ # 0:00 France WE%sT 1945 Sep 16 3:00
+ #
+ # Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+-# 0:00 France WE%sT 1945 Sep 16 3:00
++# 0:00 France WE%sT 1945 Sep 16 3:00
+ #
+ # Zone Europe/Belgrade 1:22:00 - LMT 1884
+ # 1:00 1:00 CEST 1945 Sep 16 2:00s
+@@ -556,31 +582,73 @@
+ Rule E-Eur 1981 max - Mar lastSun 0:00 1:00 S
+ Rule E-Eur 1996 max - Oct lastSun 0:00 0 -
+
++
++# Daylight saving time for Russia and the Soviet Union
++#
++# The 1917-1921 decree URLs are from Alexander Belopolsky (2016-08-23).
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
+-Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
+-Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
++Rule Russia 1917 only - Jul 1 23:00 1:00 MST # Moscow Summer Time
++#
++# Decree No. 142 (1917-12-22) http://istmat.info/node/28137
++Rule Russia 1917 only - Dec 28 0:00 0 MMT # Moscow Mean Time
++#
++# Decree No. 497 (1918-05-30) http://istmat.info/node/30001
++Rule Russia 1918 only - May 31 22:00 2:00 MDST # Moscow Double Summer Time
+ Rule Russia 1918 only - Sep 16 1:00 1:00 MST
++#
++# Decree No. 258 (1919-05-29) http://istmat.info/node/37949
+ Rule Russia 1919 only - May 31 23:00 2:00 MDST
+-Rule Russia 1919 only - Jul 1 2:00 1:00 MSD
++#
++Rule Russia 1919 only - Jul 1 0:00u 1:00 MSD
+ Rule Russia 1919 only - Aug 16 0:00 0 MSK
++#
++# Decree No. 63 (1921-02-03) http://istmat.info/node/45840
+ Rule Russia 1921 only - Feb 14 23:00 1:00 MSD
+-Rule Russia 1921 only - Mar 20 23:00 2:00 MSM # Midsummer
++#
++# Decree No. 121 (1921-03-07) http://istmat.info/node/45949
++Rule Russia 1921 only - Mar 20 23:00 2:00 +05
++#
+ Rule Russia 1921 only - Sep 1 0:00 1:00 MSD
+ Rule Russia 1921 only - Oct 1 0:00 0 -
+-# Act No.925 of the Council of Ministers of the USSR (1980-10-24):
++# Act No. 925 of the Council of Ministers of the USSR (1980-10-24):
+ Rule Russia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule Russia 1981 1983 - Oct 1 0:00 0 -
+-# Act No.967 of the Council of Ministers of the USSR (1984-09-13), repeated in
+-# Act No.227 of the Council of Ministers of the USSR (1989-03-14):
+-Rule Russia 1984 1991 - Sep lastSun 2:00s 0 -
+-Rule Russia 1985 1991 - Mar lastSun 2:00s 1:00 S
+-#
+-Rule Russia 1992 only - Mar lastSat 23:00 1:00 S
+-Rule Russia 1992 only - Sep lastSat 23:00 0 -
+-Rule Russia 1993 2010 - Mar lastSun 2:00s 1:00 S
+-Rule Russia 1993 1995 - Sep lastSun 2:00s 0 -
++# Act No. 967 of the Council of Ministers of the USSR (1984-09-13), repeated in
++# Act No. 227 of the Council of Ministers of the USSR (1989-03-14):
++Rule Russia 1984 1995 - Sep lastSun 2:00s 0 -
++Rule Russia 1985 2010 - Mar lastSun 2:00s 1:00 S
++#
+ Rule Russia 1996 2010 - Oct lastSun 2:00s 0 -
++# As described below, Russia's 2014 change affects Zone data, not Rule data.
++
++# From Stepan Golosunov (2016-03-07):
++# Wikipedia and other sources refer to the Act of the Council of
++# Ministers of the USSR from 1988-01-04 No. 5 and the Act of the
++# Council of Ministers of the USSR from 1989-03-14 No. 227.
++#
++# I did not find full texts of these acts. For the 1989 one we have
++# title at http://base.garant.ru/70754136/ :
++# "About change in calculation of time on the territories of
++# Lithuanian SSR, Latvian SSR and Estonian SSR, Astrakhan,
++# Kaliningrad, Kirov, Kuybyshev, Ulyanovsk and Uralsk oblasts".
++# And http://astrozet.net/files/Zones/DOC/RU/1980-925.txt appears to
++# contain quotes from both acts: Since last Sunday of March 1988 rules
++# of the second time belt are installed in Volgograd and Saratov
++# oblasts. Since last Sunday of March 1989:
++# a) Lithuanian SSR, Latvian SSR, Estonian SSR, Kaliningrad oblast:
++# second time belt rules without extra hour (Moscow-1);
++# b) Astrakhan, Kirov, Kuybyshev, Ulyanovsk oblasts: second time belt
++# rules (Moscow time)
++# c) Uralsk oblast: third time belt rules (Moscow+1).
++
++# From Stepan Golosunov (2016-03-27):
++# Unamended version of the act of the
++# Government of the Russian Federation No. 23 from 08.01.1992
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102014034&rdk=0
++# says that every year clocks were to be moved forward on last Sunday
++# of March at 2 hours and moved backwards on last Sunday of September
++# at 3 hours. It was amended in 1996 to replace September with October.
+
+ # From Alexander Krivenyshev (2011-06-14):
+ # According to Kremlin press service, Russian President Dmitry Medvedev
+@@ -669,7 +737,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Andorra 0:06:04 - LMT 1901
+ 0:00 - WET 1946 Sep 30
+- 1:00 - CET 1985 Mar 31 2:00
++ 1:00 - CET 1985 Mar 31 2:00
+ 1:00 EU CE%sT
+
+ # Austria
+@@ -695,14 +763,22 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vienna 1:05:21 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1920
+- 1:00 Austria CE%sT 1940 Apr 1 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
+- 1:00 1:00 CEST 1945 Apr 12 2:00s
++ 1:00 Austria CE%sT 1940 Apr 1 2:00s
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
++ 1:00 1:00 CEST 1945 Apr 12 2:00s
+ 1:00 - CET 1946
+ 1:00 Austria CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Belarus
++#
++# From Stepan Golosunov (2016-07-02):
++# http://www.lawbelarus.com/repub/sub30/texf9611.htm
++# (Act of the Cabinet of Ministers of the Republic of Belarus from
++# 1992-03-25 No. 157) ... says clocks were to be moved forward at 2:00
++# on last Sunday of March and backward at 3:00 on last Sunday of September
++# (the same as previous USSR and contemporary Russian regulations).
++#
+ # From Yauhen Kharuzhy (2011-09-16):
+ # By latest Belarus government act Europe/Minsk timezone was changed to
+ # GMT+3 without DST (was GMT+2 with DST).
+@@ -711,19 +787,21 @@
+ # http://www.belta.by/ru/all_news/society/V-Belarusi-otmenjaetsja-perexod-na-sezonnoe-vremja_i_572952.html
+ # http://naviny.by/rubrics/society/2011/09/16/ic_articles_116_175144/
+ # http://news.tut.by/society/250578.html
++#
++# From Alexander Bokovoy (2014-10-09):
++# Belarussian government decided against changing to winter time....
++# http://eng.belta.by/all_news/society/Belarus-decides-against-adjusting-time-in-Russias-wake_i_76335.html
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Minsk 1:50:16 - LMT 1880
+- 1:50 - MMT 1924 May 2 # Minsk Mean Time
++ 1:50 - MMT 1924 May 2 # Minsk Mean Time
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Jun 28
+ 1:00 C-Eur CE%sT 1944 Jul 3
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
+- 2:00 - EET 1992 Mar 29 0:00s
+- 2:00 1:00 EEST 1992 Sep 27 0:00s
+- 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET
++ 3:00 - MSK 1991 Mar 31 2:00s
++ 2:00 Russia EE%sT 2011 Mar 27 2:00s
++ 3:00 - +03
+
+ # Belgium
+ #
+@@ -780,7 +858,7 @@
+ Rule Belgium 1946 only - Oct 7 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Brussels 0:17:30 - LMT 1880
+- 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
++ 0:17:30 - BMT 1892 May 1 12:00 # Brussels MT
+ 0:00 - WET 1914 Nov 8
+ 1:00 - CET 1916 May 1 0:00
+ 1:00 C-Eur CE%sT 1918 Nov 11 11:00u
+@@ -795,7 +873,7 @@
+ # Bulgaria
+ #
+ # From Plamen Simenov via Steffen Thorsen (1999-09-09):
+-# A document of Government of Bulgaria (No.94/1997) says:
++# A document of Government of Bulgaria (No. 94/1997) says:
+ # EET -> EETDST is in 03:00 Local time in last Sunday of March ...
+ # EETDST -> EET is in 04:00 Local time in last Sunday of October
+ #
+@@ -810,9 +888,9 @@
+ 1:56:56 - IMT 1894 Nov 30 # Istanbul MT?
+ 2:00 - EET 1942 Nov 2 3:00
+ 1:00 C-Eur CE%sT 1945
+- 1:00 - CET 1945 Apr 2 3:00
++ 1:00 - CET 1945 Apr 2 3:00
+ 2:00 - EET 1979 Mar 31 23:00
+- 2:00 Bulg EE%sT 1982 Sep 26 2:00
++ 2:00 Bulg EE%sT 1982 Sep 26 3:00
+ 2:00 C-Eur EE%sT 1991
+ 2:00 E-Eur EE%sT 1997
+ 2:00 EU EE%sT
+@@ -834,8 +912,8 @@
+ Rule Czech 1949 only - Apr 9 2:00s 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Prague 0:57:44 - LMT 1850
+- 0:57:44 - PMT 1891 Oct # Prague Mean Time
+- 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
++ 0:57:44 - PMT 1891 Oct # Prague Mean Time
++ 1:00 C-Eur CE%sT 1944 Sep 17 2:00s
+ 1:00 Czech CE%sT 1979
+ 1:00 EU CE%sT
+ # Use Europe/Prague also for Slovakia.
+@@ -891,11 +969,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Copenhagen 0:50:20 - LMT 1890
+ 0:50:20 - CMT 1894 Jan 1 # Copenhagen MT
+- 1:00 Denmark CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
++ 1:00 Denmark CE%sT 1942 Nov 2 2:00s
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Denmark CE%sT 1980
+ 1:00 EU CE%sT
+-Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn
++Zone Atlantic/Faroe -0:27:04 - LMT 1908 Jan 11 # Tórshavn
+ 0:00 - WET 1981
+ 0:00 EU WE%sT
+ #
+@@ -969,6 +1047,12 @@
+ # startkart.no says Thule does not observe DST, but this is clearly an error,
+ # so go with Shanks & Pottenger for Thule transitions until this year.
+ # For 2007 on assume Thule will stay in sync with US DST rules.
++
++# From J William Piggott (2016-02-20):
++# "Greenland north of the community of Scoresbysund" is officially named
++# "National Park" by Executive Order:
++# http://naalakkersuisut.gl/~/media/Nanoq/Files/Attached%20Files/Engelske-tekster/Legislation/Executive%20Order%20National%20Park.rtf
++# It is their only National Park.
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Thule 1991 1992 - Mar lastSun 2:00 1:00 D
+@@ -980,20 +1064,24 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Danmarkshavn -1:14:40 - LMT 1916 Jul 28
+- -3:00 - WGT 1980 Apr 6 2:00
++ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT 1996
+ 0:00 - GMT
+ Zone America/Scoresbysund -1:27:52 - LMT 1916 Jul 28 # Ittoqqortoormiit
+- -2:00 - CGT 1980 Apr 6 2:00
++ -2:00 - CGT 1980 Apr 6 2:00
+ -2:00 C-Eur CG%sT 1981 Mar 29
+ -1:00 EU EG%sT
+ Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
+- -3:00 - WGT 1980 Apr 6 2:00
++ -3:00 - WGT 1980 Apr 6 2:00
+ -3:00 EU WG%sT
+ Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
+ -4:00 Thule A%sT
+
+ # Estonia
++#
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
+ # From Peter Ilieve (1994-10-15):
+ # A relative in Tallinn confirms the accuracy of the data for 1989 onwards
+ # [through 1994] and gives the legal authority for it,
+@@ -1011,7 +1099,7 @@
+
+ # From Peter Ilieve (1998-11-04), heavily edited:
+ # The 1998-09-22 Estonian time law
+-# <http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390>
++# http://trip.rk.ee/cgi-bin/thw?${BASE}=akt&${OOHTML}=rtd&TA=1998&TO=1&AN=1390
+ # refers to the Eighth Directive and cites the association agreement between
+ # the EU and Estonia, ratified by the Estonian law (RT II 1995, 22-27, 120).
+ #
+@@ -1029,8 +1117,8 @@
+ # after that.
+
+ # From Mart Oruaas (2000-01-29):
+-# Regulation no. 301 (1999-10-12) obsoletes previous regulation
+-# no. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
++# Regulation No. 301 (1999-10-12) obsoletes previous regulation
++# No. 206 (1998-09-22) and thus sticks Estonia to +02:00 GMT for all
+ # the year round. The regulation is effective 1999-11-01.
+
+ # From Toomas Soome (2002-02-21):
+@@ -1042,16 +1130,16 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Tallinn 1:39:00 - LMT 1880
+- 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
++ 1:39:00 - TMT 1918 Feb # Tallinn Mean Time
+ 1:00 C-Eur CE%sT 1919 Jul
+ 1:39:00 - TMT 1921 May
+ 2:00 - EET 1940 Aug 6
+ 3:00 - MSK 1941 Sep 15
+ 1:00 C-Eur CE%sT 1944 Sep 22
+- 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
+- 2:00 1:00 EEST 1989 Sep 24 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 1:00 EEST 1989 Sep 24 2:00s
+ 2:00 C-Eur EE%sT 1998 Sep 22
+- 2:00 EU EE%sT 1999 Nov 1
++ 2:00 EU EE%sT 1999 Oct 31 4:00
+ 2:00 - EET 2002 Feb 21
+ 2:00 EU EE%sT
+
+@@ -1195,7 +1283,7 @@
+ # on PMT-0:09:21 until 1978-08-09, when the time base finally switched to UTC.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Paris 0:09:21 - LMT 1891 Mar 15 0:01
+- 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
++ 0:09:21 - PMT 1911 Mar 11 0:01 # Paris MT
+ # Shanks & Pottenger give 1940 Jun 14 0:00; go with Excoffier and Le Corre.
+ 0:00 France WE%sT 1940 Jun 14 23:00
+ # Le Corre says Paris stuck with occupied-France time after the liberation;
+@@ -1214,14 +1302,14 @@
+
+ # From Jörg Schilling (2002-10-23):
+ # In 1945, Berlin was switched to Moscow Summer time (GMT+4) by
+-# <http://www.dhm.de/lemo/html/biografien/BersarinNikolai/>
++# http://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+ # http://www.parlament-berlin.de/pds-fraktion.nsf/727459127c8b66ee8525662300459099/defc77cb784f180ac1256c2b0030274b/$FILE/bersarint.pdf
+ # says that Bersarin issued an order to use Moscow time on May 20.
+ # However, Moscow did not observe daylight saving in 1945, so
+-# this was equivalent to CEMT (GMT+3), not GMT+4.
++# this was equivalent to UT +03, not +04.
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -1243,7 +1331,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Berlin 0:53:28 - LMT 1893 Apr
+- 1:00 C-Eur CE%sT 1945 May 24 2:00
++ 1:00 C-Eur CE%sT 1945 May 24 2:00
+ 1:00 SovietZone CE%sT 1946
+ 1:00 Germany CE%sT 1980
+ 1:00 EU CE%sT
+@@ -1259,7 +1347,7 @@
+ # http://www.srf.ch/player/video?id=c012c029-03b7-4c2b-9164-aa5902cd58d3
+
+ # From Arthur David Olson (2012-03-03):
+-# Busingen and Zurich have shared clocks since 1970.
++# Büsingen and Zurich have shared clocks since 1970.
+
+ Link Europe/Zurich Europe/Busingen
+
+@@ -1270,8 +1358,8 @@
+
+ # Gibraltar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
+- 0:00 GB-Eire %s 1957 Apr 14 2:00
++Zone Europe/Gibraltar -0:21:24 - LMT 1880 Aug 2 0:00s
++ 0:00 GB-Eire %s 1957 Apr 14 2:00
+ 1:00 - CET 1982
+ 1:00 EU CE%sT
+
+@@ -1302,7 +1390,7 @@
+ Rule Greece 1980 only - Sep 28 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Athens 1:34:52 - LMT 1895 Sep 14
+- 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
++ 1:34:52 - AMT 1916 Jul 28 0:01 # Athens MT
+ 2:00 Greece EE%sT 1941 Apr 30
+ 1:00 Greece CE%sT 1944 Apr 4
+ 2:00 Greece EE%sT 1981
+@@ -1374,36 +1462,33 @@
+ # might be a reference to the Julian calendar as opposed to Gregorian, or it
+ # might mean something else (???).
+ #
+-# From Paul Eggert (2006-03-22):
+-# The Iceland Almanak, Shanks & Pottenger, and Whitman disagree on many points.
+-# We go with the Almanak, except for one claim from Shanks & Pottenger, namely
+-# that Reykavik was 21W57 from 1837 to 1908, local mean time before that.
++# From Paul Eggert (2014-11-22):
++# The information below is taken from the 1988 Almanak; see
++# http://www.almanak.hi.is/klukkan.html
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Iceland 1917 1918 - Feb 19 23:00 1:00 S
++Rule Iceland 1917 1919 - Feb 19 23:00 1:00 S
+ Rule Iceland 1917 only - Oct 21 1:00 0 -
+-Rule Iceland 1918 only - Nov 16 1:00 0 -
++Rule Iceland 1918 1919 - Nov 16 1:00 0 -
++Rule Iceland 1921 only - Mar 19 23:00 1:00 S
++Rule Iceland 1921 only - Jun 23 1:00 0 -
+ Rule Iceland 1939 only - Apr 29 23:00 1:00 S
+-Rule Iceland 1939 only - Nov 29 2:00 0 -
++Rule Iceland 1939 only - Oct 29 2:00 0 -
+ Rule Iceland 1940 only - Feb 25 2:00 1:00 S
+-Rule Iceland 1940 only - Nov 3 2:00 0 -
+-Rule Iceland 1941 only - Mar 2 1:00s 1:00 S
+-Rule Iceland 1941 only - Nov 2 1:00s 0 -
+-Rule Iceland 1942 only - Mar 8 1:00s 1:00 S
+-Rule Iceland 1942 only - Oct 25 1:00s 0 -
++Rule Iceland 1940 1941 - Nov Sun>=2 1:00s 0 -
++Rule Iceland 1941 1942 - Mar Sun>=2 1:00s 1:00 S
+ # 1943-1946 - first Sunday in March until first Sunday in winter
+ Rule Iceland 1943 1946 - Mar Sun>=1 1:00s 1:00 S
+-Rule Iceland 1943 1948 - Oct Sun>=22 1:00s 0 -
++Rule Iceland 1942 1948 - Oct Sun>=22 1:00s 0 -
+ # 1947-1967 - first Sunday in April until first Sunday in winter
+ Rule Iceland 1947 1967 - Apr Sun>=1 1:00s 1:00 S
+-# 1949 Oct transition delayed by 1 week
++# 1949 and 1967 Oct transitions delayed by 1 week
+ Rule Iceland 1949 only - Oct 30 1:00s 0 -
+ Rule Iceland 1950 1966 - Oct Sun>=22 1:00s 0 -
+ Rule Iceland 1967 only - Oct 29 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Reykjavik -1:27:24 - LMT 1837
+- -1:27:48 - RMT 1908 # Reykjavik Mean Time?
+- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
++Zone Atlantic/Reykjavik -1:28 - LMT 1908
++ -1:00 Iceland IS%sT 1968 Apr 7 1:00s
+ 0:00 - GMT
+
+ # Italy
+@@ -1415,73 +1500,84 @@
+ # But these events all occurred before the 1970 cutoff,
+ # so record only the time in Rome.
+ #
+-# From Paul Eggert (2006-03-22):
+-# For Italian DST we have three sources: Shanks & Pottenger, Whitman, and
+-# F. Pollastri
+-# Day-light Saving Time in Italy (2006-02-03)
+-# <http://toi.iriti.cnr.it/uk/ienitlt.html>
+-# ('FP' below), taken from an Italian National Electrotechnical Institute
+-# publication. When the three sources disagree, guess who's right, as follows:
+-#
+-# year FP Shanks&P. (S) Whitman (W) Go with:
+-# 1916 06-03 06-03 24:00 06-03 00:00 FP & W
+-# 09-30 09-30 24:00 09-30 01:00 FP; guess 24:00s
+-# 1917 04-01 03-31 24:00 03-31 00:00 FP & S
+-# 09-30 09-29 24:00 09-30 01:00 FP & W
+-# 1918 03-09 03-09 24:00 03-09 00:00 FP & S
+-# 10-06 10-05 24:00 10-06 01:00 FP & W
+-# 1919 03-01 03-01 24:00 03-01 00:00 FP & S
+-# 10-04 10-04 24:00 10-04 01:00 FP; guess 24:00s
+-# 1920 03-20 03-20 24:00 03-20 00:00 FP & S
+-# 09-18 09-18 24:00 10-01 01:00 FP; guess 24:00s
+-# 1944 04-02 04-03 02:00 S (see C-Eur)
+-# 09-16 10-02 03:00 FP; guess 24:00s
+-# 1945 09-14 09-16 24:00 FP; guess 24:00s
+-# 1970 05-21 05-31 00:00 S
+-# 09-20 09-27 00:00 S
+-#
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Italy 1916 only - Jun 3 0:00s 1:00 S
+-Rule Italy 1916 only - Oct 1 0:00s 0 -
+-Rule Italy 1917 only - Apr 1 0:00s 1:00 S
+-Rule Italy 1917 only - Sep 30 0:00s 0 -
+-Rule Italy 1918 only - Mar 10 0:00s 1:00 S
+-Rule Italy 1918 1919 - Oct Sun>=1 0:00s 0 -
+-Rule Italy 1919 only - Mar 2 0:00s 1:00 S
+-Rule Italy 1920 only - Mar 21 0:00s 1:00 S
+-Rule Italy 1920 only - Sep 19 0:00s 0 -
+-Rule Italy 1940 only - Jun 15 0:00s 1:00 S
+-Rule Italy 1944 only - Sep 17 0:00s 0 -
+-Rule Italy 1945 only - Apr 2 2:00 1:00 S
+-Rule Italy 1945 only - Sep 15 0:00s 0 -
+-Rule Italy 1946 only - Mar 17 2:00s 1:00 S
+-Rule Italy 1946 only - Oct 6 2:00s 0 -
+-Rule Italy 1947 only - Mar 16 0:00s 1:00 S
+-Rule Italy 1947 only - Oct 5 0:00s 0 -
+-Rule Italy 1948 only - Feb 29 2:00s 1:00 S
+-Rule Italy 1948 only - Oct 3 2:00s 0 -
+-Rule Italy 1966 1968 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1966 1969 - Sep Sun>=22 0:00 0 -
+-Rule Italy 1969 only - Jun 1 0:00 1:00 S
+-Rule Italy 1970 only - May 31 0:00 1:00 S
+-Rule Italy 1970 only - Sep lastSun 0:00 0 -
+-Rule Italy 1971 1972 - May Sun>=22 0:00 1:00 S
+-Rule Italy 1971 only - Sep lastSun 1:00 0 -
+-Rule Italy 1972 only - Oct 1 0:00 0 -
+-Rule Italy 1973 only - Jun 3 0:00 1:00 S
+-Rule Italy 1973 1974 - Sep lastSun 0:00 0 -
+-Rule Italy 1974 only - May 26 0:00 1:00 S
+-Rule Italy 1975 only - Jun 1 0:00s 1:00 S
+-Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
+-Rule Italy 1976 only - May 30 0:00s 1:00 S
+-Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
+-Rule Italy 1978 only - Oct 1 0:00s 0 -
+-Rule Italy 1979 only - Sep 30 0:00s 0 -
++# From Michael Deckers (2016-10-24):
++# http://www.ac-ilsestante.it/MERIDIANE/ora_legale quotes a law of 1893-08-10
++# ... [translated as] "The preceding dispositions will enter into
++# force at the instant at which, according to the time specified in
++# the 1st article, the 1st of November 1893 will begin...."
++#
++# From Pierpaolo Bernardi (2016-10-20):
++# The authoritative source for time in Italy is the national metrological
++# institute, which has a summary page of historical DST data at
++# http://www.inrim.it/res/tf/ora_legale_i.shtml
++# (2016-10-24):
++# http://www.renzobaldini.it/le-ore-legali-in-italia/
++# has still different data for 1944. It divides Italy in two, as
++# there were effectively two governments at the time, north of Gothic
++# Line German controlled territory, official government RSI, and south
++# of the Gothic Line, controlled by allied armies.
++#
++# From Brian Inglis (2016-10-23):
++# Viceregal LEGISLATIVE DECREE. 14 September 1944, no. 219.
++# Restoration of Standard Time. (044U0219) (OJ 62 of 30.9.1944) ...
++# Given the R. law decreed on 1944-03-29, no. 92, by which standard time is
++# advanced to sixty minutes later starting at hour two on 1944-04-02; ...
++# Starting at hour three on the date 1944-09-17 standard time will be resumed.
++#
++# From Paul Eggert (2016-10-27):
++# Go with INRiM for DST rules, except as corrected by Inglis for 1944
++# for the Kingdom of Italy. This is consistent with Renzo Baldini.
++# Model Rome's occupation by using using C-Eur rules from 1943-09-10
++# to 1944-06-04; although Rome was an open city during this period, it
++# was effectively controlled by Germany.
++#
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Italy 1916 only - Jun 3 24:00 1:00 S
++Rule Italy 1916 1917 - Sep 30 24:00 0 -
++Rule Italy 1917 only - Mar 31 24:00 1:00 S
++Rule Italy 1918 only - Mar 9 24:00 1:00 S
++Rule Italy 1918 only - Oct 6 24:00 0 -
++Rule Italy 1919 only - Mar 1 24:00 1:00 S
++Rule Italy 1919 only - Oct 4 24:00 0 -
++Rule Italy 1920 only - Mar 20 24:00 1:00 S
++Rule Italy 1920 only - Sep 18 24:00 0 -
++Rule Italy 1940 only - Jun 14 24:00 1:00 S
++Rule Italy 1942 only - Nov 2 2:00s 0 -
++Rule Italy 1943 only - Mar 29 2:00s 1:00 S
++Rule Italy 1943 only - Oct 4 2:00s 0 -
++Rule Italy 1944 only - Apr 2 2:00s 1:00 S
++Rule Italy 1944 only - Sep 17 2:00s 0 -
++Rule Italy 1945 only - Apr 2 2:00 1:00 S
++Rule Italy 1945 only - Sep 15 1:00 0 -
++Rule Italy 1946 only - Mar 17 2:00s 1:00 S
++Rule Italy 1946 only - Oct 6 2:00s 0 -
++Rule Italy 1947 only - Mar 16 0:00s 1:00 S
++Rule Italy 1947 only - Oct 5 0:00s 0 -
++Rule Italy 1948 only - Feb 29 2:00s 1:00 S
++Rule Italy 1948 only - Oct 3 2:00s 0 -
++Rule Italy 1966 1968 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1966 only - Sep 24 24:00 0 -
++Rule Italy 1967 1969 - Sep Sun>=22 0:00s 0 -
++Rule Italy 1969 only - Jun 1 0:00s 1:00 S
++Rule Italy 1970 only - May 31 0:00s 1:00 S
++Rule Italy 1970 only - Sep lastSun 0:00s 0 -
++Rule Italy 1971 1972 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1971 only - Sep lastSun 0:00s 0 -
++Rule Italy 1972 only - Oct 1 0:00s 0 -
++Rule Italy 1973 only - Jun 3 0:00s 1:00 S
++Rule Italy 1973 1974 - Sep lastSun 0:00s 0 -
++Rule Italy 1974 only - May 26 0:00s 1:00 S
++Rule Italy 1975 only - Jun 1 0:00s 1:00 S
++Rule Italy 1975 1977 - Sep lastSun 0:00s 0 -
++Rule Italy 1976 only - May 30 0:00s 1:00 S
++Rule Italy 1977 1979 - May Sun>=22 0:00s 1:00 S
++Rule Italy 1978 only - Oct 1 0:00s 0 -
++Rule Italy 1979 only - Sep 30 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Rome 0:49:56 - LMT 1866 Sep 22
+- 0:49:56 - RMT 1893 Nov 1 0:00s # Rome Mean
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1944 Jul
++ 0:49:56 - RMT 1893 Oct 31 23:49:56 # Rome Mean
++ 1:00 Italy CE%sT 1943 Sep 10
++ 1:00 C-Eur CE%sT 1944 Jun 4
+ 1:00 Italy CE%sT 1980
+ 1:00 EU CE%sT
+
+@@ -1497,21 +1593,21 @@
+ # correct data in juridical acts and I found some juridical documents about
+ # changes in the counting of time in Latvia from 1981....
+ #
+-# Act No.35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
+-# according to the Act No.925 of the Council of Ministers of USSR of 1980-10-24
++# Act No. 35 of the Council of Ministers of Latvian SSR of 1981-01-22 ...
++# according to the Act No. 925 of the Council of Ministers of USSR of 1980-10-24
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on 1 April at 00:00 (GMT 31 March 21:00)
+ # and 1 hour backward on the 1 October at 00:00 (GMT 30 September 20:00).
+ #
+-# Act No.592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
+-# according to the Act No.967 of the Council of Ministers of USSR of 1984-09-13
++# Act No. 592 of the Council of Ministers of Latvian SSR of 1984-09-24 ...
++# according to the Act No. 967 of the Council of Ministers of USSR of 1984-09-13
+ # ...: all year round the time of 2nd time zone + 1 hour, in addition turning
+ # the hands of the clock 1 hour forward on the last Sunday of March at 02:00
+ # (GMT 23:00 on the previous day) and 1 hour backward on the last Sunday of
+ # September at 03:00 (GMT 23:00 on the previous day).
+ #
+-# Act No.81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
+-# according to the Act No.227 of the Council of Ministers of USSR of 1989-03-14
++# Act No. 81 of the Council of Ministers of Latvian SSR of 1989-03-22 ...
++# according to the Act No. 227 of the Council of Ministers of USSR of 1989-03-14
+ # ...: since the last Sunday of March 1989 in Lithuanian SSR, Latvian SSR,
+ # Estonian SSR and Kaliningrad region of Russian Federation all year round the
+ # time of 2nd time zone (Moscow time minus one hour). On the territory of Latvia
+@@ -1528,17 +1624,17 @@
+ # From Andrei Ivanov (2000-03-06):
+ # This year Latvia will not switch to Daylight Savings Time (as specified in
+ # The Regulations of the Cabinet of Ministers of the Rep. of Latvia of
+-# 29-Feb-2000 (#79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
++# 29-Feb-2000 (No. 79) <http://www.lv-laiks.lv/wwwraksti/2000/071072/vd4.htm>,
+ # in Latvian for subscribers only).
+
+ # From RFE/RL Newsline
+-# <http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html>
++# http://www.rferl.org/newsline/2001/01/3-CEE/cee-030101.html
+ # (2001-01-03), noted after a heads-up by Rives McDow:
+ # The Latvian government on 2 January decided that the country will
+ # institute daylight-saving time this spring, LETA reported.
+ # Last February the three Baltic states decided not to turn back their
+ # clocks one hour in the spring....
+-# Minister of Economy Aigars Kalvitis noted that Latvia had too few
++# Minister of Economy Aigars Kalvītis noted that Latvia had too few
+ # daylight hours and thus decided to comply with a draft European
+ # Commission directive that provides for instituting daylight-saving
+ # time in EU countries between 2002 and 2006. The Latvian government
+@@ -1549,20 +1645,22 @@
+ Rule Latvia 1989 1996 - Mar lastSun 2:00s 1:00 S
+ Rule Latvia 1989 1996 - Sep lastSun 2:00s 0 -
+
+-# Milne says Riga time was 1:36:28 (Polytechnique House time).
++# Milne 1899 says Riga was 1:36:28 (Polytechnique House time).
++# Byalokoz 1919 says Latvia was 1:36:34.
++# Go with Byalokoz.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Riga 1:36:28 - LMT 1880
+- 1:36:28 - RMT 1918 Apr 15 2:00 #Riga Mean Time
+- 1:36:28 1:00 LST 1918 Sep 16 3:00 #Latvian Summer
+- 1:36:28 - RMT 1919 Apr 1 2:00
+- 1:36:28 1:00 LST 1919 May 22 3:00
+- 1:36:28 - RMT 1926 May 11
++Zone Europe/Riga 1:36:34 - LMT 1880
++ 1:36:34 - RMT 1918 Apr 15 2:00 # Riga MT
++ 1:36:34 1:00 LST 1918 Sep 16 3:00 # Latvian ST
++ 1:36:34 - RMT 1919 Apr 1 2:00
++ 1:36:34 1:00 LST 1919 May 22 3:00
++ 1:36:34 - RMT 1926 May 11
+ 2:00 - EET 1940 Aug 5
+ 3:00 - MSK 1941 Jul
+ 1:00 C-Eur CE%sT 1944 Oct 13
+- 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
+- 2:00 1:00 EEST 1989 Sep lastSun 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar lastSun 2:00s
++ 2:00 1:00 EEST 1989 Sep lastSun 2:00s
+ 2:00 Latvia EE%sT 1997 Jan 21
+ 2:00 EU EE%sT 2000 Feb 29
+ 2:00 - EET 2001 Jan 2
+@@ -1588,6 +1686,9 @@
+
+ # Lithuania
+
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
+ # From Paul Eggert (1996-11-22):
+ # IATA SSIM (1992/1996) says Lithuania uses W-Eur rules, but since it is
+ # known to be wrong about Estonia and Latvia, assume it's wrong here too.
+@@ -1620,18 +1721,18 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Vilnius 1:41:16 - LMT 1880
+- 1:24:00 - WMT 1917 # Warsaw Mean Time
++ 1:24:00 - WMT 1917 # Warsaw Mean Time
+ 1:35:36 - KMT 1919 Oct 10 # Kaunas Mean Time
+ 1:00 - CET 1920 Jul 12
+ 2:00 - EET 1920 Oct 9
+ 1:00 - CET 1940 Aug 3
+ 3:00 - MSK 1941 Jun 24
+ 1:00 C-Eur CE%sT 1944 Aug
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 1:00 EEST 1991 Sep 29 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 1991 Sep 29 2:00s
+ 2:00 C-Eur EE%sT 1998
+- 2:00 - EET 1998 Mar 29 1:00u
+- 1:00 EU CE%sT 1999 Oct 31 1:00u
++ 2:00 - EET 1998 Mar 29 1:00u
++ 1:00 EU CE%sT 1999 Oct 31 1:00u
+ 2:00 - EET 2003 Jan 1
+ 2:00 EU EE%sT
+
+@@ -1665,9 +1766,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Luxembourg 0:24:36 - LMT 1904 Jun
+ 1:00 Lux CE%sT 1918 Nov 25
+- 0:00 Lux WE%sT 1929 Oct 6 2:00s
+- 0:00 Belgium WE%sT 1940 May 14 3:00
+- 1:00 C-Eur WE%sT 1944 Sep 18 3:00
++ 0:00 Lux WE%sT 1929 Oct 6 2:00s
++ 0:00 Belgium WE%sT 1940 May 14 3:00
++ 1:00 C-Eur WE%sT 1944 Sep 18 3:00
+ 1:00 Belgium CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1675,6 +1776,10 @@
+ # See Europe/Belgrade.
+
+ # Malta
++#
++# From Paul Eggert (2016-10-21):
++# Assume 1900-1972 was like Rome, overriding Shanks.
++#
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Malta 1973 only - Mar 31 0:00s 1:00 S
+ Rule Malta 1973 only - Sep 29 0:00s 0 -
+@@ -1684,15 +1789,23 @@
+ Rule Malta 1975 1980 - Sep Sun>=15 2:00 0 -
+ Rule Malta 1980 only - Mar 31 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+- 1:00 Italy CE%sT 1942 Nov 2 2:00s
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00s
++Zone Europe/Malta 0:58:04 - LMT 1893 Nov 2 0:00s # Valletta
+ 1:00 Italy CE%sT 1973 Mar 31
+ 1:00 Malta CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Moldova
+
++# From Stepan Golosunov (2016-03-07):
++# the act of the government of the Republic of Moldova Nr. 132 from 1990-05-04
++# http://lex.justice.md/viewdoc.php?action=view&view=doc&id=298782&lang=2
++# ... says that since 1990-05-06 on the territory of the Moldavian SSR
++# time would be calculated as the standard time of the second time belt
++# plus one hour of the "summer" time. To implement that clocks would be
++# adjusted one hour backwards at 1990-05-06 2:00. After that "summer"
++# time would be cancelled last Sunday of September at 3:00 and
++# reintroduced last Sunday of March at 2:00.
++
+ # From Paul Eggert (2006-03-22):
+ # A previous version of this database followed Shanks & Pottenger, who write
+ # that Tiraspol switched to Moscow time on 1992-01-19 at 02:00.
+@@ -1731,6 +1844,18 @@
+ # News from Moldova (in russian):
+ # http://ru.publika.md/link_317061.html
+
++# From Roman Tudos (2015-07-02):
++# http://lex.justice.md/index.php?action=view&view=doc&lang=1&id=355077
++# From Paul Eggert (2015-07-01):
++# The abovementioned official link to IGO1445-868/2014 states that
++# 2014-10-26's fallback transition occurred at 03:00 local time. Also,
++# http://www.trm.md/en/social/la-30-martie-vom-trece-la-ora-de-vara
++# says the 2014-03-30 spring-forward transition was at 02:00 local time.
++# Guess that since 1997 Moldova has switched one hour before the EU.
++
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Moldova 1997 max - Mar lastSun 2:00 1:00 S
++Rule Moldova 1997 max - Oct lastSun 3:00 0 -
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Chisinau 1:55:20 - LMT 1880
+@@ -1739,21 +1864,19 @@
+ 2:00 Romania EE%sT 1940 Aug 15
+ 2:00 1:00 EEST 1941 Jul 17
+ 1:00 C-Eur CE%sT 1944 Aug 24
+- 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 May 6
+- 2:00 - EET 1991
++ 3:00 Russia MSK/MSD 1990 May 6 2:00
+ 2:00 Russia EE%sT 1992
+ 2:00 E-Eur EE%sT 1997
+ # See Romania commentary for the guessed 1997 transition to EU rules.
+- 2:00 EU EE%sT
++ 2:00 Moldova EE%sT
+
+ # Monaco
+ # Shanks & Pottenger give 0:09:20 for Paris Mean Time; go with Howse's
+ # more precise 0:09:21.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Monaco 0:29:32 - LMT 1891 Mar 15
+- 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
+- 0:00 France WE%sT 1945 Sep 16 3:00
++ 0:09:21 - PMT 1911 Mar 11 # Paris Mean Time
++ 0:00 France WE%sT 1945 Sep 16 3:00
+ 1:00 France CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1797,8 +1920,8 @@
+ # was not until 1866 when they were all required by law to observe
+ # Amsterdam mean time.
+
+-# The data before 1945 are taken from
+-# <http://www.phys.uu.nl/~vgent/wettijd/wettijd.htm>.
++# The data entries before 1945 are taken from
++# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Neth 1916 only - May 1 0:00 1:00 NST # Netherlands Summer Time
+@@ -1829,8 +1952,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Amsterdam 0:19:32 - LMT 1835
+ 0:19:32 Neth %s 1937 Jul 1
+- 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
+- 1:00 C-Eur CE%sT 1945 Apr 2 2:00
++ 0:20 Neth NE%sT 1940 May 16 0:00 # Dutch Time
++ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Neth CE%sT 1977
+ 1:00 EU CE%sT
+
+@@ -1893,7 +2016,7 @@
+ # <http://www.svalbard.com/SvalbardFAQ.html> says that the Germans were
+ # expelled on 1942-05-14. However, small parties of Germans did return,
+ # and according to Wilhelm Dege's book "War North of 80" (1954)
+-# <http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html>
++# http://www.ucalgary.ca/UofC/departments/UP/1-55238/1-55238-110-2.html
+ # the German armed forces at the Svalbard weather station code-named
+ # Haudegen did not surrender to the Allies until September 1945.
+ #
+@@ -1917,7 +2040,7 @@
+ Rule Poland 1945 only - Nov 1 0:00 0 -
+ # For 1946 on the source is Kazimierz Borkowski,
+ # Toruń Center for Astronomy, Dept. of Radio Astronomy, Nicolaus Copernicus U.,
+-# <http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1>
++# http://www.astro.uni.torun.pl/~kb/Artykuly/U-PA/Czas2.htm#tth_tAb1
+ # Thanks to Przemysław Augustyniak (2005-05-28) for this reference.
+ # He also gives these further references:
+ # Mon Pol nr 13, poz 162 (1995) <http://www.abc.com.pl/serwis/mp/1995/0162.htm>
+@@ -1938,10 +2061,10 @@
+ Rule Poland 1962 1964 - Sep lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Warsaw 1:24:00 - LMT 1880
+- 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
+- 1:00 C-Eur CE%sT 1918 Sep 16 3:00
++ 1:24:00 - WMT 1915 Aug 5 # Warsaw Mean Time
++ 1:00 C-Eur CE%sT 1918 Sep 16 3:00
+ 2:00 Poland EE%sT 1922 Jun
+- 1:00 Poland CE%sT 1940 Jun 23 2:00
++ 1:00 Poland CE%sT 1940 Jun 23 2:00
+ 1:00 C-Eur CE%sT 1944 Oct
+ 1:00 Poland CE%sT 1977
+ 1:00 W-Eur CE%sT 1988
+@@ -1949,6 +2072,14 @@
+
+ # Portugal
+ #
++# From Paul Eggert (2014-08-11), after a heads-up from Stephen Colebourne:
++# According to a Portuguese decree (1911-05-26)
++# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# Lisbon was at -0:36:44.68, but switched to GMT on 1912-01-01 at 00:00.
++# Round the old offset to -0:36:45. This agrees with Willett but disagrees
++# with Shanks, who says the transition occurred on 1911-05-24 at 00:00 for
++# Europe/Lisbon, Atlantic/Azores, and Atlantic/Madeira.
++#
+ # From Rui Pedro Salgueiro (1992-11-12):
+ # Portugal has recently (September, 27) changed timezone
+ # (from WET to MET or CET) to harmonize with EEC.
+@@ -2028,28 +2159,27 @@
+ Rule Port 1980 only - Mar lastSun 0:00s 1:00 S
+ Rule Port 1981 1982 - Mar lastSun 1:00s 1:00 S
+ Rule Port 1983 only - Mar lastSun 2:00s 1:00 S
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-# Shanks & Pottenger say the transition from LMT to WET occurred 1911-05-24;
+-# Willett says 1912-01-01. Go with Willett.
+-Zone Europe/Lisbon -0:36:32 - LMT 1884
+- -0:36:32 - LMT 1912 Jan 1 # Lisbon Mean Time
+- 0:00 Port WE%sT 1966 Apr 3 2:00
+- 1:00 - CET 1976 Sep 26 1:00
+- 0:00 Port WE%sT 1983 Sep 25 1:00s
+- 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
+- 1:00 EU CE%sT 1996 Mar 31 1:00u
++Zone Europe/Lisbon -0:36:45 - LMT 1884
++ -0:36:45 - LMT 1912 Jan 1 # Lisbon Mean Time
++ 0:00 Port WE%sT 1966 Apr 3 2:00
++ 1:00 - CET 1976 Sep 26 1:00
++ 0:00 Port WE%sT 1983 Sep 25 1:00s
++ 0:00 W-Eur WE%sT 1992 Sep 27 1:00s
++ 1:00 EU CE%sT 1996 Mar 31 1:00u
+ 0:00 EU WE%sT
+-Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
+- -1:54:32 - HMT 1911 May 24 # Horta Mean Time
+- -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
+- -1:00 Port AZO%sT 1983 Sep 25 1:00s
+- -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
+- 0:00 EU WE%sT 1993 Mar 28 1:00u
++Zone Atlantic/Azores -1:42:40 - LMT 1884 # Ponta Delgada
++ -1:54:32 - HMT 1912 Jan 1 # Horta Mean Time
++ -2:00 Port AZO%sT 1966 Apr 3 2:00 # Azores Time
++ -1:00 Port AZO%sT 1983 Sep 25 1:00s
++ -1:00 W-Eur AZO%sT 1992 Sep 27 1:00s
++ 0:00 EU WE%sT 1993 Mar 28 1:00u
+ -1:00 EU AZO%sT
+-Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
+- -1:07:36 - FMT 1911 May 24 # Funchal Mean Time
+- -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
+- 0:00 Port WE%sT 1983 Sep 25 1:00s
++Zone Atlantic/Madeira -1:07:36 - LMT 1884 # Funchal
++ -1:07:36 - FMT 1912 Jan 1 # Funchal Mean Time
++ -1:00 Port MAD%sT 1966 Apr 3 2:00 # Madeira Time
++ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 EU WE%sT
+
+ # Romania
+@@ -2073,8 +2203,8 @@
+ Rule Romania 1991 1993 - Sep lastSun 0:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Bucharest 1:44:24 - LMT 1891 Oct
+- 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
+- 2:00 Romania EE%sT 1981 Mar 29 2:00s
++ 1:44:24 - BMT 1931 Jul 24 # Bucharest MT
++ 2:00 Romania EE%sT 1981 Mar 29 2:00s
+ 2:00 C-Eur EE%sT 1991
+ 2:00 Romania EE%sT 1994
+ 2:00 E-Eur EE%sT 1997
+@@ -2084,7 +2214,7 @@
+ # Russia
+
+ # From Alexander Krivenyshev (2011-09-15):
+-# Based on last Russian Government Decree # 725 on August 31, 2011
++# Based on last Russian Government Decree No. 725 on August 31, 2011
+ # (Government document
+ # http://www.government.ru/gov/results/16355/print/
+ # in Russian)
+@@ -2094,7 +2224,7 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia36.htm
+
+ # From Sanjeev Gupta (2011-09-27):
+-# Scans of [Decree #23 of January 8, 1992] are available at:
++# Scans of [Decree No. 23 of January 8, 1992] are available at:
+ # http://government.consultant.ru/page.aspx?1223966
+ # They are in Cyrillic letters (presumably Russian).
+
+@@ -2105,19 +2235,19 @@
+ # One source is
+ # http://government.ru/gov/results/16355/
+ # which, according to translate.google.com, begins "Decree of August 31,
+-# 2011 No 725" and contains no other dates or "effective date" information.
++# 2011 No. 725" and contains no other dates or "effective date" information.
+ #
+ # Another source is
+ # http://www.rg.ru/2011/09/06/chas-zona-dok.html
+ # which, according to translate.google.com, begins "Resolution of the
+ # Government of the Russian Federation on August 31, 2011 N 725" and also
+ # contains "Date first official publication: September 6, 2011 Posted on:
+-# in the 'RG' - Federal Issue number 5573 September 6, 2011" but which
++# in the 'RG' - Federal Issue No. 5573 September 6, 2011" but which
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+ # http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+-# which, in note 8, contains "Resolution #725 of August 31, 2011...
++# which, in note 8, contains "Resolution No. 725 of August 31, 2011...
+ # Effective as of after 7 days following the day of the official publication"
+ # but which does not contain any reference to September 6, 2011.
+ #
+@@ -2156,7 +2286,6 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+-# Except for Moscow after 1919-07-01, I invented the time zone abbreviations.
+ # Moscow time zone abbreviations after 1919-07-01, and Moscow rules after 1991,
+ # are from Andrey A. Chernov. The rest is from Shanks & Pottenger,
+ # except we follow Chernov's report that 1992 DST transitions were Sat
+@@ -2210,73 +2339,179 @@
+
+ # From Tim Parenti (2014-07-03):
+ # Europe/Kaliningrad covers...
+-# 39 RU-KGD Kaliningrad Oblast
++# 39 RU-KGD Kaliningrad Oblast
++
++# From Paul Eggert (2016-03-18):
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Stepan Golosunov (2016-03-07):
++# http://www.rgo.ru/ru/kaliningradskoe-oblastnoe-otdelenie/ob-otdelenii/publikacii/kak-nam-zhilos-bez-letnego-vremeni
++# confirms that the 1989 change to Moscow-1 was implemented.
++# (The article, though, is misattributed to 1990 while saying that
++# summer->winter transition would be done on the 24 of September. But
++# 1990-09-24 was Monday, while 1989-09-24 was Sunday as expected.)
++# ...
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad switched to Moscow-1 on 1989-03-26, avoided
++# at the last moment switch to Moscow-1 on 1991-03-31, switched to
++# Moscow on 1991-11-03, switched to Moscow-1 on 1992-01-19.
+
+ Zone Europe/Kaliningrad 1:22:00 - LMT 1893 Apr
+ 1:00 C-Eur CE%sT 1945
+ 2:00 Poland CE%sT 1946
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 2011 Mar 27 2:00s
+- 3:00 - FET 2014 Oct 26 2:00s
++ 3:00 Russia MSK/MSD 1989 Mar 26 2:00s
++ 2:00 Russia EE%sT 2011 Mar 27 2:00s
++ 3:00 - +03 2014 Oct 26 2:00s
+ 2:00 - EET
+
+
+-# From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
++# From Paul Eggert (2016-02-21), per Tim Parenti (2014-07-03) and
++# Oscar van Vlijmen (2001-08-25):
+ # Europe/Moscow covers...
+-# 01 RU-AD Adygea, Republic of
+-# 05 RU-DA Dagestan, Republic of
+-# 06 RU-IN Ingushetia, Republic of
+-# 07 RU-KB Kabardino-Balkar Republic
+-# 08 RU-KL Kalmykia, Republic of
+-# 09 RU-KC Karachay-Cherkess Republic
+-# 10 RU-KR Karelia, Republic of
+-# 11 RU-KO Komi Republic
+-# 12 RU-ME Mari El Republic
+-# 13 RU-MO Mordovia, Republic of
+-# 15 RU-SE North Ossetia-Alania, Republic of
+-# 16 RU-TA Tatarstan, Republic of
+-# 20 RU-CE Chechen Republic
+-# 21 RU-CU Chuvash Republic
+-# 23 RU-KDA Krasnodar Krai
+-# 26 RU-STA Stavropol Krai
+-# 29 RU-ARK Arkhangelsk Oblast
+-# 31 RU-BEL Belgorod Oblast
+-# 32 RU-BRY Bryansk Oblast
+-# 33 RU-VLA Vladimir Oblast
+-# 35 RU-VLG Vologda Oblast
+-# 36 RU-VOR Voronezh Oblast
+-# 37 RU-IVA Ivanovo Oblast
+-# 40 RU-KLU Kaluga Oblast
+-# 44 RU-KOS Kostroma Oblast
+-# 46 RU-KRS Kursk Oblast
+-# 47 RU-LEN Leningrad Oblast
+-# 48 RU-LIP Lipetsk Oblast
+-# 50 RU-MOS Moscow Oblast
+-# 51 RU-MUR Murmansk Oblast
+-# 52 RU-NIZ Nizhny Novgorod Oblast
+-# 53 RU-NGR Novgorod Oblast
+-# 57 RU-ORL Oryol Oblast
+-# 58 RU-PNZ Penza Oblast
+-# 60 RU-PSK Pskov Oblast
+-# 61 RU-ROS Rostov Oblast
+-# 62 RU-RYA Ryazan Oblast
+-# 67 RU-SMO Smolensk Oblast
+-# 68 RU-TAM Tambov Oblast
+-# 69 RU-TVE Tver Oblast
+-# 71 RU-TUL Tula Oblast
+-# 73 RU-ULY Ulyanovsk Oblast
+-# 76 RU-YAR Yaroslavl Oblast
+-# 77 RU-MOW Moscow
+-# 78 RU-SPE Saint Petersburg
+-# 83 RU-NEN Nenets Autonomous Okrug
++# 01 RU-AD Adygea, Republic of
++# 05 RU-DA Dagestan, Republic of
++# 06 RU-IN Ingushetia, Republic of
++# 07 RU-KB Kabardino-Balkar Republic
++# 08 RU-KL Kalmykia, Republic of
++# 09 RU-KC Karachay-Cherkess Republic
++# 10 RU-KR Karelia, Republic of
++# 11 RU-KO Komi Republic
++# 12 RU-ME Mari El Republic
++# 13 RU-MO Mordovia, Republic of
++# 15 RU-SE North Ossetia-Alania, Republic of
++# 16 RU-TA Tatarstan, Republic of
++# 20 RU-CE Chechen Republic
++# 21 RU-CU Chuvash Republic
++# 23 RU-KDA Krasnodar Krai
++# 26 RU-STA Stavropol Krai
++# 29 RU-ARK Arkhangelsk Oblast
++# 31 RU-BEL Belgorod Oblast
++# 32 RU-BRY Bryansk Oblast
++# 33 RU-VLA Vladimir Oblast
++# 35 RU-VLG Vologda Oblast
++# 36 RU-VOR Voronezh Oblast
++# 37 RU-IVA Ivanovo Oblast
++# 40 RU-KLU Kaluga Oblast
++# 44 RU-KOS Kostroma Oblast
++# 46 RU-KRS Kursk Oblast
++# 47 RU-LEN Leningrad Oblast
++# 48 RU-LIP Lipetsk Oblast
++# 50 RU-MOS Moscow Oblast
++# 51 RU-MUR Murmansk Oblast
++# 52 RU-NIZ Nizhny Novgorod Oblast
++# 53 RU-NGR Novgorod Oblast
++# 57 RU-ORL Oryol Oblast
++# 58 RU-PNZ Penza Oblast
++# 60 RU-PSK Pskov Oblast
++# 61 RU-ROS Rostov Oblast
++# 62 RU-RYA Ryazan Oblast
++# 67 RU-SMO Smolensk Oblast
++# 68 RU-TAM Tambov Oblast
++# 69 RU-TVE Tver Oblast
++# 71 RU-TUL Tula Oblast
++# 76 RU-YAR Yaroslavl Oblast
++# 77 RU-MOW Moscow
++# 78 RU-SPE Saint Petersburg
++# 83 RU-NEN Nenets Autonomous Okrug
++
++# From Paul Eggert (2016-08-23):
++# The Soviets switched to UT-based time in 1919. Decree No. 59
++# (1919-02-08) http://istmat.info/node/35567 established UT-based time
++# zones, and Decree No. 147 (1919-03-29) http://istmat.info/node/35854
++# specified a transition date of 1919-07-01, apparently at 00:00 UT.
++# No doubt only the Soviet-controlled regions switched on that date;
++# later transitions to UT-based time in other parts of Russia are
++# taken from what appear to be guesses by Shanks.
++# (Thanks to Alexander Belopolsky for pointers to the decrees.)
++
++# From Stepan Golosunov (2016-03-07):
++# 11. Regions-violators, 1981-1982.
++# Wikipedia refers to
++# http://maps.monetonos.ru/maps/raznoe/Old_Maps/Old_Maps/Articles/022/3_1981.html
++# http://besp.narod.ru/nauka_1981_3.htm
++#
++# The second link provides two articles scanned from the Nauka i Zhizn
++# magazine No. 3, 1981 and a scan of the short article attributed to
++# the Trud newspaper from February 1982. The first link provides the
++# same Nauka i Zhizn articles converted to the text form (but misses
++# time belt changes map).
++#
++# The second Nauka i Zhizn article says that in addition to
++# introduction of summer time on 1981-04-01 there are some time belt
++# border changes on 1981-10-01, mostly affecting Nenets Autonomous
++# Okrug, Krasnoyarsk Krai, Yakutia, Magadan Oblast and Chukotka
++# according to the provided map (colored one). In addition to that
++# "time violators" (regions which were not using rules of the time
++# belts in which they were located) would not be moving off the DST on
++# 1981-10-01 to restore the decree time usage. (Komi ASSR was
++# supposed to repeat that move in October 1982 to account for the 2
++# hour difference.) Map depicting "time violators" before 1981-10-01
++# is also provided.
++#
++# The article from Trud says that 1981-10-01 changes caused problems
++# and some territories would be moved to pre-1981-10-01 time by not
++# moving to summer time on 1982-04-01. Namely: Dagestan,
++# Kabardino-Balkar, Kalmyk, Komi, Mari, Mordovian, North Ossetian,
++# Tatar, Chechen-Ingush and Chuvash ASSR, Krasnodar and Stavropol
++# krais, Arkhangelsk, Vladimir, Vologda, Voronezh, Gorky, Ivanovo,
++# Kostroma, Lipetsk, Penza, Rostov, Ryazan, Tambov, Tyumen and
++# Yaroslavl oblasts, Nenets and Evenk autonomous okrugs, Khatangsky
++# district of Taymyr Autonomous Okrug. As a result Evenk Autonomous
++# Okrug and Khatangsky district of Taymyr Autonomous Okrug would end
++# up on Moscow+4, Tyumen Oblast on Moscow+2 and the rest on Moscow
++# time.
++#
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# attributes the 1982 changes to the Act of the Council of Ministers
++# of the USSR No. 126 from 18.02.1982. 1980-925.txt also adds
++# Udmurtia to the list of affected territories and lists Khatangsky
++# district separately from Taymyr Autonomous Okrug. Probably erroneously.
++#
++# The affected territories are currently listed under Europe/Moscow,
++# Asia/Yekaterinburg and Asia/Krasnoyarsk.
++#
++# 12. Udmurtia
++# The fact that Udmurtia is depicted as a violator in the Nauka i
++# Zhizn article hints at Izhevsk being on different time from
++# Kuybyshev before 1981-10-01. Udmurtia is not mentioned in the 1989 act.
++# http://astrozet.net/files/Zones/DOC/RU/1980-925.txt
++# implies Udmurtia was on Moscow time after 1982-04-01.
++# Wikipedia implies Udmurtia being on Moscow+1 until 1991.
++#
++# ...
++#
++# All Russian zones are supposed to have by default a -1 change at
++# 1991-03-31 2:00 (cancellation of the decree time in the USSR) and a +1
++# change at 1992-01-19 2:00 (restoration of the decree time in Russia).
++#
++# There were some exceptions, though.
++# Wikipedia says newspapers listed Astrakhan, Saratov, Kirov, Volgograd,
++# Izhevsk, Grozny, Kazan and Samara as such exceptions for the 1992
++# change. (Different newspapers providing different lists. And some
++# lists found in the internet are quite wild.)
++#
++# And apparently some exceptions were reverted in the last moment.
++# http://www.kaliningradka.ru/site_pc/cherez/index.php?ELEMENT_ID=40091
++# says that Kaliningrad decided not to be an exception 2 days before the
++# 1991-03-31 switch and one person at
++# http://izhevsk.ru/forum_light_message/50/682597-m8369040.html
++# says he remembers that Samara opted out of the 1992-01-19 exception
++# 2 days before the switch.
++#
++#
++# From Paul Eggert (2016-03-18):
++# Given the above, we appear to be missing some Zone entries for the
++# chaotic early 1980s in Russia. It's not clear what these entries
++# should be. For now, sweep this under the rug and just document the
++# time in Moscow.
+
+ # From Vladimir Karpinsky (2014-07-08):
+ # LMT in Moscow (before Jul 3, 1916) is 2:30:17, that was defined by Moscow
+ # Observatory (coordinates: 55 deg. 45'29.70", 37 deg. 34'05.30")....
+ # LMT in Moscow since Jul 3, 1916 is 2:31:01 as a result of new standard.
+-# (The info is from the book by Byalokoz E.L. New Counting of Time in Russia
+-# since July 1, 1919, p. 18.) The time in St. Petersburg as capital of Russia
+-# was defined by Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow
++# (The info is from the book by Byalokoz ... p. 18.)
++# The time in St. Petersburg as capital of Russia was defined by
++# Pulkov observatory, near St. Petersburg. In 1916 LMT Moscow
+ # was synchronized with LMT St. Petersburg (+30 minutes), (Pulkov observatory
+ # coordinates: 59 deg. 46'18.70", 30 deg. 19'40.70") so 30 deg. 19'40.70" >
+ # 2h01m18.7s = 2:01:19. LMT Moscow = LMT St.Petersburg + 30m 2:01:19 + 0:30 =
+@@ -2290,14 +2525,14 @@
+
+ Zone Europe/Moscow 2:30:17 - LMT 1880
+ 2:30:17 - MMT 1916 Jul 3 # Moscow Mean Time
+- 2:31:19 Russia %s 1919 Jul 1 2:00
++ 2:31:19 Russia %s 1919 Jul 1 0:00u
+ 3:00 Russia %s 1921 Oct
+ 3:00 Russia MSK/MSD 1922 Oct
+ 2:00 - EET 1930 Jun 21
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1992 Jan 19 2:00s
+- 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
++ 2:00 Russia EE%sT 1992 Jan 19 2:00s
++ 3:00 Russia MSK/MSD 2011 Mar 27 2:00s
++ 4:00 - MSK 2014 Oct 26 2:00s
+ 3:00 - MSK
+
+
+@@ -2312,7 +2547,7 @@
+ 3:00 - MSK 1941 Nov
+ 1:00 C-Eur CE%sT 1944 Apr 13
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 Jul 1 2:00
++ 3:00 - MSK 1990 Jul 1 2:00
+ 2:00 - EET 1992
+ # Central Crimea used Moscow time 1994/1997.
+ #
+@@ -2325,12 +2560,12 @@
+ # changed in May.
+ 2:00 E-Eur EE%sT 1994 May
+ # From IATA SSIM (1994/1997), which also says that Kerch is still like Kiev.
+- 3:00 E-Eur MSK/MSD 1996 Mar 31 3:00s
+- 3:00 1:00 MSD 1996 Oct 27 3:00s
++ 3:00 E-Eur MSK/MSD 1996 Mar 31 0:00s
++ 3:00 1:00 MSD 1996 Oct 27 3:00s
+ # IATA SSIM (1997-09) says Crimea switched to EET/EEST.
+ # Assume it happened in March by not changing the clocks.
+ 3:00 Russia MSK/MSD 1997
+- 3:00 - MSK 1997 Mar lastSun 1:00u
++ 3:00 - MSK 1997 Mar lastSun 1:00u
+ # From Alexander Krivenyshev (2014-03-17):
+ # time change at 2:00 (2am) on March 30, 2014
+ # http://vz.ru/news/2014/3/17/677464.html
+@@ -2338,113 +2573,268 @@
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+ # and the discrepancies are small enough to not worry about.
+- 2:00 EU EE%sT 2014 Mar 30 2:00
+- 4:00 - MSK 2014 Oct 26 2:00s
++ 2:00 EU EE%sT 2014 Mar 30 2:00
++ 4:00 - MSK 2014 Oct 26 2:00s
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Volgograd covers...
+-# 30 RU-AST Astrakhan Oblast
+-# 34 RU-VGG Volgograd Oblast
+-# 43 RU-KIR Kirov Oblast
+-# 64 RU-SAR Saratov Oblast
+-
+-# From Paul Eggert (2006-05-09):
+-# Shanks & Pottenger say Kirov is still at +0400 but Wikipedia says +0300.
+-# Perhaps it switched after the others? But we have no data.
++# From Paul Eggert (2016-03-18):
++# Europe/Astrakhan covers:
++# 30 RU-AST Astrakhan Oblast
++#
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-01-12):
++# On February 10, 2016 Astrakhan Oblast got approval by the Federation
++# Council to change its time zone to UTC+4 (from current UTC+3 Moscow time)....
++# This Federal Law shall enter into force on 27 March 2016 at 02:00.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201602150056
++
++Zone Europe/Astrakhan 3:12:12 - LMT 1924 May
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Volgograd covers:
++# 34 RU-VGG Volgograd Oblast
++# 64 RU-SAR Saratov Oblast
++# The 1988 transition is from USSR act No. 5 (1988-01-04).
+
+ Zone Europe/Volgograd 2:57:40 - LMT 1920 Jan 3
+- 3:00 - TSAT 1925 Apr 6 # Tsaritsyn Time
+- 3:00 - STAT 1930 Jun 21 # Stalingrad Time
+- 4:00 - STAT 1961 Nov 11
+- 4:00 Russia VOL%sT 1989 Mar 26 2:00s # Volgograd T
+- 3:00 Russia VOL%sT 1991 Mar 31 2:00s
+- 4:00 - VOLT 1992 Mar 29 2:00s
+- 3:00 Russia MSK 2011 Mar 27 2:00s
+- 4:00 - MSK 2014 Oct 26 2:00s
+- 3:00 - MSK
+-
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1961 Nov 11
++ 4:00 Russia +04/+05 1988 Mar 27 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
++
++# From Paul Eggert (2016-03-18):
++# Europe/Kirov covers:
++# 43 RU-KIR Kirov Oblast
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++#
++Zone Europe/Kirov 3:18:48 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 4:00 - +04 1992 Mar 29 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Europe/Samara covers...
+-# 18 RU-UD Udmurt Republic
+-# 63 RU-SAM Samara Oblast
+-
+-Zone Europe/Samara 3:20:36 - LMT 1919 Jul 1 2:00
+- 3:00 - SAMT 1930 Jun 21
+- 4:00 - SAMT 1935 Jan 27
+- 4:00 Russia KUY%sT 1989 Mar 26 2:00s # Kuybyshev
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00s
+- 2:00 Russia EE%sT 1991 Sep 29 2:00s
+- 3:00 - KUYT 1991 Oct 20 3:00
+- 4:00 Russia SAM%sT 2010 Mar 28 2:00s # Samara Time
+- 3:00 Russia SAM%sT 2011 Mar 27 2:00s
+- 4:00 - SAMT
++# 18 RU-UD Udmurt Republic
++# 63 RU-SAM Samara Oblast
+
++# From Paul Eggert (2016-03-18):
++# Byalokoz 1919 says Samara was 3:20:20.
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++Zone Europe/Samara 3:20:20 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 - +04 1935 Jan 27
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1991 Sep 29 2:00s
++ 3:00 - +03 1991 Oct 20 3:00
++ 4:00 Russia +04/+05 2010 Mar 28 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04
++
++# From Paul Eggert (2016-03-18):
++# Europe/Ulyanovsk covers:
++# 73 RU-ULY Ulyanovsk Oblast
++
++# The 1989 transition is from USSR act No. 227 (1989-03-14).
++
++# From Alexander Krivenyshev (2016-02-17):
++# Ulyanovsk ... on their way to change time zones by March 27, 2016 at 2am.
++# Ulyanovsk Oblast ... from MSK to MSK+1 (UTC+3 to UTC+4) ...
++# 920582-6 ... 02/17/2016 The State Duma passed the bill in the first reading.
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090051
++
++Zone Europe/Ulyanovsk 3:13:36 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 4:00 Russia +04/+05 1989 Mar 26 2:00s
++ 3:00 Russia +03/+04 1991 Mar 31 2:00s
++ 2:00 Russia +02/+03 1992 Jan 19 2:00s
++ 3:00 Russia +03/+04 2011 Mar 27 2:00s
++ 4:00 - +04 2014 Oct 26 2:00s
++ 3:00 - +03 2016 Mar 27 2:00s
++ 4:00 - +04
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Yekaterinburg covers...
+-# 02 RU-BA Bashkortostan, Republic of
+-# 90 RU-PER Perm Krai
+-# 45 RU-KGN Kurgan Oblast
+-# 56 RU-ORE Orenburg Oblast
+-# 66 RU-SVE Sverdlovsk Oblast
+-# 72 RU-TYU Tyumen Oblast
+-# 74 RU-CHE Chelyabinsk Oblast
+-# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra
+-# 89 RU-YAN Yamalo-Nenets Autonomous Okrug
++# 02 RU-BA Bashkortostan, Republic of
++# 90 RU-PER Perm Krai
++# 45 RU-KGN Kurgan Oblast
++# 56 RU-ORE Orenburg Oblast
++# 66 RU-SVE Sverdlovsk Oblast
++# 72 RU-TYU Tyumen Oblast
++# 74 RU-CHE Chelyabinsk Oblast
++# 86 RU-KHM Khanty-Mansi Autonomous Okrug - Yugra
++# 89 RU-YAN Yamalo-Nenets Autonomous Okrug
+ #
+ # Note: Effective 2005-12-01, (59) Perm Oblast and (81) Komi-Permyak
+ # Autonomous Okrug merged to form (90, RU-PER) Perm Krai.
+
+-# Milne says Yekaterinburg time was 4:02:32.9; round to nearest.
+-
+-Zone Asia/Yekaterinburg 4:02:33 - LMT 1919 Jul 15 4:00
+- 4:00 - SVET 1930 Jun 21 # Sverdlovsk Time
+- 5:00 Russia SVE%sT 1991 Mar 31 2:00s
+- 4:00 Russia SVE%sT 1992 Jan 19 2:00s
+- 5:00 Russia YEK%sT 2011 Mar 27 2:00s
+- 6:00 - YEKT 2014 Oct 26 2:00s
+- 5:00 - YEKT
++# Milne says Yekaterinburg was 4:02:32.9; round to nearest.
++# Byalokoz 1919 says its provincial time was based on Perm, at 3:45:05.
++# Assume it switched on 1916-07-03, the time of the new standard.
++# The 1919 and 1930 transitions are from Shanks.
++
++Zone Asia/Yekaterinburg 4:02:33 - LMT 1916 Jul 3
++ 3:45:05 - PMT 1919 Jul 15 4:00
++ 4:00 - +04 1930 Jun 21
++ 5:00 Russia +05/+06 1991 Mar 31 2:00s
++ 4:00 Russia +04/+05 1992 Jan 19 2:00s
++ 5:00 Russia +05/+06 2011 Mar 27 2:00s
++ 6:00 - +06 2014 Oct 26 2:00s
++ 5:00 - +05
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Omsk covers...
+-# 04 RU-AL Altai Republic
+-# 22 RU-ALT Altai Krai
+-# 55 RU-OMS Omsk Oblast
+-
+-Zone Asia/Omsk 4:53:36 - LMT 1919 Nov 14
+- 5:00 - OMST 1930 Jun 21 # Omsk Time
+- 6:00 Russia OMS%sT 1991 Mar 31 2:00s
+- 5:00 Russia OMS%sT 1992 Jan 19 2:00s
+- 6:00 Russia OMS%sT 2011 Mar 27 2:00s
+- 7:00 - OMST 2014 Oct 26 2:00s
+- 6:00 - OMST
++# 55 RU-OMS Omsk Oblast
+
++# Byalokoz 1919 says Omsk was 4:53:30.
+
+-# From Tim Parenti (2014-07-03):
+-# Asia/Novosibirsk covers...
+-# 54 RU-NVS Novosibirsk Oblast
+-# 70 RU-TOM Tomsk Oblast
+-
+-# From Paul Eggert (2006-08-19): I'm guessing about Tomsk here; it's
+-# not clear when it switched from +7 to +6.
+-
+-Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
+- 6:00 - NOVT 1930 Jun 21 # Novosibirsk Time
+- 7:00 Russia NOV%sT 1991 Mar 31 2:00s
+- 6:00 Russia NOV%sT 1992 Jan 19 2:00s
+- 7:00 Russia NOV%sT 1993 May 23 # say Shanks & P.
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 6:00 - NOVT
++Zone Asia/Omsk 4:53:30 - LMT 1919 Nov 14
++ 5:00 - +05 1930 Jun 21
++ 6:00 Russia +06/+07 1991 Mar 31 2:00s
++ 5:00 Russia +05/+06 1992 Jan 19 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06
++
++# From Paul Eggert (2016-02-22):
++# Asia/Barnaul covers:
++# 04 RU-AL Altai Republic
++# 22 RU-ALT Altai Krai
++
++# Data before 1991 are from Shanks & Pottenger.
++
++# From Stepan Golosunov (2016-03-07):
++# Letter of Bank of Russia from 1995-05-25
++# http://www.bestpravo.ru/rossijskoje/lj-akty/y3a.htm
++# suggests that Altai Republic transitioned to Moscow+3 on
++# 1995-05-28.
++#
++# http://regnum.ru/news/society/1957270.html
++# has some historical data for Altai Krai:
++# before 1957: west part on UTC+6, east on UTC+7
++# after 1957: UTC+7
++# since 1995: UTC+6
++# http://barnaul.rusplt.ru/index/pochemu_altajskij_kraj_okazalsja_v_neprivychnom_chasovom_pojase-17648.html
++# confirms that and provides more details including 1995-05-28 transition date.
++
++# From Alexander Krivenyshev (2016-02-17):
++# Altai Krai and Altai Republic on their way to change time zones
++# by March 27, 2016 at 2am....
++# Altai Republic / Gorno-Altaysk MSK+3 to MSK+4 (UTC+6 to UTC+7) ...
++# Altai Krai / Barnaul MSK+3 to MSK+4 (UTC+6 to UTC+7)
++# From Matt Johnson (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090043
++# http://publication.pravo.gov.ru/Document/View/0001201603090038
++
++Zone Asia/Barnaul 5:35:00 - LMT 1919 Dec 10
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1995 May 28
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Mar 27 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Novosibirsk covers:
++# 54 RU-NVS Novosibirsk Oblast
++
++# From Stepan Golosunov (2016-05-30):
++# http://asozd2.duma.gov.ru/main.nsf/(Spravka)?OpenAgent&RN=1085784-6
++# moves Novosibirsk oblast from UTC+6 to UTC+7.
++# From Stepan Golosunov (2016-07-04):
++# The law was signed yesterday and published today on
++# http://publication.pravo.gov.ru/Document/View/0001201607040064
++
++Zone Asia/Novosibirsk 5:31:40 - LMT 1919 Dec 14 6:00
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 1993 May 23 # say Shanks & P.
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 Jul 24 2:00s
++ 7:00 - +07
++
++# From Paul Eggert (2016-03-18):
++# Asia/Tomsk covers:
++# 70 RU-TOM Tomsk Oblast
++
++# From Stepan Golosunov (2016-03-24):
++# Byalokoz listed Tomsk at 5:39:51.
++
++# From Stanislaw A. Kuzikowski (1994-06-29):
++# Tomsk is still 4 hours ahead of Moscow.
++
++# From Stepan Golosunov (2016-03-19):
++# http://pravo.gov.ru/proxy/ips/?docbody=&nd=102075743
++# (fifth time belt being UTC+5+1(decree time)
++# / UTC+5+1(decree time)+1(summer time)) ...
++# Note that time belts (numbered from 2 (Moscow) to 12 according to their
++# GMT/UTC offset and having too many exceptions like regions formally
++# belonging to one belt but using time from another) were replaced
++# with time zones in 2011 with different numbering (there was a
++# 2-hour gap between second and third zones in 2011-2014).
++
++# From Stepan Golosunov (2016-04-12):
++# http://asozd2.duma.gov.ru/main.nsf/(SpravkaNew)?OpenAgent&RN=1006865-6
++# This bill was approved in the first reading today. It moves Tomsk oblast
++# from UTC+6 to UTC+7 and is supposed to come into effect on 2016-05-29 at
++# 2:00. The bill needs to be approved in the second and the third readings by
++# the State Duma, approved by the Federation Council, signed by the President
++# and published to become a law. Minor changes in the text are to be expected
++# before the second reading (references need to be updated to account for the
++# recent changes).
++#
++# Judging by the ultra-short one-day amendments period, recent similar laws,
++# the State Duma schedule and the Federation Council schedule
++# http://www.duma.gov.ru/legislative/planning/day-shedule/por_vesna_2016/
++# http://council.gov.ru/activity/meetings/schedule/63303
++# I speculate that the final text of the bill will be proposed tomorrow, the
++# bill will be approved in the second and the third readings on Friday,
++# approved by the Federation Council on 2016-04-20, signed by the President and
++# published as a law around 2016-04-26.
++
++# From Matt Johnson (2016-04-26):
++# http://publication.pravo.gov.ru/Document/View/0001201604260048
++
++Zone Asia/Tomsk 5:39:51 - LMT 1919 Dec 22
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2002 May 1 3:00
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07 2014 Oct 26 2:00s
++ 6:00 - +06 2016 May 29 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Novokuznetsk covers...
+-# 42 RU-KEM Kemerovo Oblast
++# 42 RU-KEM Kemerovo Oblast
+
+ # From Alexander Krivenyshev (2009-10-13):
+ # Kemerovo oblast' (Kemerovo region) in Russia will change current time zone on
+@@ -2452,7 +2842,7 @@
+ # from current Russia Zone 6 - Krasnoyarsk Time Zone (KRA) UTC +0700
+ # to Russia Zone 5 - Novosibirsk Time Zone (NOV) UTC +0600
+ #
+-# This is according to Government of Russia decree # 740, on September
++# This is according to Government of Russia decree No. 740, on September
+ # 14, 2009 "Application in the territory of the Kemerovo region the Fifth
+ # time zone." ("Russia Zone 5" or old "USSR Zone 5" is GMT +0600)
+ #
+@@ -2464,81 +2854,87 @@
+ #
+ # Thus, when Russia will switch to DST on the night of March 28, 2010
+ # Kemerovo region (Kemerovo oblast') will not change the clock.
+-#
+-# As a result, Kemerovo oblast' will be in the same time zone as
+-# Novosibirsk, Omsk, Tomsk, Barnaul and Altai Republic.
+
+ # From Tim Parenti (2014-07-02), per Alexander Krivenyshev (2014-07-02):
+ # The Kemerovo region will remain at UTC+7 through the 2014-10-26 change, thus
+ # realigning itself with KRAT.
+
+-Zone Asia/Novokuznetsk 5:48:48 - NMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2010 Mar 28 2:00s
+- 6:00 Russia NOV%sT 2011 Mar 27 2:00s # Novosibirsk T
+- 7:00 - NOVT 2014 Oct 26 2:00s
+- 7:00 - KRAT # Krasnoyarsk Time
+-
++Zone Asia/Novokuznetsk 5:48:48 - LMT 1924 May 1
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2010 Mar 28 2:00s
++ 6:00 Russia +06/+07 2011 Mar 27 2:00s
++ 7:00 - +07
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Krasnoyarsk covers...
+-# 17 RU-TY Tuva Republic
+-# 19 RU-KK Khakassia, Republic of
+-# 24 RU-KYA Krasnoyarsk Krai
++# 17 RU-TY Tuva Republic
++# 19 RU-KK Khakassia, Republic of
++# 24 RU-KYA Krasnoyarsk Krai
+ #
+ # Note: Effective 2007-01-01, (88) Evenk Autonomous Okrug and (84) Taymyr
+ # Autonomous Okrug were merged into (24, RU-KYA) Krasnoyarsk Krai.
+
+-Zone Asia/Krasnoyarsk 6:11:20 - LMT 1920 Jan 6
+- 6:00 - KRAT 1930 Jun 21 # Krasnoyarsk Time
+- 7:00 Russia KRA%sT 1991 Mar 31 2:00s
+- 6:00 Russia KRA%sT 1992 Jan 19 2:00s
+- 7:00 Russia KRA%sT 2011 Mar 27 2:00s
+- 8:00 - KRAT 2014 Oct 26 2:00s
+- 7:00 - KRAT
++# Byalokoz 1919 says Krasnoyarsk was 6:11:26.
++
++Zone Asia/Krasnoyarsk 6:11:26 - LMT 1920 Jan 6
++ 6:00 - +06 1930 Jun 21
++ 7:00 Russia +07/+08 1991 Mar 31 2:00s
++ 6:00 Russia +06/+07 1992 Jan 19 2:00s
++ 7:00 Russia +07/+08 2011 Mar 27 2:00s
++ 8:00 - +08 2014 Oct 26 2:00s
++ 7:00 - +07
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Irkutsk covers...
+-# 03 RU-BU Buryatia, Republic of
+-# 38 RU-IRK Irkutsk Oblast
++# 03 RU-BU Buryatia, Republic of
++# 38 RU-IRK Irkutsk Oblast
+ #
+ # Note: Effective 2008-01-01, (85) Ust-Orda Buryat Autonomous Okrug was
+ # merged into (38, RU-IRK) Irkutsk Oblast.
+
+-# Milne says Irkutsk time was 6:57:15.
+-
+-Zone Asia/Irkutsk 6:57:15 - LMT 1880
+- 6:57:15 - IMT 1920 Jan 25 # Irkutsk Mean Time
+- 7:00 - IRKT 1930 Jun 21 # Irkutsk Time
+- 8:00 Russia IRK%sT 1991 Mar 31 2:00s
+- 7:00 Russia IRK%sT 1992 Jan 19 2:00s
+- 8:00 Russia IRK%sT 2011 Mar 27 2:00s
+- 9:00 - IRKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++# Milne 1899 says Irkutsk was 6:57:15.
++# Byalokoz 1919 says Irkutsk was 6:57:05.
++# Go with Byalokoz.
++
++Zone Asia/Irkutsk 6:57:05 - LMT 1880
++ 6:57:05 - IMT 1920 Jan 25 # Irkutsk Mean Time
++ 7:00 - +07 1930 Jun 21
++ 8:00 Russia +08/+09 1991 Mar 31 2:00s
++ 7:00 Russia +07/+08 1992 Jan 19 2:00s
++ 8:00 Russia +08/+09 2011 Mar 27 2:00s
++ 9:00 - +09 2014 Oct 26 2:00s
++ 8:00 - +08
+
+
+ # From Tim Parenti (2014-07-06):
+ # Asia/Chita covers...
+-# 92 RU-ZAB Zabaykalsky Krai
++# 92 RU-ZAB Zabaykalsky Krai
+ #
+ # Note: Effective 2008-03-01, (75) Chita Oblast and (80) Agin-Buryat
+ # Autonomous Okrug merged to form (92, RU-ZAB) Zabaykalsky Krai.
+
++# From Alexander Krivenyshev (2016-01-02):
++# [The] time zone in the Trans-Baikal Territory (Zabaykalsky Krai) -
++# Asia/Chita [is changing] from UTC+8 to UTC+9. Effective date will
++# be March 27, 2016 at 2:00am....
++# http://publication.pravo.gov.ru/Document/View/0001201512300107
++
+ Zone Asia/Chita 7:33:52 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 8:00 - IRKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 8:00 - +08 2016 Mar 27 2:00
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Yakutsk covers...
+-# 28 RU-AMU Amur Oblast
++# 28 RU-AMU Amur Oblast
+ #
+ # ...and parts of (14, RU-SA) Sakha (Yakutia) Republic:
+ # 14-02 **** Aldansky District
+@@ -2570,34 +2966,38 @@
+ # Since the surrounding districts of Sakha are all YAKT, assume this is, too.
+ # Also assume its history has been the same as the rest of Asia/Yakutsk.
+
+-Zone Asia/Yakutsk 8:38:40 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2011 Mar 27 2:00s
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++# Byalokoz 1919 says Yakutsk was 8:38:58.
++
++Zone Asia/Yakutsk 8:38:58 - LMT 1919 Dec 15
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2011 Mar 27 2:00s
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Vladivostok covers...
+-# 25 RU-PRI Primorsky Krai
+-# 27 RU-KHA Khabarovsk Krai
+-# 79 RU-YEV Jewish Autonomous Oblast
++# 25 RU-PRI Primorsky Krai
++# 27 RU-KHA Khabarovsk Krai
++# 79 RU-YEV Jewish Autonomous Oblast
+ #
+ # ...and parts of (14, RU-SA) Sakha (Yakutia) Republic:
+ # 14-09 **** Verkhoyansky District
+ # 14-31 **** Ust-Yansky District
+
+-# Milne says Vladivostok time was 8:47:33.5; round to nearest.
+-
+-Zone Asia/Vladivostok 8:47:34 - LMT 1922 Nov 15
+- 9:00 - VLAT 1930 Jun 21 # Vladivostok Time
+- 10:00 Russia VLA%sT 1991 Mar 31 2:00s
+- 9:00 Russia VLA%sT 1992 Jan 19 2:00s
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++# Milne 1899 says Vladivostok was 8:47:33.5.
++# Byalokoz 1919 says Vladivostok was 8:47:31.
++# Go with Byalokoz.
++
++Zone Asia/Vladivostok 8:47:31 - LMT 1922 Nov 15
++ 9:00 - +09 1930 Jun 21
++ 10:00 Russia +10/+11 1991 Mar 31 2:00s
++ 9:00 Russia +09/+10 1992 Jan 19 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2615,37 +3015,42 @@
+ # This transition is no doubt wrong, but we have no better info.
+
+ Zone Asia/Khandyga 9:02:13 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAK%sT 1991 Mar 31 2:00s
+- 8:00 Russia YAK%sT 1992 Jan 19 2:00s
+- 9:00 Russia YAK%sT 2004
+- 10:00 Russia VLA%sT 2011 Mar 27 2:00s
+- 11:00 - VLAT 2011 Sep 13 0:00s # Decree 725?
+- 10:00 - YAKT 2014 Oct 26 2:00s
+- 9:00 - YAKT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1991 Mar 31 2:00s
++ 8:00 Russia +08/+09 1992 Jan 19 2:00s
++ 9:00 Russia +09/+10 2004
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2011 Sep 13 0:00s # Decree 725?
++ 10:00 - +10 2014 Oct 26 2:00s
++ 9:00 - +09
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Sakhalin covers...
+-# 65 RU-SAK Sakhalin Oblast
++# 65 RU-SAK Sakhalin Oblast
+ # ...with the exception of:
+ # 65-11 **** Severo-Kurilsky District (North Kuril Islands)
+
++# From Matt Johnson (2016-02-22):
++# Asia/Sakhalin is moving (in entirety) from UTC+10 to UTC+11 ...
++# (2016-03-09):
++# http://publication.pravo.gov.ru/Document/View/0001201603090044
++
+ # The Zone name should be Asia/Yuzhno-Sakhalinsk, but that's too long.
+ Zone Asia/Sakhalin 9:30:48 - LMT 1905 Aug 23
+- 9:00 - JCST 1937 Oct 1
+- 9:00 - JST 1945 Aug 25
+- 11:00 Russia SAK%sT 1991 Mar 31 2:00s # Sakhalin T.
+- 10:00 Russia SAK%sT 1992 Jan 19 2:00s
+- 11:00 Russia SAK%sT 1997 Mar lastSun 2:00s
+- 10:00 Russia SAK%sT 2011 Mar 27 2:00s
+- 11:00 - SAKT 2014 Oct 26 2:00s
+- 10:00 - SAKT
++ 9:00 - +09 1945 Aug 25
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s # Sakhalin T
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 1997 Mar lastSun 2:00s
++ 10:00 Russia +10/+11 2011 Mar 27 2:00s
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Mar 27 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2009-11-29):
+ # Asia/Magadan covers...
+-# 49 RU-MAG Magadan Oblast
++# 49 RU-MAG Magadan Oblast
+
+ # From Tim Parenti (2014-07-06), per Alexander Krivenyshev (2014-07-02):
+ # Magadan Oblast is moving from UTC+12 to UTC+10 on 2014-10-26; however,
+@@ -2654,13 +3059,22 @@
+ # until now by Asia/Magadan, will instead move to UTC+11. These regions will
+ # need their own zone.
+
++# From Alexander Krivenyshev (2016-03-27):
++# ... draft bill 948300-6 to change its time zone from UTC+10 to UTC+11 ...
++# will take ... effect ... on April 24, 2016 at 2 o'clock
++#
++# From Matt Johnson (2016-04-05):
++# ... signed by the President today ...
++# http://publication.pravo.gov.ru/Document/View/0001201604050038
++
+ Zone Asia/Magadan 10:03:12 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 10:00 - MAGT
++ 10:00 - +10 1930 Jun 21 # Magadan Time
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 10:00 - +10 2016 Apr 24 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-06):
+@@ -2703,17 +3117,14 @@
+ # in Russian.) In addition, Srednekolymsk appears to be a much older
+ # settlement and the population of Zyryanka seems to be declining.
+ # Go with Srednekolymsk.
+-#
+-# Since Magadan Oblast moves to UTC+10 on 2014-10-26, we cannot keep using MAGT
+-# as the abbreviation. Use SRET instead.
+
+ Zone Asia/Srednekolymsk 10:14:52 - LMT 1924 May 2
+- 10:00 - MAGT 1930 Jun 21 # Magadan Time
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2014 Oct 26 2:00s
+- 11:00 - SRET # Srednekolymsk Time
++ 10:00 - +10 1930 Jun 21
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2014 Oct 26 2:00s
++ 11:00 - +11
+
+
+ # From Tim Parenti (2014-07-03):
+@@ -2731,19 +3142,19 @@
+ # UTC+12 since at least then, too.
+
+ Zone Asia/Ust-Nera 9:32:54 - LMT 1919 Dec 15
+- 8:00 - YAKT 1930 Jun 21 # Yakutsk Time
+- 9:00 Russia YAKT 1981 Apr 1
+- 11:00 Russia MAG%sT 1991 Mar 31 2:00s
+- 10:00 Russia MAG%sT 1992 Jan 19 2:00s
+- 11:00 Russia MAG%sT 2011 Mar 27 2:00s
+- 12:00 - MAGT 2011 Sep 13 0:00s # Decree 725?
+- 11:00 - VLAT 2014 Oct 26 2:00s
+- 10:00 - VLAT
++ 8:00 - +08 1930 Jun 21
++ 9:00 Russia +09/+10 1981 Apr 1
++ 11:00 Russia +11/+12 1991 Mar 31 2:00s
++ 10:00 Russia +10/+11 1992 Jan 19 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12 2011 Sep 13 0:00s # Decree 725?
++ 11:00 - +11 2014 Oct 26 2:00s
++ 10:00 - +10
+
+
+ # From Tim Parenti (2014-07-03), per Oscar van Vlijmen (2001-08-25):
+ # Asia/Kamchatka covers...
+-# 91 RU-KAM Kamchatka Krai
++# 91 RU-KAM Kamchatka Krai
+ #
+ # Note: Effective 2007-07-01, (41) Kamchatka Oblast and (82) Koryak
+ # Autonomous Okrug merged to form (91, RU-KAM) Kamchatka Krai.
+@@ -2751,26 +3162,26 @@
+ # The Zone name should be Asia/Petropavlovsk-Kamchatski or perhaps
+ # Asia/Petropavlovsk-Kamchatsky, but these are too long.
+ Zone Asia/Kamchatka 10:34:36 - LMT 1922 Nov 10
+- 11:00 - PETT 1930 Jun 21 # P-K Time
+- 12:00 Russia PET%sT 1991 Mar 31 2:00s
+- 11:00 Russia PET%sT 1992 Jan 19 2:00s
+- 12:00 Russia PET%sT 2010 Mar 28 2:00s
+- 11:00 Russia PET%sT 2011 Mar 27 2:00s
+- 12:00 - PETT
++ 11:00 - +11 1930 Jun 21
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # From Tim Parenti (2014-07-03):
+ # Asia/Anadyr covers...
+-# 87 RU-CHU Chukotka Autonomous Okrug
++# 87 RU-CHU Chukotka Autonomous Okrug
+
+ Zone Asia/Anadyr 11:49:56 - LMT 1924 May 2
+- 12:00 - ANAT 1930 Jun 21 # Anadyr Time
+- 13:00 Russia ANA%sT 1982 Apr 1 0:00s
+- 12:00 Russia ANA%sT 1991 Mar 31 2:00s
+- 11:00 Russia ANA%sT 1992 Jan 19 2:00s
+- 12:00 Russia ANA%sT 2010 Mar 28 2:00s
+- 11:00 Russia ANA%sT 2011 Mar 27 2:00s
+- 12:00 - ANAT
++ 12:00 - +12 1930 Jun 21
++ 13:00 Russia +13/+14 1982 Apr 1 0:00s
++ 12:00 Russia +12/+13 1991 Mar 31 2:00s
++ 11:00 Russia +11/+12 1992 Jan 19 2:00s
++ 12:00 Russia +12/+13 2010 Mar 28 2:00s
++ 11:00 Russia +11/+12 2011 Mar 27 2:00s
++ 12:00 - +12
+
+
+ # San Marino
+@@ -2781,7 +3192,7 @@
+ Zone Europe/Belgrade 1:22:00 - LMT 1884
+ 1:00 - CET 1941 Apr 18 23:00
+ 1:00 C-Eur CE%sT 1945
+- 1:00 - CET 1945 May 8 2:00s
++ 1:00 - CET 1945 May 8 2:00s
+ 1:00 1:00 CEST 1945 Sep 16 2:00s
+ # Metod Koželj reports that the legal date of
+ # transition to EU rules was 1982-11-27, for all of Yugoslavia at the time.
+@@ -2861,13 +3272,13 @@
+ 0:00 1:00 WEST 1918 Oct 7 23:00
+ 0:00 - WET 1924
+ 0:00 Spain WE%sT 1929
+- 0:00 SpainAfrica WE%sT 1984 Mar 16
++ 0:00 SpainAfrica WE%sT 1984 Mar 16
+ 1:00 - CET 1986
+ 1:00 EU CE%sT
+ Zone Atlantic/Canary -1:01:36 - LMT 1922 Mar # Las Palmas de Gran C.
+- -1:00 - CANT 1946 Sep 30 1:00 # Canaries Time
+- 0:00 - WET 1980 Apr 6 0:00s
+- 0:00 1:00 WEST 1980 Sep 28 0:00s
++ -1:00 - CANT 1946 Sep 30 1:00 # Canaries T
++ 0:00 - WET 1980 Apr 6 0:00s
++ 0:00 1:00 WEST 1980 Sep 28 1:00u
+ 0:00 EU WE%sT
+ # IATA SSIM (1996-09) says the Canaries switch at 2:00u, not 1:00u.
+ # Ignore this for now, as the Canaries are part of the EU.
+@@ -2920,9 +3331,9 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Stockholm 1:12:12 - LMT 1879 Jan 1
+- 1:00:14 - SET 1900 Jan 1 # Swedish Time
++ 1:00:14 - SET 1900 Jan 1 # Swedish Time
+ 1:00 - CET 1916 May 14 23:00
+- 1:00 1:00 CEST 1916 Oct 1 01:00
++ 1:00 1:00 CEST 1916 Oct 1 1:00
+ 1:00 - CET 1980
+ 1:00 EU CE%sT
+
+@@ -2991,7 +3402,7 @@
+
+ # From Pierre-Yves Berger (2013-09-11):
+ # the "Circulaire du conseil fédéral" (December 11 1893)
+-# <http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353> ...
++# http://www.amtsdruckschriften.bar.admin.ch/viewOrigDoc.do?id=10071353
+ # clearly states that the [1894-06-01] change should be done at midnight
+ # but if no one is present after 11 at night, could be postponed until one
+ # hour before the beginning of service.
+@@ -3023,28 +3434,30 @@
+ Rule Swiss 1941 1942 - Oct Mon>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Zurich 0:34:08 - LMT 1853 Jul 16 # See above comment.
+- 0:29:46 - BMT 1894 Jun # Bern Mean Time
++ 0:29:46 - BMT 1894 Jun # Bern Mean Time
+ 1:00 Swiss CE%sT 1981
+ 1:00 EU CE%sT
+
+ # Turkey
+
+-# From Amar Devegowda (2007-01-03):
+-# The time zone rules for Istanbul, Turkey have not been changed for years now.
+-# ... The latest rules are available at:
+-# http://www.timeanddate.com/worldclock/timezone.html?n=107
+-# From Steffen Thorsen (2007-01-03):
+-# I have been able to find press records back to 1996 which all say that
+-# DST started 01:00 local time and end at 02:00 local time. I am not sure
+-# what happened before that. One example for each year from 1996 to 2001:
+-# http://newspot.byegm.gov.tr/arsiv/1996/21/N4.htm
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING97/03/97X03X25.TXT
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING98/03/98X03X02.HTM
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING99/10/99X10X26.HTM#%2016
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2000/03/00X03X06.HTM#%2021
+-# http://www.byegm.gov.tr/YAYINLARIMIZ/CHR/ING2001/03/23x03x01.HTM#%2027
+-# From Paul Eggert (2007-01-03):
+-# Prefer the above source to Shanks & Pottenger for time stamps after 1990.
++# From Kıvanç Yazan (2016-09-25):
++# 1) For 1986-2006, DST started at 01:00 local and ended at 02:00 local, with
++# no exceptions.
++# 2) 1994's lastSun was overridden with Mar 20 ...
++# Here are official papers:
++# http://www.resmigazete.gov.tr/arsiv/19032.pdf - page 2 for 1986
++# http://www.resmigazete.gov.tr/arsiv/19400.pdf - page 4 for 1987
++# http://www.resmigazete.gov.tr/arsiv/19752.pdf - page 15 for 1988
++# http://www.resmigazete.gov.tr/arsiv/20102.pdf - page 6 for 1989
++# http://www.resmigazete.gov.tr/arsiv/20464.pdf - page 1 for 1990 - 1992
++# http://www.resmigazete.gov.tr/arsiv/21531.pdf - page 15 for 1993 - 1995
++# http://www.resmigazete.gov.tr/arsiv/21879.pdf - page 1 for overriding 1994
++# http://www.resmigazete.gov.tr/arsiv/22588.pdf - page 1 for 1996, 1997
++# http://www.resmigazete.gov.tr/arsiv/23286.pdf - page 10 for 1998 - 2000
++# http://www.resmigazete.gov.tr/eskiler/2001/03/20010324.htm#2 - for 2001
++# http://www.resmigazete.gov.tr/eskiler/2002/03/20020316.htm#2 - for 2002-2006
++# From Paul Eggert (2016-09-25):
++# Prefer the above sources to Shanks & Pottenger for time stamps after 1985.
+
+ # From Steffen Thorsen (2007-03-09):
+ # Starting 2007 though, it seems that they are adopting EU's 1:00 UTC
+@@ -3080,6 +3493,25 @@
+ # http://www.balkaneu.com/eventful-elections-turkey/ 2014-03-30.
+ # I guess the best we can do is document the official time.
+
++# From Fatih (2015-09-29):
++# It's officially announced now by the Ministry of Energy.
++# Turkey delays winter time to 8th of November 04:00
++# http://www.aa.com.tr/tr/turkiye/yaz-saati-uygulamasi-8-kasimda-sona-erecek/362217
++#
++# From BBC News (2015-10-25):
++# Confused Turks are asking "what's the time?" after automatic clocks defied a
++# government decision ... "For the next two weeks #Turkey is on EEST... Erdogan
++# Engineered Standard Time," said Twitter user @aysekarahasan.
++# http://www.bbc.com/news/world-europe-34631326
++
++# From Burak AYDIN (2016-09-08):
++# Turkey will stay in Daylight Saving Time even in winter....
++# http://www.resmigazete.gov.tr/eskiler/2016/09/20160908-2.pdf
++#
++# From Paul Eggert (2016-09-07):
++# The change is permanent, so this is the new standard time in Turkey.
++# It takes effect today, which is not much notice.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Turkey 1916 only - May 1 0:00 1:00 S
+ Rule Turkey 1916 only - Oct 1 0:00 0 -
+@@ -3134,22 +3566,25 @@
+ Rule Turkey 1983 only - Oct 2 0:00 0 -
+ Rule Turkey 1985 only - Apr 20 0:00 1:00 S
+ Rule Turkey 1985 only - Sep 28 0:00 0 -
+-Rule Turkey 1986 1990 - Mar lastSun 2:00s 1:00 S
+-Rule Turkey 1986 1990 - Sep lastSun 2:00s 0 -
+-Rule Turkey 1991 2006 - Mar lastSun 1:00s 1:00 S
+-Rule Turkey 1991 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1986 1993 - Mar lastSun 1:00s 1:00 S
++Rule Turkey 1986 1995 - Sep lastSun 1:00s 0 -
++Rule Turkey 1994 only - Mar 20 1:00s 1:00 S
++Rule Turkey 1995 2006 - Mar lastSun 1:00s 1:00 S
+ Rule Turkey 1996 2006 - Oct lastSun 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Europe/Istanbul 1:55:52 - LMT 1880
+ 1:56:56 - IMT 1910 Oct # Istanbul Mean Time?
+ 2:00 Turkey EE%sT 1978 Oct 15
+- 3:00 Turkey TR%sT 1985 Apr 20 # Turkey Time
++ 3:00 Turkey +03/+04 1985 Apr 20
+ 2:00 Turkey EE%sT 2007
+- 2:00 EU EE%sT 2011 Mar 27 1:00u
+- 2:00 - EET 2011 Mar 28 1:00u
+- 2:00 EU EE%sT 2014 Mar 30 1:00u
+- 2:00 - EET 2014 Mar 31 1:00u
+- 2:00 EU EE%sT
++ 2:00 EU EE%sT 2011 Mar 27 1:00u
++ 2:00 - EET 2011 Mar 28 1:00u
++ 2:00 EU EE%sT 2014 Mar 30 1:00u
++ 2:00 - EET 2014 Mar 31 1:00u
++ 2:00 EU EE%sT 2015 Oct 25 1:00u
++ 2:00 1:00 EEST 2015 Nov 8 1:00u
++ 2:00 EU EE%sT 2016 Sep 7
++ 3:00 - +03
+ Link Europe/Istanbul Asia/Istanbul # Istanbul is in both continents.
+
+ # Ukraine
+@@ -3157,7 +3592,7 @@
+ # From Igor Karpov, who works for the Ukrainian Ministry of Justice,
+ # via Garrett Wollman (2003-01-27):
+ # BTW, I've found the official document on this matter. It's government
+-# regulations number 509, May 13, 1996. In my poor translation it says:
++# regulations No. 509, May 13, 1996. In my poor translation it says:
+ # "Time in Ukraine is set to second timezone (Kiev time). Each last Sunday
+ # of March at 3am the time is changing to 4am and each last Sunday of
+ # October the time at 4am is changing to 3am"
+@@ -3166,7 +3601,7 @@
+ # On September 20, 2011 the deputies of the Verkhovna Rada agreed to
+ # abolish the transfer clock to winter time.
+ #
+-# Bill number 8330 of MP from the Party of Regions Oleg Nadoshi got
++# Bill No. 8330 of MP from the Party of Regions Oleg Nadoshi got
+ # approval from 266 deputies.
+ #
+ # Ukraine abolishes transfer back to the winter time (in Russian)
+@@ -3230,8 +3665,8 @@
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Sep 20
+ 1:00 C-Eur CE%sT 1943 Nov 6
+- 3:00 Russia MSK/MSD 1990 Jul 1 2:00
+- 2:00 1:00 EEST 1991 Sep 29 3:00
++ 3:00 Russia MSK/MSD 1990 Jul 1 2:00
++ 2:00 1:00 EEST 1991 Sep 29 3:00
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+ # Ruthenia used CET 1990/1991.
+@@ -3243,8 +3678,8 @@
+ 1:00 1:00 CEST 1944 Oct 26
+ 1:00 - CET 1945 Jun 29
+ 3:00 Russia MSK/MSD 1990
+- 3:00 - MSK 1990 Jul 1 2:00
+- 1:00 - CET 1991 Mar 31 3:00
++ 3:00 - MSK 1990 Jul 1 2:00
++ 1:00 - CET 1991 Mar 31 3:00
+ 2:00 - EET 1992
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+@@ -3258,7 +3693,7 @@
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Aug 25
+ 1:00 C-Eur CE%sT 1943 Oct 25
+- 3:00 Russia MSK/MSD 1991 Mar 31 2:00
++ 3:00 Russia MSK/MSD 1991 Mar 31 2:00
+ 2:00 E-Eur EE%sT 1995
+ 2:00 EU EE%sT
+
+@@ -3284,7 +3719,7 @@
+ # ...
+ #
+ # ...the European time rules are...standardized since 1981, when
+-# most European coun[tr]ies started DST. Before that year, only
++# most European countries started DST. Before that year, only
+ # a few countries (UK, France, Italy) had DST, each according
+ # to own national rules. In 1981, however, DST started on
+ # 'Apr firstSun', and not on 'Mar lastSun' as in the following
+--- contrib/tzdata/factory.orig
++++ contrib/tzdata/factory
+@@ -1,9 +1,10 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# For companies who don't want to put time zone specification in
+-# their installation procedures. When users run date, they'll get the message.
+-# Also useful for the "comp.sources" version.
++# For distributors who don't want to put time zone specification in
++# their installation procedures. Users that run 'date' will get the
++# time zone abbreviation "-00", indicating that the actual time zone
++# is unknown.
+
+ # Zone NAME GMTOFF RULES FORMAT
+ Zone Factory 0 - "Local time zone must be set--use tzsetup"
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -47,7 +47,7 @@
+ # and can be ignored for many purposes. These differences
+ # are tabulated in Circular T, which is published monthly
+ # by the International Bureau of Weights and Measures
+-# (BIPM). See www.bipm.fr for more information.
++# (BIPM). See www.bipm.org for more information.
+ #
+ # 3. The current definition of the relationship between UTC
+ # and TAI dates from 1 January 1972. A number of different
+@@ -127,6 +127,15 @@
+ # with, since the difficulty of unambiguously representing the epoch
+ # during the leap second does not arise.
+ #
++# Some systems implement leap seconds by amortizing the leap second
++# over the last few minutes of the day. The frequency of the local
++# clock is decreased (or increased) to realize the positive (or
++# negative) leap second. This method removes the time step described
++# above. Although the long-term behavior of the time scale is correct
++# in this case, this method introduces an error during the adjustment
++# period both in time and in frequency with respect to the official
++# definition of UTC.
++#
+ # Questions or comments to:
+ # Judah Levine
+ # Time and Frequency Division
+@@ -134,7 +143,7 @@
+ # Boulder, Colorado
+ # Judah.Levine@nist.gov
+ #
+-# Last Update of leap second values: 11 January 2012
++# Last Update of leap second values: 8 July 2016
+ #
+ # The following line shows this last update date in NTP timestamp
+ # format. This is the date on which the most recent change to
+@@ -142,7 +151,7 @@
+ # be identified by the unique pair of characters in the first two
+ # columns as shown below.
+ #
+-#$ 3535228800
++#$ 3676924800
+ #
+ # The NTP timestamps are in units of seconds since the NTP epoch,
+ # which is 1 January 1900, 00:00:00. The Modified Julian Day number
+@@ -190,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C48
+-# File expires on: 28 June 2015
++# Updated through IERS Bulletin C52
++# File expires on: 28 June 2017
+ #
+-#@ 3644438400
++#@ 3707596800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -221,6 +230,8 @@
+ 3345062400 33 # 1 Jan 2006
+ 3439756800 34 # 1 Jan 2009
+ 3550089600 35 # 1 Jul 2012
++3644697600 36 # 1 Jul 2015
++3692217600 37 # 1 Jan 2017
+ #
+ # the following special comment contains the
+ # hash value of the data in this file computed
+@@ -236,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h a4862ccd c6f43c6 964f3604 85944a26 b5cfad4e
++#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -48,6 +48,7 @@
+ Leap 2005 Dec 31 23:59:60 + S
+ Leap 2008 Dec 31 23:59:60 + S
+ Leap 2012 Jun 30 23:59:60 + S
++Leap 2016 Dec 31 23:59:60 + S
+
+ # INTERNATIONAL EARTH ROTATION AND REFERENCE SYSTEMS SERVICE (IERS)
+ #
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -0,0 +1,76 @@
++# Generate the 'leapseconds' file from 'leap-seconds.list'.
++
++# This file is in the public domain.
++
++BEGIN {
++ print "# Allowance for leap seconds added to each time zone file."
++ print ""
++ print "# This file is in the public domain."
++ print ""
++ print "# This file is generated automatically from the data in the public-domain"
++ print "# leap-seconds.list file available from most NIST time servers."
++ print "# If the URL <ftp://time.nist.gov/pub/leap-seconds.list> does not work,"
++ print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
++ print "# See <http://tf.nist.gov/tf-cgi/servers.cgi> for a list of secondary servers."
++ print "# For more about leap-seconds.list, please see"
++ print "# The NTP Timescale and Leap Seconds"
++ print "# http://www.eecis.udel.edu/~mills/leap.html"
++ print ""
++ print "# The International Earth Rotation and Reference Systems Service"
++ print "# periodically uses leap seconds to keep UTC to within 0.9 s of UT1"
++ print "# (which measures the true angular orientation of the earth in space); see"
++ print "# Terry J Quinn, The BIPM and the accurate measure of time,"
++ print "# Proc IEEE 79, 7 (July 1991), 894-905 <http://dx.doi.org/10.1109/5.84965>."
++ print "# There were no leap seconds before 1972, because the official mechanism"
++ print "# accounting for the discrepancy between atomic time and the earth's rotation"
++ print "# did not exist until the early 1970s."
++ print ""
++ print "# The correction (+ or -) is made at the given time, so lines"
++ print "# will typically look like:"
++ print "# Leap YEAR MON DAY 23:59:60 + R/S"
++ print "# or"
++ print "# Leap YEAR MON DAY 23:59:59 - R/S"
++ print ""
++ print "# If the leapsecond is Rolling (R) the given time is local time."
++ print "# If the leapsecond is Stationary (S) the given time is UTC."
++ print ""
++ print "# Leap YEAR MONTH DAY HH:MM:SS CORR R/S"
++}
++
++/^ *$/ { next }
++
++/^#\tUpdated through/ || /^#\tFile expires on:/ {
++ last_lines = last_lines $0 "\n"
++}
++
++/^#/ { next }
++
++{
++ NTP_timestamp = $1
++ TAI_minus_UTC = $2
++ hash_mark = $3
++ one = $4
++ month = $5
++ year = $6
++ if (old_TAI_minus_UTC) {
++ if (old_TAI_minus_UTC < TAI_minus_UTC) {
++ sign = "23:59:60\t+"
++ } else {
++ sign = "23:59:59\t-"
++ }
++ if (month == "Jan") {
++ year--;
++ month = "Dec";
++ day = 31
++ } else if (month == "Jul") {
++ month = "Jun";
++ day = 30
++ }
++ printf "Leap\t%s\t%s\t%s\t%s\tS\n", year, month, day, sign
++ }
++ old_TAI_minus_UTC = TAI_minus_UTC
++}
++
++END {
++ printf "\n%s", last_lines
++}
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -3,9 +3,10 @@
+
+ # also includes Central America and the Caribbean
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+ # From Paul Eggert (1999-03-22):
+ # A reliable and entertaining source about time zones is
+@@ -23,8 +24,32 @@
+ # was the result of his proposals at the Convention of Railroad Trunk Lines
+ # in New York City (1869-10). His 1870 proposal was based on Washington, DC,
+ # but in 1872-05 he moved the proposed origin to Greenwich.
+-# His proposal was adopted by the railroads on 1883-11-18 at 12:00,
+-# and the most of the country soon followed suit.
++
++# From Paul Eggert (2016-09-21):
++# Dowd's proposal left many details unresolved, such as where to draw
++# lines between time zones. The key individual who made time zones
++# work in the US was William Frederick Allen - railway engineer,
++# managing editor of the Travelers' Guide, and secretary of the
++# General Time Convention, a railway standardization group. Allen
++# spent months in dialogs with scientific and railway leaders,
++# developed a workable plan to institute time zones, and presented it
++# to the General Time Convention on 1883-04-11, saying that his plan
++# meant "local time would be practically abolished" - a plus for
++# railway scheduling. By the next convention on 1883-10-11 nearly all
++# railroads had agreed and it took effect on 1883-11-18 at 12:00.
++# That Sunday was called the "day of two noons", as the eastern parts
++# of the new zones observed noon twice. Allen witnessed the
++# transition in New York City, writing:
++#
++# I heard the bells of St. Paul's strike on the old time. Four
++# minutes later, obedient to the electrical signal from the Naval
++# Observatory ... the time-ball made its rapid descent, the chimes
++# of old Trinity rang twelve measured strokes, and local time was
++# abandoned, probably forever.
++#
++# Most of the US soon followed suit. See:
++# Bartky IR. The adoption of standard time. Technol Cult 1989 Jan;30(1):25-56.
++# http://dx.doi.org/10.2307/3105430
+
+ # From Paul Eggert (2005-04-16):
+ # That 1883 transition occurred at 12:00 new time, not at 12:00 old time.
+@@ -59,8 +84,8 @@
+ #
+ # For more about the first ten years of DST in the United States, see
+ # Robert Garland, Ten years of daylight saving from the Pittsburgh standpoint
+-# (Carnegie Library of Pittsburgh, 1927)
+-# <http://www.clpgh.org/exhibit/dst.html>.
++# (Carnegie Library of Pittsburgh, 1927).
++# http://www.clpgh.org/exhibit/dst.html
+ #
+ # Shanks says that DST was called "War Time" in the US in 1918 and 1919.
+ # However, DST was imposed by the Standard Time Act of 1918, which
+@@ -79,8 +104,8 @@
+ # From Arthur David Olson (2000-09-25):
+ # Last night I heard part of a rebroadcast of a 1945 Arch Oboler radio drama.
+ # In the introduction, Oboler spoke of "Eastern Peace Time."
+-# An AltaVista search turned up
+-# <http://rowayton.org/rhs/hstaug45.html>:
++# An AltaVista search turned up:
++# http://rowayton.org/rhs/hstaug45.html
+ # "When the time is announced over the radio now, it is 'Eastern Peace
+ # Time' instead of the old familiar 'Eastern War Time.' Peace is wonderful."
+ # (August 1945) by way of confirmation.
+@@ -123,7 +148,7 @@
+ Rule US 1918 1919 - Oct lastSun 2:00 0 S
+ Rule US 1942 only - Feb 9 2:00 1:00 W # War
+ Rule US 1945 only - Aug 14 23:00u 1:00 P # Peace
+-Rule US 1945 only - Sep 30 2:00 0 S
++Rule US 1945 only - Sep lastSun 2:00 0 S
+ Rule US 1967 2006 - Oct lastSun 2:00 0 S
+ Rule US 1967 1973 - Apr lastSun 2:00 1:00 D
+ Rule US 1974 only - Jan 6 2:00 1:00 D
+@@ -226,9 +251,14 @@
+ # The law doesn't give abbreviations.
+ #
+ # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+-# Public law 106-564 (2000-12-23) introduced the abbreviation
+-# "Chamorro Standard Time" for time in Guam and the Northern Marianas.
+-# See the file "australasia".
++# Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
++# for time in Guam and the Northern Marianas. See the file "australasia".
++#
++# From Paul Eggert (2015-04-17):
++# HST and HDT are standardized abbreviations for Hawaii-Aleutian
++# standard and daylight times. See section 9.47 (p 234) of the
++# U.S. Government Printing Office Style Manual (2008)
++# http://www.gpo.gov/fdsys/pkg/GPO-STYLEMANUAL-2008/pdf/GPO-STYLEMANUAL-2008.pdf
+
+ # From Arthur David Olson, 2005-08-09
+ # The following was signed into law on 2005-08-08.
+@@ -268,7 +298,7 @@
+
+ # From Paul Eggert (2005-08-26):
+ # According to today's Huntsville Times
+-# <http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1>
++# http://www.al.com/news/huntsvilletimes/index.ssf?/base/news/1125047783228320.xml&coll=1
+ # a few towns on Alabama's "eastern border with Georgia, such as Phenix City
+ # in Russell County, Lanett in Chambers County and some towns in Lee County,
+ # set their watches and clocks on Eastern time." It quotes H.H. "Bubba"
+@@ -276,6 +306,12 @@
+ # time zone, but we do go by the Eastern time zone because so many people work
+ # in Columbus."
+
++# From Paul Eggert (2014-09-06):
++# Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
++# says that New York City Hall time was 3 minutes 58.4 seconds fast of
++# Eastern time (i.e., -4:56:01.6) just before the 1883 switch. Round to the
++# nearest second.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule NYC 1920 only - Mar lastSun 2:00 1:00 D
+ Rule NYC 1920 only - Oct lastSun 2:00 0 S
+@@ -313,6 +349,16 @@
+ # Statue 175 closer in synch with the US Congress' intent....
+ # http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
+
++# From an email administrator of the City of Fort Pierre, SD (2015-12-21):
++# Fort Pierre is technically located in the Mountain time zone as is
++# the rest of Stanley County. Most of Stanley County and Fort Pierre
++# uses the Central time zone due to doing most of their business in
++# Pierre so it simplifies schedules. I have lived in Stanley County
++# all my life and it has been that way since I can remember. (43 years!)
++#
++# From Paul Eggert (2015-12-25):
++# Assume this practice predates 1970, so Fort Pierre can use America/Chicago.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Chicago 1920 only - Jun 13 2:00 1:00 D
+ Rule Chicago 1920 1921 - Oct lastSun 2:00 0 S
+@@ -323,15 +369,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Chicago -5:50:36 - LMT 1883 Nov 18 12:09:24
+ -6:00 US C%sT 1920
+- -6:00 Chicago C%sT 1936 Mar 1 2:00
+- -5:00 - EST 1936 Nov 15 2:00
++ -6:00 Chicago C%sT 1936 Mar 1 2:00
++ -5:00 - EST 1936 Nov 15 2:00
+ -6:00 Chicago C%sT 1942
+ -6:00 US C%sT 1946
+ -6:00 Chicago C%sT 1967
+ -6:00 US C%sT
+ # Oliver County, ND switched from mountain to central time on 1992-10-25.
+ Zone America/North_Dakota/Center -6:45:12 - LMT 1883 Nov 18 12:14:48
+- -7:00 US M%sT 1992 Oct 25 02:00
++ -7:00 US M%sT 1992 Oct 25 2:00
+ -6:00 US C%sT
+ # Morton County, ND, switched from mountain to central time on
+ # 2003-10-26, except for the area around Mandan which was already central time.
+@@ -340,8 +386,8 @@
+ # Jones, Mellette, and Todd Counties in South Dakota;
+ # but in practice these other counties were already observing central time.
+ # See <http://www.epa.gov/fedrgstr/EPA-IMPACT/2003/October/Day-28/i27056.htm>.
+-Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
+- -7:00 US M%sT 2003 Oct 26 02:00
++Zone America/North_Dakota/New_Salem -6:45:39 - LMT 1883 Nov 18 12:14:21
++ -7:00 US M%sT 2003 Oct 26 2:00
+ -6:00 US C%sT
+
+ # From Josh Findley (2011-01-21):
+@@ -358,8 +404,8 @@
+ # at 47 degrees 15' 51" N, 101 degrees 46' 40" W, which yields an offset
+ # of 6h47'07".
+
+-Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
+- -7:00 US M%sT 2010 Nov 7 2:00
++Zone America/North_Dakota/Beulah -6:47:07 - LMT 1883 Nov 18 12:12:53
++ -7:00 US M%sT 2010 Nov 7 2:00
+ -6:00 US C%sT
+
+ # US mountain time, represented by Denver
+@@ -391,11 +437,42 @@
+ # north of the Salmon River, and the towns of Burgdorf and Warren),
+ # Nevada (except West Wendover), Oregon (except the northern 3/4 of
+ # Malheur county), and Washington
++
++# From Paul Eggert (2016-08-20):
++# In early February 1948, in response to California's electricity shortage,
++# PG&E changed power frequency from 60 to 59.5 Hz during daylight hours,
++# causing electric clocks to lose six minutes per day. (This did not change
++# legal time, and is not part of the data here.) See:
++# Ross SA. An energy crisis from the past: Northern California in 1948.
++# Working Paper No. 8, Institute of Governmental Studies, UC Berkeley,
++# 1973-11. http://escholarship.org/uc/item/8x22k30c
++#
++# In another measure to save electricity, DST was instituted from 1948-03-14
++# at 02:01 to 1949-01-16 at 02:00, with the governor having the option to move
++# the fallback transition earlier. See pages 3-4 of:
++# http://clerk.assembly.ca.gov/sites/clerk.assembly.ca.gov/files/archive/Statutes/1948/48Vol1_Chapters.pdf
++#
++# In response:
++#
++# Governor Warren received a torrent of objecting mail, and it is not too much
++# to speculate that the objections to Daylight Saving Time were one important
++# factor in the defeat of the Dewey-Warren Presidential ticket in California.
++# -- Ross, p 25
++#
++# On December 8 the governor exercised the option, setting the date to January 1
++# (LA Times 1948-12-09). The transition time was 02:00 (LA Times 1949-01-01).
++#
++# Despite the controversy, in 1949 California voters approved Proposition 12,
++# which established DST from April's last Sunday at 01:00 until September's
++# last Sunday at 02:00. This was amended by 1962's Proposition 6, which changed
++# the fall-back date to October's last Sunday. See:
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# http://repository.uchastings.edu/cgi/viewcontent.cgi?article=1636&context=ca_ballot_props
+ #
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+-Rule CA 1948 only - Mar 14 2:00 1:00 D
++Rule CA 1948 only - Mar 14 2:01 1:00 D
+ Rule CA 1949 only - Jan 1 2:00 0 S
+-Rule CA 1950 1966 - Apr lastSun 2:00 1:00 D
++Rule CA 1950 1966 - Apr lastSun 1:00 1:00 D
+ Rule CA 1950 1961 - Sep lastSun 2:00 0 S
+ Rule CA 1962 1966 - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -469,15 +546,21 @@
+ # For lack of better information, assume that Metlakatla's
+ # abandonment of use of daylight saving resulted from the 1983 vote.
+
++# From Steffen Thorsen (2015-11-09):
++# It seems Metlakatla did go off PST on Sunday, November 1, changing
++# their time to AKST and are going to follow Alaska's DST, switching
++# between AKST and AKDT from now on....
++# http://www.krbd.org/2015/10/30/annette-island-times-they-are-a-changing/
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Juneau 15:02:19 - LMT 1867 Oct 18
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1980 Apr 27 2:00
+- -9:00 US Y%sT 1980 Oct 26 2:00
+- -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 US P%sT 1980 Apr 27 2:00
++ -9:00 US Y%sT 1980 Oct 26 2:00
++ -8:00 US P%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Sitka 14:58:47 - LMT 1867 Oct 18
+@@ -485,7 +568,7 @@
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 US P%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 18
+@@ -493,8 +576,9 @@
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+ -8:00 - PST 1969
+- -8:00 US P%sT 1983 Oct 30 2:00
+- -8:00 - PST
++ -8:00 US P%sT 1983 Oct 30 2:00
++ -8:00 - PST 2015 Nov 1 2:00
++ -9:00 US AK%sT
+ Zone America/Yakutat 14:41:05 - LMT 1867 Oct 18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+@@ -509,7 +593,7 @@
+ -10:00 US CAT/CAPT 1946 # Peace
+ -10:00 - CAT 1967 Apr
+ -10:00 - AHST 1969
+- -10:00 US AH%sT 1983 Oct 30 2:00
++ -10:00 US AH%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Nome 12:58:21 - LMT 1867 Oct 18
+@@ -518,7 +602,7 @@
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+- -11:00 US B%sT 1983 Oct 30 2:00
++ -11:00 US B%sT 1983 Oct 30 2:00
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+ Zone America/Adak 12:13:21 - LMT 1867 Oct 18
+@@ -527,9 +611,9 @@
+ -11:00 US N%sT 1946
+ -11:00 - NST 1967 Apr
+ -11:00 - BST 1969
+- -11:00 US B%sT 1983 Oct 30 2:00
++ -11:00 US B%sT 1983 Oct 30 2:00
+ -10:00 US AH%sT 1983 Nov 30
+- -10:00 US HA%sT
++ -10:00 US H%sT
+ # The following switches don't quite make our 1970 cutoff.
+ #
+ # Shanks writes that part of southwest Alaska (e.g. Aniak)
+@@ -545,7 +629,7 @@
+ # Minutes of the Unalaska City Council Meeting, January 10, 1967:
+ # "Except for St. Paul and Akutan, Unalaska is the only important
+ # location not on Alaska Standard Time. The following resolution was
+-# made by William Robinson and seconded by Henry Swanson: Be it
++# made by William Robinson and seconded by Henry Swanson: Be it
+ # resolved that the City of Unalaska hereby goes to Alaska Standard
+ # Time as of midnight Friday, January 13, 1967 (1 A.M. Saturday,
+ # January 14, Alaska Standard Time.) This resolution was passed with
+@@ -578,7 +662,7 @@
+ # year, the standard time of this Territory shall be advanced one
+ # hour...This Act shall take effect upon its approval. Approved this 26th
+ # day of April, A. D. 1933. LAWRENCE M JUDD, Governor of the Territory of
+-# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is
++# Hawaii." Page 172: "Act 163...Act 90 of the Session Laws of 1933 is
+ # hereby repealed...This Act shall take effect upon its approval, upon
+ # which date the standard time of this Territory shall be restored to
+ # that existing immediately prior to the taking effect of said Act 90.
+@@ -588,14 +672,14 @@
+ # Note that 1933-05-21 was a Sunday.
+ # We're left to guess the time of day when Act 163 was approved; guess noon.
+
+-Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00 #Schmitt&Cox
+- -10:30 - HST 1933 Apr 30 2:00 #Laws 1933
+- -10:30 1:00 HDT 1933 May 21 12:00 #Laws 1933+12
+- -10:30 - HST 1942 Feb 09 2:00 #Schmitt&Cox+2
+- -10:30 1:00 HDT 1945 Sep 30 2:00 #Schmitt&Cox+2
+- -10:30 - HST 1947 Jun 8 2:00 #Schmitt&Cox+2
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Pacific/Honolulu -10:31:26 - LMT 1896 Jan 13 12:00
++ -10:30 - HST 1933 Apr 30 2:00
++ -10:30 1:00 HDT 1933 May 21 12:00
++ -10:30 - HST 1942 Feb 9 2:00
++ -10:30 1:00 HDT 1945 Sep 30 2:00
++ -10:30 - HST 1947 Jun 8 2:00
+ -10:00 - HST
+-
+ Link Pacific/Honolulu Pacific/Johnston
+
+ # Now we turn to US areas that have diverged from the consensus since 1970.
+@@ -621,10 +705,11 @@
+ # Shanks says the 1944 experiment came to an end on 1944-03-17.
+ # Go with the Arizona State Library instead.
+
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Phoenix -7:28:18 - LMT 1883 Nov 18 11:31:42
+- -7:00 US M%sT 1944 Jan 1 00:01
+- -7:00 - MST 1944 Apr 1 00:01
+- -7:00 US M%sT 1944 Oct 1 00:01
++ -7:00 US M%sT 1944 Jan 1 0:01
++ -7:00 - MST 1944 Apr 1 0:01
++ -7:00 US M%sT 1944 Oct 1 0:01
+ -7:00 - MST 1967
+ -7:00 US M%sT 1968 Mar 21
+ -7:00 - MST
+@@ -648,16 +733,15 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Boise -7:44:49 - LMT 1883 Nov 18 12:15:11
+- -8:00 US P%sT 1923 May 13 2:00
++ -8:00 US P%sT 1923 May 13 2:00
+ -7:00 US M%sT 1974
+- -7:00 - MST 1974 Feb 3 2:00
++ -7:00 - MST 1974 Feb 3 2:00
+ -7:00 US M%sT
+
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# What time is it in Indiana? (2006-03-01)
+-# <http://www.mccsc.edu/time.html>
++# http://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -683,9 +767,6 @@
+ # that they would be ambiguous if we left them at the 'America' level.
+ # So we reluctantly put them all in a subdirectory 'America/Indiana'.
+
+-# From Paul Eggert (2005-08-16):
+-# http://www.mccsc.edu/time.html says that Indiana will use DST starting 2006.
+-
+ # From Paul Eggert (2014-06-26):
+ # https://www.federalregister.gov/articles/2006/01/20/06-563/standard-time-zone-boundary-in-the-state-of-indiana
+ # says "DOT is relocating the time zone boundary in Indiana to move Starke,
+@@ -707,13 +788,13 @@
+ Rule Indianapolis 1941 1954 - Sep lastSun 2:00 0 S
+ Rule Indianapolis 1946 1954 - Apr lastSun 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
++Zone America/Indiana/Indianapolis -5:44:38 - LMT 1883 Nov 18 12:15:22
+ -6:00 US C%sT 1920
+ -6:00 Indianapolis C%sT 1942
+ -6:00 US C%sT 1946
+- -6:00 Indianapolis C%sT 1955 Apr 24 2:00
+- -5:00 - EST 1957 Sep 29 2:00
+- -6:00 - CST 1958 Apr 27 2:00
++ -6:00 Indianapolis C%sT 1955 Apr 24 2:00
++ -5:00 - EST 1957 Sep 29 2:00
++ -6:00 - CST 1958 Apr 27 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+ -5:00 - EST 2006
+@@ -729,10 +810,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Marengo -5:45:23 - LMT 1883 Nov 18 12:14:37
+ -6:00 US C%sT 1951
+- -6:00 Marengo C%sT 1961 Apr 30 2:00
++ -6:00 Marengo C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+- -5:00 US E%sT 1974 Jan 6 2:00
+- -6:00 1:00 CDT 1974 Oct 27 2:00
++ -5:00 US E%sT 1974 Jan 6 2:00
++ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT 1976
+ -5:00 - EST 2006
+ -5:00 US E%sT
+@@ -753,11 +834,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vincennes -5:50:07 - LMT 1883 Nov 18 12:09:53
+ -6:00 US C%sT 1946
+- -6:00 Vincennes C%sT 1964 Apr 26 2:00
++ -6:00 Vincennes C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Nov 4 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+ #
+ # Perry County, Indiana, switched from eastern to central time in April 2006.
+@@ -774,10 +855,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Tell_City -5:47:03 - LMT 1883 Nov 18 12:12:57
+ -6:00 US C%sT 1946
+- -6:00 Perry C%sT 1964 Apr 26 2:00
++ -6:00 Perry C%sT 1964 Apr 26 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
++ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+ #
+ # Pike County, Indiana moved from central to eastern time in 1977,
+@@ -790,11 +871,11 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Petersburg -5:49:07 - LMT 1883 Nov 18 12:10:53
+ -6:00 US C%sT 1955
+- -6:00 Pike C%sT 1965 Apr 25 2:00
+- -5:00 - EST 1966 Oct 30 2:00
+- -6:00 US C%sT 1977 Oct 30 2:00
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Nov 4 2:00
++ -6:00 Pike C%sT 1965 Apr 25 2:00
++ -5:00 - EST 1966 Oct 30 2:00
++ -6:00 US C%sT 1977 Oct 30 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Nov 4 2:00
+ -5:00 US E%sT
+ #
+ # Starke County, Indiana moved from central to eastern time in 1991,
+@@ -812,10 +893,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Knox -5:46:30 - LMT 1883 Nov 18 12:13:30
+ -6:00 US C%sT 1947
+- -6:00 Starke C%sT 1962 Apr 29 2:00
+- -5:00 - EST 1963 Oct 27 2:00
+- -6:00 US C%sT 1991 Oct 27 2:00
+- -5:00 - EST 2006 Apr 2 2:00
++ -6:00 Starke C%sT 1962 Apr 29 2:00
++ -5:00 - EST 1963 Oct 27 2:00
++ -6:00 US C%sT 1991 Oct 27 2:00
++ -5:00 - EST 2006 Apr 2 2:00
+ -6:00 US C%sT
+ #
+ # Pulaski County, Indiana, switched from eastern to central time in
+@@ -828,17 +909,17 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Winamac -5:46:25 - LMT 1883 Nov 18 12:13:35
+ -6:00 US C%sT 1946
+- -6:00 Pulaski C%sT 1961 Apr 30 2:00
++ -6:00 Pulaski C%sT 1961 Apr 30 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1971
+- -5:00 - EST 2006 Apr 2 2:00
+- -6:00 US C%sT 2007 Mar 11 2:00
++ -5:00 - EST 2006 Apr 2 2:00
++ -6:00 US C%sT 2007 Mar 11 2:00
+ -5:00 US E%sT
+ #
+ # Switzerland County, Indiana, did not observe DST from 1973 through 2005.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Indiana/Vevay -5:40:16 - LMT 1883 Nov 18 12:19:44
+- -6:00 US C%sT 1954 Apr 25 2:00
++ -6:00 US C%sT 1954 Apr 25 2:00
+ -5:00 - EST 1969
+ -5:00 US E%sT 1973
+ -5:00 - EST 2006
+@@ -859,16 +940,16 @@
+ -6:00 US C%sT 1921
+ -6:00 Louisville C%sT 1942
+ -6:00 US C%sT 1946
+- -6:00 Louisville C%sT 1961 Jul 23 2:00
++ -6:00 Louisville C%sT 1961 Jul 23 2:00
+ -5:00 - EST 1968
+- -5:00 US E%sT 1974 Jan 6 2:00
+- -6:00 1:00 CDT 1974 Oct 27 2:00
++ -5:00 US E%sT 1974 Jan 6 2:00
++ -6:00 1:00 CDT 1974 Oct 27 2:00
+ -5:00 US E%sT
+ #
+ # Wayne County, Kentucky
+ #
+ # From Lake Cumberland LIFE
+-# <http://www.lake-cumberland.com/life/archive/news990129time.shtml>
++# http://www.lake-cumberland.com/life/archive/news990129time.shtml
+ # (1999-01-29) via WKYM-101.7:
+ # Clinton County has joined Wayne County in asking the DoT to change from
+ # the Central to the Eastern time zone.... The Wayne County government made
+@@ -887,7 +968,7 @@
+ # From Paul Eggert (2001-07-16):
+ # The final rule was published in the
+ # Federal Register 65, 160 (2000-08-17), pp 50154-50158.
+-# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22>
++# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=2000_register&docid=fr17au00-22
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -913,7 +994,7 @@
+ # West Wendover, NV officially switched from Pacific to mountain time on
+ # 1999-10-31. See the
+ # Federal Register 64, 203 (1999-10-21), pp 56705-56707.
+-# <http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15>
++# http://frwebgate.access.gpo.gov/cgi-bin/getdoc.cgi?dbname=1999_register&docid=fr21oc99-15
+ # However, the Federal Register says that West Wendover already operated
+ # on mountain time, and the rule merely made this official;
+ # hence a separate tz entry is not needed.
+@@ -951,12 +1032,12 @@
+ Rule Detroit 1967 only - Oct lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Detroit -5:32:11 - LMT 1905
+- -6:00 - CST 1915 May 15 2:00
++ -6:00 - CST 1915 May 15 2:00
+ -5:00 - EST 1942
+ -5:00 US E%sT 1946
+ -5:00 Detroit E%sT 1973
+ -5:00 US E%sT 1975
+- -5:00 - EST 1975 Apr 27 2:00
++ -5:00 - EST 1975 Apr 27 2:00
+ -5:00 US E%sT
+ #
+ # Dickinson, Gogebic, Iron, and Menominee Counties, Michigan,
+@@ -969,8 +1050,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Menominee -5:50:27 - LMT 1885 Sep 18 12:00
+ -6:00 US C%sT 1946
+- -6:00 Menominee C%sT 1969 Apr 27 2:00
+- -5:00 - EST 1973 Apr 29 2:00
++ -6:00 Menominee C%sT 1969 Apr 27 2:00
++ -5:00 - EST 1973 Apr 29 2:00
+ -6:00 US C%sT
+
+ # Navassa
+@@ -987,19 +1068,19 @@
+ ################################################################################
+
+
+-# From Paul Eggert (2006-03-22):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
+-#
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+ # Other sources occasionally used include:
+ #
+@@ -1050,7 +1131,7 @@
+ # From Paul Eggert (1994-11-22):
+ # Alas, this sort of thing must be handled by localization software.
+
+-# Unless otherwise specified, the data for Canada are all from Shanks
++# Unless otherwise specified, the data entries for Canada are all from Shanks
+ # & Pottenger.
+
+ # From Chris Walton (2006-04-01, 2006-04-25, 2006-06-26, 2007-01-31,
+@@ -1097,17 +1178,16 @@
+ # An amendment to the Interpretation Act was registered on February 19/2007....
+ # http://action.attavik.ca/home/justice-gn/attach/2007/gaz02part2.pdf
+
+-# From Paul Eggert (2006-04-25):
++# From Paul Eggert (2014-10-18):
+ # H. David Matthews and Mary Vincent's map
+ # "It's about TIME", _Canadian Geographic_ (September-October 1998)
+-# <http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp>
++# http://www.canadiangeographic.ca/Magazine/SO98/alacarte.asp
+ # contains detailed boundaries for regions observing nonstandard
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+-# INMS, the Institute for National Measurement Standards in Ottawa, has
+-# information about standard and daylight saving time zones in Canada.
+-# <http://inms-ienm.nrc-cnrc.gc.ca/en/time_services/daylight_saving_e.php>
+-# (updated periodically).
++# National Research Council Canada maintains info about time zones and DST.
++# http://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# http://www.nrc-cnrc.gc.ca/eng/services/time/faq/index.html#Q5
+ # Its unofficial information is often taken from Matthews and Vincent.
+
+ # From Paul Eggert (2006-06-27):
+@@ -1220,17 +1300,26 @@
+ -3:30 - NST 1936
+ -3:30 StJohns N%sT 1942 May 11
+ -3:30 Canada N%sT 1946
+- -3:30 StJohns N%sT 1966 Mar 15 2:00
++ -3:30 StJohns N%sT 1966 Mar 15 2:00
+ -4:00 StJohns A%sT 2011 Nov
+ -4:00 Canada A%sT
+
+
+ # west Labrador, Nova Scotia, Prince Edward I
+
+-# From Paul Eggert (2006-03-22):
++# From Brian Inglis (2015-07-20):
++# From the historical weather station records available at:
++# https://weatherspark.com/history/28351/1971/Sydney-Nova-Scotia-Canada
++# Sydney shares the same time history as Glace Bay, so was
++# likely to be the same across the island....
++# Sydney, as the capital and most populous location, or Cape Breton, would
++# have been better names for the zone had we known this in 1996.
++
++# From Paul Eggert (2015-07-20):
+ # Shanks & Pottenger write that since 1970 most of this region has been like
+ # Halifax. Many locales did not observe peacetime DST until 1972;
+-# Glace Bay, NS is the largest that we know of.
++# the Cape Breton area, represented by Glace Bay, is the largest we know of
++# (Glace Bay was perhaps not the best name choice but no point changing now).
+ # Shanks & Pottenger also write that Liverpool, NS was the only town
+ # in Canada to observe DST in 1971 but not 1970; for now we'll assume
+ # this is a typo.
+@@ -1281,7 +1370,7 @@
+ Zone America/Halifax -4:14:24 - LMT 1902 Jun 15
+ -4:00 Halifax A%sT 1918
+ -4:00 Canada A%sT 1919
+- -4:00 Halifax A%sT 1942 Feb 9 2:00s
++ -4:00 Halifax A%sT 1942 Feb 9 2:00s
+ -4:00 Canada A%sT 1946
+ -4:00 Halifax A%sT 1974
+ -4:00 Canada A%sT
+@@ -1328,14 +1417,9 @@
+
+ # Quebec
+
+-# From Paul Eggert (2013-08-30):
+-# Since 1970 most of Quebec has been like Toronto.
+-# However, because earlier versions of the tz database mistakenly relied on data
+-# from Shanks & Pottenger saying that Quebec differed from Ontario after 1970,
+-# a separate entry was created for most of Quebec. We're loath to lose
+-# its pre-1970 info, even though the tz database is normally limited to
+-# zones that differ after 1970, so keep this otherwise out-of-scope entry.
+-
++# From Paul Eggert (2015-03-24):
++# See America/Toronto for most of Quebec, including Montreal.
++#
+ # Matthews and Vincent (1998) also write that Quebec east of the -63
+ # meridian is supposed to observe AST, but residents as far east as
+ # Natashquan use EST/EDT, and residents east of Natashquan use AST.
+@@ -1349,47 +1433,10 @@
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Mont 1917 only - Mar 25 2:00 1:00 D
+-Rule Mont 1917 only - Apr 24 0:00 0 S
+-Rule Mont 1919 only - Mar 31 2:30 1:00 D
+-Rule Mont 1919 only - Oct 25 2:30 0 S
+-Rule Mont 1920 only - May 2 2:30 1:00 D
+-Rule Mont 1920 1922 - Oct Sun>=1 2:30 0 S
+-Rule Mont 1921 only - May 1 2:00 1:00 D
+-Rule Mont 1922 only - Apr 30 2:00 1:00 D
+-Rule Mont 1924 only - May 17 2:00 1:00 D
+-Rule Mont 1924 1926 - Sep lastSun 2:30 0 S
+-Rule Mont 1925 1926 - May Sun>=1 2:00 1:00 D
+-# The 1927-to-1937 rules can be expressed more simply as
+-# Rule Mont 1927 1937 - Apr lastSat 24:00 1:00 D
+-# Rule Mont 1927 1937 - Sep lastSat 24:00 0 S
+-# The rules below avoid use of 24:00
+-# (which pre-1998 versions of zic cannot handle).
+-Rule Mont 1927 only - May 1 0:00 1:00 D
+-Rule Mont 1927 1932 - Sep lastSun 0:00 0 S
+-Rule Mont 1928 1931 - Apr lastSun 0:00 1:00 D
+-Rule Mont 1932 only - May 1 0:00 1:00 D
+-Rule Mont 1933 1940 - Apr lastSun 0:00 1:00 D
+-Rule Mont 1933 only - Oct 1 0:00 0 S
+-Rule Mont 1934 1939 - Sep lastSun 0:00 0 S
+-Rule Mont 1946 1973 - Apr lastSun 2:00 1:00 D
+-Rule Mont 1945 1948 - Sep lastSun 2:00 0 S
+-Rule Mont 1949 1950 - Oct lastSun 2:00 0 S
+-Rule Mont 1951 1956 - Sep lastSun 2:00 0 S
+-Rule Mont 1957 1973 - Oct lastSun 2:00 0 S
+-
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Blanc-Sablon -3:48:28 - LMT 1884
+ -4:00 Canada A%sT 1970
+ -4:00 - AST
+-Zone America/Montreal -4:54:16 - LMT 1884
+- -5:00 Mont E%sT 1918
+- -5:00 Canada E%sT 1919
+- -5:00 Mont E%sT 1942 Feb 9 2:00s
+- -5:00 Canada E%sT 1946
+- -5:00 Mont E%sT 1974
+- -5:00 Canada E%sT
+
+ # Ontario
+
+@@ -1419,7 +1466,7 @@
+ # says that Atikokan, Ontario currently does not observe DST,
+ # but will vote on 11-10 whether to use EST/EDT.
+ # He also writes that the Ontario Time Act (1990, Chapter T.9)
+-# <http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html>
++# http://www.gov.on.ca/MBS/english/publications/statregs/conttext.html
+ # says that Ontario east of 90W uses EST/EDT, and west of 90W uses CST/CDT.
+ # Officially Atikokan is therefore on CST/CDT, and most likely this report
+ # concerns a non-official time observed as a matter of local practice.
+@@ -1509,26 +1556,26 @@
+ # ing in 1930. The information for the province of Quebec is definite,
+ # for the other provinces only approximate:
+ #
+-# Province Daylight saving time used
++# Province Daylight saving time used
+ # Prince Edward Island Not used.
+ # Nova Scotia In Halifax only.
+ # New Brunswick In St. John only.
+ # Quebec In the following places:
+-# Montreal Lachine
+-# Quebec Mont-Royal
+-# Lévis Iberville
+-# St. Lambert Cap de la Madelèine
+-# Verdun Loretteville
+-# Westmount Richmond
+-# Outremont St. Jérôme
+-# Longueuil Greenfield Park
+-# Arvida Waterloo
+-# Chambly-Canton Beaulieu
+-# Melbourne La Tuque
+-# St. Théophile Buckingham
++# Montreal Lachine
++# Quebec Mont-Royal
++# Lévis Iberville
++# St. Lambert Cap de la Madelèine
++# Verdun Loretteville
++# Westmount Richmond
++# Outremont St. Jérôme
++# Longueuil Greenfield Park
++# Arvida Waterloo
++# Chambly-Canton Beaulieu
++# Melbourne La Tuque
++# St. Théophile Buckingham
+ # Ontario Used generally in the cities and towns along
+-# the southerly part of the province. Not
+-# used in the northwesterly part.
++# the southerly part of the province. Not
++# used in the northwesterly part.
+ # Manitoba Not used.
+ # Saskatchewan In Regina only.
+ # Alberta Not used.
+@@ -1597,7 +1644,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Toronto -5:17:32 - LMT 1895
+ -5:00 Canada E%sT 1919
+- -5:00 Toronto E%sT 1942 Feb 9 2:00s
++ -5:00 Toronto E%sT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT 1946
+ -5:00 Toronto E%sT 1974
+ -5:00 Canada E%sT
+@@ -1610,16 +1657,16 @@
+ -5:00 Canada E%sT
+ Zone America/Nipigon -5:53:04 - LMT 1895
+ -5:00 Canada E%sT 1940 Sep 29
+- -5:00 1:00 EDT 1942 Feb 9 2:00s
++ -5:00 1:00 EDT 1942 Feb 9 2:00s
+ -5:00 Canada E%sT
+ Zone America/Rainy_River -6:18:16 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+- -6:00 1:00 CDT 1942 Feb 9 2:00s
++ -6:00 1:00 CDT 1942 Feb 9 2:00s
+ -6:00 Canada C%sT
+ Zone America/Atikokan -6:06:28 - LMT 1895
+ -6:00 Canada C%sT 1940 Sep 29
+- -6:00 1:00 CDT 1942 Feb 9 2:00s
+- -6:00 Canada C%sT 1945 Sep 30 2:00
++ -6:00 1:00 CDT 1942 Feb 9 2:00s
++ -6:00 Canada C%sT 1945 Sep 30 2:00
+ -5:00 - EST
+
+
+@@ -1755,12 +1802,12 @@
+ Rule Swift 1960 1961 - Sep lastSun 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Regina -6:58:36 - LMT 1905 Sep
+- -7:00 Regina M%sT 1960 Apr lastSun 2:00
++ -7:00 Regina M%sT 1960 Apr lastSun 2:00
+ -6:00 - CST
+ Zone America/Swift_Current -7:11:20 - LMT 1905 Sep
+- -7:00 Canada M%sT 1946 Apr lastSun 2:00
++ -7:00 Canada M%sT 1946 Apr lastSun 2:00
+ -7:00 Regina M%sT 1950
+- -7:00 Swift M%sT 1972 Apr lastSun 2:00
++ -7:00 Swift M%sT 1972 Apr lastSun 2:00
+ -6:00 - CST
+
+
+@@ -1818,25 +1865,25 @@
+ # Unfortunately the exact date for the time change in June 1918 remains
+ # unknown and will be difficult to ascertain. I e-mailed Tammy a few months
+ # ago to ask if Sunday June 2 was a reasonable guess. She said it was just
+-# as plausible as any other date (in June). She also said that after writing the
+-# article she had discovered another time change in 1916; this is the subject
+-# of another article which she wrote in October 2010.
++# as plausible as any other date (in June). She also said that after writing
++# the article she had discovered another time change in 1916; this is the
++# subject of another article which she wrote in October 2010.
+ # http://www.creston.museum.bc.ca/index.php?module=comments&uop=view_comment&cm+id=56
+
+ # Here is a summary of the three clock change events in Creston's history:
+ # 1. 1884 or 1885: adoption of Mountain Standard Time (GMT-7)
+ # Exact date unknown
+ # 2. Oct 1916: switch to Pacific Standard Time (GMT-8)
+-# Exact date in October unknown; Sunday October 1 is a reasonable guess.
++# Exact date in October unknown; Sunday October 1 is a reasonable guess.
+ # 3. June 1918: switch to Pacific Daylight Time (GMT-7)
+ # Exact date in June unknown; Sunday June 2 is a reasonable guess.
+-# note#1:
++# note 1:
+ # On Oct 27/1918 when daylight saving ended in the rest of Canada,
+ # Creston did not change its clocks.
+-# note#2:
++# note 2:
+ # During WWII when the Federal Government legislated a mandatory clock change,
+ # Creston did not oblige.
+-# note#3:
++# note 3:
+ # There is no guarantee that Creston will remain on Mountain Standard Time
+ # (UTC-7) forever.
+ # The subject was debated at least once this year by the town Council.
+@@ -1851,6 +1898,22 @@
+
+ # The transition dates (and times) are guesses.
+
++# From Matt Johnson (2015-09-21):
++# Fort Nelson, BC, Canada will cancel DST this year. So while previously they
++# were aligned with America/Vancouver, they're now aligned with
++# America/Dawson_Creek.
++# http://www.northernrockies.ca/EN/meta/news/archives/2015/northern-rockies-time-change.html
++#
++# From Tim Parenti (2015-09-23):
++# This requires a new zone for the Northern Rockies Regional Municipality,
++# America/Fort_Nelson. The resolution of 2014-12-08 was reached following a
++# 2014-11-15 poll with nearly 75% support. Effectively, the municipality has
++# been on MST (-0700) like Dawson Creek since it advanced its clocks on
++# 2015-03-08.
++#
++# From Paul Eggert (2015-09-23):
++# Shanks says Fort Nelson did not observe DST in 1946, unlike Vancouver.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Vanc 1918 only - Apr 14 2:00 1:00 D
+ Rule Vanc 1918 only - Oct 27 2:00 0 S
+@@ -1867,7 +1930,13 @@
+ -8:00 Canada P%sT
+ Zone America/Dawson_Creek -8:00:56 - LMT 1884
+ -8:00 Canada P%sT 1947
+- -8:00 Vanc P%sT 1972 Aug 30 2:00
++ -8:00 Vanc P%sT 1972 Aug 30 2:00
++ -7:00 - MST
++Zone America/Fort_Nelson -8:10:47 - LMT 1884
++ -8:00 Vanc P%sT 1946
++ -8:00 - PST 1947
++ -8:00 Vanc P%sT 1987
++ -8:00 Canada P%sT 2015 Mar 8 2:00
+ -7:00 - MST
+ Zone America/Creston -7:46:04 - LMT 1884
+ -7:00 - MST 1916 Oct 1
+@@ -1880,22 +1949,120 @@
+ # Dawson switched to PST in 1973. Inuvik switched to MST in 1979.
+ # Mathew Englander (1996-10-07) gives the following refs:
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+-# c. 7 defines Yukon standard time as UTC-9. This is still valid;
++# c. 7 defines Yukon standard time as UTC-9....
+ # see Interpretation Act, R.S.C. 1985, c. I-21, s. 35(1).
++# [http://canlii.ca/t/7vhg]
+ # * C.O. 1973/214 switched Yukon to PST on 1973-10-28 00:00.
+ # * O.I.C. 1980/02 established DST.
+ # * O.I.C. 1987/056 changed DST to Apr firstSun 2:00 to Oct lastSun 2:00.
+-# Shanks & Pottenger say Yukon's 1973-10-28 switch was at 2:00; go
+-# with Englander.
+-# From Chris Walton (2006-06-26):
+-# Here is a link to the old daylight saving portion of the interpretation
+-# act which was last updated in 1987:
+-# http://www.gov.yk.ca/legislation/regs/oic1987_056.pdf
++
++# From Brian Inglis (2015-04-14):
++#
++# I tried to trace the history of Yukon time and found the following
++# regulations, giving the reference title and URL if found, regulation name,
++# and relevant quote if available. Each regulation specifically revokes its
++# predecessor. The final reference is to the current Interpretation Act
++# authorizing and resulting from these regulatory changes.
++#
++# Only recent regulations were retrievable via Yukon government site search or
++# index, and only some via Canadian legal sources. Other sources used include
++# articles titled "Standard Time and Time Zones in Canada" from JRASC via ADS
++# Abstracts, cited by ADO for 1932 ..., and updated versions from 1958 and
++# 1970 quoted below; each article includes current extracts from provincial
++# and territorial ST and DST regulations at the end, summaries and details of
++# standard times and daylight saving time at many locations across Canada,
++# with time zone maps, tables and calculations for Canadian Sunrise, Sunset,
++# and LMST; they also cover many countries and global locations, with a chart
++# and table showing current Universal Time offsets, and may be useful as
++# another source of information for 1970 and earlier.
++#
++# * Standard Time and Time Zones in Canada; Smith, C.C.; JRASC, Vol. 26,
++# pp.49-77; February 1932; SAO/NASA Astrophysics Data System (ADS)
++# http://adsabs.harvard.edu/abs/1932JRASC..26...49S from p.75:
++# Yukon Interpretation Ordinance
++# Yukon standard time is the local mean time at the one hundred and
++# thirty-fifth meridian.
++#
++# * Standard Time and Time Zones in Canada; Smith, C.C.; Thomson, Malcolm M.;
++# JRASC, Vol. 52, pp.193-223; October 1958; SAO/NASA Astrophysics Data System
++# (ADS) http://adsabs.harvard.edu/abs/1958JRASC..52..193S from pp.220-1:
++# Yukon Interpretation Ordinance, 1955, Chap. 16.
++#
++# (1) Subject to this section, standard time shall be reckoned as nine
++# hours behind Greenwich Time and called Yukon Standard Time.
++#
++# (2) Notwithstanding subsection (1), the Commissioner may make regulations
++# varying the manner of reckoning standard time.
++#
++# * Yukon Territory Commissioner's Order 1966-20 Interpretation Ordinance
++# http://? - no online source found
++#
++# * Standard Time and Time Zones in Canada; Thomson, Malcolm M.; JRASC,
++# Vol. 64, pp.129-162; June 1970; SAO/NASA Astrophysics Data System (ADS)
++# http://adsabs.harvard.edu/abs/1970JRASC..64..129T from p.156: Yukon
++# Territory Commissioner's Order 1967-59 Interpretation Ordinance ...
++#
++# 1. Commissioner's Order 1966-20 dated at Whitehorse in the Yukon
++# Territory on 27th January, 1966, is hereby revoked.
++#
++# 2. Yukon (East) Standard Time as defined by section 36 of the
++# Interpretation Ordinance from and after mid-night on the 28th day of May,
++# 1967 shall be reckoned in the same manner as Pacific Standard Time, that
++# is to say, eight hours behind Greenwich Time in the area of the Yukon
++# Territory lying east of the 138th degree longitude west.
++#
++# 3. In the remainder of the Territory, lying west of the 138th degree
++# longitude west, Yukon (West) Standard Time shall be reckoned as nine
++# hours behind Greenwich Time.
++#
++# * Yukon Standard Time defined as Pacific Standard Time, YCO 1973/214
++# http://www.canlii.org/en/yk/laws/regu/yco-1973-214/latest/yco-1973-214.html
++# C.O. 1973/214 INTERPRETATION ACT ...
++#
++# 1. Effective October 28, 1973 Commissioner's Order 1967/59 is hereby
++# revoked.
++#
++# 2. Yukon Standard Time as defined by section 36 of the Interpretation
++# Act from and after midnight on the twenty-eighth day of October, 1973
++# shall be reckoned in the same manner as Pacific Standard Time, that is
++# to say eight hours behind Greenwich Time.
++#
++# * O.I.C. 1980/02 INTERPRETATION ACT
++# http://? - no online source found
++#
++# * Yukon Daylight Saving Time, YOIC 1987/56
++# http://www.canlii.org/en/yk/laws/regu/yoic-1987-56/latest/yoic-1987-56.html
++# O.I.C. 1987/056 INTERPRETATION ACT ...
++#
++# In every year between
++# (a) two o'clock in the morning in the first Sunday in April, and
++# (b) two o'clock in the morning in the last Sunday in October,
++# Standard Time shall be reckoned as seven hours behind Greenwich Time and
++# called Yukon Daylight Saving Time.
++# ...
++# Dated ... 9th day of March, A.D., 1987.
++#
++# * Yukon Daylight Saving Time 2006, YOIC 2006/127
++# http://www.canlii.org/en/yk/laws/regu/yoic-2006-127/latest/yoic-2006-127.html
++# O.I.C. 2006/127 INTERPRETATION ACT ...
++#
++# 1. In Yukon each year the time for general purposes shall be 7 hours
++# behind Greenwich mean time during the period commencing at two o'clock
++# in the forenoon on the second Sunday of March and ending at two o'clock
++# in the forenoon on the first Sunday of November and shall be called
++# Yukon Daylight Saving Time.
++#
++# 2. Order-in-Council 1987/56 is revoked.
++#
++# 3. This order comes into force January 1, 2007.
++#
++# * Interpretation Act, RSY 2002, c 125
++# http://www.canlii.org/en/yk/laws/stat/rsy-2002-c-125/latest/rsy-2002-c-125.html
+
+ # From Rives McDow (1999-09-04):
+ # Nunavut ... moved ... to incorporate the whole territory into one time zone.
+ # Nunavut moves to single time zone Oct. 31
+-# <http://www.nunatsiaq.com/nunavut/nvt90903_13.html>
++# http://www.nunatsiaq.com/nunavut/nvt90903_13.html
+ #
+ # From Antoine Leca (1999-09-06):
+ # We then need to create a new timezone for the Kitikmeot region of Nunavut
+@@ -1903,7 +2070,7 @@
+
+ # From Paul Eggert (1999-09-20):
+ # Basic Facts: The New Territory
+-# <http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html>
++# http://www.nunavut.com/basicfacts/english/basicfacts_1territory.html
+ # (1999) reports that Pangnirtung operates on eastern time,
+ # and that Coral Harbour does not observe DST. We don't know when
+ # Pangnirtung switched to eastern time; we'll guess 1995.
+@@ -1932,8 +2099,8 @@
+ # the current state of affairs.
+
+ # From Michaela Rodrigue, writing in the
+-# Nunatsiaq News (1999-11-19)
+-# <http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html>:
++# Nunatsiaq News (1999-11-19):
++# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
+ # Clyde River, Pangnirtung and Sanikiluaq now operate with two time zones,
+ # central - or Nunavut time - for government offices, and eastern time
+ # for municipal offices and schools.... Igloolik [was similar but then]
+@@ -1980,10 +2147,7 @@
+ # [Also see <http://www.nunatsiaq.com/nunavut/nvt10309_06.html> (2001-03-09).]
+
+ # From Gwillim Law (2005-05-21):
+-# According to maps at
+-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SWE.jpg
+-# http://inms-ienm.nrc-cnrc.gc.ca/images/time_services/TZ01SSE.jpg
+-# (both dated 2003), and
++# According to ...
+ # http://www.canadiangeographic.ca/Magazine/SO98/geomap.asp
+ # (from a 1998 Canadian Geographic article), the de facto and de jure time
+ # for Southampton Island (at the north end of Hudson Bay) is UTC-5 all year
+@@ -1992,9 +2156,11 @@
+ # predates the creation of Nunavut, it probably goes back many years....
+ # The Inuktitut name of Coral Harbour is Sallit, but it's rarely used.
+ #
+-# From Paul Eggert (2005-07-26):
++# From Paul Eggert (2014-10-17):
+ # For lack of better information, assume that Southampton Island observed
+-# daylight saving only during wartime.
++# daylight saving only during wartime. Gwillim Law's email also
++# mentioned maps now maintained by National Research Council Canada;
++# see above for an up-to-date link.
+
+ # From Chris Walton (2007-03-01):
+ # ... the community of Resolute (located on Cornwallis Island in
+@@ -2080,48 +2246,48 @@
+ Rule NT_YK 1987 2006 - Apr Sun>=1 2:00 1:00 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # aka Panniqtuuq
+-Zone America/Pangnirtung 0 - zzz 1921 # trading post est.
+- -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
+- -5:00 Canada E%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
++Zone America/Pangnirtung 0 - -00 1921 # trading post est.
++ -4:00 NT_YK A%sT 1995 Apr Sun>=1 2:00
++ -5:00 Canada E%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # formerly Frobisher Bay
+-Zone America/Iqaluit 0 - zzz 1942 Aug # Frobisher Bay est.
+- -5:00 NT_YK E%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
++Zone America/Iqaluit 0 - -00 1942 Aug # Frobisher Bay est.
++ -5:00 NT_YK E%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
+ -5:00 Canada E%sT
+ # aka Qausuittuq
+-Zone America/Resolute 0 - zzz 1947 Aug 31 # Resolute founded
+- -6:00 NT_YK C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2001 Apr 1 3:00
+- -6:00 Canada C%sT 2006 Oct 29 2:00
+- -5:00 - EST 2007 Mar 11 3:00
++Zone America/Resolute 0 - -00 1947 Aug 31 # Resolute founded
++ -6:00 NT_YK C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2001 Apr 1 3:00
++ -6:00 Canada C%sT 2006 Oct 29 2:00
++ -5:00 - EST 2007 Mar 11 3:00
+ -6:00 Canada C%sT
+ # aka Kangiqiniq
+-Zone America/Rankin_Inlet 0 - zzz 1957 # Rankin Inlet founded
+- -6:00 NT_YK C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2001 Apr 1 3:00
++Zone America/Rankin_Inlet 0 - -00 1957 # Rankin Inlet founded
++ -6:00 NT_YK C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2001 Apr 1 3:00
+ -6:00 Canada C%sT
+ # aka Iqaluktuuttiaq
+-Zone America/Cambridge_Bay 0 - zzz 1920 # trading post est.?
+- -7:00 NT_YK M%sT 1999 Oct 31 2:00
+- -6:00 Canada C%sT 2000 Oct 29 2:00
+- -5:00 - EST 2000 Nov 5 0:00
+- -6:00 - CST 2001 Apr 1 3:00
++Zone America/Cambridge_Bay 0 - -00 1920 # trading post est.?
++ -7:00 NT_YK M%sT 1999 Oct 31 2:00
++ -6:00 Canada C%sT 2000 Oct 29 2:00
++ -5:00 - EST 2000 Nov 5 0:00
++ -6:00 - CST 2001 Apr 1 3:00
+ -7:00 Canada M%sT
+-Zone America/Yellowknife 0 - zzz 1935 # Yellowknife founded?
++Zone America/Yellowknife 0 - -00 1935 # Yellowknife founded?
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+-Zone America/Inuvik 0 - zzz 1953 # Inuvik founded
+- -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
++Zone America/Inuvik 0 - -00 1953 # Inuvik founded
++ -8:00 NT_YK P%sT 1979 Apr lastSun 2:00
+ -7:00 NT_YK M%sT 1980
+ -7:00 Canada M%sT
+ Zone America/Whitehorse -9:00:12 - LMT 1900 Aug 20
+- -9:00 NT_YK Y%sT 1966 Jul 1 2:00
++ -9:00 NT_YK Y%sT 1967 May 28 0:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+ Zone America/Dawson -9:17:40 - LMT 1900 Aug 20
+- -9:00 NT_YK Y%sT 1973 Oct 28 0:00
++ -9:00 NT_YK Y%sT 1973 Oct 28 0:00
+ -8:00 NT_YK P%sT 1980
+ -8:00 Canada P%sT
+
+@@ -2130,11 +2296,11 @@
+
+ # Mexico
+
+-# From Paul Eggert (2001-03-05):
++# From Paul Eggert (2014-12-07):
+ # The Investigation and Analysis Service of the
+ # Mexican Library of Congress (MLoC) has published a
+ # history of Mexican local time (in Spanish)
+-# <http://www.cddhcu.gob.mx/bibliot/publica/inveyana/polisoc/horver/>.
++# http://www.diputados.gob.mx/bibliot/publica/inveyana/polisoc/horver/index.htm
+ #
+ # Here are the discrepancies between Shanks & Pottenger (S&P) and the MLoC.
+ # (In all cases we go with the MLoC.)
+@@ -2179,8 +2345,8 @@
+ # -------------- End Forwarded Message --------------
+ # From Paul Eggert (1996-06-12):
+ # For an English translation of the decree, see
+-# "Diario Oficial: Time Zone Changeover" (1996-01-04)
+-# <http://mexico-travel.com/extra/timezone_eng.html>.
++# "Diario Oficial: Time Zone Changeover" (1996-01-04).
++# http://mexico-travel.com/extra/timezone_eng.html
+
+ # From Rives McDow (1998-10-08):
+ # The State of Quintana Roo has reverted back to central STD and DST times
+@@ -2205,7 +2371,7 @@
+ # January 17, 2000 - The Energy Secretary, Ernesto Martens, announced
+ # that Summer Time will be reduced from seven to five months, starting
+ # this year....
+-# <http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001>
++# http://www.publico.com.mx/scripts/texto3.asp?action=pagina&pag=21&pos=p&secc=naci&date=01/17/2001
+ # [translated], says "summer time will ... take effect on the first Sunday
+ # in May, and end on the last Sunday of September.
+
+@@ -2219,13 +2385,13 @@
+ # observation of Daylight Saving Time.
+
+ # Official statute published by the Energy Department
+-# <http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre>
++# http://www.conae.gob.mx/ahorro/decretohorver2001.html#decre
+ # (2001-02-01) shows Baja and Chihauhua as still using US DST rules,
+ # and Sonora with no DST. This was reported by Jesper Nørgaard (2001-02-03).
+
+ # From Paul Eggert (2001-03-03):
+ #
+-# <http://www.latimes.com/news/nation/20010303/t000018766.html>
++# http://www.latimes.com/news/nation/20010303/t000018766.html
+ # James F. Smith writes in today's LA Times
+ # * Sonora will continue to observe standard time.
+ # * Last week Mexico City's mayor Andrés Manuel López Obrador decreed that
+@@ -2303,6 +2469,40 @@
+ # efecto desde las dos horas del segundo domingo de marzo y concluirá a
+ # las dos horas del primer domingo de noviembre.
+
++# From Steffen Thorsen (2014-12-08), translated by Gwillim Law:
++# The Mexican state of Quintana Roo will likely change to EST in 2015.
++#
++# http://www.unioncancun.mx/articulo/2014/12/04/medio-ambiente/congreso-aprueba-una-hora-mas-de-sol-en-qroo
++# "With this change, the time conflict that has existed between the municipios
++# of Quintana Roo and the municipio of Felipe Carrillo Puerto may come to an
++# end. The latter declared itself in rebellion 15 years ago when a time change
++# was initiated in Mexico, and since then it has refused to change its time
++# zone along with the rest of the country."
++#
++# From Steffen Thorsen (2015-01-14), translated by Gwillim Law:
++# http://sipse.com/novedades/confirman-aplicacion-de-nueva-zona-horaria-para-quintana-roo-132331.html
++# "...the new time zone will come into effect at two o'clock on the first Sunday
++# of February, when we will have to advance the clock one hour from its current
++# time..."
++# Also, the new zone will not use DST.
++#
++# From Carlos Raúl Perasso (2015-02-02):
++# The decree that modifies the Mexican Hour System Law has finally
++# been published at the Diario Oficial de la Federación
++# http://www.dof.gob.mx/nota_detalle.php?codigo=5380123&fecha=31/01/2015
++# It establishes 5 zones for Mexico:
++# 1- Zona Centro (Central Zone): Corresponds to longitude 90 W,
++# includes most of Mexico, excluding what's mentioned below.
++# 2- Zona Pacífico (Pacific Zone): Longitude 105 W, includes the
++# states of Baja California Sur; Chihuahua; Nayarit (excluding Bahía
++# de Banderas which lies in Central Zone); Sinaloa and Sonora.
++# 3- Zona Noroeste (Northwest Zone): Longitude 120 W, includes the
++# state of Baja California.
++# 4- Zona Sureste (Southeast Zone): Longitude 75 W, includes the state
++# of Quintana Roo.
++# 5- The islands, reefs and keys shall take their timezone from the
++# longitude they are located at.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Mexico 1939 only - Feb 5 0:00 1:00 D
+ Rule Mexico 1939 only - Jun 25 0:00 0 S
+@@ -2323,35 +2523,48 @@
+ Zone America/Cancun -5:47:04 - LMT 1922 Jan 1 0:12:56
+ -6:00 - CST 1981 Dec 23
+ -5:00 Mexico E%sT 1998 Aug 2 2:00
+- -6:00 Mexico C%sT
++ -6:00 Mexico C%sT 2015 Feb 1 2:00
++ -5:00 - EST
+ # Campeche, Yucatán; represented by Mérida
+ Zone America/Merida -5:58:28 - LMT 1922 Jan 1 0:01:32
+ -6:00 - CST 1981 Dec 23
+ -5:00 - EST 1982 Dec 2
+ -6:00 Mexico C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (near US border)
++# Coahuila, Nuevo León, Tamaulipas (near US border)
++# This includes the following municipalities:
++# in Coahuila: Ocampo, Acuña, Zaragoza, Jiménez, Piedras Negras, Nava,
++# Guerrero, Hidalgo.
++# in Nuevo León: Anáhuac, Los Aldama.
++# in Tamaulipas: Nuevo Laredo, Guerrero, Mier, Miguel Alemán, Camargo,
++# Gustavo Díaz Ordaz, Reynosa, Río Bravo, Valle Hermoso, Matamoros.
++# See: Inicia mañana Horario de Verano en zona fronteriza, El Universal,
++# 2016-03-12
++# http://www.eluniversal.com.mx/articulo/estados/2016/03/12/inicia-manana-horario-de-verano-en-zona-fronteriza
+ Zone America/Matamoros -6:40:00 - LMT 1921 Dec 31 23:20:00
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT 2010
+ -6:00 US C%sT
+-# Coahuila, Durango, Nuevo León, Tamaulipas (away from US border)
++# Durango; Coahuila, Nuevo León, Tamaulipas (away from US border)
+ Zone America/Monterrey -6:41:16 - LMT 1921 Dec 31 23:18:44
+ -6:00 - CST 1988
+ -6:00 US C%sT 1989
+ -6:00 Mexico C%sT
+ # Central Mexico
+-Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
++Zone America/Mexico_City -6:36:36 - LMT 1922 Jan 1 0:23:24
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+ -6:00 - CST 1931 Oct
+ -7:00 - MST 1932 Apr 1
+- -6:00 Mexico C%sT 2001 Sep 30 02:00
++ -6:00 Mexico C%sT 2001 Sep 30 2:00
+ -6:00 - CST 2002 Feb 20
+ -6:00 Mexico C%sT
+ # Chihuahua (near US border)
+-Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
++# This includes the municipalities of Janos, Ascensión, Juárez, Guadalupe,
++# Práxedis G Guerrero, Coyame del Sotol, Ojinaga, and Manuel Benavides.
++# (See the 2016-03-12 El Universal source mentioned above.)
++Zone America/Ojinaga -6:57:40 - LMT 1922 Jan 1 0:02:20
+ -7:00 - MST 1927 Jun 10 23:00
+ -6:00 - CST 1930 Nov 15
+ -7:00 - MST 1931 May 1 23:00
+@@ -2359,7 +2572,7 @@
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1996
+ -6:00 Mexico C%sT 1998
+- -6:00 - CST 1998 Apr Sun>=1 3:00
++ -6:00 - CST 1998 Apr Sun>=1 3:00
+ -7:00 Mexico M%sT 2010
+ -7:00 US M%sT
+ # Chihuahua (away from US border)
+@@ -2371,7 +2584,7 @@
+ -7:00 - MST 1932 Apr 1
+ -6:00 - CST 1996
+ -6:00 Mexico C%sT 1998
+- -6:00 - CST 1998 Apr Sun>=1 3:00
++ -6:00 - CST 1998 Apr Sun>=1 3:00
+ -7:00 Mexico M%sT
+ # Sonora
+ Zone America/Hermosillo -7:23:52 - LMT 1921 Dec 31 23:36:08
+@@ -2435,10 +2648,10 @@
+ -6:00 - CST 1942 Apr 24
+ -7:00 - MST 1949 Jan 14
+ -8:00 - PST 1970
+- -7:00 Mexico M%sT 2010 Apr 4 2:00
++ -7:00 Mexico M%sT 2010 Apr 4 2:00
+ -6:00 Mexico C%sT
+
+-# Baja California (near US border)
++# Baja California
+ Zone America/Tijuana -7:48:04 - LMT 1922 Jan 1 0:11:56
+ -7:00 - MST 1924
+ -8:00 - PST 1927 Jun 10 23:00
+@@ -2458,25 +2671,6 @@
+ -8:00 US P%sT 2002 Feb 20
+ -8:00 Mexico P%sT 2010
+ -8:00 US P%sT
+-# Baja California (away from US border)
+-Zone America/Santa_Isabel -7:39:28 - LMT 1922 Jan 1 0:20:32
+- -7:00 - MST 1924
+- -8:00 - PST 1927 Jun 10 23:00
+- -7:00 - MST 1930 Nov 15
+- -8:00 - PST 1931 Apr 1
+- -8:00 1:00 PDT 1931 Sep 30
+- -8:00 - PST 1942 Apr 24
+- -8:00 1:00 PWT 1945 Aug 14 23:00u
+- -8:00 1:00 PPT 1945 Nov 12 # Peace
+- -8:00 - PST 1948 Apr 5
+- -8:00 1:00 PDT 1949 Jan 14
+- -8:00 - PST 1954
+- -8:00 CA P%sT 1961
+- -8:00 - PST 1976
+- -8:00 US P%sT 1996
+- -8:00 Mexico P%sT 2001
+- -8:00 US P%sT 2002 Feb 20
+- -8:00 Mexico P%sT
+ # From Paul Eggert (2006-03-22):
+ # Formerly there was an America/Ensenada zone, which differed from
+ # America/Tijuana only in that it did not observe DST from 1976
+@@ -2489,19 +2683,21 @@
+ # other than America/Tijuana for Baja, but it's not clear yet what its
+ # name or contents should be.
+ #
++# From Paul Eggert (2015-10-08):
++# Formerly there was an America/Santa_Isabel zone, but this appears to
++# have come from a misreading of
++# http://dof.gob.mx/nota_detalle.php?codigo=5127480&fecha=06/01/2010
++# It has been moved to the 'backward' file.
++#
++#
+ # Revillagigedo Is
+ # no information
+
+ ###############################################################################
+
+ # Anguilla
+-# See America/Port_of_Spain.
+-
+ # Antigua and Barbuda
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Antigua -4:07:12 - LMT 1912 Mar 2
+- -5:00 - EST 1951
+- -4:00 - AST
++# See America/Port_of_Spain.
+
+ # Bahamas
+ #
+@@ -2531,8 +2727,8 @@
+ Rule Barb 1979 only - Sep 30 2:00 0 S
+ Rule Barb 1980 only - Sep 25 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
+- -3:58:29 - BMT 1932 # Bridgetown Mean Time
++Zone America/Barbados -3:58:29 - LMT 1924 # Bridgetown
++ -3:58:29 - BMT 1932 # Bridgetown Mean Time
+ -4:00 Barb A%sT
+
+ # Belize
+@@ -2562,16 +2758,13 @@
+ # http://www.theroyalgazette.com/apps/pbcs.dll/article?AID=/20060529/NEWS/105290135
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton
+- -4:00 - AST 1974 Apr 28 2:00
++Zone Atlantic/Bermuda -4:19:18 - LMT 1930 Jan 1 2:00 # Hamilton
++ -4:00 - AST 1974 Apr 28 2:00
+ -4:00 Canada A%sT 1976
+ -4:00 US A%sT
+
+ # Cayman Is
+-# Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Cayman -5:25:32 - LMT 1890 # Georgetown
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST
++# See America/Panama.
+
+ # Costa Rica
+
+@@ -2587,7 +2780,7 @@
+ Rule CR 1992 only - Mar 15 0:00 0 S
+ # There are too many San Josés elsewhere, so we'll use 'Costa Rica'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
++Zone America/Costa_Rica -5:36:13 - LMT 1890 # San José
+ -5:36:13 - SJMT 1921 Jan 15 # San José Mean Time
+ -6:00 CR C%sT
+ # Coco
+@@ -2831,8 +3024,8 @@
+ Zone America/Santo_Domingo -4:39:36 - LMT 1890
+ -4:40 - SDMT 1933 Apr 1 12:00 # S. Dom. MT
+ -5:00 DR E%sT 1974 Oct 27
+- -4:00 - AST 2000 Oct 29 02:00
+- -5:00 US E%sT 2000 Dec 3 01:00
++ -4:00 - AST 2000 Oct 29 2:00
++ -5:00 US E%sT 2000 Dec 3 1:00
+ -4:00 - AST
+
+ # El Salvador
+@@ -2843,7 +3036,7 @@
+ # There are too many San Salvadors elsewhere, so use America/El_Salvador
+ # instead of America/San_Salvador.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
++Zone America/El_Salvador -5:56:48 - LMT 1921 # San Salvador
+ -6:00 Salv C%sT
+
+ # Grenada
+@@ -2864,7 +3057,7 @@
+ # From Paul Eggert (2006-06-22):
+ # The Ministry of Energy and Mines, press release CP-15/2006
+ # (2006-04-19), says DST ends at 24:00. See
+-# <http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf>.
++# http://www.sieca.org.gt/Sitio_publico/Energeticos/Doc/Medidas/Cambio_Horario_Nac_190406.pdf
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Guat 1973 only - Nov 25 0:00 1:00 D
+@@ -2934,6 +3127,13 @@
+ # http://radiovision2000haiti.net/public/haiti-avis-changement-dheure-dimanche/
+ # http://www.canalplushaiti.net/?p=6714
+
++# From Steffen Thorsen (2016-03-12):
++# Jean Antoine, editor of www.haiti-reference.com informed us that Haiti
++# are not going on DST this year. Several other resources confirm this: ...
++# http://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# http://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
++# http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Haiti 1983 only - May 8 0:00 1:00 D
+ Rule Haiti 1984 1987 - Apr lastSun 0:00 1:00 D
+@@ -2944,8 +3144,8 @@
+ Rule Haiti 1988 1997 - Oct lastSun 1:00s 0 S
+ Rule Haiti 2005 2006 - Apr Sun>=1 0:00 1:00 D
+ Rule Haiti 2005 2006 - Oct lastSun 0:00 0 S
+-Rule Haiti 2012 max - Mar Sun>=8 2:00 1:00 D
+-Rule Haiti 2012 max - Nov Sun>=1 2:00 0 S
++Rule Haiti 2012 2015 - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2012 2015 - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Port-au-Prince -4:49:20 - LMT 1890
+ -4:49 - PPMT 1917 Jan 24 12:00 # P-a-P MT
+@@ -2967,8 +3167,8 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_honduras04.html
+
+ # From Paul Eggert (2006-08-08):
+-# Also see Diario El Heraldo, The country returns to standard time (2006-08-08)
+-# <http://www.elheraldo.hn/nota.php?nid=54941&sec=12>.
++# Also see Diario El Heraldo, The country returns to standard time (2006-08-08).
++# http://www.elheraldo.hn/nota.php?nid=54941&sec=12
+ # It mentions executive decree 18-2006.
+
+ # From Steffen Thorsen (2006-08-17):
+@@ -2995,17 +3195,28 @@
+ # Shanks & Pottenger give -5:07:12, but Milne records -5:07:10.41 from an
+ # unspecified official document, and says "This time is used throughout the
+ # island". Go with Milne. Round to the nearest second as required by zic.
++#
++# Shanks & Pottenger give April 28 for the 1974 spring-forward transition, but
++# Lance Neita writes that Prime Minister Michael Manley decreed it January 5.
++# Assume Neita meant Jan 6 02:00, the same as the US. Neita also writes that
++# Manley's supporters associated this act with Manley's nickname "Joshua"
++# (recall that in the Bible the sun stood still at Joshua's request),
++# and with the Rod of Correction which Manley said he had received from
++# Haile Selassie, Emperor of Ethiopia. See:
++# Neita L. The politician in all of us. Jamaica Observer 2014-09-20
++# http://www.jamaicaobserver.com/columns/The-politician-in-all-of-us_17573647
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston
++Zone America/Jamaica -5:07:11 - LMT 1890 # Kingston
+ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 - EST 1974 Apr 28 2:00
++ -5:00 - EST 1974
+ -5:00 US E%sT 1984
+ -5:00 - EST
+
+ # Martinique
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
+- -4:04:20 - FFMT 1911 May # Fort-de-France MT
++Zone America/Martinique -4:04:20 - LMT 1890 # Fort-de-France
++ -4:04:20 - FFMT 1911 May # Fort-de-France MT
+ -4:00 - AST 1980 Apr 6
+ -4:00 1:00 ADT 1980 Sep 28
+ -4:00 - AST
+@@ -3034,7 +3245,7 @@
+ # From Gwillim Law (2005-04-21):
+ # The Associated Press story on the time change, which can be found at
+ # http://www.lapalmainteractivo.com/guias/content/gen/ap/America_Latina/AMC_GEN_NICARAGUA_HORA.html
+-# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
++# and elsewhere, says (fifth paragraph, translated from Spanish): "The last
+ # time that a change of clocks was applied to save energy was in the year 2000
+ # during the Arnoldo Alemán administration."...
+ # The northamerica file says that Nicaragua has been on UTC-6 continuously
+@@ -3072,7 +3283,7 @@
+ -5:45:12 - MMT 1934 Jun 23 # Managua Mean Time?
+ -6:00 - CST 1973 May
+ -5:00 - EST 1975 Feb 16
+- -6:00 Nic C%sT 1992 Jan 1 4:00
++ -6:00 Nic C%sT 1992 Jan 1 4:00
+ -5:00 - EST 1992 Sep 24
+ -6:00 - CST 1993
+ -5:00 - EST 1997
+@@ -3081,13 +3292,14 @@
+ # Panama
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Panama -5:18:08 - LMT 1890
+- -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
++ -5:19:36 - CMT 1908 Apr 22 # Colón Mean Time
+ -5:00 - EST
++Link America/Panama America/Cayman
+
+ # Puerto Rico
+ # There are too many San Juans elsewhere, so we'll use 'Puerto_Rico'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
++Zone America/Puerto_Rico -4:24:25 - LMT 1899 Mar 28 12:00 # San Juan
+ -4:00 - AST 1942 May 3
+ -4:00 US A%sT 1946
+ -4:00 - AST
+@@ -3099,7 +3311,7 @@
+ # St Pierre and Miquelon
+ # There are too many St Pierres elsewhere, so we'll use 'Miquelon'.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
++Zone America/Miquelon -3:44:40 - LMT 1911 May 15 # St Pierre
+ -4:00 - AST 1980 May
+ -3:00 - PMST 1987 # Pierre & Miquelon Time
+ -3:00 Canada PM%sT
+@@ -3110,7 +3322,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007>
++# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
+ # (2007-03-15): In the Turks & Caicos Islands (America/Grand_Turk) the
+ # daylight saving dates for time changes have been adjusted to match
+ # the recent U.S. change of dates.
+@@ -3123,20 +3335,21 @@
+ # Clocks are set back one hour at 2:00 a.m. local Daylight Saving Time"
+ # indicating that the normal ET rules are followed.
+ #
+-# From Paul Eggert (2006-05-01):
+-# Shanks & Pottenger say they use US DST rules, but IATA SSIM (1991/1998)
+-# says they switch at midnight. Go with Shanks & Pottenger.
++# From Paul Eggert (2014-08-19):
++# The 2014-08-13 Cabinet meeting decided to stay on UT -04 year-round. See:
++# http://tcweeklynews.com/daylight-savings-time-to-be-maintained-p5353-127.htm
++# Model this as a switch from EST/EDT to AST ...
++# From Chris Walton (2014-11-04):
++# ... the TCI government appears to have delayed the switch to
++# "permanent daylight saving time" by one year....
++# http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
+-# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule TC 1979 1986 - Apr lastSun 2:00 1:00 D
+-Rule TC 1979 2006 - Oct lastSun 2:00 0 S
+-Rule TC 1987 2006 - Apr Sun>=1 2:00 1:00 D
+-Rule TC 2007 max - Mar Sun>=8 2:00 1:00 D
+-Rule TC 2007 max - Nov Sun>=1 2:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Grand_Turk -4:44:32 - LMT 1890
+- -5:07:11 - KMT 1912 Feb # Kingston Mean Time
+- -5:00 TC E%sT
++ -5:07:11 - KMT 1912 Feb # Kingston Mean Time
++ -5:00 - EST 1979
++ -5:00 US E%sT 2015 Nov Sun>=1 2:00
++ -4:00 - AST
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -1,27 +1,28 @@
+ # This file is in the public domain, so clarified as of
+ # 2009-05-17 by Arthur David Olson.
+
+-# This data is by no means authoritative; if you think you know better,
++# This file is by no means authoritative; if you think you know better,
+ # go ahead and edit the file (and please send any changes to
+-# tz@iana.org for general use in the future).
++# tz@iana.org for general use in the future). For more, please see
++# the file CONTRIBUTING in the tz distribution.
+
+-# From Paul Eggert (2006-03-22):
+-# A good source for time zone historical data outside the U.S. is
++# From Paul Eggert (2014-10-31):
++#
++# Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+ # San Diego: ACS Publications, Inc. (2003).
+-#
+-# For data circa 1899, a common source is:
+-# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# <http://www.jstor.org/stable/1774359>.
++# Unfortunately this book contains many errors and cites no sources.
+ #
+ # Gwillim Law writes that a good source
+ # for recent time zone data is the International Air Transport
+ # Association's Standard Schedules Information Manual (IATA SSIM),
+ # published semiannually. Law sent in several helpful summaries
+-# of the IATA's data after 1990.
++# of the IATA's data after 1990. Except where otherwise noted,
++# IATA SSIM is the source for entries after 1990.
+ #
+-# Except where otherwise noted, Shanks & Pottenger is the source for
+-# entries through 1990, and IATA SSIM is the source for entries afterwards.
++# For data circa 1899, a common source is:
++# Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94.
++# http://www.jstor.org/stable/1774359
+ #
+ # Earlier editions of these tables used the North American style (e.g. ARST and
+ # ARDT for Argentine Standard and Daylight Time), but the following quote
+@@ -29,7 +30,7 @@
+ # I suggest the use of _Summer time_ instead of the more cumbersome
+ # _daylight-saving time_. _Summer time_ seems to be in general use
+ # in Europe and South America.
+-# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
++# -- E O Cutler, _New York Times_ (1937-02-14), quoted in
+ # H L Mencken, _The American Language: Supplement I_ (1960), p 466
+ #
+ # Earlier editions of these tables also used the North American style
+@@ -130,7 +131,7 @@
+ # Timezone Law (which never was effectively applied) will (would?) be
+ # in effect.... The article is at
+ # http://ar.clarin.com/diario/2001-06-06/e-01701.htm
+-# ... The Law itself is "Ley No 25155", sanctioned on 1999-08-25, enacted
++# ... The Law itself is "Ley No. 25155", sanctioned on 1999-08-25, enacted
+ # 1999-09-17, and published 1999-09-21. The official publication is at:
+ # http://www.boletin.jus.gov.ar/BON/Primera/1999/09-Septiembre/21/PDF/BO21-09-99LEG.PDF
+ # Regretfully, you have to subscribe (and pay) for the on-line version....
+@@ -174,21 +175,17 @@
+ # http://www.worldtimezone.com/dst_news/dst_news_argentina03.html
+ # http://www.impulsobaires.com.ar/nota.php?id=57832 (in spanish)
+
+-# From Rodrigo Severo (2008-10-06):
+-# Here is some info available at a Gentoo bug related to TZ on Argentina's DST:
+-# ...
+-# ------- Comment #1 from [jmdocile] 2008-10-06 16:28 0000 -------
+-# Hi, there is a problem with timezone-data-2008e and maybe with
+-# timezone-data-2008f
+-# Argentinian law [Number] 25.155 is no longer valid.
++# From Juan Manuel Docile in https://bugs.gentoo.org/240339 (2008-10-07)
++# via Rodrigo Severo:
++# Argentinian law No. 25.155 is no longer valid.
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/60000-64999/60036/norma.htm
+-# The new one is law [Number] 26.350
++# The new one is law No. 26.350
+ # http://www.infoleg.gov.ar/infolegInternet/anexos/135000-139999/136191/norma.htm
+ # So there is no summer time in Argentina for now.
+
+ # From Mariano Absatz (2008-10-20):
+-# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST in Argentina
+-# From 2008-10-19 until 2009-03-15
++# Decree 1693/2008 applies Law 26.350 for the summer 2008/2009 establishing DST
++# in Argentina from 2008-10-19 until 2009-03-15.
+ # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=16102008&pi=3&pf=4&s=0&sec=01
+ #
+
+@@ -197,14 +194,16 @@
+ # Pampa, Neuquén, Rio Negro, Chubut, Santa Cruz and Tierra del Fuego
+ # http://www.boletinoficial.gov.ar/Bora.Portal/CustomControls/PdfContent.aspx?fp=17102008&pi=1&pf=1&s=0&sec=01
+ #
+-# Press release 235 dated Saturday October 18th, from the Government of the Province of Jujuy saying
+-# it will not apply DST either (even when it was not included in Decree 1705/2008)
++# Press release 235 dated Saturday October 18th, from the Government of the
++# Province of Jujuy saying it will not apply DST either (even when it was not
++# included in Decree 1705/2008).
+ # http://www.jujuy.gov.ar/index2/partes_prensa/18_10_08/235-181008.doc
+
+ # From fullinet (2009-10-18):
+ # As announced in
+ # http://www.argentina.gob.ar/argentina/portal/paginas.dhtml?pagina=356
+-# (an official .gob.ar) under title: "Sin Cambio de Hora" (english: "No hour change")
++# (an official .gob.ar) under title: "Sin Cambio de Hora"
++# (English: "No hour change").
+ #
+ # "Por el momento, el Gobierno Nacional resolvió no modificar la hora
+ # oficial, decisión que estaba en estudio para su implementación el
+@@ -225,9 +224,9 @@
+ # It's Law No. 7,210. This change is due to a public power emergency, so for
+ # now we'll assume it's for this year only.
+ #
+-# From Paul Eggert (2006-03-22):
+-# Hora de verano para la Republica Argentina (2003-06-08)
+-# <http://www.spicasc.net/horvera.html>
++# From Paul Eggert (2014-08-09):
++# Hora de verano para la República Argentina
++# http://buenasiembra.com.ar/esoterismo/astrologia/hora-de-verano-de-la-republica-argentina-27.html
+ # says that standard time in Argentina from 1894-10-31
+ # to 1920-05-01 was -4:16:48.25. Go with this more-precise value
+ # over Shanks & Pottenger.
+@@ -300,7 +299,7 @@
+ # confirms that upon request the provinces San Juan and Mendoza
+ # refused to follow San Luis in this change.
+ #
+-# The change is supposed to take place Monday the 21.st at 0:00
++# The change is supposed to take place Monday the 21st at 0:00
+ # hours. As far as I understand it if this goes ahead, we need
+ # a new timezone for San Luis (although there are also documented
+ # independent changes in the southamerica file of San Luis in
+@@ -332,9 +331,9 @@
+ # back in 2004, when these provinces changed to UTC-4 for a few days, I
+ # mailed them personally and never got an answer).
+
+-# From Paul Eggert (2008-06-30):
+-# Unless otherwise specified, data are from Shanks & Pottenger through 1992,
+-# from the IATA otherwise. As noted below, Shanks & Pottenger say that
++# From Paul Eggert (2014-08-12):
++# Unless otherwise specified, data entries are from Shanks & Pottenger through
++# 1992, from the IATA otherwise. As noted below, Shanks & Pottenger say that
+ # America/Cordoba split into 6 subregions during 1991/1992, one of which
+ # was America/San_Luis, but we haven't verified this yet so for now we'll
+ # keep America/Cordoba a single region rather than splitting it into the
+@@ -394,7 +393,7 @@
+ # ...
+
+ # From Alexander Krivenyshev (2010-04-09):
+-# According to news reports from El Diario de la Republica Province San
++# According to news reports from El Diario de la República Province San
+ # Luis, Argentina (standard time UTC-04) will keep Daylight Saving Time
+ # after April 11, 2010 - will continue to have same time as rest of
+ # Argentina (UTC-3) (no DST).
+@@ -411,10 +410,10 @@
+ # stuck on Summer daylight savings time even though the summer is over.
+
+ # From Paul Eggert (2013-09-05):
+-# Perhaps San Luis operates on the legal fiction that it is at UTC-4
++# Perhaps San Luis operates on the legal fiction that it is at -04
+ # with perpetual summer time, but ordinary usage typically seems to
+-# just say it's at UTC-3; see, for example,
+-# <http://es.wikipedia.org/wiki/Hora_oficial_argentina>.
++# just say it's at -03; see, for example,
++# http://es.wikipedia.org/wiki/Hora_oficial_argentina
+ # We've documented similar situations as being plain changes to
+ # standard time, so let's do that here too. This does not change UTC
+ # offsets, only tm_isdst and the time zone abbreviations. One minor
+@@ -427,8 +426,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Buenos Aires (BA), Capital Federal (CF),
+-Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Buenos_Aires -3:53:48 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -578,8 +577,8 @@
+ -3:00 - ART
+ #
+ # Santa Cruz (SC)
+-Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Rio_Gallegos -4:36:52 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -590,8 +589,8 @@
+ -3:00 - ART
+ #
+ # Tierra del Fuego, Antártida e Islas del Atlántico Sur (TF)
+-Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
+- -4:16:48 - CMT 1920 May # Córdoba Mean Time
++Zone America/Argentina/Ushuaia -4:33:12 - LMT 1894 Oct 31
++ -4:16:48 - CMT 1920 May # Córdoba Mean Time
+ -4:00 - ART 1930 Dec
+ -4:00 Arg AR%sT 1969 Oct 5
+ -3:00 Arg AR%sT 1999 Oct 3
+@@ -685,7 +684,7 @@
+ # Oficial da União"...) in Brazil there are changes in the timezones,
+ # effective today (00:00am at June 24, 2008) as follows:
+ #
+-# a) The timezone UTC+5 is e[x]tinguished, with all the Acre state and the
++# a) The timezone UTC+5 is extinguished, with all the Acre state and the
+ # part of the Amazonas state that had this timezone now being put to the
+ # timezone UTC+4
+ # b) The whole Pará state now is put at timezone UTC+3, instead of just
+@@ -722,8 +721,8 @@
+
+ # From Paul Eggert (2002-10-10):
+ # The official decrees referenced below are mostly taken from
+-# Decretos sobre o Horário de Verão no Brasil
+-# <http://pcdsh01.on.br/DecHV.html>.
++# Decretos sobre o Horário de Verão no Brasil.
++# http://pcdsh01.on.br/DecHV.html
+
+ # From Steffen Thorsen (2008-08-29):
+ # As announced by the government and many newspapers in Brazil late
+@@ -768,7 +767,7 @@
+ # [ and in a second message (same day): ]
+ # I found the decree.
+ #
+-# DECRETO No- 7.584, DE 13 DE OUTUBRO DE 2011
++# DECRETO No. 7.584, DE 13 DE OUTUBRO DE 2011
+ # Link :
+ # http://www.in.gov.br/visualiza/index.jsp?data=13/10/2011&jornal=1000&pagina=6&totalArquivos=6
+
+@@ -986,7 +985,7 @@
+ # West Pará includes Altamira, Óbidos, Prainha, Oriximiná, and Santarém.
+ Zone America/Santarem -3:38:48 - LMT 1914
+ -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 2008 Jun 24 00:00
++ -4:00 - AMT 2008 Jun 24 0:00
+ -3:00 - BRT
+ #
+ # Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN),
+@@ -1041,7 +1040,7 @@
+ # Espírito Santo (ES), Rio de Janeiro (RJ), São Paulo (SP), Paraná (PR),
+ # Santa Catarina (SC), Rio Grande do Sul (RS)
+ Zone America/Sao_Paulo -3:06:28 - LMT 1914
+- -3:00 Brazil BR%sT 1963 Oct 23 00:00
++ -3:00 Brazil BR%sT 1963 Oct 23 0:00
+ -3:00 1:00 BRST 1964
+ -3:00 Brazil BR%sT
+ #
+@@ -1082,19 +1081,73 @@
+ -5:00 Brazil AC%sT 1988 Sep 12
+ -5:00 - ACT 1993 Sep 28
+ -5:00 Brazil AC%sT 1994 Sep 22
+- -5:00 - ACT 2008 Jun 24 00:00
++ -5:00 - ACT 2008 Jun 24 0:00
+ -4:00 - AMT 2013 Nov 10
+ -5:00 - ACT
+ #
+ # Acre (AC)
+ Zone America/Rio_Branco -4:31:12 - LMT 1914
+ -5:00 Brazil AC%sT 1988 Sep 12
+- -5:00 - ACT 2008 Jun 24 00:00
++ -5:00 - ACT 2008 Jun 24 0:00
+ -4:00 - AMT 2013 Nov 10
+ -5:00 - ACT
+
+ # Chile
+
++# From Paul Eggert (2015-04-03):
++# Shanks & Pottenger says America/Santiago introduced standard time in
++# 1890 and rounds its UTC offset to 70W40; guess that in practice this
++# was the same offset as in 1916-1919. It also says Pacific/Easter
++# standardized on 109W22 in 1890; assume this didn't change the clocks.
++#
++# Dates for America/Santiago from 1910 to 2004 are primarily from
++# the following source, cited by Oscar van Vlijmen (2006-10-08):
++# [1] Chile Law
++# http://www.webexhibits.org/daylightsaving/chile.html
++# This contains a copy of a this official table:
++# Cambios en la hora oficial de Chile desde 1900 (retrieved 2008-03-30)
++# http://web.archive.org/web/20080330200901/http://www.horaoficial.cl/cambio.htm
++# [1] needs several corrections, though.
++#
++# The first set of corrections is from:
++# [2] History of the Official Time of Chile
++# http://www.horaoficial.cl/ing/horaof_ing.html (retrieved 2012-03-06). See:
++# http://web.archive.org/web/20120306042032/http://www.horaoficial.cl/ing/horaof_ing.html
++# This is an English translation of:
++# Historia de la hora oficial de Chile (retrieved 2012-10-24). See:
++# http://web.archive.org/web/20121024234627/http://www.horaoficial.cl/horaof.htm
++# A fancier Spanish version (requiring mouse-clicking) is at:
++# http://www.horaoficial.cl/historia_hora.html
++# Conflicts between [1] and [2] were resolved as follows:
++#
++# - [1] says the 1910 transition was Jan 1, [2] says Jan 10 and cites
++# Boletín No. 1, Aviso No. 1 (1910). Go with [2].
++#
++# - [1] says SMT was -4:42:45, [2] says Chile's official time from
++# 1916 to 1919 was -4:42:46.3, the meridian of Chile's National
++# Astronomical Observatory (OAN), then located in what is now
++# Quinta Normal in Santiago. Go with [2], rounding it to -4:42:46.
++#
++# - [1] says the 1918 transition was Sep 1, [2] says Sep 10 and cites
++# Boletín No. 22, Aviso No. 129/1918 (1918-08-23). Go with [2].
++#
++# - [1] does not give times for transitions; assume they occur
++# at midnight mainland time, the current common practice. However,
++# go with [2]'s specification of 23:00 for the 1947-05-21 transition.
++#
++# Another correction to [1] is from Jesper Nørgaard Welen, who
++# wrote (2006-10-08), "I think that there are some obvious mistakes in
++# the suggested link from Oscar van Vlijmen,... for instance entry 66
++# says that GMT-4 ended 1990-09-12 while entry 67 only begins GMT-3 at
++# 1990-09-15 (they should have been 1990-09-15 and 1990-09-16
++# respectively), but anyhow it clears up some doubts too."
++#
++# Data for Pacific/Easter from 1910 through 1967 come from Shanks &
++# Pottenger. After that, for lack of better info assume
++# Pacific/Easter is always two hours behind America/Santiago;
++# this is known to work for DST transitions starting in 2008 and
++# may well be true for earlier transitions.
++
+ # From Eduardo Krell (1995-10-19):
+ # The law says to switch to DST at midnight [24:00] on the second SATURDAY
+ # of October.... The law is the same for March and October.
+@@ -1107,78 +1160,35 @@
+ # Because of the same drought, the government decided to end DST later,
+ # on April 3, (one-time change).
+
+-# From Oscar van Vlijmen (2006-10-08):
+-# http://www.horaoficial.cl/cambio.htm
+-
+-# From Jesper Nørgaard Welen (2006-10-08):
+-# I think that there are some obvious mistakes in the suggested link
+-# from Oscar van Vlijmen,... for instance entry 66 says that GMT-4
+-# ended 1990-09-12 while entry 67 only begins GMT-3 at 1990-09-15
+-# (they should have been 1990-09-15 and 1990-09-16 respectively), but
+-# anyhow it clears up some doubts too.
+-
+-# From Paul Eggert (2006-12-27):
+-# The following data for Chile and America/Santiago are from
+-# <http://www.horaoficial.cl/horaof.htm> (2006-09-20), transcribed by
+-# Jesper Nørgaard Welen. The data for Pacific/Easter are from Shanks
+-# & Pottenger, except with DST transitions after 1932 cloned from
+-# America/Santiago. The pre-1980 Pacific/Easter data are dubious,
+-# but we have no other source.
+-
+ # From Germán Poo-Caamaño (2008-03-03):
+ # Due to drought, Chile extends Daylight Time in three weeks. This
+ # is one-time change (Saturday 3/29 at 24:00 for America/Santiago
+ # and Saturday 3/29 at 22:00 for Pacific/Easter)
+ # The Supreme Decree is located at
+ # http://www.shoa.cl/servicios/supremo316.pdf
+-# and the instructions for 2008 are located in:
+-# http://www.horaoficial.cl/cambio.htm
+-
++#
+ # From José Miguel Garrido (2008-03-05):
+-# ...
+-# You could see the announces of the change on
+ # http://www.shoa.cl/noticias/2008/04hora/hora.htm
+
+ # From Angel Chiang (2010-03-04):
+ # Subject: DST in Chile exceptionally extended to 3 April due to earthquake
+ # http://www.gobiernodechile.cl/viewNoticia.aspx?idArticulo=30098
+-# (in Spanish, last paragraph).
+ #
+-# This is breaking news. There should be more information available later.
+-
+-# From Arthur Daivd Olson (2010-03-06):
++# From Arthur David Olson (2010-03-06):
+ # Angel Chiang's message confirmed by Julio Pacheco; Julio provided a patch.
+
+-# From Glenn Eychaner (2011-03-02): [geychaner@mac.com]
+-# It appears that the Chilean government has decided to postpone the
+-# change from summer time to winter time again, by three weeks to April
+-# 2nd:
+-# http://www.emol.com/noticias/nacional/detalle/detallenoticias.asp?idnoticia=467651
+-#
+-# This is not yet reflected in the official "cambio de hora" site, but
+-# probably will be soon:
+-# http://www.horaoficial.cl/cambio.htm
+-
+-# From Arthur David Olson (2011-03-02):
+-# The emol.com article mentions a water shortage as the cause of the
+-# postponement, which may mean that it's not a permanent change.
+-
+ # From Glenn Eychaner (2011-03-28):
+-# The article:
+ # http://diario.elmercurio.com/2011/03/28/_portada/_portada/noticias/7565897A-CA86-49E6-9E03-660B21A4883E.htm?id=3D{7565897A-CA86-49E6-9E03-660B21A4883E}
+-#
+ # In English:
+ # Chile's clocks will go back an hour this year on the 7th of May instead
+ # of this Saturday. They will go forward again the 3rd Saturday in
+-# August, not in October as they have since 1968. This is a pilot plan
+-# which will be reevaluated in 2012.
++# August, not in October as they have since 1968.
+
+ # From Mauricio Parada (2012-02-22), translated by Glenn Eychaner (2012-02-23):
+ # As stated in the website of the Chilean Energy Ministry
+ # http://www.minenergia.cl/ministerio/noticias/generales/gobierno-anuncia-fechas-de-cambio-de.html
+ # The Chilean Government has decided to postpone the entrance into winter time
+-# (to leave DST) from March 11 2012 to April 28th 2012. The decision has not
+-# been yet formalized but it will within the next days.
++# (to leave DST) from March 11 2012 to April 28th 2012....
+ # Quote from the website communication:
+ #
+ # 6. For the year 2012, the dates of entry into winter time will be as follows:
+@@ -1203,17 +1213,31 @@
+ # DST Start: first Saturday of September 2014 (Sun 07 Sep 2014 04:00 UTC)
+ # http://www.diariooficial.interior.gob.cl//media/2014/02/19/do-20140219.pdf
+
+-# NOTE: ChileAQ rules for Antarctic bases are stored separately in the
+-# 'antarctica' file.
++# From Eduardo Romero Urra (2015-03-03):
++# Today has been published officially that Chile will use the DST time
++# permanently until March 25 of 2017
++# http://www.diariooficial.interior.gob.cl/media/2015/03/03/1-large.jpg
++#
++# From Paul Eggert (2015-03-03):
++# For now, assume that the extension will persist indefinitely.
++
++# From Juan Correa (2016-03-18):
++# The decree regarding DST has been published in today's Official Gazette:
++# http://www.diariooficial.interior.gob.cl/versiones-anteriores/do/20160318/
++# http://www.leychile.cl/Navegar?idNorma=1088502
++# It does consider the second Saturday of May and August as the dates
++# for the transition; and it lists DST dates until 2019, but I think
++# this scheme will stick.
++#
++# From Paul Eggert (2016-03-18):
++# For now, assume the pattern holds for the indefinite future.
++# The decree says transitions occur at 24:00; in practice this appears
++# to mean 24:00 mainland time, not 24:00 local time, so that Easter
++# Island is always two hours behind the mainland.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Chile 1927 1932 - Sep 1 0:00 1:00 S
++Rule Chile 1927 1931 - Sep 1 0:00 1:00 S
+ Rule Chile 1928 1932 - Apr 1 0:00 0 -
+-Rule Chile 1942 only - Jun 1 4:00u 0 -
+-Rule Chile 1942 only - Aug 1 5:00u 1:00 S
+-Rule Chile 1946 only - Jul 15 4:00u 1:00 S
+-Rule Chile 1946 only - Sep 1 3:00u 0:00 -
+-Rule Chile 1947 only - Apr 1 4:00u 0 -
+ Rule Chile 1968 only - Nov 3 4:00u 1:00 S
+ Rule Chile 1969 only - Mar 30 3:00u 0 -
+ Rule Chile 1969 only - Nov 23 4:00u 1:00 S
+@@ -1224,10 +1248,8 @@
+ Rule Chile 1973 only - Sep 30 4:00u 1:00 S
+ Rule Chile 1974 1987 - Oct Sun>=9 4:00u 1:00 S
+ Rule Chile 1987 only - Apr 12 3:00u 0 -
+-Rule Chile 1988 1989 - Mar Sun>=9 3:00u 0 -
+-Rule Chile 1988 only - Oct Sun>=1 4:00u 1:00 S
+-Rule Chile 1989 only - Oct Sun>=9 4:00u 1:00 S
+-Rule Chile 1990 only - Mar 18 3:00u 0 -
++Rule Chile 1988 1990 - Mar Sun>=9 3:00u 0 -
++Rule Chile 1988 1989 - Oct Sun>=9 4:00u 1:00 S
+ Rule Chile 1990 only - Sep 16 4:00u 1:00 S
+ Rule Chile 1991 1996 - Mar Sun>=9 3:00u 0 -
+ Rule Chile 1991 1997 - Oct Sun>=9 4:00u 1:00 S
+@@ -1244,28 +1266,54 @@
+ Rule Chile 2010 only - Apr Sun>=1 3:00u 0 -
+ Rule Chile 2011 only - May Sun>=2 3:00u 0 -
+ Rule Chile 2011 only - Aug Sun>=16 4:00u 1:00 S
+-Rule Chile 2012 max - Apr Sun>=23 3:00u 0 -
+-Rule Chile 2012 max - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2012 2014 - Apr Sun>=23 3:00u 0 -
++Rule Chile 2012 2014 - Sep Sun>=2 4:00u 1:00 S
++Rule Chile 2016 max - May Sun>=9 3:00u 0 -
++Rule Chile 2016 max - Aug Sun>=9 4:00u 1:00 S
+ # IATA SSIM anomalies: (1992-02) says 1992-03-14;
+ # (1996-09) says 1998-03-08. Ignore these.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Santiago -4:42:46 - LMT 1890
+- -4:42:46 - SMT 1910 # Santiago Mean Time
++ -4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
+ -5:00 - CLT 1916 Jul 1 # Chile Time
+- -4:42:46 - SMT 1918 Sep 1 # Santiago Mean Time
+- -4:00 - CLT 1919 Jul 1 # Chile Time
+- -4:42:46 - SMT 1927 Sep 1 # Santiago Mean Time
+- -5:00 Chile CL%sT 1947 May 22 # Chile Time
++ -4:42:46 - SMT 1918 Sep 10
++ -4:00 - CLT 1919 Jul 1
++ -4:42:46 - SMT 1927 Sep 1
++ -5:00 Chile CL%sT 1932 Sep 1
++ -4:00 - CLT 1942 Jun 1
++ -5:00 - CLT 1942 Aug 1
++ -4:00 - CLT 1946 Jul 15
++ -4:00 1:00 CLST 1946 Sep 1 # central Chile
++ -4:00 - CLT 1947 Apr 1
++ -5:00 - CLT 1947 May 21 23:00
+ -4:00 Chile CL%sT
+-Zone Pacific/Easter -7:17:44 - LMT 1890
++Zone Pacific/Easter -7:17:28 - LMT 1890
+ -7:17:28 - EMT 1932 Sep # Easter Mean Time
+- -7:00 Chile EAS%sT 1982 Mar 13 21:00 # Easter I Time
++ -7:00 Chile EAS%sT 1982 Mar 14 3:00u # Easter Time
+ -6:00 Chile EAS%sT
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+ # and Antarctic bases, are like America/Santiago.
+
++# Antarctic base using South American rules
++# (See the file 'antarctica' for more.)
++#
++# Palmer, Anvers Island, since 1965 (moved 2 miles in 1968)
++#
++# From Ethan Dicks (1996-10-06):
++# It keeps the same time as Punta Arenas, Chile, because, just like us
++# and the South Pole, that's the other end of their supply line....
++# I verified with someone who was there that since 1980,
++# Palmer has followed Chile. Prior to that, before the Falklands War,
++# Palmer used to be supplied from Argentina.
++#
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Antarctica/Palmer 0 - -00 1965
++ -4:00 Arg AR%sT 1969 Oct 5
++ -3:00 Arg AR%sT 1982 May
++ -4:00 Chile CL%sT
++
+ # Colombia
+
+ # Milne gives 4:56:16.4 for Bogotá time in 1899; round to nearest. He writes,
+@@ -1300,7 +1348,7 @@
+ # though, as far as we know.
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
++Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
+ -4:30 - ANT 1965 # Netherlands Antilles Time
+ -4:00 - AST
+
+@@ -1325,10 +1373,10 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Guayaquil -5:19:20 - LMT 1890
+ -5:14:00 - QMT 1931 # Quito Mean Time
+- -5:00 - ECT # Ecuador Time
++ -5:00 - ECT # Ecuador Time
+ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
+ -5:00 - ECT 1986
+- -6:00 - GALT # Galápagos Time
++ -6:00 - GALT # Galápagos Time
+
+ # Falklands
+
+@@ -1427,10 +1475,10 @@
+ Rule Falk 2001 2010 - Sep Sun>=1 2:00 1:00 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Stanley -3:51:24 - LMT 1890
+- -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
+- -4:00 Falk FK%sT 1983 May # Falkland Is Time
++ -3:51:24 - SMT 1912 Mar 12 # Stanley Mean Time
++ -4:00 Falk FK%sT 1983 May # Falkland Is Time
+ -3:00 Falk FK%sT 1985 Sep 15
+- -4:00 Falk FK%sT 2010 Sep 5 02:00
++ -4:00 Falk FK%sT 2010 Sep 5 2:00
+ -3:00 - FKST
+
+ # French Guiana
+@@ -1441,7 +1489,7 @@
+
+ # Guyana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
++Zone America/Guyana -3:52:40 - LMT 1915 Mar # Georgetown
+ -3:45 - GBGT 1966 May 26 # Br Guiana Time
+ -3:45 - GYT 1975 Jul 31 # Guyana Time
+ -3:00 - GYT 1991
+@@ -1478,8 +1526,8 @@
+ # (10-01).
+ #
+ # Translated by Gwillim Law (2001-02-27) from
+-# Noticias, a daily paper in Asunción, Paraguay (2000-10-01)
+-# <http://www.diarionoticias.com.py/011000/nacional/naciona1.htm>:
++# Noticias, a daily paper in Asunción, Paraguay (2000-10-01):
++# http://www.diarionoticias.com.py/011000/nacional/naciona1.htm
+ # Starting at 0:00 today, the clock will be set forward 60 minutes, in
+ # fulfillment of Decree No. 7,273 of the Executive Power.... The time change
+ # system has been operating for several years. Formerly there was a separate
+@@ -1494,7 +1542,7 @@
+ # (1999-09) reports no date; go with above sources and Gerd Knops (2001-02-27).
+ Rule Para 1998 2001 - Mar Sun>=1 0:00 0 -
+ # From Rives McDow (2002-02-28):
+-# A decree was issued in Paraguay (no. 16350) on 2002-02-26 that changed the
++# A decree was issued in Paraguay (No. 16350) on 2002-02-26 that changed the
+ # dst method to be from the first Sunday in September to the first Sunday in
+ # April.
+ Rule Para 2002 2004 - Apr Sun>=1 0:00 0 -
+@@ -1506,7 +1554,7 @@
+ # From Steffen Thorsen (2005-01-05):
+ # Decree 1,867 (2004-03-05)
+ # From Carlos Raúl Perasso via Jesper Nørgaard Welen (2006-10-13)
+-# <http://www.presidencia.gov.py/decretos/D1867.pdf>
++# http://www.presidencia.gov.py/decretos/D1867.pdf
+ Rule Para 2004 2009 - Oct Sun>=15 0:00 1:00 S
+ Rule Para 2005 2009 - Mar Sun>=8 0:00 0 -
+ # From Carlos Raúl Perasso (2010-02-18):
+@@ -1538,7 +1586,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Asuncion -3:50:40 - LMT 1890
+ -3:50:40 - AMT 1931 Oct 10 # Asunción Mean Time
+- -4:00 - PYT 1972 Oct # Paraguay Time
++ -4:00 - PYT 1972 Oct # Paraguay Time
+ -3:00 - PYT 1974 Apr
+ -4:00 Para PY%sT
+
+@@ -1571,7 +1619,7 @@
+
+ # South Georgia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
++Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+ -2:00 - GST # South Georgia Time
+
+ # South Sandwich Is
+@@ -1581,9 +1629,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Paramaribo -3:40:40 - LMT 1911
+ -3:40:52 - PMT 1935 # Paramaribo Mean Time
+- -3:40:36 - PMT 1945 Oct # The capital moved?
++ -3:40:36 - PMT 1945 Oct # The capital moved?
+ -3:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
+- -3:30 - SRT 1984 Oct # Suriname Time
++ -3:30 - SRT 1984 Oct # Suriname Time
+ -3:00 - SRT
+
+ # Trinidad and Tobago
+@@ -1593,6 +1641,7 @@
+
+ # These all agree with Trinidad and Tobago since 1970.
+ Link America/Port_of_Spain America/Anguilla
++Link America/Port_of_Spain America/Antigua
+ Link America/Port_of_Spain America/Dominica
+ Link America/Port_of_Spain America/Grenada
+ Link America/Port_of_Spain America/Guadeloupe
+@@ -1657,7 +1706,7 @@
+ Rule Uruguay 1992 only - Oct 18 0:00 1:00 S
+ Rule Uruguay 1993 only - Feb 28 0:00 0 -
+ # From Eduardo Cota (2004-09-20):
+-# The uruguayan government has decreed a change in the local time....
++# The Uruguayan government has decreed a change in the local time....
+ # http://www.presidencia.gub.uy/decretos/2004091502.htm
+ Rule Uruguay 2004 only - Sep 19 0:00 1:00 S
+ # From Steffen Thorsen (2005-03-11):
+@@ -1673,16 +1722,31 @@
+ Rule Uruguay 2006 only - Mar 12 2:00 0 -
+ # From Jesper Nørgaard Welen (2006-09-06):
+ # http://www.presidencia.gub.uy/_web/decretos/2006/09/CM%20210_08%2006%202006_00001.PDF
+-Rule Uruguay 2006 max - Oct Sun>=1 2:00 1:00 S
+-Rule Uruguay 2007 max - Mar Sun>=8 2:00 0 -
++#
++# From Steffen Thorsen (2015-06-30):
++# ... it looks like they will not be using DST the coming summer:
++# http://www.elobservador.com.uy/gobierno-resolvio-que-no-habra-cambio-horario-verano-n656787
++# http://www.republica.com.uy/este-ano-no-se-modificara-el-huso-horario-en-uruguay/523760/
++# From Paul Eggert (2015-06-30):
++# Apparently restaurateurs complained that DST caused people to go to the beach
++# instead of out to dinner.
++# From Pablo Camargo (2015-07-13):
++# http://archivo.presidencia.gub.uy/sci/decretos/2015/06/cons_min_201.pdf
++# [dated 2015-06-29; repeals Decree 311/006 dated 2006-09-04]
++Rule Uruguay 2006 2014 - Oct Sun>=1 2:00 1:00 S
++Rule Uruguay 2007 2015 - Mar Sun>=8 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Montevideo -3:44:44 - LMT 1898 Jun 28
+- -3:44:44 - MMT 1920 May 1 # Montevideo MT
+- -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
++ -3:44:44 - MMT 1920 May 1 # Montevideo MT
++ -3:30 Uruguay UY%sT 1942 Dec 14 # Uruguay Time
+ -3:00 Uruguay UY%sT
+
+ # Venezuela
+ #
++# From Paul Eggert (2015-07-28):
++# For the 1965 transition see Gaceta Oficial No. 27.619 (1964-12-15), p 205.533
++# http://www.pgr.gob.ve/dmdocuments/1964/27619.pdf
++#
+ # From John Stainforth (2007-11-28):
+ # ... the change for Venezuela originally expected for 2007-12-31 has
+ # been brought forward to 2007-12-09. The official announcement was
+@@ -1691,9 +1755,25 @@
+ # resolution publication)
+ # http://www.globovision.com/news.php?nid=72208
+
++# From Alexander Krivenyshev (2016-04-15):
++# https://actualidad.rt.com/actualidad/204758-venezuela-modificar-huso-horario-sequia-elnino
++#
++# From Paul Eggert (2016-04-15):
++# Clocks advance 30 minutes on 2016-05-01 at 02:30....
++# "'Venezuela's new time-zone: hours without light, hours without water,
++# hours of presidential broadcasts, hours of lines,' quipped comedian
++# Jean Mary Curró ...". See: Cawthorne A, Kai D. Venezuela scraps
++# half-hour time difference set by Chavez. Reuters 2016-04-15 14:50 -0400
++# http://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
++#
++# From Matt Johnson (2016-04-20):
++# ... published in the official Gazette [2016-04-18], here:
++# http://historico.tsj.gob.ve/gaceta_ext/abril/1842016/E-1842016-4551.pdf
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Caracas -4:27:44 - LMT 1890
+ -4:27:40 - CMT 1912 Feb 12 # Caracas Mean Time?
+- -4:30 - VET 1965 # Venezuela Time
+- -4:00 - VET 2007 Dec 9 03:00
+- -4:30 - VET
++ -4:30 - VET 1965 Jan 1 0:00 # Venezuela T.
++ -4:00 - VET 2007 Dec 9 3:00
++ -4:30 - VET 2016 May 1 2:30
++ -4:00 - VET
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -0,0 +1 @@
++2016i
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -17,8 +17,8 @@
+ # that of zone1970.tab.
+ #
+ # This table is intended as an aid for users, to help them select time
+-# zone data appropriate for their practical needs. It is not intended
+-# to take or endorse any position on legal or territorial claims.
++# zone data entries appropriate for their practical needs. It is not
++# intended to take or endorse any position on legal or territorial claims.
+ #
+ #country-
+ #code coordinates TZ comments
+@@ -30,22 +30,22 @@
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+ AO -0848+01314 Africa/Luanda
+-AQ -7750+16636 Antarctica/McMurdo McMurdo, South Pole, Scott (New Zealand time)
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -7750+16636 Antarctica/McMurdo New Zealand time - McMurdo, South Pole
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucuman (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -56,17 +56,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AW +1230-06958 America/Aruba
+ AX +6006+01957 Europe/Mariehamn
+ AZ +4023+04951 Asia/Baku
+@@ -85,62 +85,63 @@
+ BO -1630-06809 America/La_Paz
+ BQ +120903-0681636 America/Kralendijk
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapa, E Para
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Para (east); Amapa
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Para
++BR -0226-05452 America/Santarem Para (west)
+ BR -0846-06354 America/Porto_Velho Rondonia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BW -2439+02555 Africa/Gaborone
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+-CD -0418+01518 Africa/Kinshasa west Dem. Rep. of Congo
+-CD -1140+02728 Africa/Lubumbashi east Dem. Rep. of Congo
++CD -0418+01518 Africa/Kinshasa Dem. Rep. of Congo (west)
++CD -1140+02728 Africa/Lubumbashi Dem. Rep. of Congo (east)
+ CF +0422+01835 Africa/Bangui
+ CG -0416+01517 Africa/Brazzaville
+ CH +4723+00832 Europe/Zurich
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -151,30 +152,31 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin most locations
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DE +4742+00841 Europe/Busingen Busingen
+ DJ +1136+04309 Africa/Djibouti
+ DK +5540+01235 Europe/Copenhagen
+ DM +1518-06124 America/Dominica
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galapagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+ ER +1520+03853 Africa/Asmara
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ ET +0902+03842 Africa/Addis_Ababa
+ FI +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -186,10 +188,10 @@
+ GG +4927-00232 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GM +1328-01639 Africa/Banjul
+ GN +0931-01343 Africa/Conakry
+ GP +1614-06132 America/Guadeloupe
+@@ -205,10 +207,10 @@
+ HR +4548+01558 Europe/Zagreb
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IM +5409-00428 Europe/Isle_of_Man
+@@ -234,10 +236,10 @@
+ KR +3733+12658 Asia/Seoul
+ KW +2920+04759 Asia/Kuwait
+ KY +1918-08123 America/Cayman
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -256,12 +258,12 @@
+ ME +4226+01916 Europe/Podgorica
+ MF +1804-06305 America/Marigot
+ MG -1855+04731 Indian/Antananarivo
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+ MK +4159+02126 Europe/Skopje
+ ML +1239-00800 Africa/Bamako
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Olgiy, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sukhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -273,20 +275,19 @@
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+ MW -1547+03500 Africa/Blantyre
+-MX +1924-09909 America/Mexico_City Central Time - most locations
+-MX +2105-08646 America/Cancun Central Time - Quintana Roo
++MX +1924-09909 America/Mexico_City Central Time
++MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatan
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo Leon, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo Leon, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo Leon, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahia de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahia de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
+ MZ -2558+03235 Africa/Maputo
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+@@ -299,7 +300,7 @@
+ NP +2743+08519 Asia/Kathmandu
+ NR -0031+16655 Pacific/Nauru
+ NU -1901-16955 Pacific/Niue
+-NZ -3652+17446 Pacific/Auckland most locations
++NZ -3652+17446 Pacific/Auckland New Zealand (most areas)
+ NZ -4357-17633 Pacific/Chatham Chatham Islands
+ OM +2336+05835 Asia/Muscat
+ PA +0858-07932 America/Panama
+@@ -307,7 +308,8 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
++PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+ PL +5215+02100 Europe/Warsaw
+@@ -316,7 +318,7 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+@@ -325,27 +327,32 @@
+ RE -2052+05528 Indian/Reunion
+ RO +4426+02606 Europe/Bucharest
+ RS +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ RW -0157+03004 Africa/Kigali
+ SA +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+@@ -384,45 +391,45 @@
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+ TZ -0648+03917 Africa/Dar_es_Salaam
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UG +0019+03225 Africa/Kampala
+ UM +1645-16931 Pacific/Johnston Johnston Atoll
+ UM +2813-17722 Pacific/Midway Midway Islands
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+ US +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VA +415408+0122711 Europe/Vatican
+ VC +1309-06114 America/St_Vincent
+ VE +1030-06656 America/Caracas
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -29,8 +29,8 @@
+ # most populous zones first, where that does not contradict (1).
+ #
+ # This table is intended as an aid for users, to help them select time
+-# zone data appropriate for their practical needs. It is not intended
+-# to take or endorse any position on legal or territorial claims.
++# zone data entries appropriate for their practical needs. It is not
++# intended to take or endorse any position on legal or territorial claims.
+ #
+ #country-
+ #codes coordinates TZ comments
+@@ -39,21 +39,21 @@
+ AF +3431+06912 Asia/Kabul
+ AL +4120+01950 Europe/Tirane
+ AM +4011+04430 Asia/Yerevan
+-AQ -6734-06808 Antarctica/Rothera Rothera Station, Adelaide Island
+-AQ -6448-06406 Antarctica/Palmer Palmer Station, Anvers Island
+-AQ -6736+06253 Antarctica/Mawson Mawson Station, Holme Bay
+-AQ -6835+07758 Antarctica/Davis Davis Station, Vestfold Hills
+-AQ -6617+11031 Antarctica/Casey Casey Station, Bailey Peninsula
+-AQ -7824+10654 Antarctica/Vostok Vostok Station, Lake Vostok
+-AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville Station, Terre Adelie
+-AQ -690022+0393524 Antarctica/Syowa Syowa Station, E Ongul I
+-AQ -720041+0023206 Antarctica/Troll Troll Station, Queen Maud Land
++AQ -6617+11031 Antarctica/Casey Casey
++AQ -6835+07758 Antarctica/Davis Davis
++AQ -6640+14001 Antarctica/DumontDUrville Dumont-d'Urville
++AQ -6736+06253 Antarctica/Mawson Mawson
++AQ -6448-06406 Antarctica/Palmer Palmer
++AQ -6734-06808 Antarctica/Rothera Rothera
++AQ -690022+0393524 Antarctica/Syowa Syowa
++AQ -720041+0023206 Antarctica/Troll Troll
++AQ -7824+10654 Antarctica/Vostok Vostok
+ AR -3436-05827 America/Argentina/Buenos_Aires Buenos Aires (BA, CF)
+-AR -3124-06411 America/Argentina/Cordoba most locations (CB, CC, CN, ER, FM, MN, SE, SF)
+-AR -2447-06525 America/Argentina/Salta (SA, LP, NQ, RN)
++AR -3124-06411 America/Argentina/Cordoba Argentina (most areas: CB, CC, CN, ER, FM, MN, SE, SF)
++AR -2447-06525 America/Argentina/Salta Salta (SA, LP, NQ, RN)
+ AR -2411-06518 America/Argentina/Jujuy Jujuy (JY)
+ AR -2649-06513 America/Argentina/Tucuman Tucumán (TM)
+-AR -2828-06547 America/Argentina/Catamarca Catamarca (CT), Chubut (CH)
++AR -2828-06547 America/Argentina/Catamarca Catamarca (CT); Chubut (CH)
+ AR -2926-06651 America/Argentina/La_Rioja La Rioja (LR)
+ AR -3132-06831 America/Argentina/San_Juan San Juan (SJ)
+ AR -3253-06849 America/Argentina/Mendoza Mendoza (MZ)
+@@ -64,17 +64,17 @@
+ AT +4813+01620 Europe/Vienna
+ AU -3133+15905 Australia/Lord_Howe Lord Howe Island
+ AU -5430+15857 Antarctica/Macquarie Macquarie Island
+-AU -4253+14719 Australia/Hobart Tasmania - most locations
+-AU -3956+14352 Australia/Currie Tasmania - King Island
++AU -4253+14719 Australia/Hobart Tasmania (most areas)
++AU -3956+14352 Australia/Currie Tasmania (King Island)
+ AU -3749+14458 Australia/Melbourne Victoria
+-AU -3352+15113 Australia/Sydney New South Wales - most locations
+-AU -3157+14127 Australia/Broken_Hill New South Wales - Yancowinna
+-AU -2728+15302 Australia/Brisbane Queensland - most locations
+-AU -2016+14900 Australia/Lindeman Queensland - Holiday Islands
++AU -3352+15113 Australia/Sydney New South Wales (most areas)
++AU -3157+14127 Australia/Broken_Hill New South Wales (Yancowinna)
++AU -2728+15302 Australia/Brisbane Queensland (most areas)
++AU -2016+14900 Australia/Lindeman Queensland (Whitsunday Islands)
+ AU -3455+13835 Australia/Adelaide South Australia
+ AU -1228+13050 Australia/Darwin Northern Territory
+-AU -3157+11551 Australia/Perth Western Australia - most locations
+-AU -3143+12852 Australia/Eucla Western Australia - Eucla area
++AU -3157+11551 Australia/Perth Western Australia (most areas)
++AU -3143+12852 Australia/Eucla Western Australia (Eucla)
+ AZ +4023+04951 Asia/Baku
+ BB +1306-05937 America/Barbados
+ BD +2343+09025 Asia/Dhaka
+@@ -84,57 +84,58 @@
+ BN +0456+11455 Asia/Brunei
+ BO -1630-06809 America/La_Paz
+ BR -0351-03225 America/Noronha Atlantic islands
+-BR -0127-04829 America/Belem Amapá, E Pará
+-BR -0343-03830 America/Fortaleza NE Brazil (MA, PI, CE, RN, PB)
++BR -0127-04829 America/Belem Pará (east); Amapá
++BR -0343-03830 America/Fortaleza Brazil (northeast: MA, PI, CE, RN, PB)
+ BR -0803-03454 America/Recife Pernambuco
+ BR -0712-04812 America/Araguaina Tocantins
+ BR -0940-03543 America/Maceio Alagoas, Sergipe
+ BR -1259-03831 America/Bahia Bahia
+-BR -2332-04637 America/Sao_Paulo S & SE Brazil (GO, DF, MG, ES, RJ, SP, PR, SC, RS)
++BR -2332-04637 America/Sao_Paulo Brazil (southeast: GO, DF, MG, ES, RJ, SP, PR, SC, RS)
+ BR -2027-05437 America/Campo_Grande Mato Grosso do Sul
+ BR -1535-05605 America/Cuiaba Mato Grosso
+-BR -0226-05452 America/Santarem W Pará
++BR -0226-05452 America/Santarem Pará (west)
+ BR -0846-06354 America/Porto_Velho Rondônia
+ BR +0249-06040 America/Boa_Vista Roraima
+-BR -0308-06001 America/Manaus E Amazonas
+-BR -0640-06952 America/Eirunepe W Amazonas
++BR -0308-06001 America/Manaus Amazonas (east)
++BR -0640-06952 America/Eirunepe Amazonas (west)
+ BR -0958-06748 America/Rio_Branco Acre
+ BS +2505-07721 America/Nassau
+ BT +2728+08939 Asia/Thimphu
+ BY +5354+02734 Europe/Minsk
+ BZ +1730-08812 America/Belize
+-CA +4734-05243 America/St_Johns Newfoundland Time, including SE Labrador
+-CA +4439-06336 America/Halifax Atlantic Time - Nova Scotia (most places), PEI
+-CA +4612-05957 America/Glace_Bay Atlantic Time - Nova Scotia - places that did not observe DST 1966-1971
+-CA +4606-06447 America/Moncton Atlantic Time - New Brunswick
+-CA +5320-06025 America/Goose_Bay Atlantic Time - Labrador - most locations
+-CA +5125-05707 America/Blanc-Sablon Atlantic Standard Time - Quebec - Lower North Shore
+-CA +4339-07923 America/Toronto Eastern Time - Ontario & Quebec - most locations
+-CA +4901-08816 America/Nipigon Eastern Time - Ontario & Quebec - places that did not observe DST 1967-1973
+-CA +4823-08915 America/Thunder_Bay Eastern Time - Thunder Bay, Ontario
+-CA +6344-06828 America/Iqaluit Eastern Time - east Nunavut - most locations
+-CA +6608-06544 America/Pangnirtung Eastern Time - Pangnirtung, Nunavut
+-CA +744144-0944945 America/Resolute Central Time - Resolute, Nunavut
+-CA +484531-0913718 America/Atikokan Eastern Standard Time - Atikokan, Ontario and Southampton I, Nunavut
+-CA +624900-0920459 America/Rankin_Inlet Central Time - central Nunavut
+-CA +4953-09709 America/Winnipeg Central Time - Manitoba & west Ontario
+-CA +4843-09434 America/Rainy_River Central Time - Rainy River & Fort Frances, Ontario
+-CA +5024-10439 America/Regina Central Standard Time - Saskatchewan - most locations
+-CA +5017-10750 America/Swift_Current Central Standard Time - Saskatchewan - midwest
+-CA +5333-11328 America/Edmonton Mountain Time - Alberta, east British Columbia & west Saskatchewan
+-CA +690650-1050310 America/Cambridge_Bay Mountain Time - west Nunavut
+-CA +6227-11421 America/Yellowknife Mountain Time - central Northwest Territories
+-CA +682059-1334300 America/Inuvik Mountain Time - west Northwest Territories
+-CA +4906-11631 America/Creston Mountain Standard Time - Creston, British Columbia
+-CA +5946-12014 America/Dawson_Creek Mountain Standard Time - Dawson Creek & Fort Saint John, British Columbia
+-CA +4916-12307 America/Vancouver Pacific Time - west British Columbia
+-CA +6043-13503 America/Whitehorse Pacific Time - south Yukon
+-CA +6404-13925 America/Dawson Pacific Time - north Yukon
++CA +4734-05243 America/St_Johns Newfoundland; Labrador (southeast)
++CA +4439-06336 America/Halifax Atlantic - NS (most areas); PE
++CA +4612-05957 America/Glace_Bay Atlantic - NS (Cape Breton)
++CA +4606-06447 America/Moncton Atlantic - New Brunswick
++CA +5320-06025 America/Goose_Bay Atlantic - Labrador (most areas)
++CA +5125-05707 America/Blanc-Sablon AST - QC (Lower North Shore)
++CA +4339-07923 America/Toronto Eastern - ON, QC (most areas)
++CA +4901-08816 America/Nipigon Eastern - ON, QC (no DST 1967-73)
++CA +4823-08915 America/Thunder_Bay Eastern - ON (Thunder Bay)
++CA +6344-06828 America/Iqaluit Eastern - NU (most east areas)
++CA +6608-06544 America/Pangnirtung Eastern - NU (Pangnirtung)
++CA +484531-0913718 America/Atikokan EST - ON (Atikokan); NU (Coral H)
++CA +4953-09709 America/Winnipeg Central - ON (west); Manitoba
++CA +4843-09434 America/Rainy_River Central - ON (Rainy R, Ft Frances)
++CA +744144-0944945 America/Resolute Central - NU (Resolute)
++CA +624900-0920459 America/Rankin_Inlet Central - NU (central)
++CA +5024-10439 America/Regina CST - SK (most areas)
++CA +5017-10750 America/Swift_Current CST - SK (midwest)
++CA +5333-11328 America/Edmonton Mountain - AB; BC (E); SK (W)
++CA +690650-1050310 America/Cambridge_Bay Mountain - NU (west)
++CA +6227-11421 America/Yellowknife Mountain - NT (central)
++CA +682059-1334300 America/Inuvik Mountain - NT (west)
++CA +4906-11631 America/Creston MST - BC (Creston)
++CA +5946-12014 America/Dawson_Creek MST - BC (Dawson Cr, Ft St John)
++CA +5848-12242 America/Fort_Nelson MST - BC (Ft Nelson)
++CA +4916-12307 America/Vancouver Pacific - BC (most areas)
++CA +6043-13503 America/Whitehorse Pacific - Yukon (south)
++CA +6404-13925 America/Dawson Pacific - Yukon (north)
+ CC -1210+09655 Indian/Cocos
+ CH,DE,LI +4723+00832 Europe/Zurich Swiss time
+ CI,BF,GM,GN,ML,MR,SH,SL,SN,ST,TG +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+-CL -3327-07040 America/Santiago most locations
++CL -3327-07040 America/Santiago Chile (most areas)
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -144,25 +145,26 @@
+ CV +1455-02331 Atlantic/Cape_Verde
+ CW,AW,BQ,SX +1211-06900 America/Curacao
+ CX -1025+10543 Indian/Christmas
+-CY +3510+03322 Asia/Nicosia
++CY +3510+03322 Asia/Nicosia Cyprus (most areas)
++CY +3507+03357 Asia/Famagusta Northern Cyprus
+ CZ,SK +5005+01426 Europe/Prague
+-DE +5230+01322 Europe/Berlin Berlin time
++DE +5230+01322 Europe/Berlin Germany (most areas)
+ DK +5540+01235 Europe/Copenhagen
+ DO +1828-06954 America/Santo_Domingo
+ DZ +3647+00303 Africa/Algiers
+-EC -0210-07950 America/Guayaquil mainland
++EC -0210-07950 America/Guayaquil Ecuador (mainland)
+ EC -0054-08936 Pacific/Galapagos Galápagos Islands
+ EE +5925+02445 Europe/Tallinn
+ EG +3003+03115 Africa/Cairo
+ EH +2709-01312 Africa/El_Aaiun
+-ES +4024-00341 Europe/Madrid mainland
+-ES +3553-00519 Africa/Ceuta Ceuta & Melilla
++ES +4024-00341 Europe/Madrid Spain (mainland)
++ES +3553-00519 Africa/Ceuta Ceuta, Melilla
+ ES +2806-01524 Atlantic/Canary Canary Islands
+ FI,AX +6010+02458 Europe/Helsinki
+ FJ -1808+17825 Pacific/Fiji
+ FK -5142-05751 Atlantic/Stanley
+-FM +0725+15147 Pacific/Chuuk Chuuk (Truk) and Yap
+-FM +0658+15813 Pacific/Pohnpei Pohnpei (Ponape)
++FM +0725+15147 Pacific/Chuuk Chuuk/Truk, Yap
++FM +0658+15813 Pacific/Pohnpei Pohnpei/Ponape
+ FM +0519+16259 Pacific/Kosrae Kosrae
+ FO +6201-00646 Atlantic/Faroe
+ FR +4852+00220 Europe/Paris
+@@ -171,10 +173,10 @@
+ GF +0456-05220 America/Cayenne
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+-GL +6411-05144 America/Godthab most locations
+-GL +7646-01840 America/Danmarkshavn east coast, north of Scoresbysund
+-GL +7029-02158 America/Scoresbysund Scoresbysund / Ittoqqortoormiit
+-GL +7634-06847 America/Thule Thule / Pituffik
++GL +6411-05144 America/Godthab Greenland (most areas)
++GL +7646-01840 America/Danmarkshavn National Park (east coast)
++GL +7029-02158 America/Scoresbysund Scoresbysund/Ittoqqortoormiit
++GL +7634-06847 America/Thule Thule/Pituffik
+ GR +3758+02343 Europe/Athens
+ GS -5416-03632 Atlantic/South_Georgia
+ GT +1438-09031 America/Guatemala
+@@ -185,10 +187,10 @@
+ HN +1406-08713 America/Tegucigalpa
+ HT +1832-07220 America/Port-au-Prince
+ HU +4730+01905 Europe/Budapest
+-ID -0610+10648 Asia/Jakarta Java & Sumatra
+-ID -0002+10920 Asia/Pontianak west & central Borneo
+-ID -0507+11924 Asia/Makassar east & south Borneo, Sulawesi (Celebes), Bali, Nusa Tengarra, west Timor
+-ID -0232+14042 Asia/Jayapura west New Guinea (Irian Jaya) & Malukus (Moluccas)
++ID -0610+10648 Asia/Jakarta Java, Sumatra
++ID -0002+10920 Asia/Pontianak Borneo (west, central)
++ID -0507+11924 Asia/Makassar Borneo (east, south); Sulawesi/Celebes, Bali, Nusa Tengarra; Timor (west)
++ID -0232+14042 Asia/Jayapura New Guinea (West Papua / Irian Jaya); Malukus/Moluccas
+ IE +5320-00615 Europe/Dublin
+ IL +314650+0351326 Asia/Jerusalem
+ IN +2232+08822 Asia/Kolkata
+@@ -207,10 +209,10 @@
+ KI +0152-15720 Pacific/Kiritimati Line Islands
+ KP +3901+12545 Asia/Pyongyang
+ KR +3733+12658 Asia/Seoul
+-KZ +4315+07657 Asia/Almaty most locations
+-KZ +4448+06528 Asia/Qyzylorda Qyzylorda (Kyzylorda, Kzyl-Orda)
+-KZ +5017+05710 Asia/Aqtobe Aqtobe (Aktobe)
+-KZ +4431+05016 Asia/Aqtau Atyrau (Atirau, Gur'yev), Mangghystau (Mankistau)
++KZ +4315+07657 Asia/Almaty Kazakhstan (most areas)
++KZ +4448+06528 Asia/Qyzylorda Qyzylorda/Kyzylorda/Kzyl-Orda
++KZ +5017+05710 Asia/Aqtobe Aqtobe/Aktobe
++KZ +4431+05016 Asia/Aqtau Atyrau/Atirau/Gur'yev, Mangghystau/Mankistau
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -222,10 +224,10 @@
+ MA +3339-00735 Africa/Casablanca
+ MC +4342+00723 Europe/Monaco
+ MD +4700+02850 Europe/Chisinau
+-MH +0709+17112 Pacific/Majuro most locations
++MH +0709+17112 Pacific/Majuro Marshall Islands (most areas)
+ MH +0905+16720 Pacific/Kwajalein Kwajalein
+-MM +1647+09610 Asia/Rangoon
+-MN +4755+10653 Asia/Ulaanbaatar most locations
++MM +1647+09610 Asia/Yangon
++MN +4755+10653 Asia/Ulaanbaatar Mongolia (most areas)
+ MN +4801+09139 Asia/Hovd Bayan-Ölgii, Govi-Altai, Hovd, Uvs, Zavkhan
+ MN +4804+11430 Asia/Choibalsan Dornod, Sükhbaatar
+ MO +2214+11335 Asia/Macau
+@@ -233,25 +235,24 @@
+ MT +3554+01431 Europe/Malta
+ MU -2010+05730 Indian/Mauritius
+ MV +0410+07330 Indian/Maldives
+-MX +1924-09909 America/Mexico_City Central Time - most locations
+-MX +2105-08646 America/Cancun Central Time - Quintana Roo
++MX +1924-09909 America/Mexico_City Central Time
++MX +2105-08646 America/Cancun Eastern Standard Time - Quintana Roo
+ MX +2058-08937 America/Merida Central Time - Campeche, Yucatán
+-MX +2540-10019 America/Monterrey Mexican Central Time - Coahuila, Durango, Nuevo León, Tamaulipas away from US border
+-MX +2550-09730 America/Matamoros US Central Time - Coahuila, Durango, Nuevo León, Tamaulipas near US border
+-MX +2313-10625 America/Mazatlan Mountain Time - S Baja, Nayarit, Sinaloa
+-MX +2838-10605 America/Chihuahua Mexican Mountain Time - Chihuahua away from US border
+-MX +2934-10425 America/Ojinaga US Mountain Time - Chihuahua near US border
++MX +2540-10019 America/Monterrey Central Time - Durango; Coahuila, Nuevo León, Tamaulipas (most areas)
++MX +2550-09730 America/Matamoros Central Time US - Coahuila, Nuevo León, Tamaulipas (US border)
++MX +2313-10625 America/Mazatlan Mountain Time - Baja California Sur, Nayarit, Sinaloa
++MX +2838-10605 America/Chihuahua Mountain Time - Chihuahua (most areas)
++MX +2934-10425 America/Ojinaga Mountain Time US - Chihuahua (US border)
+ MX +2904-11058 America/Hermosillo Mountain Standard Time - Sonora
+-MX +3232-11701 America/Tijuana US Pacific Time - Baja California near US border
+-MX +3018-11452 America/Santa_Isabel Mexican Pacific Time - Baja California away from US border
+-MX +2048-10515 America/Bahia_Banderas Mexican Central Time - Bahía de Banderas
+-MY +0310+10142 Asia/Kuala_Lumpur peninsular Malaysia
+-MY +0133+11020 Asia/Kuching Sabah & Sarawak
+-MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time (UTC+2)
++MX +3232-11701 America/Tijuana Pacific Time US - Baja California
++MX +2048-10515 America/Bahia_Banderas Central Time - Bahía de Banderas
++MY +0310+10142 Asia/Kuala_Lumpur Malaysia (peninsula)
++MY +0133+11020 Asia/Kuching Sabah, Sarawak
++MZ,BI,BW,CD,MW,RW,ZM,ZW -2558+03235 Africa/Maputo Central Africa Time
+ NA -2234+01706 Africa/Windhoek
+ NC -2216+16627 Pacific/Noumea
+ NF -2903+16758 Pacific/Norfolk
+-NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time (UTC+1)
++NG,AO,BJ,CD,CF,CG,CM,GA,GQ,NE +0627+00324 Africa/Lagos West Africa Time
+ NI +1209-08617 America/Managua
+ NL +5222+00454 Europe/Amsterdam
+ NO,SJ +5955+01045 Europe/Oslo
+@@ -265,7 +266,8 @@
+ PF -1732-14934 Pacific/Tahiti Society Islands
+ PF -0900-13930 Pacific/Marquesas Marquesas Islands
+ PF -2308-13457 Pacific/Gambier Gambier Islands
+-PG -0930+14710 Pacific/Port_Moresby
++PG -0930+14710 Pacific/Port_Moresby Papua New Guinea (most areas)
++PG -0613+15534 Pacific/Bougainville Bougainville
+ PH +1435+12100 Asia/Manila
+ PK +2452+06703 Asia/Karachi
+ PL +5215+02100 Europe/Warsaw
+@@ -274,36 +276,41 @@
+ PR +182806-0660622 America/Puerto_Rico
+ PS +3130+03428 Asia/Gaza Gaza Strip
+ PS +313200+0350542 Asia/Hebron West Bank
+-PT +3843-00908 Europe/Lisbon mainland
++PT +3843-00908 Europe/Lisbon Portugal (mainland)
+ PT +3238-01654 Atlantic/Madeira Madeira Islands
+ PT +3744-02540 Atlantic/Azores Azores
+ PW +0720+13429 Pacific/Palau
+ PY -2516-05740 America/Asuncion
+ QA,BH +2517+05132 Asia/Qatar
+-RE,TF -2052+05528 Indian/Reunion Réunion, Crozet Is, Scattered Is
++RE,TF -2052+05528 Indian/Reunion Réunion, Crozet, Scattered Islands
+ RO +4426+02606 Europe/Bucharest
+ RS,BA,HR,ME,MK,SI +4450+02030 Europe/Belgrade
+-RU +5443+02030 Europe/Kaliningrad Moscow-01 - Kaliningrad
+-RU +554521+0373704 Europe/Moscow Moscow+00 - west Russia
+-RU +4457+03406 Europe/Simferopol Moscow+00 - Crimea
+-RU +4844+04425 Europe/Volgograd Moscow+00 - Caspian Sea
+-RU +5312+05009 Europe/Samara Moscow+00 (Moscow+01 after 2014-10-26) - Samara, Udmurtia
+-RU +5651+06036 Asia/Yekaterinburg Moscow+02 - Urals
+-RU +5500+07324 Asia/Omsk Moscow+03 - west Siberia
+-RU +5502+08255 Asia/Novosibirsk Moscow+03 - Novosibirsk
+-RU +5345+08707 Asia/Novokuznetsk Moscow+03 (Moscow+04 after 2014-10-26) - Kemerovo
+-RU +5601+09250 Asia/Krasnoyarsk Moscow+04 - Yenisei River
+-RU +5216+10420 Asia/Irkutsk Moscow+05 - Lake Baikal
+-RU +5203+11328 Asia/Chita Moscow+06 (Moscow+05 after 2014-10-26) - Zabaykalsky
+-RU +6200+12940 Asia/Yakutsk Moscow+06 - Lena River
+-RU +623923+1353314 Asia/Khandyga Moscow+06 - Tomponsky, Ust-Maysky
+-RU +4310+13156 Asia/Vladivostok Moscow+07 - Amur River
+-RU +4658+14242 Asia/Sakhalin Moscow+07 - Sakhalin Island
+-RU +643337+1431336 Asia/Ust-Nera Moscow+07 - Oymyakonsky
+-RU +5934+15048 Asia/Magadan Moscow+08 (Moscow+07 after 2014-10-26) - Magadan
+-RU +6728+15343 Asia/Srednekolymsk Moscow+08 - E Sakha, N Kuril Is
+-RU +5301+15839 Asia/Kamchatka Moscow+08 (Moscow+09 after 2014-10-26) - Kamchatka
+-RU +6445+17729 Asia/Anadyr Moscow+08 (Moscow+09 after 2014-10-26) - Bering Sea
++RU +5443+02030 Europe/Kaliningrad MSK-01 - Kaliningrad
++RU +554521+0373704 Europe/Moscow MSK+00 - Moscow area
++RU +4457+03406 Europe/Simferopol MSK+00 - Crimea
++RU +4844+04425 Europe/Volgograd MSK+00 - Volgograd, Saratov
++RU +5836+04939 Europe/Kirov MSK+00 - Kirov
++RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5312+05009 Europe/Samara MSK+01 - Samara, Udmurtia
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
++RU +5651+06036 Asia/Yekaterinburg MSK+02 - Urals
++RU +5500+07324 Asia/Omsk MSK+03 - Omsk
++RU +5502+08255 Asia/Novosibirsk MSK+03 - Novosibirsk
++RU +5322+08345 Asia/Barnaul MSK+04 - Altai
++RU +5630+08458 Asia/Tomsk MSK+04 - Tomsk
++RU +5345+08707 Asia/Novokuznetsk MSK+04 - Kemerovo
++RU +5601+09250 Asia/Krasnoyarsk MSK+04 - Krasnoyarsk area
++RU +5216+10420 Asia/Irkutsk MSK+05 - Irkutsk, Buryatia
++RU +5203+11328 Asia/Chita MSK+06 - Zabaykalsky
++RU +6200+12940 Asia/Yakutsk MSK+06 - Lena River
++RU +623923+1353314 Asia/Khandyga MSK+06 - Tomponsky, Ust-Maysky
++RU +4310+13156 Asia/Vladivostok MSK+07 - Amur River
++RU +643337+1431336 Asia/Ust-Nera MSK+07 - Oymyakonsky
++RU +5934+15048 Asia/Magadan MSK+08 - Magadan
++RU +4658+14242 Asia/Sakhalin MSK+08 - Sakhalin Island
++RU +6728+15343 Asia/Srednekolymsk MSK+08 - Sakha (E); North Kuril Is
++RU +5301+15839 Asia/Kamchatka MSK+09 - Kamchatka
++RU +6445+17729 Asia/Anadyr MSK+09 - Bering Sea
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+@@ -315,8 +322,8 @@
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
+ TD +1207+01503 Africa/Ndjamena
+-TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul I, Amsterdam I
+-TH,KH,LA,VN +1345+10031 Asia/Bangkok
++TF -492110+0701303 Indian/Kerguelen Kerguelen, St Paul Island, Amsterdam Island
++TH,KH,LA,VN +1345+10031 Asia/Bangkok Indochina (most areas)
+ TJ +3835+06848 Asia/Dushanbe
+ TK -0922-17114 Pacific/Fakaofo
+ TL -0833+12535 Asia/Dili
+@@ -324,46 +331,47 @@
+ TN +3648+01011 Africa/Tunis
+ TO -2110-17510 Pacific/Tongatapu
+ TR +4101+02858 Europe/Istanbul
+-TT,AG,AI,BL,DM,GD,GP,MF,LC,KN,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
++TT,AG,AI,BL,DM,GD,GP,KN,LC,MF,MS,VC,VG,VI +1039-06131 America/Port_of_Spain
+ TV -0831+17913 Pacific/Funafuti
+ TW +2503+12130 Asia/Taipei
+-UA +5026+03031 Europe/Kiev most locations
++UA +5026+03031 Europe/Kiev Ukraine (most areas)
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+-UA +4750+03510 Europe/Zaporozhye Zaporozh'ye, E Lugansk / Zaporizhia, E Luhansk
++UA +4750+03510 Europe/Zaporozhye Zaporozh'ye/Zaporizhia; Lugansk/Luhansk (east)
+ UM +1917+16637 Pacific/Wake Wake Island
+-US +404251-0740023 America/New_York Eastern Time
+-US +421953-0830245 America/Detroit Eastern Time - Michigan - most locations
+-US +381515-0854534 America/Kentucky/Louisville Eastern Time - Kentucky - Louisville area
+-US +364947-0845057 America/Kentucky/Monticello Eastern Time - Kentucky - Wayne County
+-US +394606-0860929 America/Indiana/Indianapolis Eastern Time - Indiana - most locations
+-US +384038-0873143 America/Indiana/Vincennes Eastern Time - Indiana - Daviess, Dubois, Knox & Martin Counties
+-US +410305-0863611 America/Indiana/Winamac Eastern Time - Indiana - Pulaski County
+-US +382232-0862041 America/Indiana/Marengo Eastern Time - Indiana - Crawford County
+-US +382931-0871643 America/Indiana/Petersburg Eastern Time - Indiana - Pike County
+-US +384452-0850402 America/Indiana/Vevay Eastern Time - Indiana - Switzerland County
+-US +415100-0873900 America/Chicago Central Time
+-US +375711-0864541 America/Indiana/Tell_City Central Time - Indiana - Perry County
+-US +411745-0863730 America/Indiana/Knox Central Time - Indiana - Starke County
+-US +450628-0873651 America/Menominee Central Time - Michigan - Dickinson, Gogebic, Iron & Menominee Counties
+-US +470659-1011757 America/North_Dakota/Center Central Time - North Dakota - Oliver County
+-US +465042-1012439 America/North_Dakota/New_Salem Central Time - North Dakota - Morton County (except Mandan area)
+-US +471551-1014640 America/North_Dakota/Beulah Central Time - North Dakota - Mercer County
+-US +394421-1045903 America/Denver Mountain Time
+-US +433649-1161209 America/Boise Mountain Time - south Idaho & east Oregon
+-US +332654-1120424 America/Phoenix Mountain Standard Time - Arizona (except Navajo)
+-US +340308-1181434 America/Los_Angeles Pacific Time
+-US +550737-1313435 America/Metlakatla Pacific Standard Time - Annette Island, Alaska
+-US +611305-1495401 America/Anchorage Alaska Time
+-US +581807-1342511 America/Juneau Alaska Time - Alaska panhandle
+-US +571035-1351807 America/Sitka Alaska Time - southeast Alaska panhandle
+-US +593249-1394338 America/Yakutat Alaska Time - Alaska panhandle neck
+-US +643004-1652423 America/Nome Alaska Time - west Alaska
++US +404251-0740023 America/New_York Eastern (most areas)
++US +421953-0830245 America/Detroit Eastern - MI (most areas)
++US +381515-0854534 America/Kentucky/Louisville Eastern - KY (Louisville area)
++US +364947-0845057 America/Kentucky/Monticello Eastern - KY (Wayne)
++US +394606-0860929 America/Indiana/Indianapolis Eastern - IN (most areas)
++US +384038-0873143 America/Indiana/Vincennes Eastern - IN (Da, Du, K, Mn)
++US +410305-0863611 America/Indiana/Winamac Eastern - IN (Pulaski)
++US +382232-0862041 America/Indiana/Marengo Eastern - IN (Crawford)
++US +382931-0871643 America/Indiana/Petersburg Eastern - IN (Pike)
++US +384452-0850402 America/Indiana/Vevay Eastern - IN (Switzerland)
++US +415100-0873900 America/Chicago Central (most areas)
++US +375711-0864541 America/Indiana/Tell_City Central - IN (Perry)
++US +411745-0863730 America/Indiana/Knox Central - IN (Starke)
++US +450628-0873651 America/Menominee Central - MI (Wisconsin border)
++US +470659-1011757 America/North_Dakota/Center Central - ND (Oliver)
++US +465042-1012439 America/North_Dakota/New_Salem Central - ND (Morton rural)
++US +471551-1014640 America/North_Dakota/Beulah Central - ND (Mercer)
++US +394421-1045903 America/Denver Mountain (most areas)
++US +433649-1161209 America/Boise Mountain - ID (south); OR (east)
++US +332654-1120424 America/Phoenix MST - Arizona (except Navajo)
++US +340308-1181434 America/Los_Angeles Pacific
++US +611305-1495401 America/Anchorage Alaska (most areas)
++US +581807-1342511 America/Juneau Alaska - Juneau area
++US +571035-1351807 America/Sitka Alaska - Sitka area
++US +550737-1313435 America/Metlakatla Alaska - Annette Island
++US +593249-1394338 America/Yakutat Alaska - Yakutat
++US +643004-1652423 America/Nome Alaska (west)
+ US +515248-1763929 America/Adak Aleutian Islands
+-US,UM +211825-1575130 Pacific/Honolulu Hawaii time
++US,UM +211825-1575130 Pacific/Honolulu Hawaii
+ UY -3453-05611 America/Montevideo
+-UZ +3940+06648 Asia/Samarkand west Uzbekistan
+-UZ +4120+06918 Asia/Tashkent east Uzbekistan
++UZ +3940+06648 Asia/Samarkand Uzbekistan (west)
++UZ +4120+06918 Asia/Tashkent Uzbekistan (east)
+ VE +1030-06656 America/Caracas
++VN +1045+10640 Asia/Ho_Chi_Minh Vietnam (south)
+ VU -1740+16825 Pacific/Efate
+ WF -1318-17610 Pacific/Wallis
+ WS -1350-17144 Pacific/Apia
+--- contrib/tzdata/zoneinfo2tdf.pl.orig
++++ contrib/tzdata/zoneinfo2tdf.pl
+@@ -0,0 +1,52 @@
++#! /usr/bin/perl -w
++
++# Courtesy Ken Pizzini.
++
++use strict;
++
++#This file released to the public domain.
++
++# Note: error checking is poor; trust the output only if the input
++# has been checked by zic.
++
++my $contZone = '';
++while (<>) {
++ my $origline = $_;
++ my @fields = ();
++ while (s/^\s*((?:"[^"]*"|[^\s#])+)//) {
++ push @fields, $1;
++ }
++ next unless @fields;
++
++ my $type = lc($fields[0]);
++ if ($contZone) {
++ @fields >= 3 or warn "bad continuation line";
++ unshift @fields, '+', $contZone;
++ $type = 'zone';
++ }
++
++ $contZone = '';
++ if ($type eq 'zone') {
++ # Zone NAME GMTOFF RULES/SAVE FORMAT [UNTIL]
++ my $nfields = @fields;
++ $nfields >= 5 or warn "bad zone line";
++ if ($nfields > 6) {
++ #this splice is optional, depending on one's preference
++ #(one big date-time field, or componentized date and time):
++ splice(@fields, 5, $nfields-5, "@fields[5..$nfields-1]");
++ }
++ $contZone = $fields[1] if @fields > 5;
++ } elsif ($type eq 'rule') {
++ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++ @fields == 10 or warn "bad rule line";
++ } elsif ($type eq 'link') {
++ # Link TARGET LINK-NAME
++ @fields == 3 or warn "bad link line";
++ } elsif ($type eq 'leap') {
++ # Leap YEAR MONTH DAY HH:MM:SS CORR R/S
++ @fields == 7 or warn "bad leap line";
++ } else {
++ warn "Fubar at input line $.: $origline";
++ }
++ print join("\t", @fields), "\n";
++}
++native
+\ No newline at end of property
++*
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/plain
+\ No newline at end of property
diff --git a/share/security/patches/EN-16:20/tzdata-9.3.patch.asc b/share/security/patches/EN-16:20/tzdata-9.3.patch.asc
new file mode 100644
index 0000000000..92e27808da
--- /dev/null
+++ b/share/security/patches/EN-16:20/tzdata-9.3.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1sAAoJEO1n7NZdz2rnen0QAKWZS5ORCqx9YkmgNXb97kA5
+GoHXOFgvKZapLY2fUNgZj45nnrnuH2Xjx/A72KrtRhWdQhxX0SEKLq/oBrgEuSNO
+aN/8iZcblP4U0SRsdvpemDmZlNOTD1V+aCIgw/4fqB+lekH1gTY4eb2Ag+oCUy7C
+ImTzRpq8rktXZDH8thNnVcTdMN5Vc6qewqwCMx1SxG5FsSLFXoVG0QykStl6bXql
+43ub1DGchiEEqDQMW75KwxFcMOMlMVQzMKQG6kH12bfpaWu576ZZVCXHQv2oVAIt
+auNd8cV0mlB7xgE/0BDfWoChSIxN8etAS05k75ib7de26PRc+wXYCCS7EqK28Xtq
+vpuRPQr3VhoJ2nfrlPBiZCzw8DSmk0gu7HDawrz+/B2VmsTuNK2DpPE/vFb5bfyM
+6J9uvEaPMr3o21dR0/+lFst2xZI+GJtMMPsS1GWDOxVsKXyD/oau0hQJrkB/V5i8
+ekbQTySUaguP1Hd/Z+R5lT2d3X8xtYN7C/taFrtBGHTQ0cojCeoFKBHBRBttzTFk
+Ptl5r5B7vueeYygFMvTJBGCUV5oVh8SmR9mqHUfqdT1yFULfqa/5ZbgUypsgcdET
+FnEds9bDpElLsc2mBEBHGLPoG1y/sy4yQhPz+J0Cu/6pLpQnu9A59CHjsPf9BBiV
+tlA2MUnU3mPXzt2T7bjS
+=XU0U
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-16:21/localedef.patch b/share/security/patches/EN-16:21/localedef.patch
new file mode 100644
index 0000000000..a13d86cbf4
--- /dev/null
+++ b/share/security/patches/EN-16:21/localedef.patch
@@ -0,0 +1,78 @@
+--- contrib/netbsd-tests/lib/libc/locale/t_mbstowcs.c.orig
++++ contrib/netbsd-tests/lib/libc/locale/t_mbstowcs.c
+@@ -88,7 +88,7 @@
+ 0xFFFF, 0x5D, 0x5B, 0x10000, 0x10FFFF, 0x5D, 0x0A
+ },
+ #ifdef __FreeBSD__
+- { 1, -1, -1, 1, 1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1,
++ { 1, -1, -1, 1, 1, -1, -1, 1, 1, 1, -1, 1, 1, -1, -1,
+ #else
+ { 1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1, 1, 1, -1, -1,
+ #endif
+--- usr.bin/localedef/ctype.c.orig
++++ usr.bin/localedef/ctype.c
+@@ -407,9 +407,9 @@
+ continue;
+ }
+
+- if ((last_ct != NULL) && (last_ct->ctype == ctn->ctype)) {
++ if ((last_ct != NULL) && (last_ct->ctype == ctn->ctype) &&
++ (last_ct->wc + 1 == wc)) {
+ ct[rl.runetype_ext_nranges-1].max = wc;
+- last_ct = ctn;
+ } else {
+ rl.runetype_ext_nranges++;
+ ct = realloc(ct,
+@@ -417,8 +417,8 @@
+ ct[rl.runetype_ext_nranges - 1].min = wc;
+ ct[rl.runetype_ext_nranges - 1].max = wc;
+ ct[rl.runetype_ext_nranges - 1].map = ctn->ctype;
+- last_ct = ctn;
+ }
++ last_ct = ctn;
+ if (ctn->tolower == 0) {
+ last_lo = NULL;
+ } else if ((last_lo != NULL) &&
+--- usr.bin/localedef/parser.y.orig
++++ usr.bin/localedef/parser.y
+@@ -27,6 +27,8 @@
+ * 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.
++ *
++ * $FreeBSD$
+ */
+
+ /*
+@@ -321,22 +323,19 @@
+ | T_TOLOWER conv_list T_NL
+ ;
+
++cc_list : cc_list T_SEMI cc_range_end
++ | cc_list T_SEMI cc_char
++ | cc_char
++ ;
+
+-cc_list : cc_list T_SEMI T_CHAR
++cc_range_end : T_ELLIPSIS T_SEMI T_CHAR
+ {
+- add_ctype($3);
++ add_ctype_range($3);
+ }
+- | cc_list T_SEMI T_SYMBOL
++ ;
++
++cc_char : T_CHAR
+ {
+- add_charmap_undefined($3);
+- }
+- | cc_list T_SEMI T_ELLIPSIS T_SEMI T_CHAR
+- {
+- /* note that the endpoints *must* be characters */
+- add_ctype_range($5);
+- }
+- | T_CHAR
+- {
+ add_ctype($1);
+ }
+ | T_SYMBOL
diff --git a/share/security/patches/EN-16:21/localedef.patch.asc b/share/security/patches/EN-16:21/localedef.patch.asc
new file mode 100644
index 0000000000..c7e2fd19b2
--- /dev/null
+++ b/share/security/patches/EN-16:21/localedef.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1tAAoJEO1n7NZdz2rn64MQAIvo/c5zlJN213CfGtBL2PeC
+ZO6O0pC7c4mFA/C2TR2WKWMjFtwlkCxlln6wq54T0m4s/O1pYeKFiXNIeNzkjs9G
+MfRwbFr3bsacfVoYpREFODYerxkN6zL31LB37oL+jKZApvoUz1aQh1gqsshQWBx6
+chaSfbWDIltA3gyDm8ONiifCebeqgCyvk6L8blVZOCD6HNC706GUiTnLYaIytWFX
+jXT7x6vlYjVF6xfPQCAVpLG/OwkFYlqbr6NfIXSr0zcVzIYdq0r/6oYSLG/DYZNZ
+LsItycwHSWP7inFOwV6Xuluv9KdfFMf6YjMempxk21Gq0qqTYkzemI0CuCjYWegA
+ffSiCIJP3KwMvtznS65bYivYo0KJT3B4GFAf1DkKYPCZWYoiEd3Hmx9rOr3Z0ZFW
+vmt0KphhfUlWvPnoqAWy71ihf4hjxf4SBxMX2RuUNSGNq6+4StfUuiqYHJYtX8Nv
+G7b37D9T6b5xqYJ46bQC2OA65bOmr41/vYGxmq3mm/GxpGf/NfSpMn45tp0lpG/v
+cPV8d5VVxqiZDscPmDThqRwbnZ9YP0nsMiQN3RtFa23gJanC1mWMnLwVLVpXyIR/
+KgbHrOQ0kFQSsSYLngkLwyhab6Oz4cLepUDxlWoTOdjL/Esr1CzZz7jap4egjPMI
+Hih/OXbF4dLE5cXgbAq+
+=Cle8
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/SA-16:36/telnetd.patch b/share/security/patches/SA-16:36/telnetd.patch
new file mode 100644
index 0000000000..f0a8eccfa2
--- /dev/null
+++ b/share/security/patches/SA-16:36/telnetd.patch
@@ -0,0 +1,26 @@
+--- contrib/telnet/telnetd/sys_term.c.orig
++++ contrib/telnet/telnetd/sys_term.c
+@@ -1159,7 +1159,7 @@
+ */
+ argv = (char **)malloc(sizeof(*argv) * 12);
+ if (argv == NULL)
+- return(NULL);
++ fatal(net, "failure allocating argument space");
+ *argv++ = (char *)10;
+ *argv = (char *)0;
+ }
+@@ -1170,11 +1170,12 @@
+ *argv = (char *)((long)(*argv) + 10);
+ argv = (char **)realloc(argv, sizeof(*argv)*((long)(*argv) + 2));
+ if (argv == NULL)
+- return(NULL);
++ fatal(net, "failure allocating argument space");
+ argv++;
+ cpp = &argv[(long)argv[-1] - 10];
+ }
+- *cpp++ = strdup(val);
++ if ((*cpp++ = strdup(val)) == NULL)
++ fatal(net, "failure allocating argument space");
+ *cpp = 0;
+ return(argv);
+ }
diff --git a/share/security/patches/SA-16:36/telnetd.patch.asc b/share/security/patches/SA-16:36/telnetd.patch.asc
new file mode 100644
index 0000000000..b34f963ac5
--- /dev/null
+++ b/share/security/patches/SA-16:36/telnetd.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1uAAoJEO1n7NZdz2rn22kP/RhWrm5MQlipB7qojG+NdeFo
+KI+FFAPCFvDvqj1r+zXOlhwuBrI+E09PlbeUg1qkG2G4BO67Mu7WkzwQ4GtK6Pis
+pDI8mrkfZKEigy2GRUHHuYhWoY5V7bEAl5PL4X1gIifJsuXFKoyb/9JF6O8OXjZQ
+dE8pGkAtdXmlBF2dfjsDXxCpLXuJpBU7os0DlOmQ/0y6Xxj7CauLU1CLpBURsE/Q
+KlONRPWmneEzFdaQHyIKB/l2tEAOY6vndDMFy7M7sM0N5KIwmZEHNgkhDu6waen8
+jiF6XxXBDeEk6YvI2cyG1Y1mR3RokrfuVr/MzKfwnM7Mxd/9VIKnMFIjEHQaFg79
+GRt5Qg6sqVzpqmeIdhxQaHzwNAI4ytUuNGuGGst+vTYH3UTzSe4EC0RRzZpQALS7
+K4wIHqn676v8gEr6FlZmerjwoKFMV1KZw8O1OzIDWjtK4OyEZCR1ozGYlOT3IqhF
+NC6xtK4enhQRTkb8YRUnXsgDceO2T5SARiVadSPqQGOYe1469qD9BjquTGG9xRcE
+KPU11VEzRBUrI6D0Bf5GH+WvTkxVKnTxit7Vo4i0MqkbhziVgFKshKVzTskyqnxz
+zMUNHh/hWRC9+0v1afVlvtjt+8SucRgy085+x9LHHv7k5xgF1Q36iAucSQLM6R6e
+OnLF+t0NpquvI9+vhvKl
+=pzU/
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/SA-16:37/libc.patch b/share/security/patches/SA-16:37/libc.patch
new file mode 100644
index 0000000000..8474377a7a
--- /dev/null
+++ b/share/security/patches/SA-16:37/libc.patch
@@ -0,0 +1,75 @@
+--- lib/libc/net/linkaddr.c.orig
++++ lib/libc/net/linkaddr.c
+@@ -35,6 +35,7 @@
+
+ #include <sys/types.h>
+ #include <sys/socket.h>
++#include <net/if.h>
+ #include <net/if_dl.h>
+ #include <string.h>
+
+@@ -122,31 +123,47 @@
+ link_ntoa(const struct sockaddr_dl *sdl)
+ {
+ static char obuf[64];
+- char *out = obuf;
+- int i;
+- u_char *in = (u_char *)LLADDR(sdl);
+- u_char *inlim = in + sdl->sdl_alen;
+- int firsttime = 1;
++ _Static_assert(sizeof(obuf) >= IFNAMSIZ + 20, "obuf is too small");
++ char *out;
++ const char *in, *inlim;
++ int namelen, i, rem;
+
+- if (sdl->sdl_nlen) {
+- bcopy(sdl->sdl_data, obuf, sdl->sdl_nlen);
+- out += sdl->sdl_nlen;
+- if (sdl->sdl_alen)
++ namelen = (sdl->sdl_nlen <= IFNAMSIZ) ? sdl->sdl_nlen : IFNAMSIZ;
++
++ out = obuf;
++ rem = sizeof(obuf);
++ if (namelen > 0) {
++ bcopy(sdl->sdl_data, out, namelen);
++ out += namelen;
++ rem -= namelen;
++ if (sdl->sdl_alen > 0) {
+ *out++ = ':';
++ rem--;
++ }
+ }
+- while (in < inlim) {
+- if (firsttime)
+- firsttime = 0;
+- else
++
++ in = (const char *)sdl->sdl_data + sdl->sdl_nlen;
++ inlim = in + sdl->sdl_alen;
++
++ while (in < inlim && rem > 1) {
++ if (in != (const char *)sdl->sdl_data + sdl->sdl_nlen) {
+ *out++ = '.';
++ rem--;
++ }
+ i = *in++;
+ if (i > 0xf) {
+- out[1] = hexlist[i & 0xf];
++ if (rem < 3)
++ break;
++ *out++ = hexlist[i & 0xf];
+ i >>= 4;
+- out[0] = hexlist[i];
+- out += 2;
+- } else
+ *out++ = hexlist[i];
++ rem -= 2;
++ } else {
++ if (rem < 2)
++ break;
++ *out++ = hexlist[i];
++ rem++;
++ }
+ }
+ *out = 0;
+ return (obuf);
diff --git a/share/security/patches/SA-16:37/libc.patch.asc b/share/security/patches/SA-16:37/libc.patch.asc
new file mode 100644
index 0000000000..139f9db1aa
--- /dev/null
+++ b/share/security/patches/SA-16:37/libc.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1vAAoJEO1n7NZdz2rnH2QP/jQF/xtjDHJoEKk3h6DGZUC4
+GM27jneyYt/SWbGVHchYhD6y+67304OeUCZ7N6aEUI3cVgoZObDuVNoNrtfBnSPB
+gTtAOUQchlF0ZP/TKZSrONz6Pz+1R/N9QryJSDYr3KUsLDuU6I2nob7kR+Iwxn1V
+pX8MakPMSOUH8tHHpXlQySN8rjobtiCdvulDyi0IX92Ajdq7fqLlu2oiHsMYdtfW
+hzWahmHJZUFe0CqLc+78vGB5WTsIXcwSfrkq5MVy8hDlbtmFrgyXcReEBnXSw+kC
+Y751w+W674Cck/60inzA3is7Iy84/yE0fGuBmFWPhOatTbVqI6dG+gK0CqlzW8g7
+M9ven4K9S9vO52oMSlQJi1VGx66r1P4+7RpiqIC6GFpBZ4ItEYvD4/SP3y75eIGD
+LRSzV+LHJarwNslznAFWxg0rWoHbOhH2x0XT2Ve7rXXm4jzIMTL6LSczYlppQ6d2
+DBfyFHykY4iA0VbSBJYXueQrDHc4njJnr4Kl1ZSOZq9HhUbwVcVM0Wse+ZZJ7veQ
+Xe83iqX6+bbRM8GFLtSw/mJa1h+TMW6N8T/qQXdokYCpVASLDnwfLinqkeC1mh+H
+Wr5kf9pbrBTLcnR/LRnVDZ9ySN6AaZdbLea+7RnPZ46MyQIG14yIvJMPk1LnQB9L
+dO+RStwsKHuz2O37ENqi
+=lrl6
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/SA-16:38/bhyve-10.patch b/share/security/patches/SA-16:38/bhyve-10.patch
new file mode 100644
index 0000000000..aabab5315d
--- /dev/null
+++ b/share/security/patches/SA-16:38/bhyve-10.patch
@@ -0,0 +1,19 @@
+--- lib/libvmmapi/vmmapi.c.orig
++++ lib/libvmmapi/vmmapi.c
+@@ -263,12 +263,14 @@
+ /* XXX VM_MMAP_SPARSE not implemented yet */
+ assert(ctx->vms == VM_MMAP_ALL);
+
+- if (gaddr < ctx->lowmem && gaddr + len <= ctx->lowmem)
++ if (gaddr < ctx->lowmem && len <= ctx->lowmem &&
++ gaddr + len <= ctx->lowmem)
+ return ((void *)(ctx->lowmem_addr + gaddr));
+
+ if (gaddr >= 4*GB) {
+ gaddr -= 4*GB;
+- if (gaddr < ctx->highmem && gaddr + len <= ctx->highmem)
++ if (gaddr < ctx->highmem && len <= ctx->highmem &&
++ gaddr + len <= ctx->highmem)
+ return ((void *)(ctx->highmem_addr + gaddr));
+ }
+
diff --git a/share/security/patches/SA-16:38/bhyve-10.patch.asc b/share/security/patches/SA-16:38/bhyve-10.patch.asc
new file mode 100644
index 0000000000..41e7ab4c63
--- /dev/null
+++ b/share/security/patches/SA-16:38/bhyve-10.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1wAAoJEO1n7NZdz2rnd+kP+wYnUY3tGokDR46N0MbjmkdY
+X8bedjtyUPzQdIW2gexICCLzMrxkN9a4yVEmOOHwTKmtoaFtjXNbn82T8ge1Pf10
+cX4qZg48WYOF4Ei188ZaD9xbnyabuBC5oxAMz4zkTVPlu5FuDI9kP1XyVvzA/8hA
+Q3d1106bxMrkJ/kvqyXy+tt8Rfmp5WG+D0D7zSQc4lREs+l5D49e5d1UFI0TrX1Y
+PTumDnzLZMfH6DO4rzMXRy+yohkGb8D5AW9IHbBVDaeLEeLnkzpHiiMcth3cg5LS
+2Nw+sDmAOaHJ4ea/B820T01mRpd3s8M1gfQz9bAoEd+wVuIBse2hBvaQMrXGJ5G3
+bsJtark4yi8rHg2mQ+z7hgkl1yJ/owIVVo0PvenuzFeRiKf93vxX8nFJvl2zdzDt
+hJWwzNTxg9zPsyWI4VnRqBQIw1ZUhNLwt1Y8buMwVUMv7n0nsqQ/tpKIG1KnFTl5
+no4agfA23+DksTPeZ/OuLTEq/lxRIzEdlAaSlSb6jp3RASHcGfYuf+A9+N2tyGT0
+4rhjvo9juHLsoqDXfMewKBLgyKJFfzMPDQ0Ykun7yrQKWoGG+9o1ZNvMVTMjQn9u
+ZdFMc5WHZAQPlYjB55ldTfeQ4ZX2yBaUTT+WREl2P4zsURM0DV6c7KbQB+XWQzIc
+cWECaLYiir4QRwA+atBZ
+=qWsA
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/SA-16:38/bhyve.patch b/share/security/patches/SA-16:38/bhyve.patch
new file mode 100644
index 0000000000..4ba3572c37
--- /dev/null
+++ b/share/security/patches/SA-16:38/bhyve.patch
@@ -0,0 +1,24 @@
+--- lib/libvmmapi/vmmapi.c.orig
++++ lib/libvmmapi/vmmapi.c
+@@ -426,13 +426,18 @@
+ {
+
+ if (ctx->lowmem > 0) {
+- if (gaddr < ctx->lowmem && gaddr + len <= ctx->lowmem)
++ if (gaddr < ctx->lowmem && len <= ctx->lowmem &&
++ gaddr + len <= ctx->lowmem)
+ return (ctx->baseaddr + gaddr);
+ }
+
+ if (ctx->highmem > 0) {
+- if (gaddr >= 4*GB && gaddr + len <= 4*GB + ctx->highmem)
+- return (ctx->baseaddr + gaddr);
++ if (gaddr >= 4*GB) {
++ if (gaddr < 4*GB + ctx->highmem &&
++ len <= ctx->highmem &&
++ gaddr + len <= 4*GB + ctx->highmem)
++ return (ctx->baseaddr + gaddr);
++ }
+ }
+
+ return (NULL);
diff --git a/share/security/patches/SA-16:38/bhyve.patch.asc b/share/security/patches/SA-16:38/bhyve.patch.asc
new file mode 100644
index 0000000000..dac8d6ff2c
--- /dev/null
+++ b/share/security/patches/SA-16:38/bhyve.patch.asc
@@ -0,0 +1,16 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQIcBAABCgAGBQJYRw1xAAoJEO1n7NZdz2rnBkgQAJWvZDz/GCdcuqp7jUfLvhKR
+/TZaPIe4v702RnoHEsR0pQqNx6wrXSswieiY8VIVE0IIyR6bMO1JgUE7HbSG2m/0
+uI6sgnlTmPKTpKipHmS+lHk/1Rr/bTIAUagyO5XFeq5LinHWdkvKpAgbk0WAFdR4
+0fzOMtyTyW+3+wRAKNG15aoZkscjU4gcEQzS1yVZWEoHQBHIV39sRteqr4/AT2vY
+3wiIjVuW5OwWFqRfX5vamwe/BK3ps07P+OaylnedyScgmI11csCbB6AOxDhlz5/r
+vkLzByMvSwZB7V4EEIvVMmTO57LRaUE5iJ7YNNFyh+4lVHbE+otetAgrf9KE4VIz
+d3DyGELIrAdxUNTx1A/Isog3MAMayxcItNu1kJZz93VxlWJVmrGFufwQigPwNQEd
+R+FeQNGDXYZBDSnl3k16ImL1QW0WLtQqCzSLE+y0Xna3HHUJcddunwLs5duDkaUT
+bHbPL8irN5FBY1WAPWmeusFO0GM1zaWjqYhVCyJLkv+H6aS+4nBIFF2hAmKXyzAc
++PK+rOl2G0HGs09ALKR8DgfzIbeGbB3mvknhUBmX527t6RrA3rWR4gZEwrvCYe4I
+q9lbvvPVoC/xJi3Lsa8xliuo1f7YazEgDNmzkzFjWJQinJKQn4ow3XSiXXqarUm2
+CSrOQJY+0UF23sJScppo
+=nJXA
+-----END PGP SIGNATURE-----