diff --git a/share/security/advisories/FreeBSD-EN-17:09.tzdata.asc b/share/security/advisories/FreeBSD-EN-17:09.tzdata.asc
new file mode 100644
index 0000000000..b649d57c4e
--- /dev/null
+++ b/share/security/advisories/FreeBSD-EN-17:09.tzdata.asc
@@ -0,0 +1,175 @@
+-----BEGIN PGP SIGNED MESSAGE-----
+Hash: SHA512
+
+=============================================================================
+FreeBSD-EN-17:09.tzdata Errata Notice
+ The FreeBSD Project
+
+Topic: Timezone database information update
+
+Category: contrib
+Module: zoneinfo
+Announced: 2017-11-02
+Credits: Philip Paeps
+Affects: All supported versions of FreeBSD
+Corrected: 2017-10-30 15:56:17 UTC (stable/11, 11.1-STABLE)
+ 2017-11-02 15:40:19 UTC (releng/11.1, 11.1-RELEASE-p3)
+ 2017-11-02 15:39:49 UTC (releng/11.0, 11.0-RELEASE-p14)
+ 2017-10-30 15:57:48 UTC (stable/10, 10.4-STABLE)
+ 2017-11-02 15:38:54 UTC (releng/10.4, 10.4-RELEASE-p2)
+ 2017-11-02 15:38:24 UTC (releng/10.3, 10.3-RELEASE-p23)
+
+For general information regarding FreeBSD Errata Notices and Security
+Advisories, including descriptions of the fields above, security
+branches, and the following sections, please visit
+.
+
+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.1]
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-11.1.patch
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-11.1.patch.asc
+# gpg --verify tzdata-11.1.patch.asc
+
+[FreeBSD 11.0]
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-11.0.patch
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-11.0.patch.asc
+# gpg --verify tzdata-11.0.patch.asc
+
+[FreeBSD 10.4]
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-10.4.patch
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-10.4.patch.asc
+# gpg --verify tzdata-10.4.patch.asc
+
+[FreeBSD 10.3]
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-10.3.patch
+# fetch https://security.FreeBSD.org/patches/EN-17:09/tzdata-10.3.patch.asc
+# gpg --verify tzdata-10.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 .
+
+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/10/ r325160
+releng/10.3/ r325322
+releng/10.4/ r325323
+stable/11/ r325159
+releng/11.0/ r325324
+releng/11.1/ r325325
+- -------------------------------------------------------------------------
+
+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:
+
+
+
+VII. References
+
+
+
+
+
+The latest revision of this advisory is available at
+
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAEBCgB9FiEEHPf/b631yp++G4yy7Wfs1l3PaucFAln7PU1fFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDFD
+RjdGRjZGQURGNUNBOUZCRTFCOENCMkVENjdFQ0Q2NURDRjZBRTcACgkQ7Wfs1l3P
+aueuIBAA3RuatfFdMtCSZNQ4Dnzis2V7fNQxXDtBz6yKs71TBuNBTlN7I2HjhwSz
+/Xi81FZib24J9u95/dk3u5GsMy1YlMh7AX3ktwVkwU1PdbjkCsCSKyIg5VPmvKkP
+BS73ksLc82CoEMH74EUoSd0Bp8HRhzXugoO1K8cgtcuXiuOiEfAhrQ6/V8LHwxaX
+ISoQfZ2e7Nni0NmevF/18ftQm9xa8dW0957UGBd+W+mg3xsNWlpQa04pSBxoms5N
+OVuW5iii7bbtD8rH3jcsqYyeXWyJhd04WoW921EcSspel9tbXByZDqzepkz09skO
+xfCKoE7CoJY7DhJcvPjNnu8rTODofXZ8ac3mf60rgkMOwnupo/uR5JrXAry6PZHI
+VEv8SyJ2j/hAJ7A1L3Rgd6A9GJ2zbXBRKvDmcz8aodmQBZ34dxwqGpAEudMDX8tK
+rbTachnq5WNXKypm3XYql4wNbBvO0f5ooV962HKwflCFG/v5Lm3Zqx+FbpvIoSBq
+AwoEvssX4krcBF0buNd3TjKVKJ+6O3G4SKjWlrgGMqUEKFWDbuC41z7N5Cse6dWs
+3JVnPsP0EfucAPybiFOrSmJ29mfR9rtQjJeTm498Z3VeQ67pQt+VztKCIA1FU/NO
+8elPk05f+cbjRhQgSiFTPuE0M2/0qE9Bj70x2kN7wDOCynEnIek=
+=Ri9G
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-17:09/tzdata-10.3.patch b/share/security/patches/EN-17:09/tzdata-10.3.patch
new file mode 100644
index 0000000000..fb398ea14f
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-10.3.patch
@@ -0,0 +1,8914 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -5,23 +5,29 @@
+ 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 tz@iana.org for use in the future. In your email, please give
++reliable sources that reviewers can check.
+
++-----
++
++Developers can contribute technical changes to the source code and
++data as follows.
++
+ 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 for
+-examples of patches that tend to work well. Ideally, additions to
++For more-elaborate changes, please read the theory.html file and browse
++the mailing list archives for
++examples of patches that tend to work well. Additions to
+ data should contain commentary citing reliable sources as
+-justification.
++justification. Citations should use https: URLs if available.
+
+ Please submit changes against either the latest release in
+- or the master branch of the experimental
+-Git repository. If you use Git the following workflow may be helpful:
++ or the master branch of the development
++repository. If you use Git the following workflow may be helpful:
+
+- * Copy the experimental repository.
++ * Copy the development repository.
+
+ git clone https://github.com/eggert/tz.git
+ cd tz
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -1,4 +1,5 @@
+-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.
++Unless specified below, all files in the tz code and data (including
++this LICENSE file) are in the public domain.
++
++If the files date.c, newstrftime.3, and strftime.c are present, they
++contain material derived from BSD and use the BSD 3-clause license.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -49,6 +49,7 @@
+ # "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 should not contain "/" and should not be ".", ".." or empty.
+
+ TZDIR_BASENAME= zoneinfo
+ TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+@@ -72,11 +73,11 @@
+
+ LIBDIR= $(TOPDIR)/lib
+
+-# If you always want time values interpreted as "seconds since the epoch
+-# (not counting leap seconds)", use
++# If you want only POSIX time, with 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
++# below. If you want only "right" time, with 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
+@@ -85,10 +86,31 @@
+ # normally, use
+ # REDO= right_posix
+ # below. POSIX mandates that leap seconds not be counted; for compatibility
+-# with it, use "posix_only" or "posix_right".
++# with it, use "posix_only" or "posix_right". Use POSIX time on systems with
++# leap smearing; this can work better than unsmeared "right" time with
++# applications that are not leap second aware, and is closer to unsmeared
++# "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error).
+
+ REDO= posix_right
+
++# To install data in text form that has all the information of the binary data,
++# (optionally incorporating leap second information), use
++# TZDATA_TEXT= tzdata.zi leapseconds
++# To install text data without leap second information (e.g., because
++# REDO='posix_only'), use
++# TZDATA_TEXT= tzdata.zi
++# To avoid installing text data, use
++# TZDATA_TEXT=
++
++TZDATA_TEXT= leapseconds tzdata.zi
++
++# For backward-compatibility links for old zone names, use
++# BACKWARD= backward pacificnew
++# To omit these links, use
++# BACKWARD=
++
++BACKWARD= backward pacificnew
++
+ # If you want out-of-scope and often-wrong data from the file 'backzone', use
+ # PACKRATDATA= backzone
+ # To omit this data, use
+@@ -96,6 +118,11 @@
+
+ PACKRATDATA=
+
++# The name of a locale using the UTF-8 encoding, used during self-tests.
++# The tests are skipped if the name does not appear to work on this system.
++
++UTF8_LOCALE= en_US.utf8
++
+ # Since "." may not be in PATH...
+
+ YEARISTYPE= ./yearistype
+@@ -103,50 +130,53 @@
+ # Non-default libraries needed to link.
+ LDLIBS=
+
+-# Add the following to the end of the "CFLAGS=" line as needed.
++# Add the following to the end of the "CFLAGS=" line as needed to override
++# defaults specified in the source code. "-DFOO" is equivalent to "-DFOO=1".
+ # -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DDEPRECATE_TWO_DIGIT_YEARS for optional runtime warnings about strftime
++# formats that generate only the last two digits of year numbers
++# -DEPOCH_LOCAL 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.
+ # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r
++# -DHAVE_DECL_ENVIRON if declares 'environ'
+ # -DHAVE_DIRECT_H if mkdir needs (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
++# -DHAVE_GENERIC=0 if _Generic does not work
++# -DHAVE_GETTEXT if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R 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_INTTYPES_H if you have a non-C99 compiler with
+ # -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 declares locale_t and strftime_l
+-# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_SNPRINTF=0 if your system lacks the snprintf function
++# -DHAVE_STDBOOL_H if you have a non-C99 compiler with
++# -DHAVE_STDINT_H if you have a non-C99 compiler with
++# -DHAVE_STRFTIME_L if declares locale_t and strftime_l
+ # -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_SYS_STAT_H=0 if your compiler lacks a
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a
+ # -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;
++# -DHAVE_UNISTD_H=0 if your compiler lacks a
++# -Dlocale_t=XXX if your system uses XXX instead of locale_t
++# -Dssize_t=long on hosts like MS-Windows that lack ssize_t
++# -DTHREAD_SAFE 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
++# This is intended for internal use only; it mangles external names.
+ # -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
++# -DUNINIT_TRAP 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.
+@@ -154,27 +184,28 @@
+ # (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
++# Select instrumentation via "make GCC_INSTRUMENT='whatever'".
++GCC_INSTRUMENT = \
++ -fsanitize=undefined -fsanitize-address-use-after-scope \
++ -fsanitize-undefined-trap-on-error -fstack-protector
++GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
++ $(GCC_INSTRUMENT) \
++ -Wall -Wextra \
++ -Walloc-size-larger-than=100000 -Warray-bounds=2 \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement -Wdouble-promotion \
++ -Wformat=2 -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation \
++ -Winit-self -Wjump-misses-init -Wlogical-op \
++ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=5 \
++ -Wsuggest-attribute=const -Wsuggest-attribute=format \
++ -Wsuggest-attribute=noreturn -Wsuggest-attribute=pure \
++ -Wtrampolines -Wundef -Wuninitialized -Wunused \
++ -Wvariadic-macros -Wvla -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
+@@ -186,6 +217,31 @@
+ # 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.
+ #
++# The next batch of options control support for external variables
++# exported by tzcode. In practice these variables are less useful
++# than TM_GMTOFF and TM_ZONE. However, most of them are standardized.
++# #
++# # To omit or support the external variable "tzname", add one of:
++# # -DHAVE_TZNAME=0
++# # -DHAVE_TZNAME=1
++# # to the "CFLAGS=" line. "tzname" is required by POSIX 1988 and later.
++# # If not defined, the code attempts to guess HAVE_TZNAME from other macros.
++# # Warning: unless time_tz is also defined, HAVE_TZNAME=1 can cause
++# # crashes when combined with some platforms' standard libraries,
++# # presumably due to memory allocation issues.
++# #
++# # To omit or support the external variables "timezone" and "daylight", add
++# # -DUSG_COMPAT=0
++# # -DUSG_COMPAT=1
++# # to the "CFLAGS=" line; "timezone" and "daylight" are inspired by
++# # Unix Systems Group code and are required by POSIX 2008 (with XSI) and later.
++# # If not defined, the code attempts to guess USG_COMPAT from other macros.
++# #
++# # To support the external variable "altzone", add
++# # -DALTZONE
++# # to the end of the "CFLAGS=" line; although "altzone" appeared in
++# # System V Release 3.1 it has not been standardized.
++#
+ # If you want functions that were inspired by early versions of X3J11's work,
+ # add
+ # -DSTD_INSPIRED
+@@ -223,11 +279,6 @@
+ # -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
+@@ -237,8 +288,8 @@
+ # 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
++# 53 as a week number (rather than 52 or 53) for January days before
++# January's first Monday when a "%V" format is used and January 1
+ # falls on a Friday, Saturday, or Sunday.
+
+ CFLAGS=
+@@ -262,7 +313,7 @@
+
+ # How to use zic to install tz binary files.
+
+-ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++ZIC_INSTALL= $(ZIC) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
+
+ # The name of a Posix-compliant 'awk' on your system.
+ AWK= awk
+@@ -286,6 +337,7 @@
+ # The name, arguments and environment of a program to validate your web pages.
+ # See for a validator, and
+ # for a validation library.
++# Set VALIDATE=':' if you do not have such a program.
+ VALIDATE = nsgmls
+ VALIDATE_FLAGS = -s -B -wall -wno-unused-param
+ VALIDATE_ENV = \
+@@ -352,7 +404,7 @@
+ RANLIB= :
+
+ TZCOBJS= zic.o
+-TZDOBJS= zdump.o localtime.o asctime.o
++TZDOBJS= zdump.o localtime.o asctime.o strftime.o
+ DATEOBJS= date.o localtime.o strftime.o asctime.o
+ LIBSRCS= localtime.c asctime.c difftime.c
+ LIBOBJS= localtime.o asctime.o difftime.o
+@@ -367,20 +419,22 @@
+ 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
++COMMON= calendars CONTRIBUTING LICENSE Makefile \
++ NEWS README theory.html 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
++YDATA= $(PRIMARY_YDATA) etcetera $(BACKWARD)
+ NDATA= systemv factory
+ TDATA= $(YDATA) $(NDATA)
+ ZONETABLES= zone1970.tab zone.tab
+-TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++TABDATA= iso3166.tab $(TZDATA_TEXT) $(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
++TZDATA_ZI_DEPS= zishrink.awk $(TDATA) $(PACKRATDATA)
++DATA= $(YDATA) $(NDATA) backzone iso3166.tab leap-seconds.list \
++ leapseconds yearistype.sh $(ZONETABLES)
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk zishrink.awk
+ MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
+ TZS_YEAR= 2050
+ TZS= to$(TZS_YEAR).tzs
+@@ -387,13 +441,13 @@
+ 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)
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS) tzdata.zi
+
+ # 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 \
++ calendars CONTRIBUTING LICENSE Makefile NEWS README \
+ africa antarctica asctime.c asia australasia \
+ backward backzone \
+ checklinks.awk checktab.awk \
+@@ -402,7 +456,7 @@
+ leap-seconds.list leapseconds.awk localtime.c \
+ newctime.3 newstrftime.3 newtzset.3 northamerica \
+ pacificnew private.h \
+- southamerica strftime.c systemv \
++ southamerica strftime.c systemv theory.html \
+ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
+ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
+ workman.sh yearistype.sh \
+@@ -424,7 +478,7 @@
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
+- cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp -f $(TABDATA) $(DESTDIR)$(TZDIR)/.
+ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
+ cp libtz.a $(DESTDIR)$(LIBDIR)/.
+ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
+@@ -445,6 +499,11 @@
+ printf '%s\n' "$$V" >$@.out
+ mv $@.out $@
+
++# This file can be tailored by setting BACKWARD, PACKRATDATA, etc.
++tzdata.zi: $(TZDATA_ZI_DEPS)
++ LC_ALL=C $(AWK) -f zishrink.awk $(TDATA) $(PACKRATDATA) >$@.out
++ mv $@.out $@
++
+ version.h: version
+ VERSION=`cat version` && printf '%s\n' \
+ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
+@@ -470,6 +529,7 @@
+ # Arguments to pass to submakes of install_data.
+ # They can be overridden by later submake arguments.
+ INSTALLARGS = \
++ BACKWARD=$(BACKWARD) \
+ DESTDIR=$(DESTDIR) \
+ LEAPSECONDS='$(LEAPSECONDS)' \
+ PACKRATDATA='$(PACKRATDATA)' \
+@@ -478,10 +538,8 @@
+ 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)
++install_data: zic leapseconds yearistype tzdata.zi
++ $(ZIC_INSTALL) tzdata.zi
+
+ posix_only:
+ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
+@@ -518,14 +576,14 @@
+
+ zones: $(REDO)
+
+-$(TZS_NEW): $(TDATA) zdump zic
++$(TZS_NEW): tzdata.zi 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
++ $(zic) -d tzs.dir tzdata.zi
++ $(AWK) '/^L/{print "Link\t" $$2 "\t" $$3}' \
++ tzdata.zi | LC_ALL=C sort >$@.out
+ wd=`pwd` && \
+ zones=`$(AWK) -v wd="$$wd" \
+- '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ '/^Z/{print wd "/tzs.dir/" $$2}' tzdata.zi \
+ | LC_ALL=C sort` && \
+ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
+ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
+@@ -542,7 +600,8 @@
+ cp $(TZS_NEW) $(TZS)
+
+ libtz.a: $(LIBOBJS)
+- $(AR) ru $@ $(LIBOBJS)
++ rm -f $@
++ $(AR) -rc $@ $(LIBOBJS)
+ $(RANLIB) $@
+
+ date: $(DATEOBJS)
+@@ -560,18 +619,24 @@
+ chmod +x $@.out
+ mv $@.out $@
+
+-check: check_character_set check_white_space check_links check_sorted \
+- check_tables check_tzs check_web
++check: check_character_set check_white_space check_links \
++ check_name_lengths check_sorted \
++ check_tables check_web check_zishrink check_tzs
+
+ check_character_set: $(ENCHILADA)
+- LC_ALL=en_US.utf8 && export LC_ALL && \
++ test ! '$(UTF8_LOCALE)' || \
++ ! printf 'A\304\200B\n' | \
++ LC_ALL='$(UTF8_LOCALE)' grep -q '^A.B$$' >/dev/null 2>&1 || { \
++ LC_ALL='$(UTF8_LOCALE)' && export LC_ALL && \
+ sharp='#' && \
+ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
+ $(MISC) $(SOURCES) $(WEB_PAGES) \
+- CONTRIBUTING LICENSE Makefile README version && \
++ CONTRIBUTING LICENSE Makefile README \
++ version tzdata.zi && \
+ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
+ leapseconds yearistype.sh zone.tab && \
+- ! grep -Env $(OK_LINE) $(ENCHILADA)
++ ! grep -Env $(OK_LINE) $(ENCHILADA); \
++ }
+
+ check_white_space: $(ENCHILADA)
+ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
+@@ -578,6 +643,13 @@
+ ! grep -En "$$pat" $(ENCHILADA)
+ ! grep -n '[[:space:]]$$' $(ENCHILADA)
+
++PRECEDES_FILE_NAME = ^(Zone|Link[[:space:]]+[^[:space:]]+)[[:space:]]+
++FILE_NAME_COMPONENT_TOO_LONG = \
++ $(PRECEDES_FILE_NAME)[^[:space:]]*[^/[:space:]]{15}
++
++check_name_lengths: $(TDATA) backzone
++ ! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' $(TDATA) backzone
++
+ 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
+@@ -592,6 +664,7 @@
+
+ check_links: checklinks.awk $(TDATA)
+ $(AWK) -f checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk tzdata.zi
+
+ check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
+ for tab in $(ZONETABLES); do \
+@@ -602,14 +675,32 @@
+ check_tzs: $(TZS) $(TZS_NEW)
+ diff -u $(TZS) $(TZS_NEW)
+
+-check_web: $(WEB_PAGES)
+- $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++# This checks only the HTML 4.01 strict page.
++# To check the the other pages, use .
++check_web: tz-how-to.html
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) tz-how-to.html
+
++# Check that tzdata.zi generates the same binary data that its sources do.
++check_zishrink: tzdata.zi zic leapseconds $(PACKRATDATA) $(TDATA)
++ for type in posix right; do \
++ mkdir -p time_t.dir/$$type time_t.dir/$$type-shrunk && \
++ case $$type in \
++ right) leap='-L leapseconds';; \
++ *) leap=;; \
++ esac && \
++ $(ZIC) $$leap -d time_t.dir/$$type $(TDATA) && \
++ $(AWK) '/^Rule/' $(TDATA) | \
++ $(ZIC) $$leap -d time_t.dir/$$type - $(PACKRATDATA) && \
++ $(ZIC) $$leap -d time_t.dir/$$type-shrunk tzdata.zi && \
++ diff -r time_t.dir/$$type time_t.dir/$$type-shrunk || exit; \
++ done
++ rm -fr time_t.dir
++
+ 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)
++ rm -fr *.dir tzdata.zi tzdb-*/ $(TZS_NEW)
+
+ maintainer-clean: clean
+ @echo 'This command is intended for maintainers to use; it'
+@@ -663,6 +754,7 @@
+ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
+ exit; \
+ done
++ touch -cmr `ls -t $(TZDATA_ZI_DEPS) | sed 1q` tzdata.zi
+ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
+ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
+ touch $@
+@@ -674,7 +766,7 @@
+ $(MAKE) maintainer-clean
+ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
+ mkdir -p public.dir
+- for i in $(TDATA) ; do \
++ for i in $(TDATA) tzdata.zi; do \
+ $(zic) -v -d public.dir $$i 2>&1 || exit; \
+ done
+ $(zic) -v -d public.dir $(TDATA)
+@@ -768,8 +860,8 @@
+ $(MAKE) clean ; \
+ done
+
+-zonenames: $(TDATA)
+- @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++zonenames: tzdata.zi
++ @$(AWK) '/^Z/ { print $$2 } /^L/ { print $$3 }' tzdata.zi
+
+ asctime.o: private.h tzfile.h
+ date.o: private.h
+@@ -785,6 +877,7 @@
+ .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: check_zishrink
+ .PHONY: clean clean_misc force_tzs
+ .PHONY: install install_data maintainer-clean names
+ .PHONY: posix_only posix_packrat posix_right
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -1,5 +1,344 @@
+ News for the tz database
+
++Release 2017c - 2017-10-20 14:49:34 -0700
++
++ Briefly:
++ Northern Cyprus switches from +03 to +02/+03 on 2017-10-29.
++ Fiji ends DST 2018-01-14, not 2018-01-21.
++ Namibia switches from +01/+02 to +02 on 2018-04-01.
++ Sudan switches from +03 to +02 on 2017-11-01.
++ Tonga likely switches from +13/+14 to +13 on 2017-11-05.
++ Turks & Caicos switches from -04 to -05/-04 on 2018-11-04.
++ A new file tzdata.zi now holds a small text copy of all data.
++ The zic input format has been regularized slightly.
++
++ Changes to future time stamps
++
++ Northern Cyprus has decided to resume EU rules starting
++ 2017-10-29, thus reinstituting winter time.
++
++ Fiji ends DST 2018-01-14 instead of the 2018-01-21 previously
++ predicted. (Thanks to Dominic Fok.) Adjust future predictions
++ accordingly.
++
++ Namibia will switch from +01 with DST to +02 all year on
++ 2017-09-03 at 02:00. This affects UT offsets starting 2018-04-01
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Sudan will switch from +03 to +02 on 2017-11-01. (Thanks to Ahmed
++ Atyya and Yahia Abdalla.) South Sudan is not switching, so
++ Africa/Juba is no longer a link to Africa/Khartoum.
++
++ Tonga has likely ended its experiment with DST, and will not
++ adjust its clocks on 2017-11-05. Although Tonga has not announced
++ whether it will continue to observe DST, the IATA is assuming that
++ it will not. (Thanks to David Wade.)
++
++ Turks & Caicos will switch from -04 all year to -05 with US DST on
++ 2018-03-11 at 03:00. This affects UT offsets starting 2018-11-04
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Namibia switched from +02 to +01 on 1994-03-21, not 1994-04-03.
++ (Thanks to Arthur David Olson.)
++
++ Detroit did not observe DST in 1967.
++
++ Use railway time for Asia/Kolkata before 1941, by switching to
++ Madras local time (UT +052110) in 1870, then to IST (UT +0530) in
++ 1906. Also, treat 1941-2's +0630 as DST, like 1942-5.
++
++ Europe/Dublin's 1946 and 1947 fallback transitions occurred at
++ 02:00 standard time, not 02:00 DST. (Thanks to Michael Deckers.)
++
++ Pacific/Apia and Pacific/Pago_Pago switched from Antipodean to
++ American time in 1892, not 1879. (Thanks to Michael Deckers.)
++
++ Adjust the 1867 transition in Alaska to better reflect the
++ historical record, by changing it to occur on 1867-10-18 at 15:30
++ Sitka time rather than at the start of 1867-10-17 local time.
++ Although strictly speaking this is accurate only for Sitka,
++ the rest of Alaska's blanks need to be filled in somehow.
++
++ Fix off-by-one errors in UT offsets for Adak and Nome before 1867.
++ (Thanks to Michael Deckers.)
++
++ Add 7 s to the UT offset in Asia/Yangon before 1920.
++
++ Changes to zone names
++
++ Remove Canada/East-Saskatchewan from the 'backward' file, as it
++ exceeded the 14-character limit and was an unused misnomer anyway.
++
++ Changes to build procedure
++
++ To support applications that prefer to read time zone data in text
++ form, two zic input files tzdata.zi and leapseconds are now
++ installed by default. The commands 'zic tzdata.zi' and 'zic -L
++ leapseconds tzdata.zi' can reproduce the tzdata binary files
++ without and with leap seconds, respectively. To prevent these two
++ new files from being installed, use 'make TZDATA_TEXT=', and to
++ suppress leap seconds from the tzdata text installation, use 'make
++ TZDATA_TEXT=tzdata.zi'.
++
++ 'make BACKWARD=' now suppresses backward-compatibility names
++ like 'US/Pacific' that are defined in the 'backward' and
++ 'pacificnew' files.
++
++ 'make check' now works on systems that lack a UTF-8 locale,
++ or that lack the nsgmls program. Set UTF8_LOCALE to configure
++ the name of a UTF-8 locale, if you have one.
++
++ Y2K runtime checks are no longer enabled by default. Add
++ -DDEPRECATE_TWO_DIGIT_YEARS to CFLAGS to enable them, instead of
++ adding -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU
++ to disable them. (New name suggested by Brian Inglis.)
++
++ The build procedure for zdump now works on AIX 7.1.
++ (Problem reported by Kees Dekker.)
++
++ Changes to code
++
++ zic and the reference runtime now reject multiple leap seconds
++ within 28 days of each other, or leap seconds before the Epoch.
++ As a result, support for double leap seconds, which was
++ obsolescent and undocumented, has been removed. Double leap
++ seconds were an error in the C89 standard; they have never existed
++ in civil timekeeping. (Thanks to Robert Elz and Bradley White for
++ noticing glitches in the code that uncovered this problem.)
++
++ zic now warns about use of the obsolescent and undocumented -y
++ option, and about use of the obsolescent TYPE field of Rule lines.
++
++ zic now allows unambiguous abbreviations like "Sa" and "Su" for
++ weekdays; formerly it rejected them due to a bug. Conversely, zic
++ no longer considers non-prefixes to be abbreviations; for example,
++ it no longer accepts "lF" as an abbreviation for "lastFriday".
++ Also, zic warns about the undocumented usage with a "last-"
++ prefix, e.g., "last-Fri".
++
++ Similarly, zic now accepts the unambiguous abbreviation "L" for
++ "Link" in ordinary context and for "Leap" in leap-second context.
++ Conversely, zic no longer accepts non-prefixes such as "La" as
++ abbreviations for words like "Leap".
++
++ zic no longer accepts leap second lines in ordinary input, or
++ ordinary lines in leap second input. Formerly, zic sometimes
++ warned about this undocumented usage and handled it incorrectly.
++
++ The new macro HAVE_TZNAME governs whether the tzname external
++ variable is exported, instead of USG_COMPAT. USG_COMPAT now
++ governs only the external variables "timezone" and "daylight".
++ This change is needed because the three variables are not in the
++ same category: although POSIX requires tzname, it specifies the
++ other two variables as optional. Also, USG_COMPAT is now 1 or 0:
++ if not defined, the code attempts to guess it from other macros.
++
++ localtime.c and difftime.c no longer require stdio.h, and .c files
++ other than zic.c no longer require sys/wait.h.
++
++ zdump.c no longer assumes snprintf. (Reported by Jonathan Leffler.)
++
++ Calculation of time_t extrema works around a bug in GCC 4.8.4
++ (Reported by Stan Shebs and Joseph Myers.)
++
++ zic.c no longer mistranslates formats of line numbers in non-English
++ locales. (Problem reported by Benno Schulenberg.)
++
++ Several minor changes have been made to the code to make it a
++ bit easier to port to MS-Windows and Solaris. (Thanks to Kees
++ Dekker for reporting the problems.)
++
++ Changes to documentation and commentary
++
++ The two new files 'theory.html' and 'calendars' contain the
++ contents of the removed file 'Theory'. The goal is to document
++ tzdb theory more accessibly.
++
++ The zic man page now documents abbreviation rules.
++
++ tz-link.htm now covers how to apply tzdata changes to clients.
++ (Thanks to Jorge Fábregas for the AIX link.) It also mentions MySQL.
++
++ The leap-seconds.list URL has been updated to something that is
++ more reliable for tzdb. (Thanks to Tim Parenti and Brian Inglis.)
++
++Release 2017b - 2017-03-17 07:30:38 -0700
++
++ Briefly: Haiti has resumed DST.
++
++ Changes to past and future time stamps
++
++ Haiti resumed observance of DST in 2017. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Liberia changed from -004430 to +00 on 1972-01-07, not 1972-05-01.
++
++ Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
++ is one byte over the POSIX limit. (Problem reported by Derick Rethans.)
++
++ Changes to code
++
++ The reference localtime implementation now falls back on the
++ current US daylight-saving transition rules rather than the
++ 1987-2006 rules. This fallback occurs only when (1) the TZ
++ environment variable's value has a name like "AST4ADT" that asks
++ for daylight saving time but does not specify the rules, (2) there
++ is no file by that name, and (3) the TZDEFRULES file cannot be
++ loaded. (Thanks to Tom Lane.)
++
++
++Release 2017a - 2017-02-28 00:05:36 -0800
++
++ Briefly: Southern Chile moves from -04/-03 to -03, and Mongolia
++ discontinues DST.
++
++ Changes to future time stamps
++
++ Mongolia no longer observes DST. (Thanks to Ganbold Tsagaankhuu.)
++
++ Chile's Region of Magallanes moves from -04/-03 to -03 year-round.
++ Its clocks diverge from America/Santiago starting 2017-05-13 at
++ 23:00, hiving off a new zone America/Punta_Arenas. Although the
++ Chilean government says this change expires in May 2019, for now
++ assume it's permanent. (Thanks to Juan Correa and Deborah
++ Goldsmith.) This also affects Antarctica/Palmer.
++
++ Changes to past time stamps
++
++ Fix many entries for historical time stamps for Europe/Madrid
++ before 1979, to agree with tables compiled by Pere Planesas of the
++ National Astronomical Observatory of Spain. As a side effect,
++ this changes some time stamps for Africa/Ceuta before 1929, which
++ are probably guesswork anyway. (Thanks to Steve Allen and
++ Pierpaolo Bernardi for the heads-ups, and to Michael Deckers for
++ correcting the 1901 transition.)
++
++ Ecuador observed DST from 1992-11-28 to 1993-02-05.
++ (Thanks to Alois Treindl.)
++
++ Asia/Atyrau and Asia/Oral were at +03 (not +04) before 1930-06-21.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to past and future time zone abbreviations
++
++ Switch to numeric time zone abbreviations for South America, as
++ part of the ongoing project of removing invented abbreviations.
++ This avoids the need to invent an abbreviation for the new Chilean
++ new zone. Similarly, switch from invented to numeric time zone
++ abbreviations for Afghanistan, American Samoa, the Azores,
++ Bangladesh, Bhutan, the British Indian Ocean Territory, Brunei,
++ Cape Verde, Chatham Is, Christmas I, Cocos (Keeling) Is, Cook Is,
++ Dubai, East Timor, Eucla, Fiji, French Polynesia, Greenland,
++ Indochina, Iran, Iraq, Kiribati, Lord Howe, Macquarie, Malaysia,
++ the Maldives, Marshall Is, Mauritius, Micronesia, Mongolia,
++ Myanmar, Nauru, Nepal, New Caledonia, Niue, Norfolk I, Palau,
++ Papua New Guinea, the Philippines, Pitcairn, Qatar, Réunion, St
++ Pierre & Miquelon, Samoa, Saudi Arabia, Seychelles, Singapore,
++ Solomon Is, Tokelau, Tuvalu, Wake, Vanuatu, Wallis & Futuna, and
++ Xinjiang; for 20-minute daylight saving time in Ghana before 1943;
++ for half-hour daylight saving time in Belize before 1944 and in
++ the Dominican Republic before 1975; and for Canary Islands before
++ 1946, for Guinea-Bissau before 1975, for Iceland before 1969, for
++ Indian Summer Time before 1942, for Indonesia before around 1964,
++ for Kenya before 1960, for Liberia before 1973, for Madeira before
++ 1967, for Namibia before 1943, for the Netherlands in 1937-9, for
++ Pakistan before 1971, for Western Sahara before 1977, and for
++ Zaporozhye in 1880-1924.
++
++ For Alaska time from 1900 through 1967, instead of "CAT" use the
++ abbreviation "AST", the abbreviation commonly used at the time
++ (Atlantic Standard Time had not been standardized yet). Use "AWT"
++ and "APT" instead of the invented abbreviations "CAWT" and "CAPT".
++
++ Use "CST" and "CDT" instead of invented abbreviations for Macau
++ before 1999 and Taiwan before 1938, and use "JST" instead of the
++ invented abbreviation "JCST" for Japan and Korea before 1938.
++
++ Change to database entry category
++
++ Move the Pacific/Johnston link from 'australasia' to 'backward',
++ since Johnston is now uninhabited.
++
++ Changes to code
++
++ zic no longer mishandles some transitions in January 2038 when it
++ attempts to work around Qt bug 53071. This fixes a bug affecting
++ Pacific/Tongatapu that was introduced in zic 2016e. localtime.c
++ now contains a workaround, useful when loading a file generated by
++ a buggy zic. (Problem and localtime.c fix reported by Bradley
++ White.)
++
++ zdump -i now outputs non-hour numeric time zone abbreviations
++ without a colon, e.g., "+0530" rather than "+05:30". This agrees
++ with zic %z and with common practice, and simplifies auditing of
++ zdump output.
++
++ zdump is now buildable again with -DUSE_LTZ=0.
++ (Problem reported by Joseph Myers.)
++
++ zdump.c now always includes private.h, to avoid code duplication
++ with private.h. (Problem reported by Kees Dekker.)
++
++ localtime.c no longer mishandles early or late timestamps
++ when TZ is set to a POSIX-style string that specifies DST.
++ (Problem reported by Kees Dekker.)
++
++ date and strftime now cause %z to generate "-0000" instead of
++ "+0000" when the UT offset is zero and the time zone abbreviation
++ begins with "-".
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now better documents choice of historical time
++ zone abbreviations. (Problems reported by Michael Deckers.)
++
++ tz-link.htm now covers leap smearing, which is popular in clouds.
++
++
++Release 2016j - 2016-11-22 23:17:13 -0800
++
++ Briefly: Saratov, Russia moves from +03 to +04 on 2016-12-04.
++
++ Changes to future time stamps
++
++ Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.
++ This hives off a new zone Europe/Saratov from Europe/Volgograd.
++ (Thanks to Yuri Konotopov and Stepan Golosunov.)
++
++ Changes to past time stamps
++
++ The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like
++ Asia/Aqtau except it switched from +05/+06 to +04/+05 in spring
++ 1999, not fall 1994. (Thanks to Stepan Golosunov.)
++
++ Changes to past time zone abbreviations
++
++ Asia/Gaza and Asia/Hebron now use "EEST", not "EET", to denote
++ summer time before 1948. The old use of "EET" was a typo.
++
++ Changes to code
++
++ zic no longer mishandles file systems that lack hard links, fixing
++ bugs introduced in 2016g. (Problems reported by Tom Lane.)
++ Also, when the destination already contains symbolic links, zic
++ should now work better on systems where the 'link' system call
++ does not follow symbolic links.
++
++ Changes to documentation and commentary
++
++ tz-link.htm now documents the relationship between release version
++ numbers and development-repository commit tags. (Suggested by
++ Paul Koning.)
++
++ The 'Theory' file now documents UT.
++
++ iso3166.tab now accents "Curaçao", and commentary now mentions
++ the names "Cabo Verde" and "Czechia". (Thanks to Jiří Boháč.)
++
++
+ Release 2016i - 2016-11-01 23:19:52 -0700
+
+ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
+@@ -212,7 +551,7 @@
+ 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,
++ Tagged releases use 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'.
+@@ -870,9 +1209,9 @@
+ 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,
++ If USG_COMPAT is defined and the requested timestamp 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
++ variable timezone to a value appropriate for that timestamp; 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.
+@@ -879,7 +1218,7 @@
+
+ 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
++ return NULL and set errno when a timestamp is out of range, rather
+ than having undefined behavior.
+
+ Some bugs associated with the new 2014g functions have been fixed.
+@@ -896,7 +1235,7 @@
+
+ Release 2014h - 2014-09-25 18:59:03 -0700
+
+- Changes affecting past time stamps
++ Changes affecting past timestamps
+
+ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
+
+@@ -904,8 +1243,8 @@
+ 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.
++ from existing zones only for older timestamps. As usual,
++ these changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -917,7 +1256,7 @@
+ 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
++ appropriate for the requested timestamp, and zdump now uses this
+ on platforms not defining TM_ZONE, fixing a 2014g regression.
+ (Thanks to Tim Parenti for reporting the problem.)
+
+@@ -957,13 +1296,13 @@
+
+ Release 2014g - 2014-08-28 12:31:23 -0700
+
+- Changes affecting future time stamps
++ Changes affecting future timestamps
+
+ 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
++ Changes affecting past timestamps
+
+ Time in Russia or the USSR before 1926 or so has been corrected by
+ a few seconds in the following zones: Asia/Irkutsk,
+@@ -973,7 +1312,7 @@
+ 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,
++ This affects 1911 timestamps 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.)
+@@ -981,7 +1320,7 @@
+ 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
++ connoisseurs of old timestamps, 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.
+@@ -989,8 +1328,8 @@
+ 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.
++ from existing zones only for older timestamps. As usual,
++ these changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -1041,7 +1380,7 @@
+ 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
++ more likely to guess right for ambiguous timestamps near
+ transitions where tm_isdst does not change.
+
+ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
+@@ -1114,7 +1453,7 @@
+
+ Release 2014f - 2014-08-05 17:42:36 -0700
+
+- Changes affecting future time stamps
++ Changes affecting future timestamps
+
+ Russia will subtract an hour from most of its time zones on 2014-10-26
+ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
+@@ -1165,13 +1504,13 @@
+ These abbreviations are now used for time in Korea, Taiwan,
+ and Sakhalin while controlled by Japan.
+
+- Changes affecting past time stamps
++ Changes affecting past timestamps
+
+ 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
++ different behaviors for timestamps 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.)
+@@ -1178,7 +1517,7 @@
+
+ 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
++ These changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -1323,7 +1662,7 @@
+
+ Release 2014e - 2014-06-12 21:53:52 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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
+@@ -1335,7 +1674,7 @@
+ 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
++ Changes affecting past timestamps
+
+ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
+ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
+@@ -1353,7 +1692,7 @@
+
+ Changes affecting code
+
+- zic no longer generates files containing time stamps before the Big Bang.
++ zic no longer generates files containing timestamps before the Big Bang.
+ This works around GNOME bug 730332
+ .
+ (Thanks to Leonardo Chiquitto for reporting the bug, and to
+@@ -1366,7 +1705,7 @@
+
+ Release 2014c - 2014-05-13 07:44:13 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ Egypt observes DST starting 2014-05-15 at 24:00.
+ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
+@@ -1380,7 +1719,7 @@
+ Changes affecting code
+
+ zic now generates transitions for minimum time values, eliminating guesswork
+- when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++ when handling low-valued timestamps. (Thanks to Arthur David Olson.)
+
+ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
+
+@@ -1391,7 +1730,7 @@
+
+ Release 2014b - 2014-03-24 21:28:50 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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.
+@@ -1430,12 +1769,12 @@
+
+ Release 2014a - 2014-03-07 23:30:29 -0800
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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
++ Changes affecting past timestamps
+
+ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
+ (Thanks to Steffen Thorsen.)
+@@ -1499,13 +1838,13 @@
+
+ Release 2013i - 2013-12-17 07:25:23 -0800
+
+- Changes affecting near-future time stamps:
++ Changes affecting near-future timestamps:
+
+ 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:
++ Changes affecting past timestamps:
+
+ In 2004, Cuba began DST on March 28, not April 4.
+ (Thanks to Steffen Thorsen.)
+@@ -1529,7 +1868,7 @@
+
+ Release 2013h - 2013-10-25 15:32:32 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Libya has switched its UT offset back to +02 without DST, instead
+ of +01 with DST. (Thanks to Even Scharning.)
+@@ -1537,7 +1876,7 @@
+ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
+ (Thanks to Gwillim Law.)
+
+- Changes affecting future time stamps:
++ Changes affecting future timestamps:
+
+ 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.
+@@ -1588,7 +1927,7 @@
+
+ Release 2013g - 2013-09-30 21:08:26 -0700
+
+- Changes affecting current and near-future time stamps
++ Changes affecting current and near-future timestamps
+
+ Morocco now observes DST from the last Sunday in March to the last
+ Sunday in October, not April to September respectively. (Thanks
+@@ -1621,7 +1960,7 @@
+
+ Release 2013f - 2013-09-24 23:37:36 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ Tocantins will very likely not observe DST starting this spring.
+ (Thanks to Steffen Thorsen.)
+@@ -1668,7 +2007,7 @@
+
+ Release 2013e - 2013-09-19 23:50:04 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ This year Fiji will start DST on October 27, not October 20.
+ (Thanks to David Wheeler for the heads-up.) For now, guess that
+@@ -1686,13 +2025,13 @@
+ 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
++ Changes affecting Godthåb timestamps 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,
++ far-future timestamps 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.)
+@@ -1710,12 +2049,12 @@
+ 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
++ all timestamps 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
++ files, and typically works in practice even for timestamps after
+ 2037; the only known exception is America/Godthab.
+
+- Changes affecting time stamps before 1970
++ Changes affecting timestamps before 1970
+
+ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
+ some errors before 1947.
+@@ -1723,7 +2062,7 @@
+ 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:
++ only timestamps 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,
+@@ -1733,11 +2072,11 @@
+ 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
++ America/Cayman, America/Jamaica and America/Grand_Turk timestamps
+ 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
++ This affects Europe/Zurich timestamps from 1853 to 1894. (Thanks
+ to Alois Treindl).
+
+ Change the date of the circa-1850 Zurich transition from 1849-09-12
+@@ -1755,7 +2094,7 @@
+ 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
++ timestamps 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
+@@ -1787,7 +2126,7 @@
+ 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
++ "UTC" does not make sense for timestamps that predate the introduction
+ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
+ for clarifying UT vs UTC.)
+
+@@ -1798,7 +2137,7 @@
+
+ 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
++ same-country-code zones for post-1970 timestamps. The data entries for
+ these names are unchanged, so the names continue to work as before.
+
+ Changes affecting code internals
+@@ -1816,7 +2155,7 @@
+
+ The 'leapseconds' file is now generated automatically from a
+ new file 'leap-seconds.list', which is a copy of
+- .
++
+ A new source file 'leapseconds.awk' implements this.
+ The goal is simplification of the future maintenance of 'leapseconds'.
+
+@@ -1858,7 +2197,7 @@
+
+ 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
++ explaining why so many of the pre-1970 timestamps are wrong or
+ misleading (thanks to Steve Allen, Lester Caine, and Garrett
+ Wollman for discussions that contributed to this).
+
+@@ -1893,7 +2232,7 @@
+
+ Release 2013d - 2013-07-05 07:38:01 -0700
+
+- Changes affecting future time stamps:
++ Changes affecting future timestamps:
+
+ Morocco's midsummer transitions this year are July 7 and August 10,
+ not July 9 and August 8. (Thanks to Andrew Paprocki.)
+@@ -1901,7 +2240,7 @@
+ Israel now falls back on the last Sunday of October.
+ (Thanks to Ephraim Silverberg.)
+
+- Changes affecting past time stamps:
++ Changes affecting past timestamps:
+
+ Specify Jerusalem's location more precisely; this changes the pre-1880
+ times by 2 s.
+@@ -1939,7 +2278,7 @@
+
+ Release 2013c - 2013-04-19 16:17:40 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Palestine observed DST starting March 29, 2013. (Thanks to
+ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
+@@ -1950,7 +2289,7 @@
+ 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:
++ Changes affecting past timestamps:
+
+ Fix some historical data for Palestine to agree with that of
+ timeanddate.com, as follows:
+@@ -1984,10 +2323,10 @@
+
+ Release 2013b - 2013-03-10 22:33:40 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Haiti uses US daylight-saving rules this year, and presumably future years.
+- This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++ This changes timestamps 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.
+@@ -2011,7 +2350,7 @@
+ 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:
++ Changes affecting current and future timestamps:
+
+ 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.
+@@ -2020,9 +2359,9 @@
+ 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.
++ Many changes affect historical timestamps before 1940.
+ These were deduced from: Milne J. Civil time. Geogr J. 1899
+- Feb;13(2):173-94 .
++ Feb;13(2):173-94 .
+
+ Changes affecting the code:
+
+@@ -2152,7 +2491,7 @@
+
+ Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
+
+- Changes for Morocco's time stamps, which take effect in a couple of
++ Changes for Morocco's timestamps, which take effect in a couple of
+ hours, along with infrastructure changes to accommodate how the tz
+ code and data are released on IANA.
+
+@@ -2296,12 +2635,12 @@
+
+ Release 2011d - 2011-03-14 09:18:01 -0400
+
+- changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++ changes that impact present-day timestamps 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.
++ These do affect current timestamps in Chile and Annette Island, Canada.
+
+
+ Release 2011b - 2011-02-07 08:44:50 -0500
+@@ -3766,7 +4105,7 @@
+ 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,
++Release timestamps 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
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -10,24 +10,9 @@
+ 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
++See or the
++file tz-link.htm for how to acquire the code and data. Once acquired,
++read the comments in the file '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":
+@@ -60,10 +45,6 @@
+ maintainer, to whom the time zone community owes the greatest debt of all.
+ None of them are responsible for remaining errors.
+
+-Look in 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
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -1,840 +0,0 @@
+-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
+-
+-
+-
+-
+------ 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
+- 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 .
+- 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
+- ;
+- Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
+- .
+-
+- * 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 ""; 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)
+-.
+-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?
+-
+-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"
+- (2012-08-08).
+-
+-Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
+-
+-(2004-01-14), pp A1, A20-A21.
+-
+-Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
+-
+-
+------
+-
+-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
+@@ -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 (2017-02-20):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -26,44 +26,38 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
++# European-style abbreviations are commonly used along the Mediterranean.
++# For sub-Saharan Africa abbreviations were less standardized.
+ # Previous editions of this database used WAT, CAT, SAT, and EAT
+-# for +0:00 through +3:00, respectively,
+-# but Mark R V Murray reports that
+-# 'SAST' is the official abbreviation for +2:00 in the country of South Africa,
+-# 'CAT' is commonly used for +2:00 in countries north of South Africa, and
+-# 'WAT' is probably the best name for +1:00, as the common phrase for
++# for UT +00 through +03, respectively,
++# but in 1997 Mark R V Murray reported that
++# 'SAST' is the official abbreviation for +02 in the country of South Africa,
++# 'CAT' is commonly used for +02 in countries north of South Africa, and
++# 'WAT' is probably the best name for +01, as the common phrase for
+ # the area that includes Nigeria is "West Africa".
+-# He has heard of "Western Sahara Time" for +0:00 but can find no reference.
+ #
+-# To make things confusing, 'WAT' seems to have been used for -1:00 long ago;
+-# I'd guess that this was because people needed _some_ name for -1:00,
+-# and at the time, far west Africa was the only major land area in -1:00.
+-# This usage is now obsolete, as the last use of -1:00 on the African
+-# mainland seems to have been 1976 in Western Sahara.
++# To summarize, the following abbreviations seemed to have some currency:
++# +00 GMT Greenwich Mean Time
++# +02 CAT Central Africa Time
++# +02 SAST South Africa Standard Time
++# and Murray suggested the following abbreviation:
++# +01 WAT West Africa Time
++# Murray's suggestion seems to have caught on in news reports and the like.
++# I vaguely recall 'WAT' also being used for -01 in the past but
++# cannot now come up with solid citations.
+ #
+-# To summarize, the following abbreviations seem to have some currency:
+-# -1:00 WAT West Africa Time (no longer used)
+-# 0:00 GMT Greenwich Mean Time
+-# 2:00 CAT Central Africa Time
+-# 2:00 SAST South Africa Standard Time
+-# and Murray suggests the following abbreviation:
+-# 1:00 WAT West Africa Time
+-# I realize that this leads to 'WAT' being used for both -1:00 and 1:00
+-# for times before 1976, but this is the best I can think of
+-# until we get more information.
+-#
+ # I invented the following abbreviations; corrections are welcome!
+-# 2:00 WAST West Africa Summer Time
+-# 2:30 BEAT British East Africa Time (no longer used)
+-# 2:45 BEAUT British East Africa Unified Time (no longer used)
+-# 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
++# +02 WAST West Africa Summer Time
++# +03 CAST Central Africa Summer Time (no longer used)
++# +03 SAST South Africa Summer Time (no longer used)
++# +03 EAT East Africa Time
++# 'EAT' also seems to have caught on; the others are rare but are paired
++# with better-attested non-DST abbreviations.
+
+ # Algeria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -119,19 +113,19 @@
+ # Cameroon
+ # See Africa/Lagos.
+
+-# Cape Verde
++# Cape Verde / Cabo Verde
+ #
+-# Shanks gives 1907 for the transition to CVT.
++# Shanks gives 1907 for the transition to +02.
+ # Perhaps the 1911-05-26 Portuguese decree
+-# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# https://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
+- -2:00 - CVT 1942 Sep
+- -2:00 1:00 CVST 1945 Oct 15
+- -2:00 - CVT 1975 Nov 25 2:00
+- -1:00 - CVT
++ -2:00 - -02 1942 Sep
++ -2:00 1:00 -01 1945 Oct 15
++ -2:00 - -02 1975 Nov 25 2:00
++ -1:00 - -01
+
+ # Central African Republic
+ # See Africa/Lagos.
+@@ -224,7 +218,7 @@
+ # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+ # From Jesper Nørgaard Welen (2007-08-15): [The following agree:]
+ # http://www.nentjes.info/Bill/bill5.htm
+-# http://www.timeanddate.com/worldclock/city.html?n=53
++# https://www.timeanddate.com/worldclock/city.html?n=53
+ # From Steffen Thorsen (2007-09-04): The official information...:
+ # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
+@@ -262,8 +256,8 @@
+ # timeanddate[2] and another site I've found[3] also support that.
+ #
+ # [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263
+-# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53
+-# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
++# [2] https://www.timeanddate.com/worldclock/clockchange.html?n=53
++# [3] https://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+
+ # From Arthur David Olson (2009-04-20):
+ # In 2009 (and for the next several years), Ramadan ends before the fourth
+@@ -273,10 +267,10 @@
+ # From Steffen Thorsen (2009-08-11):
+ # We have been able to confirm the August change with the Egyptian Cabinet
+ # Information and Decision Support Center:
+-# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
++# https://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+ #
+ # The Middle East News Agency
+-# http://www.mena.org.eg/index.aspx
++# https://www.mena.org.eg/index.aspx
+ # also reports "Egypt starts winter time on August 21"
+ # today in article numbered "71, 11/08/2009 12:25 GMT."
+ # Only the title above is available without a subscription to their service,
+@@ -326,7 +320,7 @@
+ # 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
++# https://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
+@@ -388,7 +382,7 @@
+ Rule Ghana 1920 1942 - Dec 31 0:00 0 GMT
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Accra -0:00:52 - LMT 1918
+- 0:00 Ghana %s
++ 0:00 Ghana GMT/+0020
+
+ # Guinea
+ # See Africa/Abidjan.
+@@ -397,12 +391,12 @@
+ #
+ # 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
++# https://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 1912 Jan 1
+- -1:00 - WAT 1975
++ -1:00 - -01 1975
+ 0:00 - GMT
+
+ # Kenya
+@@ -409,8 +403,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
+ 3:00 - EAT 1930
+- 2:30 - BEAT 1940
+- 2:45 - BEAUT 1960
++ 2:30 - +0230 1940
++ 2:45 - +0245 1960
+ 3:00 - EAT
+ Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
+ Link Africa/Nairobi Africa/Asmara # Eritrea
+@@ -426,18 +420,25 @@
+ # See Africa/Johannesburg.
+
+ # Liberia
+-# From Paul Eggert (2006-03-22):
+-# In 1972 Liberia was the last country to switch
+-# from a UTC offset that was not a multiple of 15 or 20 minutes.
+-# Howse reports that it was in honor of their president's birthday.
+-# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
+-# go with Shanks & Pottenger.
+-# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
+-# Whitman each report -0:44:30; go with the more precise figure.
++#
++# From Paul Eggert (2017-03-02):
++#
++# The Nautical Almanac for the Year 1970, p 264, is the source for -0:44:30.
++#
++# In 1972 Liberia was the last country to switch from a UTC offset
++# that was not a multiple of 15 or 20 minutes. The 1972 change was on
++# 1972-01-07, according to an entry dated 1972-01-04 on p 330 of:
++# Presidential Papers: First year of the administration of
++# President William R. Tolbert, Jr., July 23, 1971-July 31, 1972.
++# Monrovia: Executive Mansion.
++#
++# Use the abbreviation "MMT" before 1972, as the more-accurate numeric
++# abbreviation "-004430" would be one byte over the POSIX limit.
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Monrovia -0:43:08 - LMT 1882
+ -0:43:08 - MMT 1919 Mar # Monrovia Mean Time
+- -0:44:30 - LRT 1972 May # Liberia Time
++ -0:44:30 - MMT 1972 Jan 7 # approximately MMT
+ 0:00 - GMT
+
+ ###############################################################################
+@@ -446,11 +447,11 @@
+
+ # From Even Scharning (2012-11-10):
+ # Libya set their time one hour back at 02:00 on Saturday November 10.
+-# http://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
++# https://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
+ # Here is an official source [in Arabic]: http://ls.ly/fb6Yc
+ #
+ # Steffen Thorsen forwarded a translation (2012-11-10) in
+-# http://mm.icann.org/pipermail/tz/2012-November/018451.html
++# https://mm.icann.org/pipermail/tz/2012-November/018451.html
+ #
+ # From Tim Parenti (2012-11-11):
+ # Treat the 2012-11-10 change as a zone change from UTC+2 to UTC+1.
+@@ -461,7 +462,7 @@
+ # From Even Scharning (2013-10-25):
+ # The scheduled end of DST in Libya on Friday, October 25, 2013 was
+ # cancelled yesterday....
+-# http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
++# https://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 UT +02.
+@@ -514,7 +515,7 @@
+ # basis....
+ # It seems that Mauritius observed daylight saving time from 1982-10-10 to
+ # 1983-03-20 as well, but that was not successful....
+-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
++# https://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+ # From Alex Krivenyshev (2008-06-25):
+ # http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+@@ -582,7 +583,7 @@
+ # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
++# https://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+
+ # From Arthur David Olson (2009-07-11):
+ # The "mauritius-dst-will-not-repeat" wrapup includes this:
+@@ -596,7 +597,7 @@
+ 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
+- 4:00 Mauritius MU%sT # Mauritius Time
++ 4:00 Mauritius +04/+05
+ # Agalega Is, Rodriguez
+ # no information; probably like Indian/Mauritius
+
+@@ -614,7 +615,7 @@
+ # be one hour ahead of GMT between 1 June and 27 September, according to
+ # Communication Minister and Government Spokesman, Khalid Naciri...."
+ #
+-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
++# http://www.worldtimezone.com/dst_news/dst_news_morocco01.html
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+@@ -627,7 +628,7 @@
+
+ # From Patrice Scattolin (2008-05-09):
+ # According to this article:
+-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
++# https://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+ # (and republished here: )
+ # the changes occur at midnight:
+ #
+@@ -649,7 +650,7 @@
+ # posted in English).
+ #
+ # The following Google query will generate many relevant hits:
+-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
++# https://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+
+ # From Steffen Thorsen (2008-08-27):
+ # Morocco will change the clocks back on the midnight between August 31
+@@ -660,7 +661,7 @@
+ # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+ #
+ # We have some further details posted here:
+-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
++# https://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+
+ # From Steffen Thorsen (2009-03-17):
+ # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+@@ -670,7 +671,7 @@
+ # (French)
+ #
+ # Our summary:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+@@ -693,7 +694,7 @@
+ # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html
+ # (French)
+ # Our page:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+@@ -710,7 +711,7 @@
+ # They said that the decision was already taken.
+ #
+ # More articles in the press
+-# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
++# https://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
+ # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923
+ # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim
+
+@@ -802,7 +803,7 @@
+ # 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/
++# https://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
+@@ -811,7 +812,7 @@
+ # [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
+-# agrees
++# agrees
+ # with the patch.
+
+ # From Paul Eggert (2015-06-08):
+@@ -915,7 +916,7 @@
+ # since most of it was then controlled by Morocco.
+
+ Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún
+- -1:00 - WAT 1976 Apr 14
++ -1:00 - -01 1976 Apr 14
+ 0:00 Morocco WE%sT
+
+ # Mozambique
+@@ -922,7 +923,7 @@
+ #
+ # 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
++# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
+ # merely made it official?
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -936,10 +937,18 @@
+ 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 Arthur David Olson (2017-08-09):
++# The text of the "Namibia Time Act, 1994" is available online at
++# www.lac.org.na/laws/1994/811.pdf
++# and includes this nugget:
++# Notwithstanding the provisions of subsection (2) of section 1, the
++# first winter period after the commencement of this Act shall
++# commence at OOhOO on Monday 21 March 1994 and shall end at 02h00 on
++# Sunday 4 September 1994.
++
+ # From Petronella Sibeene (2007-03-30):
+ # http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+@@ -949,21 +958,35 @@
+ # the country are close to 40 minutes earlier in sunrise than the rest
+ # of the country.
+ #
+-# From Paul Eggert (2007-03-31):
+-# Apparently the Caprivi Strip informally observes Botswana time, but
+-# we have no details. In the meantime people there can use Africa/Gaborone.
++# From Paul Eggert (2017-02-22):
++# Although the Zambezi Region (formerly known as Caprivi) informally
++# observes Botswana time, we have no details about historical practice.
++# In the meantime people there can use Africa/Gaborone.
++# See: Immanuel S. The Namibian. 2017-02-23.
++# https://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
+
++# From Steffen Thorsen (2017-08-09):
++# Namibia is going to change their time zone to what is now their DST:
++# https://www.newera.com.na/2017/02/23/namibias-winter-time-might-be-repealed/
++# This video is from the government decision:
++# https://www.nbc.na/news/na-passes-namibia-time-bill-repealing-1994-namibia-time-act.8665
++# We have made the assumption so far that they will change their time zone at
++# the same time they would normally start DST, the first Sunday in September:
++# https://www.timeanddate.com/news/time/namibia-new-time-zone.html
++
+ # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
+-Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
++Rule Namibia 1994 only - Mar 21 0:00 0 -
++Rule Namibia 1994 2016 - Sep Sun>=1 2:00 1:00 S
++Rule Namibia 1995 2017 - 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
++ 1:30 - +0130 1903 Mar
+ 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
++ 2:00 - CAT 1994 Mar 21 0:00
++ 1:00 Namibia WA%sT 2017 Sep 3 2:00
++ 2:00 - CAT
+
+ # Niger
+ # See Africa/Lagos.
+@@ -985,7 +1008,7 @@
+ # Réunion
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
+- 4:00 - RET # Réunion Time
++ 4:00 - +04
+ #
+ # Crozet Islands also observes Réunion time; see the 'antarctica' file.
+ #
+@@ -1020,7 +1043,7 @@
+ # Seychelles
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
+- 4:00 - SCT # Seychelles Time
++ 4:00 - +04
+ # From Paul Eggert (2001-05-30):
+ # Aldabra, Farquhar, and Desroches, originally dependencies of the
+ # Seychelles, were transferred to the British Indian Ocean Territory
+@@ -1050,7 +1073,7 @@
+ # no information
+
+ # Sudan
+-#
++
+ # From
+ # Sudan News Agency (2000-01-13),
+ # also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen:
+@@ -1057,7 +1080,17 @@
+ # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+ # Saturday.... This was announced Thursday by Caretaker State Minister for
+ # Manpower Abdul-Rahman Nur-Eddin.
++
++# From Ahmed Atyya, National Telecommunications Corp. (NTC), Sudan (2017-10-17):
++# ... the Republic of Sudan is going to change the time zone from (GMT+3:00)
++# to (GMT+ 2:00) starting from Wednesday 1 November 2017.
+ #
++# From Paul Eggert (2017-10-18):
++# A scanned copy (in Arabic) of Cabinet Resolution No. 352 for the
++# year 2017 can be found as an attachment in email today from Yahia
++# Abdalla of NTC, archived at:
++# https://mm.icann.org/pipermail/tz/2017-October/025333.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Sudan 1970 only - May 1 0:00 1:00 S
+ Rule Sudan 1970 1985 - Oct 15 0:00 0 -
+@@ -1066,10 +1099,14 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Khartoum 2:10:08 - LMT 1931
+ 2:00 Sudan CA%sT 2000 Jan 15 12:00
+- 3:00 - EAT
++ 3:00 - EAT 2017 Nov 1
++ 2:00 - CAT
+
+ # South Sudan
+-Link Africa/Khartoum Africa/Juba
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Africa/Juba 2:06:28 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
+
+ # Swaziland
+ # See Africa/Johannesburg.
+@@ -1107,11 +1144,11 @@
+ # According to several news sources, Tunisia will not observe DST this year.
+ # (Arabic)
+ # http://www.elbashayer.com/?page=viewn&nid=42546
+-# http://www.babnet.net/kiwidetail-15295.asp
++# https://www.babnet.net/kiwidetail-15295.asp
+ #
+ # We have also confirmed this with the US embassy in Tunisia.
+ # We have a wrap-up about this on the following page:
+-# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
++# https://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to Tunis Afrique Presse News Agency
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -26,7 +26,7 @@
+ # 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
++# https://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.
+ #
+@@ -47,7 +47,7 @@
+ # http://www.aad.gov.au/default.asp?casid=37079
+ #
+ # We have more background information here:
+-# http://www.timeanddate.com/news/time/antarctica-new-times.html
++# https://www.timeanddate.com/news/time/antarctica-new-times.html
+
+ # From Steffen Thorsen (2010-03-10):
+ # We got these changes from the Australian Antarctic Division: ...
+@@ -62,7 +62,7 @@
+ # - Mawson station stays on UTC+5.
+ #
+ # Background:
+-# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
++# https://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
+@@ -110,7 +110,8 @@
+ # O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
+ # Prat, -6230-05941
+ # Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
+-# These locations have always used Santiago time; use TZ='America/Santiago'.
++# These locations employ Region of Magallanes time; use
++# TZ='America/Punta_Arenas'.
+
+ # China - year-round bases
+ # Great Wall, King George Island, -6213-05858, since 1985-02-20
+@@ -144,7 +145,7 @@
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+-# (2005-12-05)
++# (2005-12-05)
+ #
+ # Another base at Port-Martin, 50km east, began operation in 1947.
+ # It was destroyed by fire on 1952-01-14.
+--- 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 (2015-08-08):
++# From Paul Eggert (2017-01-13):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://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.
+@@ -35,29 +35,24 @@
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
+-# I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
+-# Corrections are welcome!
++# The following alphabetic abbreviations appear in these tables:
+ # std dst
+ # LMT Local Mean Time
+ # 2:00 EET EEST Eastern European Time
+ # 2:00 IST IDT Israel
+-# 3:00 AST ADT Arabia*
+-# 3:30 IRST IRDT Iran*
+-# 4:00 GST Gulf*
+ # 5:30 IST India
+-# 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)
++# 8:30 KST KDT Korea when at +0830
+ # 9:00 WIT east Indonesia (Waktu Indonesia Timur)
+ # 9:00 JST JDT Japan
+ # 9:00 KST KDT Korea when at +09
+ # 9:30 ACST Australian Central Standard Time
++# Otherwise, these tables typically use numeric abbreviations like +03
++# and +0330 for integer hour and minute UTC offsets. Although earlier
++# editions invented alphabetic time zone abbreviations for every
++# offset, this did not reflect common practice.
+ #
+ # See the 'europe' file for Russia and Turkey in Asia.
+
+@@ -65,7 +60,7 @@
+ # Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
+ # additional information from Tom Yap, Sun Microsystems Intercontinental
+ # Technical Support (including a page from the Official Airline Guide -
+-# Worldwide Edition). The names for time zones are guesses.
++# Worldwide Edition).
+
+ ###############################################################################
+
+@@ -80,14 +75,14 @@
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 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 -
++Rule RussiaAsia 1985 2010 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2010 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kabul 4:36:48 - LMT 1890
+- 4:00 - AFT 1945
+- 4:30 - AFT
++ 4:00 - +04 1945
++ 4:30 - +0430
+
+ # Armenia
+ # From Paul Eggert (2006-03-22):
+@@ -114,6 +109,9 @@
+ # or
+ # (brief)
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Armenia 2011 only - Mar lastSun 2:00s 1:00 S
++Rule Armenia 2011 only - Oct lastSun 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+ 3:00 - +03 1957 Mar
+@@ -120,7 +118,8 @@
+ 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
++ 4:00 RussiaAsia +04/+05 2011
++ 4:00 Armenia +04/+05
+
+ # Azerbaijan
+
+@@ -132,7 +131,7 @@
+ # 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
++# https://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
+
+@@ -173,11 +172,11 @@
+ # the 19th and 20th, and they have not set the end date yet.
+ #
+ # Some sources:
+-# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
++# https://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+ # http://bdnews24.com/details.php?id=85889&cid=2
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
++# https://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+
+ # From A. N. M. Kamrus Saadat (2009-06-15):
+ # Finally we've got the official mail regarding DST start time where DST start
+@@ -230,18 +229,17 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dhaka 6:01:40 - LMT 1890
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+- 6:30 - BURT 1942 May 15 # Burma Time
+- 5:30 - IST 1942 Sep
+- 6:30 - BURT 1951 Sep 30
+- 6:00 - DACT 1971 Mar 26 # Dacca Time
+- 6:00 - BDT 2009
+- 6:00 Dhaka BD%sT
++ 6:30 - +0630 1942 May 15
++ 5:30 - +0530 1942 Sep
++ 6:30 - +0630 1951 Sep 30
++ 6:00 - +06 2009
++ 6:00 Dhaka +06/+07
+
+ # Bhutan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Thimphu 5:58:36 - LMT 1947 Aug 15 # or Thimbu
+- 5:30 - IST 1987 Oct
+- 6:00 - BTT # Bhutan Time
++ 5:30 - +0530 1987 Oct
++ 6:00 - +06
+
+ # British Indian Ocean Territory
+ # Whitman and the 1995 CIA time zone map say 5:00, but the
+@@ -251,25 +249,31 @@
+ # then contained the Chagos Archipelago).
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Chagos 4:49:40 - LMT 1907
+- 5:00 - IOT 1996 # BIOT Time
+- 6:00 - IOT
++ 5:00 - +05 1996
++ 6:00 - +06
+
+ # Brunei
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
+- 7:30 - BNT 1933
+- 8:00 - BNT
++ 7:30 - +0730 1933
++ 8:00 - +08
+
+ # Burma / Myanmar
+
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
++# From Paul Eggert (2017-04-20):
++# Page 27 of Reed & Low (cited for Asia/Kolkata) says "Rangoon local time is
++# used upon the railways and telegraphs of Burma, and is 6h. 24m. 47s. ahead
++# of Greenwich." This refers to the period before Burma's transition to +0630,
++# a transition for which Shanks is the only source.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-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
++Zone Asia/Yangon 6:24:47 - LMT 1880 # or Rangoon
++ 6:24:47 - RMT 1920 # Rangoon local time
++ 6:30 - +0630 1942 May
++ 9:00 - +09 1945 May 3
++ 6:30 - +0630
+
+ # Cambodia
+ # See Asia/Bangkok.
+@@ -323,7 +327,7 @@
+ #
+ # From Jesper Nørgaard Welen (2006-07-14):
+ # I have investigated the timezones around 1970 on the
+-# http://www.astro.com/atlas site [with provinces and county
++# https://www.astro.com/atlas site [with provinces and county
+ # boundaries summarized below].... A few other exceptions were two
+ # counties on the Sichuan side of the Xizang-Sichuan border,
+ # counties Dege and Baiyu which lies on the Sichuan side and are
+@@ -332,7 +336,7 @@
+ # (could be true), for the moment I am assuming that those two
+ # counties are mistakes in the astro.com data.
+
+-# From Paul Eggert (2014-06-30):
++# From Paul Eggert (2017-01-05):
+ # Alois Treindl kindly sent me translations of the following two sources:
+ #
+ # (1)
+@@ -390,28 +394,26 @@
+ # mainly observed in coastal areas), the five zones were:
+ #
+ # Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+-# Asia/Harbin (currently a link to Asia/Shanghai)
++# Now part of Asia/Shanghai; its pre-1970 times are not recorded here.
+ # Heilongjiang (except Mohe county), Jilin
+ #
+ # Zhongyuan Time ("Central plain Time") UT +08
+-# Asia/Shanghai
++# Now part of 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 +08 "from the end of the 19th century".
+ #
+-# 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)
++# Long-shu Time (probably as Long and Shu were two names of the area) UT +07
++# Now part of Asia/Shanghai; its pre-1970 times are not recorded here.
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+-# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# most of Gansu; west Inner Mongolia; east Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+ # 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.
++# This region is now part of either Asia/Urumqi or Asia/Shanghai with
++# current boundaries uncertain; times before 1970 for areas that
++# disagree with Ürümqi or Shanghai are not recorded here.
+ # The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
+ # the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang,
+ # Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
+@@ -422,7 +424,7 @@
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+ # Kunlun Time UT +05:30
+-# Asia/Kashgar (currently a link to Asia/Urumqi)
++# This region is now in the same status as Xin-zang Time (see above).
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+ # Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
+@@ -477,7 +479,7 @@
+
+ # From David Cochrane (2014-03-26):
+ # Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986:
+-# http://content.time.com/time/magazine/article/0,9171,960684,00.html
++# https://content.time.com/time/magazine/article/0,9171,960684,00.html
+
+ # From Luther Ma (2014-04-22):
+ # I have interviewed numerous people of various nationalities and from
+@@ -523,7 +525,7 @@
+ # Xinjiang time, used by many in western China; represented by Ürümqi / Ürümchi
+ # / Wulumuqi. (Please use Asia/Shanghai if you prefer Beijing time.)
+ Zone Asia/Urumqi 5:50:20 - LMT 1928
+- 6:00 - XJT
++ 6:00 - +06
+
+
+ # Hong Kong (Xianggang)
+@@ -634,7 +636,7 @@
+ # (both in Okinawa) adopt the Western Standard Time which is based on
+ # 120E. The adoption began from Jan 1, 1896. The original text can be
+ # found on Wikisource:
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ # ... This could be the first adoption of time zone in Taiwan, because
+ # during the Qing Dynasty, it seems that there was no time zone
+ # declared officially.
+@@ -647,7 +649,7 @@
+ # territory, including later occupations, adopt Japan Central Time
+ # (UTC+9). The adoption began on Oct 1, 1937. The original text can
+ # be found on Wikisource:
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+ #
+ # That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937.
+
+@@ -742,30 +744,29 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Taipei or Taibei or T'ai-pei
+ Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1
+- 8:00 - JWST 1937 Oct 1
++ 8:00 - CST 1937 Oct 1
+ 9:00 - JST 1945 Sep 21 1:00
+ 8:00 Taiwan C%sT
+
+ # Macau (Macao, Aomen)
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 S
+-Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 -
+-Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 S
+-Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 S
+-Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 S
+-Rule Macau 1965 only - Oct 31 0:00 0 -
+-Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 S
+-Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 -
+-Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 S
+-Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 -
+-Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 -
+-Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 S
+-Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
+-Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
++Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 D
++Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 S
++Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 D
++Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 D
++Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 D
++Rule Macau 1965 only - Oct 31 0:00 0 S
++Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 D
++Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 S
++Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 D
++Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 S
++Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 S
++Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 D
++Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 D
++Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ 8:00 Macau C%sT
+
+
+ ###############################################################################
+@@ -784,6 +785,12 @@
+ # 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/
+
++# From Paul Eggert (2017-10-18):
++# Northern Cyprus will reinstate winter time on October 29, thus
++# staying in sync with the rest of Cyprus. See: Anastasiou A.
++# Cyprus to remain united in time. Cyprus Mail 2017-10-17.
++# https://cyprus-mail.com/2017/10/17/cyprus-remain-united-time/
++
+ # 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 -
+@@ -801,7 +808,8 @@
+ 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
++ 3:00 - +03 2017 Oct 29 1:00u
++ 2:00 EUAsia EE%sT
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -861,7 +869,7 @@
+
+ # From João Carrascalão, brother of the former governor of East Timor, in
+ # East Timor may be late for its millennium
+-# (1999-12-26/31):
++# (1999-12-26/31):
+ # Portugal tried to change the time forward in 1974 because the sun
+ # rises too early but the suggestion raised a lot of problems with the
+ # Timorese and I still don't think it would work today because it
+@@ -881,16 +889,15 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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 0:00
+- 9:00 - TLT
++ 8:00 - +08 1942 Feb 21 23:00
++ 9:00 - +09 1976 May 3
++ 8:00 - +08 2000 Sep 17 0:00
++ 9:00 - +09
+
+ # 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/
++# https://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
+@@ -897,14 +904,55 @@
+ # local time in favor of Indian Standard Time.... Journalists called this
+ # dispute the "Battle of the Clocks." It lasted nearly half a century.
+
++# From Paul Eggert (2017-04-20):
++# Good luck trying to nail down old timekeeping records in India.
++# "... in the nineteenth century ... Madras Observatory took its magnetic
++# measurements on Göttingen time, its meteorological measurements on Madras
++# (local) time, dropped its time ball on Greenwich (ocean navigator's) time,
++# and distributed civil (local time)." -- Bartky IR. Selling the true time:
++# 19th-century timekeeping in america. Stanford U Press (2000), 247 note 19.
++# "A more potent cause of resistance to the general adoption of the present
++# standard time lies in the fact that it is Madras time. The citizen of
++# Bombay, proud of being 'primus in Indis' and of Calcutta, equally proud of
++# his city being the Capital of India, and - for a part of the year - the Seat
++# of the Supreme Government, alike look down on Madras, and refuse to change
++# the time they are using, for that of what they regard as a benighted
++# Presidency; while Madras, having for long given the standard time to the
++# rest of India, would resist the adoption of any other Indian standard in its
++# place." -- Oldham RD. On Time in India: a suggestion for its improvement.
++# Proceedings of the Asiatic Society of Bengal (April 1899), 49-55.
++#
++# "In 1870 ... Madras time - 'now used by the telegraph and regulated from the
++# only government observatory' - was suggested as a standard railway time,
++# first to be adopted on the Great Indian Peninsular Railway (GIPR)....
++# Calcutta, Bombay, and Karachi, were to be allowed to continue with their
++# local time for civil purposes." - Prasad R. Tracks of Change: Railways and
++# Everyday Life in Colonial India. Cambridge University Press (2016), 145.
++#
++# Reed S, Low F. The Indian Year Book 1936-37. Bennett, Coleman, pp 27-8.
++# https://archive.org/details/in.ernet.dli.2015.282212
++# This lists +052110 as Madras local time used in railways, and says that on
++# 1906-01-01 railways and telegraphs in India switched to +0530. Some
++# municipalities retained their former time, and the time in Calcutta
++# continued to depend on whether you were at the railway station or at
++# government offices. Government time was at +055320 (according to Shanks) or
++# at +0554 (according to the Indian Year Book). Railway time is more
++# appropriate for our purposes, as it was better documented, it is what we do
++# elsewhere (e.g., Europe/London before 1880), and after 1906 it was
++# consistent in the region now identified by Asia/Kolkata. So, use railway
++# time for 1870-1941. Shanks is our only (and dubious) source for the
++# 1941-1945 data.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-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
++Zone Asia/Kolkata 5:53:28 - LMT 1854 Jun 28 # Kolkata
++ 5:53:20 - HMT 1870 # Howrah Mean Time?
++ 5:21:10 - MMT 1906 Jan 1 # Madras local time
++ 5:30 - IST 1941 Oct
++ 5:30 1:00 +0630 1942 May 15
+ 5:30 - IST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 15
++ 5:30 1:00 +0630 1945 Oct 15
+ 5:30 - IST
+-# The following are like Asia/Kolkata:
++# Since 1970 the following are like Asia/Kolkata:
+ # Andaman Is
+ # Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+ # Nicobar Is
+@@ -953,33 +1001,33 @@
+ # 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:30 - WIB 1942 Mar 23
+- 9:00 - JST 1945 Sep 23
+- 7:30 - WIB 1948 May
+- 8:00 - WIB 1950 May
+- 7:30 - WIB 1964
++ 7:20 - +0720 1932 Nov
++ 7:30 - +0730 1942 Mar 23
++ 9:00 - +09 1945 Sep 23
++ 7:30 - +0730 1948 May
++ 8:00 - +08 1950 May
++ 7:30 - +0730 1964
+ 7:00 - WIB
+ # west and central Borneo
+ Zone Asia/Pontianak 7:17:20 - LMT 1908 May
+ 7:17:20 - PMT 1932 Nov # Pontianak MT
+- 7:30 - WIB 1942 Jan 29
+- 9:00 - JST 1945 Sep 23
+- 7:30 - WIB 1948 May
+- 8:00 - WIB 1950 May
+- 7:30 - WIB 1964
++ 7:30 - +0730 1942 Jan 29
++ 9:00 - +09 1945 Sep 23
++ 7:30 - +0730 1948 May
++ 8:00 - +08 1950 May
++ 7:30 - +0730 1964
+ 8:00 - WITA 1988 Jan 1
+ 7:00 - WIB
+ # Sulawesi, Lesser Sundas, east and south Borneo
+ Zone Asia/Makassar 7:57:36 - LMT 1920
+ 7:57:36 - MMT 1932 Nov # Macassar MT
+- 8:00 - WITA 1942 Feb 9
+- 9:00 - JST 1945 Sep 23
++ 8:00 - +08 1942 Feb 9
++ 9:00 - +09 1945 Sep 23
+ 8:00 - WITA
+ # Maluku Islands, West Papua, Papua
+ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov
+- 9:00 - WIT 1944 Sep 1
+- 9:30 - ACST 1964
++ 9:00 - +09 1944 Sep 1
++ 9:30 - +0930 1964
+ 9:00 - WIT
+
+ # Iran
+@@ -1011,8 +1059,6 @@
+ # for at least the last 5 years. Before that, for a few years, the
+ # date used was the first Thursday night of Farvardin and the last
+ # Thursday night of Shahrivar, but I can't give exact dates....
+-# I have also changed the abbreviations to what is considered correct
+-# here in Iran, IRST for regular time and IRDT for daylight saving time.
+ #
+ # From Roozbeh Pournader (2005-04-05):
+ # The text of the Iranian law, in effect since 1925, clearly mentions
+@@ -1048,7 +1094,7 @@
+ # From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen:
+ # ... the Guardian Council ... approved a law on Sunday to re-introduce
+ # daylight saving time ...
+-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
++# https://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+@@ -1119,9 +1165,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+- 3:30 - IRST 1977 Nov
+- 4:00 Iran IR%sT 1979
+- 3:30 Iran IR%sT
++ 3:30 - +0330 1977 Nov
++ 4:00 Iran +04/+05 1979
++ 3:30 Iran +0330/+0430
+
+
+ # Iraq
+@@ -1147,7 +1193,7 @@
+ # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+ #
+ # We have published a short article in English about the change:
+-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
++# https://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Iraq 1982 only - May 1 0:00 1:00 D
+@@ -1164,8 +1210,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baghdad 2:57:40 - LMT 1890
+ 2:57:36 - BMT 1918 # Baghdad Mean Time?
+- 3:00 - AST 1982 May
+- 3:00 Iraq A%sT
++ 3:00 - +03 1982 May
++ 3:00 Iraq +03/+04
+
+
+ ###############################################################################
+@@ -1455,17 +1501,15 @@
+ # From Yu-Cheng Chuang (2013-07-12):
+ # ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause
+ # about standard time" ... The adoption began from Jan 1, 1896.
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ #
+ # ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which
+ # means the whole Japan territory, including later occupations, adopt Japan
+ # Central Time (UTC+9). The adoption began on Oct 1, 1937.
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+- 9:00 - JST 1896 Jan 1
+- 9:00 - JCST 1937 Oct 1
+ 9:00 Japan J%sT
+ # Since 1938, all Japanese possessions have been like Asia/Tokyo.
+
+@@ -1524,7 +1568,7 @@
+ # Official, in Arabic:
+ # http://www.petra.gov.jo/public_news/Nws_NewsDetails.aspx?Menu_ID=&Site_Id=2&lang=1&NewsID=133230&CatID=14
+ # ... Our background/permalink about it
+-# http://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
++# https://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
+ # ...
+ # http://www.petra.gov.jo/Public_News/Nws_NewsDetails.aspx?lang=2&site_id=1&NewsID=133313&Type=P
+ # ... says midnight for the coming one and 1:00 for the ones in the future
+@@ -1583,12 +1627,12 @@
+ # was "blended" with the Central zone. Therefore, Kazakhstan now has
+ # two time zones, and difference between them is one hour. The zone
+ # closer to UTC is the former Western zone (probably still called the
+-# same), encompassing four provinces in the west: Aqtobe, Atyrau,
+-# Mangghystau, and West Kazakhstan. The other zone encompasses
++# same), encompassing four provinces in the west: Aqtöbe, Atyraū,
++# Mangghystaū, and West Kazakhstan. The other zone encompasses
+ # 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):
++# From Stepan Golosunov (2016-03-27):
+ # Review of the linked documents from http://adilet.zan.kz/
+ # produced the following data for post-1991 Kazakhstan:
+ #
+@@ -1634,7 +1678,7 @@
+ #
+ # 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
++# to +04/+05. It's unclear how Qyzylorda 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
+@@ -1647,18 +1691,18 @@
+ # 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
++# border between them to be located east of Qostanay and Aktyubinsk
++# oblasts (notably including Turgai and Qyzylorda 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) [*]....
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyraū and Qostanay 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
++# cancels extra hour ("decree time") for Uralsk and Qyzylorda oblasts
+ # since the last Sunday of March 1992, while keeping them in the fourth
+ # and the fifth time belts respectively.
+ #
+@@ -1665,7 +1709,7 @@
+ # 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
++# cancels the extra hour ("decree time") on the territory of Mangghystaū
+ # oblast since the last Sunday of September 1994 (saying that time on
+ # the territory would correspond to the third time belt as a
+ # result)....
+@@ -1679,15 +1723,12 @@
+ # 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
++# cancels the extra hour ("decree time") for Atyraū 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.
++# 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
+@@ -1696,10 +1737,10 @@
+ # 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
++# probably changed time in territories incorporated into Qostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Qyzylorda oblast
+ # from being in the fifth time belt and not using decree time into the
+-# fourth time belt (no change in practice).[*]
++# fourth time belt (no change in practice).
+ #
+ # 7. Act of the Government of the Republic of Kazakhstan
+ # from 2003-12-29 No. 1342
+@@ -1709,7 +1750,7 @@
+ # 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
++# modified the 2000-11-23 act to move Qostanay and Qyzylorda 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
+@@ -1721,14 +1762,14 @@
+ # 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.
++# 2004-07-20 act to implement changes for Atyraū, West Kazakhstan,
++# Qostanay, Qyzylorda and Mangghystaū oblasts by not moving clocks
++# during the 2004 transition to "winter" time.
+ #
+-# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# This means transition from +04/+05 to +05/+06 for Atyraū 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....[*]
++# +06/+07 for Qostanay oblast (Qostanay 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
+@@ -1744,14 +1785,25 @@
+ # 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.
++# From Stepan Golosunov (2016-11-08):
++# Turgai reorganization should affect only southern part of Qostanay
++# oblast. Which should probably be separated into Asia/Arkalyk zone.
++# (There were also 1970, 1988 and 1990 Turgai oblast reorganizations
++# according to wikipedia.)
++#
++# [For Qostanay] http://www.ng.kz/gazeta/195/hranit/
++# suggests that clocks were to be moved 40 minutes backwards on
++# 1920-01-01 to the fourth time belt. But I do not understand
++# how that could happen....
++#
++# [For Atyrau and Oral] 1919 decree
++# (http://www.worldtimezone.com/dst_news/dst_news_russia-1919-02-08.html
++# and in Byalokoz) lists Ural river (plus 10 versts on its left bank) in
++# the third time belt (before 1930 this means +03).
+
+-#
++# From Paul Eggert (2016-12-06):
++# The tables below reflect Golosunov's remarks, with exceptions as noted.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
+@@ -1764,6 +1816,8 @@
+ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
+ 6:00 - +06
+ # Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
++# This currently includes Qostanay (aka Kostanay, Kustanay) (KZ-KUS);
++# see comments below.
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+ 4:00 - +04 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+@@ -1775,7 +1829,21 @@
+ 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)
++# The following zone is like Asia/Qyzylorda except for being one
++# hour earlier from 1991-09-29 to 1992-03-29. The 1991/2 rules for
++# Qostanay are unclear partly because of the 1997 Turgai
++# reorganization, so this zone is commented out for now.
++#Zone Asia/Qostanay 4:14:20 - 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 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
++# 6:00 - +06
++#
++# Aqtöbe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+ 4:00 - +04 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+@@ -1785,14 +1853,11 @@
+ 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)
++# Mangghystaū (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 - +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
+@@ -1800,12 +1865,22 @@
+ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
+ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
+ 5:00 - +05
+-
++# Atyraū (KZ-ATY) is like Mangghystaū except it switched from
++# +04/+05 to +05/+06 in spring 1999, not fall 1994.
++Zone Asia/Atyrau 3:27:44 - LMT 1924 May 2
++ 3:00 - +03 1930 Jun 21
++ 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 1999 Mar 28 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 - +04 1930 Jun 21
++ 3:00 - +03 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+ 5:00 1:00 +06 1981 Oct 1
+ 6:00 - +06 1982 Apr 1
+@@ -1851,9 +1926,9 @@
+ # between 1987 and 1988 ...
+
+ # From Sanghyuk Jung (2014-10-29):
+-# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# https://mm.icann.org/pipermail/tz/2014-October/021830.html
+ # According to the Korean Wikipedia
+-# http://ko.wikipedia.org/wiki/한국_표준시
++# https://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.
+@@ -1911,7 +1986,6 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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:30 ROK K%sT 1961 Aug 10
+@@ -1918,7 +1992,6 @@
+ 9:00 ROK K%sT
+ 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 2015 Aug 15 00:00
+ 8:30 - KST
+@@ -1973,13 +2046,13 @@
+ # 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.
+- 7:00 - MALT 1933 Jan 1 # Malaya Time
+- 7:00 0:20 MALST 1936 Jan 1
+- 7:20 - MALT 1941 Sep 1
+- 7:30 - MALT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 7:30 - MALT 1982 Jan 1
+- 8:00 - MYT # Malaysia Time
++ 7:00 - +07 1933 Jan 1
++ 7:00 0:20 +0720 1936 Jan 1
++ 7:20 - +0720 1941 Sep 1
++ 7:30 - +0730 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 7:30 - +0730 1982 Jan 1
++ 8:00 - +08
+ # Sabah & Sarawak
+ # From Paul Eggert (2014-08-12):
+ # The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945
+@@ -1986,17 +2059,16 @@
+ # 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
+- 8:00 NBorneo BOR%sT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 8:00 - BORT 1982 Jan 1
+- 8:00 - MYT
++ 7:30 - +0730 1933
++ 8:00 NBorneo +08/+0820 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 8:00 - +08
+
+ # 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
++ 5:00 - +05
+
+ # Mongolia
+
+@@ -2078,7 +2150,7 @@
+ # +08:00 instead. Different sources appear to disagree with the tz
+ # database on this, e.g.:
+ #
+-# http://www.timeanddate.com/worldclock/city.html?n=1026
++# https://www.timeanddate.com/worldclock/city.html?n=1026
+ # http://www.worldtimeserver.com/current_time_in_MN.aspx
+ #
+ # both say GMT+08:00.
+@@ -2123,6 +2195,10 @@
+ # correction of 02:00 (in the previous edition) not being done correctly
+ # in the latest edition; so ignore it for now.
+
++# From Ganbold Tsagaankhuu (2017-02-09):
++# Mongolian Government meeting has concluded today to cancel daylight
++# saving time adoption in Mongolia. Source: http://zasag.mn/news/view/16192
++
+ Rule Mongol 1985 1998 - Mar lastSun 0:00 1:00 S
+ Rule Mongol 1984 1998 - Sep lastSun 0:00 0 -
+ # IATA SSIM (1999-09) says Mongolia no longer observes DST.
+@@ -2129,31 +2205,31 @@
+ 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 -
++Rule Mongol 2015 2016 - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 2016 - 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
+- 7:00 Mongol HOV%sT
++ 6:00 - +06 1978
++ 7:00 Mongol +07/+08
+ # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+ Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
+- 7:00 - ULAT 1978 # Ulaanbaatar Time
+- 8:00 Mongol ULA%sT
++ 7:00 - +07 1978
++ 8:00 Mongol +08/+09
+ # 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
+- 8:00 - ULAT 1983 Apr
+- 9:00 Mongol CHO%sT 2008 Mar 31 # Choibalsan Time
+- 8:00 Mongol CHO%sT
++ 7:00 - +07 1978
++ 8:00 - +08 1983 Apr
++ 9:00 Mongol +09/+10 2008 Mar 31
++ 8:00 Mongol +08/+09
+
+ # Nepal
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kathmandu 5:41:16 - LMT 1920
+- 5:30 - IST 1986
+- 5:45 - NPT # Nepal Time
++ 5:30 - +0530 1986
++ 5:45 - +0545
+
+ # Oman
+ # See Asia/Dubai.
+@@ -2204,7 +2280,7 @@
+ # 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.worldtimezone.com/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+
+ # From Arthur David Olson (2008-05-19):
+@@ -2270,7 +2346,7 @@
+ #
+ # We have confirmed this year's end date with both with the Ministry of
+ # Water and Power and the Pakistan Electric Power Company:
+-# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
++# https://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+
+ # From Christoph Göhre (2009-10-01):
+ # [T]he German Consulate General in Karachi reported me today that Pakistan
+@@ -2302,10 +2378,10 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Karachi 4:28:12 - LMT 1907
+- 5:30 - IST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 15
+- 5:30 - IST 1951 Sep 30
+- 5:00 - KART 1971 Mar 26 # Karachi Time
++ 5:30 - +0530 1942 Sep
++ 5:30 1:00 +0630 1945 Oct 15
++ 5:30 - +0530 1951 Sep 30
++ 5:00 - +05 1971 Mar 26
+ 5:00 Pakistan PK%sT # Pakistan Time
+
+ # Palestine
+@@ -2452,7 +2528,7 @@
+ #
+ # We are not sure if Gaza will do the same, last year they had a different
+ # end date, we will keep this page updated:
+-# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
++# https://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-09-02):
+ # Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+@@ -2490,7 +2566,7 @@
+ # the clocks were set back one hour at 2010-08-11 00:00:00 local time in
+ # Gaza and the West Bank.
+ # Some more background info:
+-# http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
++# https://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
+
+ # From Steffen Thorsen (2011-08-26):
+ # Gaza and the West Bank did go back to standard time in the beginning of
+@@ -2500,7 +2576,7 @@
+ #
+ # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217
+ # Additional info:
+-# http://www.timeanddate.com/news/time/palestine-dst-2011.html
++# https://www.timeanddate.com/news/time/palestine-dst-2011.html
+
+ # From Alexander Krivenyshev (2011-08-27):
+ # According to the article in The Jerusalem Post:
+@@ -2510,7 +2586,7 @@
+ # The Hamas government said on Saturday that it won't observe summertime after
+ # the Muslim feast of Id al-Fitr, which begins on Tuesday..."
+ # ...
+-# http://www.jpost.com/MiddleEast/Article.aspx?id=235650
++# https://www.jpost.com/MiddleEast/Article.aspx?id=235650
+ # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html
+ # The rules for Egypt are stolen from the 'africa' file.
+
+@@ -2531,7 +2607,7 @@
+ # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
++# https://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
+
+ # From Steffen Thorsen (2013-03-26):
+ # The following news sources tells that Palestine will "start daylight saving
+@@ -2551,11 +2627,11 @@
+
+ # 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
++# and https://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
++# https://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):
+@@ -2579,8 +2655,8 @@
+ #
+ # 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
++# https://www.timeanddate.com/time/change/gaza-strip/gaza
++# https://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
+@@ -2616,7 +2692,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+- 2:00 Zion EET 1948 May 15
++ 2:00 Zion EET/EEST 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+@@ -2629,7 +2705,7 @@
+ 2:00 Palestine EE%sT
+
+ Zone Asia/Hebron 2:20:23 - LMT 1900 Oct
+- 2:00 Zion EET 1948 May 15
++ 2:00 Zion EET/EEST 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+@@ -2643,7 +2719,7 @@
+ # 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
++# https://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
+ # The rest of the data entries are from Shanks & Pottenger.
+
+ # From Jesper Nørgaard Welen (2006-04-26):
+@@ -2670,15 +2746,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31
+ 8:04:00 - LMT 1899 May 11
+- 8:00 Phil PH%sT 1942 May
+- 9:00 - JST 1944 Nov
+- 8:00 Phil PH%sT
++ 8:00 Phil +08/+09 1942 May
++ 9:00 - +09 1944 Nov
++ 8:00 Phil +08/+09
+
+ # Qatar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++ 4:00 - +04 1972 Jun
++ 3:00 - +03
+ Link Asia/Qatar Asia/Bahrain
+
+ # Saudi Arabia
+@@ -2705,7 +2781,7 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14
+- 3:00 - AST
++ 3:00 - +03
+ Link Asia/Riyadh Asia/Aden # Yemen
+ Link Asia/Riyadh Asia/Kuwait
+
+@@ -2715,14 +2791,13 @@
+ # 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.
+- 7:00 - MALT 1933 Jan 1 # Malaya Time
+- 7:00 0:20 MALST 1936 Jan 1
+- 7:20 - MALT 1941 Sep 1
+- 7:30 - MALT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 7:30 - MALT 1965 Aug 9 # independence
+- 7:30 - SGT 1982 Jan 1 # Singapore Time
+- 8:00 - SGT
++ 7:00 - +07 1933 Jan 1
++ 7:00 0:20 +0720 1936 Jan 1
++ 7:20 - +0720 1941 Sep 1
++ 7:30 - +0730 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 7:30 - +0730 1982 Jan 1
++ 8:00 - +08
+
+ # Spratly Is
+ # no information
+@@ -2781,8 +2856,8 @@
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 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 0:30 +06 1942 Sep
++ 5:30 1:00 +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
+@@ -2908,7 +2983,7 @@
+ # We have not found any sources saying anything about when DST ends this year.
+ #
+ # Our summary
+-# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
++# https://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+
+ # From Steffen Thorsen (2009-10-27):
+ # The Syrian Arab News Network on 2009-09-29 reported that Syria will
+@@ -2935,7 +3010,7 @@
+ # http://www.sana.sy/ara/2/2012/03/26/408215.htm
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/syria-dst-2012.html
++# https://www.timeanddate.com/news/time/syria-dst-2012.html
+
+ # From Arthur David Olson (2012-03-27):
+ # Assume last Friday in March going forward XXX.
+@@ -2964,7 +3039,7 @@
+ # 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
++ 7:00 - +07
+ Link Asia/Bangkok Asia/Phnom_Penh # Cambodia
+ Link Asia/Bangkok Asia/Vientiane # Laos
+
+@@ -2980,7 +3055,7 @@
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dubai 3:41:12 - LMT 1920
+- 4:00 - GST
++ 4:00 - +04
+ Link Asia/Dubai Asia/Muscat # Oman
+
+ # Uzbekistan
+@@ -3018,7 +3093,7 @@
+ # 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
++# https://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
+@@ -3053,15 +3128,15 @@
+
+ # 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
++ 7:06:30 - PLMT 1911 May 1 # Phù Liễn MT
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1955 Jul 1
++ 7:00 - +07 1959 Dec 31 23:00
++ 8:00 - +08 1975 Jun 13
++ 7:00 - +07
+
+ # Yemen
+ # See Asia/Riyadh.
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -44,8 +44,8 @@
+ 8:00 Aus AW%sT 1943 Jul
+ 8:00 AW AW%sT
+ Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
+- 8:45 Aus ACW%sT 1943 Jul
+- 8:45 AW ACW%sT
++ 8:45 Aus +0845/+0945 1943 Jul
++ 8:45 AW +0845/+0945
+
+ # Queensland
+ #
+@@ -212,7 +212,8 @@
+ Rule LH 2008 max - Oct Sun>=1 2:00 0:30 D
+ Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
+ 10:00 - AEST 1981 Mar
+- 10:30 LH LH%sT
++ 10:30 LH +1030/+1130 1985 Jul
++ 10:30 LH +1030/+11
+
+ # Australian miscellany
+ #
+@@ -250,12 +251,12 @@
+ 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
++ 11:00 - +11
+
+ # Christmas
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
+- 7:00 - CXT # Christmas Island Time
++ 7:00 - +07
+
+ # Cocos (Keeling) Is
+ # These islands were ruled by the Ross family from about 1830 to 1978.
+@@ -262,7 +263,7 @@
+ # We don't know when standard time was introduced; for now, we guess 1900.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Cocos 6:27:40 - LMT 1900
+- 6:30 - CCT # Cocos Islands Time
++ 6:30 - +0630
+
+
+ # Fiji
+@@ -292,7 +293,7 @@
+ # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166
+ #
+ # A bit more background info here:
+-# http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
++# https://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
+
+ # From Alexander Krivenyshev (2010-10-24):
+ # According to Radio Fiji and Fiji Times online, Fiji will end DST 3
+@@ -356,9 +357,12 @@
+ # 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
++# From Paul Eggert (2017-08-21):
++# Dominic Fok writes (2017-08-20) that DST ends 2018-01-14, citing
++# Extraordinary Government of Fiji Gazette Supplement No. 21 (2017-08-27),
++# [Legal Notice No. 41] of an order of the previous day by J Usamate.
++# For now, guess DST from 02:00 the first Sunday in November to 03:00
++# the first Sunday on or after January 14. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+ # practice than guessing no DST.
+
+@@ -372,19 +376,19 @@
+ 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>=15 3:00 0 -
++Rule Fiji 2015 max - Jan Sun>=14 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
++ 12:00 Fiji +12/+13
+
+ # French Polynesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+- -9:00 - GAMT # Gambier Time
++ -9:00 - -09
+ Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+- -9:30 - MART # Marquesas Time
++ -9:30 - -0930
+ Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
+- -10:00 - TAHT # Tahiti Time
++ -10:00 - -10
+ # Clipperton (near North America) is administered from French Polynesia;
+ # it is uninhabited.
+
+@@ -399,15 +403,15 @@
+ # Kiribati
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+- 12:00 - GILT # Gilbert Is Time
++ 12:00 - +12
+ Zone Pacific/Enderbury -11:24:20 - LMT 1901
+- -12:00 - PHOT 1979 Oct # Phoenix Is Time
+- -11:00 - PHOT 1995
+- 13:00 - PHOT
++ -12:00 - -12 1979 Oct
++ -11:00 - -11 1995
++ 13:00 - +13
+ Zone Pacific/Kiritimati -10:29:20 - LMT 1901
+- -10:40 - LINT 1979 Oct # Line Is Time
+- -10:00 - LINT 1995
+- 14:00 - LINT
++ -10:40 - -1040 1979 Oct
++ -10:00 - -10 1995
++ 14:00 - +14
+
+ # N Mariana Is
+ # See Pacific/Guam.
+@@ -415,31 +419,31 @@
+ # Marshall Is
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Majuro 11:24:48 - LMT 1901
+- 11:00 - MHT 1969 Oct # Marshall Islands Time
+- 12:00 - MHT
++ 11:00 - +11 1969 Oct
++ 12:00 - +12
+ Zone Pacific/Kwajalein 11:09:20 - LMT 1901
+- 11:00 - MHT 1969 Oct
+- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
+- 12:00 - MHT
++ 11:00 - +11 1969 Oct
++ -12:00 - -12 1993 Aug 20
++ 12:00 - +12
+
+ # Micronesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Chuuk 10:07:08 - LMT 1901
+- 10:00 - CHUT # Chuuk Time
++ 10:00 - +10
+ Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
+- 11:00 - PONT # Pohnpei Time
++ 11:00 - +11
+ Zone Pacific/Kosrae 10:51:56 - LMT 1901
+- 11:00 - KOST 1969 Oct # Kosrae Time
+- 12:00 - KOST 1999
+- 11:00 - KOST
++ 11:00 - +11 1969 Oct
++ 12:00 - +12 1999
++ 11:00 - +11
+
+ # 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
+- 9:00 - JST 1944 Aug 15
+- 11:30 - NRT 1979 May
+- 12:00 - NRT
++ 11:30 - +1130 1942 Mar 15
++ 9:00 - +09 1944 Aug 15
++ 11:30 - +1130 1979 May
++ 12:00 - +12
+
+ # New Caledonia
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -450,7 +454,7 @@
+ Rule NC 1997 only - Mar 2 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa
+- 11:00 NC NC%sT
++ 11:00 NC +11/+12
+
+
+ ###############################################################################
+@@ -491,8 +495,8 @@
+ 11:30 NZ NZ%sT 1946 Jan 1
+ 12:00 NZ NZ%sT
+ Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2
+- 12:15 - CHAST 1946 Jan 1
+- 12:45 Chatham CHA%sT
++ 12:15 - +1215 1946 Jan 1
++ 12:45 Chatham +1245/+1345
+
+ Link Pacific/Auckland Antarctica/McMurdo
+
+@@ -514,8 +518,8 @@
+ 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
+- -10:00 Cook CK%sT
++ -10:30 - -1030 1978 Nov 12
++ -10:00 Cook -10/-0930
+
+ ###############################################################################
+
+@@ -523,29 +527,29 @@
+ # 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
+- -11:00 - NUT
++ -11:20 - -1120 1951
++ -11:30 - -1130 1978 Oct 1
++ -11:00 - -11
+
+ # 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 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
++ 11:12 - +1112 1951
++ 11:30 - +1130 1974 Oct 27 02:00
++ 11:30 1:00 +1230 1975 Mar 2 02:00
++ 11:30 - +1130 2015 Oct 4 02:00
++ 11:00 - +11
+
+ # Palau (Belau)
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
+- 9:00 - PWT # Palau Time
++ 9:00 - +09
+
+ # 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
++ 10:00 - +10
+ #
+ # From Paul Eggert (2014-10-13):
+ # Base the Bougainville entry on the Arawa-Kieta region, which appears to have
+@@ -556,32 +560,30 @@
+ # 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
++# https://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:
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time".
++# 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
++ 10:00 - +10 1942 Jul
++ 9:00 - +09 1945 Aug 21
++ 10:00 - +10 2014 Dec 28 2:00
++ 11:00 - +11
+
+ # Pitcairn
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+- -8:30 - PNT 1998 Apr 27 0:00
+- -8:00 - PST # Pitcairn Standard Time
++ -8:30 - -0830 1998 Apr 27 0:00
++ -8:00 - -08
+
+ # American Samoa
+-Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
++Zone Pacific/Pago_Pago 12:37:12 - LMT 1892 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
+ Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+
+@@ -596,7 +598,7 @@
+ # Sunday of April 2011."
+ #
+ # Background info:
+-# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
++# https://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+ #
+ # Samoa's Daylight Saving Time Act 2009 is available here, but does not
+ # contain any dates:
+@@ -660,19 +662,19 @@
+ Rule WS 2012 max - Apr Sun>=1 4:00 0 S
+ Rule WS 2012 max - Sep lastSun 3:00 1 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
++Zone Pacific/Apia 12:33:04 - LMT 1892 Jul 5
+ -11:26:56 - LMT 1911
+- -11:30 - WSST 1950
+- -11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa
+- 13:00 WS WS%sT
++ -11:30 - -1130 1950
++ -11:00 WS -11/-10 2011 Dec 29 24:00
++ 13:00 WS +13/+14
+
+ # 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
+- 11:00 - SBT # Solomon Is Time
++ 11:00 - +11
+
+-# Tokelau Is
++# Tokelau
+ #
+ # From Gwillim Law (2011-12-29)
+ # A correspondent informed me that Tokelau, like Samoa, will be skipping
+@@ -687,14 +689,14 @@
+ # From Paul Eggert (2012-07-25)
+ # A Google Books snippet of Appendix to the Journals of the House of
+ # Representatives of New Zealand, Session 1948,
+-# , page 65, says Tokelau
++# , page 65, says Tokelau
+ # was "11 hours slow on G.M.T." Go with Thorsen and assume Shanks & Pottenger
+ # are off by an hour starting in 1901.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+- -11:00 - TKT 2011 Dec 30 # Tokelau Time
+- 13:00 - TKT
++ -11:00 - -11 2011 Dec 30
++ 13:00 - +13
+
+ # Tonga
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -702,8 +704,8 @@
+ 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 -
++Rule Tonga 2016 only - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 only - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - +1220 1941
+@@ -713,7 +715,7 @@
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Funafuti 11:56:52 - LMT 1901
+- 12:00 - TVT # Tuvalu Time
++ 12:00 - +12
+
+
+ # US minor outlying islands
+@@ -737,10 +739,11 @@
+
+ # Johnston
+ #
+-# From Paul Eggert (2014-03-11):
++# From Paul Eggert (2017-02-10):
+ # Sometimes Johnston kept Hawaii time, and sometimes it was an hour behind.
+ # Details are uncertain. We have no data for Johnston after 1970, so
+-# treat it like Hawaii for now.
++# treat it like Hawaii for now. Since Johnston is now uninhabited,
++# its link to Pacific/Honolulu is in the 'backward' file.
+ #
+ # In his memoirs of June 6th to October 4, 1945
+ # (2005), Herbert C. Bach writes,
+@@ -756,12 +759,10 @@
+ # 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
++# https://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".
+-#
+-# See 'northamerica' for Pacific/Johnston.
+
+ # Kingman
+ # uninhabited
+@@ -775,7 +776,7 @@
+ # Wake
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wake 11:06:28 - LMT 1901
+- 12:00 - WAKT # Wake Time
++ 12:00 - +12
+
+
+ # Vanuatu
+@@ -788,12 +789,12 @@
+ 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
+- 11:00 Vanuatu VU%sT # Vanuatu Time
++ 11:00 Vanuatu +11/+12
+
+ # Wallis and Futuna
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wallis 12:15:20 - LMT 1901
+- 12:00 - WFT # Wallis & Futuna Time
++ 12:00 - +12
+
+ ###############################################################################
+
+@@ -804,7 +805,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 (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -811,8 +812,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -824,33 +825,24 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
+-# I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
++# The following abbreviations are from other sources.
+ # Corrections are welcome!
+ # std dst
+ # LMT Local Mean Time
+ # 8:00 AWST AWDT Western Australia
+-# 8:45 ACWST ACWDT Central Western Australia*
+-# 9:00 JST Japan
+ # 9:30 ACST ACDT Central Australia
+ # 10:00 AEST AEDT Eastern Australia
++# 10:00 GST Guam through 2000
+ # 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*
+-# 12:45 CHAST CHADT Chatham 1946-present*
+-# 13:00 WSST WSDT (western) Samoa 2011-present*
+-# -11:30 WSST Western Samoa through 1950*
+ # -11:00 SST Samoa
+ # -10:00 HST Hawaii
+-# - 8:00 PST Pitcairn*
+ #
+ # See the 'northamerica' file for Hawaii.
+ # See the 'southamerica' file for Easter I and the Galápagos Is.
+@@ -980,7 +972,7 @@
+ # AEST ACST AWST AEDT ACDT
+ #
+ # Parliamentary Library (2008-11-10)
+-# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
++# https://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
+ # EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used
+ #
+ # The Transport Safety Bureau has an extensive series of accident reports,
+@@ -1016,13 +1008,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
++# https://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
++# https://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
++# https://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
+@@ -1317,7 +1309,7 @@
+ # 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:
++# Victoria will follow NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+ # http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+@@ -1420,7 +1412,7 @@
+ # the ACT for all 52 weeks of the year...
+ #
+ # We have a wrap-up here:
+-# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
++# https://www.timeanddate.com/news/time/south-australia-extends-dst.html
+ ###############################################################################
+
+ # New Zealand
+@@ -1474,7 +1466,7 @@
+ # 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
++# https://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
+@@ -1589,7 +1581,7 @@
+ # 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
++# https://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1617,11 +1609,13 @@
+
+ # (Western) Samoa and American Samoa
+
+-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+-# that in 1879 the King of Samoa decided to change
++# Howse writes (p 153) that after the 1879 standardization on Antipodean
++# time by the British governor of Fiji, the King of Samoa decided to change
+ # "the date in his kingdom from the Antipodean to the American system,
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
++# This happened in 1892, according to the Evening News (Sydney) of 1892-07-20.
++# https://www.staff.science.uu.nl/~gent0113/idl/idl.htm
+
+ # Although Shanks & Pottenger says they both switched to UT -11:30
+ # in 1911, and to -11 in 1950. many earlier sources give -11
+@@ -1632,6 +1626,7 @@
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+
++
+ # Tonga
+
+ # From Paul Eggert (1996-01-22):
+@@ -1726,6 +1721,15 @@
+ # 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.
+
++# From David Wade (2017-10-18):
++# In August government was disolved by the King. The current prime minister
++# continued in office in care taker mode. It is easy to see that few
++# decisions will be made until elections 16th November.
++#
++# From Paul Eggert (2017-10-18):
++# For now, guess that DST is discontinued. That's what the IATA is guessing.
++
++
+ # Wake
+
+ # From Vernice Anderson, Personal Secretary to Philip Jessup,
+@@ -1738,7 +1742,7 @@
+ # making calculation of time in Washington difficult if not almost
+ # impossible.
+ #
+-# http://www.trumanlibrary.org/wake/meeting.htm
++# https://www.trumanlibrary.org/oralhist/andrsonv.htm
+
+ # From Paul Eggert (2003-03-23):
+ # We have no other report of DST in Wake Island, so omit this info for now.
+@@ -1766,7 +1770,7 @@
+ # an international standard, there are some places on the high seas where the
+ # correct date is ambiguous.
+
+-# From Wikipedia (2005-08-31):
++# From Wikipedia (2005-08-31):
+ # Before 1920, all ships kept local apparent time on the high seas by setting
+ # their clocks at night or at the morning sight so that, given the ship's
+ # speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -61,7 +61,9 @@
+ Link America/Manaus Brazil/West
+ Link America/Halifax Canada/Atlantic
+ Link America/Winnipeg Canada/Central
+-Link America/Regina Canada/East-Saskatchewan
++# This line is commented out, as the name exceeded the 14-character limit
++# and was an unused misnomer.
++#Link America/Regina Canada/East-Saskatchewan
+ Link America/Toronto Canada/Eastern
+ Link America/Edmonton Canada/Mountain
+ Link America/St_Johns Canada/Newfoundland
+@@ -96,6 +98,7 @@
+ Link Pacific/Chatham NZ-CHAT
+ Link America/Denver Navajo
+ Link Asia/Shanghai PRC
++Link Pacific/Honolulu Pacific/Johnston
+ Link Pacific/Pohnpei Pacific/Ponape
+ Link Pacific/Pago_Pago Pacific/Samoa
+ Link Pacific/Chuuk Pacific/Truk
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -65,7 +65,7 @@
+ # Mali (southern)
+ Zone Africa/Bamako -0:32:00 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960 Jun 20
++ -1:00 - -01 1960 Jun 20
+ 0:00 - GMT
+
+ # Central African Republic
+@@ -75,7 +75,7 @@
+ # Gambia
+ Zone Africa/Banjul -1:06:36 - LMT 1912
+ -1:06:36 - BMT 1935 # Banjul Mean Time
+- -1:00 - WAT 1964
++ -1:00 - -01 1964
+ 0:00 - GMT
+
+ # Malawi
+@@ -93,18 +93,18 @@
+ # Guinea
+ Zone Africa/Conakry -0:54:52 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960
++ -1:00 - -01 1960
+ 0:00 - GMT
+
+ # Senegal
+ Zone Africa/Dakar -1:09:44 - LMT 1912
+- -1:00 - WAT 1941 Jun
++ -1:00 - -01 1941 Jun
+ 0:00 - GMT
+
+ # Tanzania
+ Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
+ 3:00 - EAT 1948
+- 2:45 - BEAUT 1961
++ 2:45 - +0245 1961
+ 3:00 - EAT
+
+ # Djibouti
+@@ -122,14 +122,14 @@
+ # 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 1935 1942 - Jun 1 0:00 0:40 -0020
++Rule SL 1935 1942 - Oct 1 0:00 0 -01
++Rule SL 1957 1962 - Jun 1 0:00 1:00 +01
+ 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
++ 0:00 SL GMT/+01
+
+ # Botswana
+ # From Paul Eggert (2013-02-21):
+@@ -153,8 +153,8 @@
+ # Uganda
+ Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
+ 3:00 - EAT 1930
+- 2:30 - BEAT 1948
+- 2:45 - BEAUT 1957
++ 2:30 - +0230 1948
++ 2:45 - +0245 1957
+ 3:00 - EAT
+
+ # Rwanda
+@@ -177,11 +177,11 @@
+ #
+ # 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
++# https://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
++ 0:52:04 - LMT 1912 Jan 1 # Luanda Mean Time?
+ 1:00 - WAT
+
+ # Democratic Republic of the Congo (east)
+@@ -216,12 +216,12 @@
+ # Somalia
+ Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
+ 3:00 - EAT 1931
+- 2:30 - BEAT 1957
++ 2:30 - +0230 1957
+ 3:00 - EAT
+
+ # Niger
+ Zone Africa/Niamey 0:08:28 - LMT 1912
+- -1:00 - WAT 1934 Feb 26
++ -1:00 - -01 1934 Feb 26
+ 0:00 - GMT 1960
+ 1:00 - WAT
+
+@@ -228,7 +228,7 @@
+ # Mauritania
+ Zone Africa/Nouakchott -1:03:48 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960 Nov 28
++ -1:00 - -01 1960 Nov 28
+ 0:00 - GMT
+
+ # Burkina Faso
+@@ -264,19 +264,19 @@
+ # 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
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 - -03
+
+ # Aruba
+ Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
+- -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:30 - -0430 1965
+ -4:00 - AST
+
+ # Cayman Is
+@@ -365,12 +365,12 @@
+ # 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
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Jul
++ -3:00 - -03 1999 Oct 3 0:00
++ -4:00 Arg -04/-03 2000 Mar 3 0:00
++ -3:00 - -03
+
+ # St Kitts-Nevis
+ Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
+@@ -403,12 +403,12 @@
+ # 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
++ 3:00 - +03
+
+ # Bahrain
+ Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++ 4:00 - +04 1972 Jun
++ 3:00 - +03
+
+ # India
+ #
+@@ -431,7 +431,7 @@
+ # 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
++ 7:00 - +07 1980 May
+ 8:00 PRC C%sT
+ Link Asia/Chongqing Asia/Chungking
+
+@@ -442,43 +442,43 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1954 Oct
++ 7:00 - +07
+
+ # 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:30 - +0830 1932 Mar
+ 8:00 - CST 1940
+- 9:00 - CHAT 1966 May
+- 8:30 - CHAT 1980 May
++ 9:00 - +09 1966 May
++ 8:30 - +0830 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
++ 5:30 - +0530 1940
++ 5:00 - +05 1980 May
+ 8:00 PRC C%sT
+
+ # Kuwait
+ Zone Asia/Kuwait 3:11:56 - LMT 1950
+- 3:00 - AST
++ 3:00 - +03
+
+
+ # 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
++ 4:00 - +04
+
+ # 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
++# https://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]
+
+@@ -491,12 +491,12 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1953 Nov 9
++ 7:00 - +07
+
+ # Israel
+ Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
+@@ -511,16 +511,16 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1955 Apr 15
++ 7:00 - +07
+
+ # Jan Mayen
+ # From Whitman:
+-Zone Atlantic/Jan_Mayen -1:00 - EGT
++Zone Atlantic/Jan_Mayen -1:00 - -01
+
+ # St Helena
+ Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
+@@ -540,10 +540,10 @@
+
+ # Guernsey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Town Church, St. Peter Port, 49 degrees 27'17"N 2 degrees 32'10"W
++Zone Europe/Guernsey -0:10:09 - 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
+@@ -555,11 +555,11 @@
+ #
+ # From Lester Caine (2013-09-04):
+ # The Isle of Man legislation is now on-line at
+-# , starting with the original Statutory
++# , 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
++# of the first summer time in 1916 which may have been 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.
+@@ -574,10 +574,10 @@
+
+ # Jersey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Parish Church, St. Helier, 49 degrees 11'0.57"N 2 degrees 6'24.33"W
++Zone Europe/Jersey -0:08:26 - 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
+@@ -663,15 +663,13 @@
+ # " 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
++ -11:00 - -11 1956 Jun 3
++ -11:00 1:00 -10 1956 Sep 2
++ -11:00 - -11
+
+ # 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
++ 9:00 - +09 1969 Oct
++ 10:00 - +10 2000 Dec 23
+ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/calendars.orig
++++ contrib/tzdata/calendars
+@@ -0,0 +1,173 @@
++----- Calendrical issues -----
++
++As mentioned in Theory.html, although calendrical issues are out of
++scope for tzdb, they indicate the sort of problems that we would run
++into if we extended tzdb further into the past. The following
++information and sources go beyond Theory.html's brief discussion.
++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?
++
++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.
++
++-----
++
++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/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -9,7 +9,7 @@
+ Zone = "\n"
+ }
+
+-/^Zone/ {
++/^Z/ {
+ if (defined[$2]) {
+ if (defined[$2] == Zone) {
+ printf "%s: Zone has duplicate definition\n", $2
+@@ -21,7 +21,7 @@
+ defined[$2] = Zone
+ }
+
+-/^Link/ {
++/^L/ {
+ if (defined[$3]) {
+ if (defined[$3] == Zone) {
+ printf "%s: Link with same name as Zone\n", $3
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -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 (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -37,7 +37,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# . He writes:
++# . He writes:
+ # "It is requested that corrections and additions to these tables
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+@@ -44,7 +44,7 @@
+ #
+ # 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
++# https://mm.icann.org/pipermail/tz/2014-August/021320.html
+ # The full Russian citation is:
+ # Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
+ # введенный декретом Совета народных комиссаров для всей России с 1-го
+@@ -56,26 +56,23 @@
+ # History of Summer Time
+ #
+ # (1998-09-21, in Portuguese)
+-
+ #
+ # I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
+-# Corrections are welcome!
+-# std dst 2dst
+-# LMT Local Mean Time
+-# -4:00 AST ADT Atlantic
+-# -3:00 WGT WGST Western Greenland*
+-# -1:00 EGT EGST Eastern Greenland*
+-# 0:00 GMT BST BDST Greenwich, British Summer
+-# 0:00 GMT IST Greenwich, Irish Summer
+-# 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 MSK MSD Moscow
++# the rest are variants of the "xMT" pattern for a city's mean time,
++# or are from other sources. Corrections are welcome!
++# std dst 2dst
++# LMT Local Mean Time
++# -4:00 AST ADT Atlantic
++# 0:00 GMT BST BDST Greenwich, British Summer
++# 0:00 GMT IST Greenwich, Irish Summer
++# 0:00 WET WEST WEMT Western Europe
++# 0:19:32.13 AMT* NST* Amsterdam, Netherlands Summer (1835-1937)
++# 1:00 BST British Standard (1968-1971)
++# 1:00 CET CEST CEMT Central Europe
++# 1:00:14 SET Swedish (1879-1899)
++# 1:36:34 RMT* LST* Riga, Latvian Summer (1880-1926)*
++# 2:00 EET EEST Eastern Europe
++# 3:00 MSK MSD MDST* Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -190,7 +187,7 @@
+ # foundations of civilization throughout the world.
+ # -- "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
++# https://www.winstonchurchill.org/publications/finest-hour/finest-hour-114/a-silent-toast-to-william-willett-by-winston-s-churchill
+
+ # From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+@@ -228,8 +225,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://www.polyomino.org.uk/british-time/bbc-19410418.png
+-# http://www.polyomino.org.uk/british-time/ho-19410421.png
++# https://www.polyomino.org.uk/british-time/bbc-19410418.png
++# https://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
+@@ -246,13 +243,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://www.polyomino.org.uk/british-time/
++# https://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.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
++# https://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):
+@@ -298,7 +295,7 @@
+ # 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
++# https://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 .
+@@ -351,6 +348,12 @@
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+ # "Irish Summer Time", abbreviated to "IST".
+
++# Michael Deckers (2017-06-01) gave the following URLs for Ireland's
++# Summer Time Act, 1925 and Summer Time Orders, 1926 and 1947:
++# http://www.irishstatutebook.ie/eli/1925/act/8/enacted/en/print.html
++# http://www.irishstatutebook.ie/eli/1926/sro/919/made/en/print.html
++# http://www.irishstatutebook.ie/eli/1947/sro/71/made/en/print.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ # Summer Time Act, 1916
+ Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
+@@ -475,14 +478,14 @@
+
+ # 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 - DMT 1916 May 21 2:00s # Dublin MT
+ -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:00s
++ 0:00 1:00 IST 1946 Oct 6 2:00s
++ 0:00 - GMT 1947 Mar 16 2:00s
++ 0:00 1:00 IST 1947 Nov 2 2:00s
++ 0:00 - GMT 1948 Apr 18 2:00s
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+@@ -628,7 +631,7 @@
+ # 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/ :
++# title at https://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".
+@@ -659,7 +662,7 @@
+ # http://bmockbe.ru/events/?ID=7583
+ #
+ # Medvedev signed a law on the calculation of the time (in russian):
+-# http://www.regnum.ru/news/polit/1413906.html
++# https://www.regnum.ru/news/polit/1413906.html
+
+ # From Arthur David Olson (2011-06-15):
+ # Take "abolishing daylight saving time" to mean that time is now considered
+@@ -786,7 +789,7 @@
+ # Sources (Russian language):
+ # 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
++# https://news.tut.by/society/250578.html
+ #
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+@@ -901,7 +904,7 @@
+ # Cyprus
+ # Please see the 'asia' file for Asia/Nicosia.
+
+-# Czech Republic
++# Czech Republic / Czechia
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Czech 1945 only - Apr 8 2:00s 1:00 S
+ Rule Czech 1945 only - Nov 18 2:00s 0 -
+@@ -1064,16 +1067,16 @@
+ #
+ # 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 EU WG%sT 1996
++ -3:00 - -03 1980 Apr 6 2:00
++ -3:00 EU -03/-02 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 C-Eur CG%sT 1981 Mar 29
+- -1:00 EU EG%sT
++ -2:00 - -02 1980 Apr 6 2:00
++ -2:00 C-Eur -02/-01 1981 Mar 29
++ -1:00 EU -01/+00
+ Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
+- -3:00 - WGT 1980 Apr 6 2:00
+- -3:00 EU WG%sT
++ -3:00 - -03 1980 Apr 6 2:00
++ -3:00 EU -03/-02
+ Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
+ -4:00 Thule A%sT
+
+@@ -1107,7 +1110,7 @@
+ # for their standard and summer times. He says no, they use "suveaeg"
+ # (summer time) and "talveaeg" (winter time).
+
+-# From The Baltic Times (1999-09-09)
++# From The Baltic Times (1999-09-09)
+ # via Steffen Thorsen:
+ # This year will mark the last time Estonia shifts to summer time,
+ # a council of the ruling coalition announced Sept. 6....
+@@ -1159,7 +1162,7 @@
+ # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac
+ # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in
+ # Finnish) at
+-# http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
++# https://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
+ #
+ # Page 105 (56 in PDF version) has a handy table of all past daylight savings
+ # transitions. It is easy enough to interpret without Finnish skills.
+@@ -1172,7 +1175,7 @@
+
+ # From Konstantin Hyppönen (2014-06-13):
+ # [Heikki Oja's book Aikakirja 2013]
+-# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
++# https://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
+ # pages 104-105, including a scan from a newspaper published on Apr 2 1942
+ # say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942,
+ # 00:00), clocks were moved one hour forward. The newspaper
+@@ -1302,7 +1305,7 @@
+
+ # 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/
++# https://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+@@ -1488,7 +1491,7 @@
+ Rule Iceland 1967 only - Oct 29 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Reykjavik -1:28 - LMT 1908
+- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
++ -1:00 Iceland -01/+00 1968 Apr 7 1:00s
+ 0:00 - GMT
+
+ # Italy
+@@ -1527,7 +1530,7 @@
+ # 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
++# Model Rome's occupation by 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.
+ #
+@@ -1842,7 +1845,7 @@
+ # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
+ # Tiraspol will go back to winter time on October 30, 2011.
+ # News from Moldova (in russian):
+-# http://ru.publika.md/link_317061.html
++# https://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
+@@ -1849,7 +1852,7 @@
+ # 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
++# https://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.
+
+@@ -1921,7 +1924,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
++# https://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
+@@ -1952,7 +1955,7 @@
+ # 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
++ 0:20 Neth +0020/+0120 1940 May 16 0:00
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Neth CE%sT 1977
+ 1:00 EU CE%sT
+@@ -2002,7 +2005,7 @@
+ # so it must have diverged from Oslo time during the war, as Oslo was
+ # keeping Berlin time.
+ #
+-# says that the meteorologists
++# says that the meteorologists
+ # burned down their station in 1940 and left the island, but returned in
+ # 1941 with a small Norwegian garrison and continued operations despite
+ # frequent air attacks from Germans. In 1943 the Americans established a
+@@ -2040,7 +2043,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
++# https://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)
+@@ -2074,7 +2077,7 @@
+ #
+ # 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
++# https://dre.pt/application/dir/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
+@@ -2169,16 +2172,34 @@
+ 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
++# This Zone can be simplified once we assume zic %z.
+ 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
++ -2:00 Port -02/-01 1942 Apr 25 22:00s
++ -2:00 Port +00 1942 Aug 15 22:00s
++ -2:00 Port -02/-01 1943 Apr 17 22:00s
++ -2:00 Port +00 1943 Aug 28 22:00s
++ -2:00 Port -02/-01 1944 Apr 22 22:00s
++ -2:00 Port +00 1944 Aug 26 22:00s
++ -2:00 Port -02/-01 1945 Apr 21 22:00s
++ -2:00 Port +00 1945 Aug 25 22:00s
++ -2:00 Port -02/-01 1966 Apr 3 2:00
++ -1:00 Port -01/+00 1983 Sep 25 1:00s
++ -1:00 W-Eur -01/+00 1992 Sep 27 1:00s
+ 0:00 EU WE%sT 1993 Mar 28 1:00u
+- -1:00 EU AZO%sT
++ -1:00 EU -01/+00
++# This Zone can be simplified once we assume zic %z.
+ 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
++ -1:00 Port -01/+00 1942 Apr 25 22:00s
++ -1:00 Port +01 1942 Aug 15 22:00s
++ -1:00 Port -01/+00 1943 Apr 17 22:00s
++ -1:00 Port +01 1943 Aug 28 22:00s
++ -1:00 Port -01/+00 1944 Apr 22 22:00s
++ -1:00 Port +01 1944 Aug 26 22:00s
++ -1:00 Port -01/+00 1945 Apr 21 22:00s
++ -1:00 Port +01 1945 Aug 25 22:00s
++ -1:00 Port -01/+00 1966 Apr 3 2:00
+ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 EU WE%sT
+
+@@ -2238,7 +2259,7 @@
+ # 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
++# https://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:
+@@ -2246,7 +2267,7 @@
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+-# http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
++# https://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+ # 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.
+@@ -2282,7 +2303,7 @@
+ # http://itar-tass.com/obschestvo/1333711
+ # http://www.pravo.gov.ru:8080/page.aspx?111660
+ # http://www.kremlin.ru/acts/46279
+-# From October 26, 2014 the new Russian time zone map will looks like this:
++# From October 26, 2014 the new Russian time zone map will look like this:
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+@@ -2329,7 +2350,7 @@
+ # with maintenance only and represent our best guesses as to which regions
+ # are covered by each zone. They are not meant to be taken as an authoritative
+ # listing. The region codes listed come from
+-# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
++# https://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
+ # and are used for convenience only; no guarantees are made regarding their
+ # future stability. ISO 3166-2:RU codes are also listed for first-level
+ # divisions where available.
+@@ -2494,7 +2515,7 @@
+ # 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
++# https://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.
+ #
+@@ -2536,10 +2557,8 @@
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Simferopol covers...
+-# ** **** Crimea, Republic of
+-# ** **** Sevastopol
++# From Paul Eggert (2016-12-06):
++# Europe/Simferopol covers Crimea.
+
+ Zone Europe/Simferopol 2:16:24 - LMT 1880
+ 2:16 - SMT 1924 May 2 # Simferopol Mean T
+@@ -2568,7 +2587,7 @@
+ 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
++# https://vz.ru/news/2014/3/17/677464.html
+ # From Paul Eggert (2014-03-30):
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+@@ -2601,10 +2620,9 @@
+ 3:00 - +03 2016 Mar 27 2:00s
+ 4:00 - +04
+
+-# From Paul Eggert (2016-03-18):
++# From Paul Eggert (2016-11-11):
+ # 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
+@@ -2617,6 +2635,27 @@
+ 4:00 - +04 2014 Oct 26 2:00s
+ 3:00 - +03
+
++# From Paul Eggert (2016-11-11):
++# Europe/Saratov covers:
++# 64 RU-SAR Saratov Oblast
++
++# From Yuri Konotopov (2016-11-11):
++# Dec 4, 2016 02:00 UTC+3.... Saratov Region's local time will be ... UTC+4.
++# From Stepan Golosunov (2016-11-11):
++# ... Byalokoz listed Saratov on 03:04:18.
++# From Stepan Golosunov (2016-11-22):
++# http://publication.pravo.gov.ru/Document/View/0001201611220031
++
++Zone Europe/Saratov 3:04:18 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 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 2016 Dec 4 2:00s
++ 4:00 - +04
++
+ # From Paul Eggert (2016-03-18):
+ # Europe/Kirov covers:
+ # 43 RU-KIR Kirov Oblast
+@@ -2731,7 +2770,7 @@
+ # suggests that Altai Republic transitioned to Moscow+3 on
+ # 1995-05-28.
+ #
+-# http://regnum.ru/news/society/1957270.html
++# https://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
+@@ -3105,8 +3144,8 @@
+ # districts, but have very similar populations. In fact, Wikipedia currently
+ # lists them both as having 3528 people, exactly 1668 males and 1860 females
+ # each! (Yikes!)
+-# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
+-# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
++# https://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
++# https://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
+ # Assume this is a mistake, albeit an amusing one.
+ #
+ # Looking at censuses, the populations of the two municipalities seem to have
+@@ -3212,46 +3251,77 @@
+ # See Europe/Belgrade.
+
+ # Spain
++#
++# From Paul Eggert (2016-12-14):
++#
++# The source for Europe/Madrid before 2013 is:
++# Planesas P. La hora oficial en España y sus cambios.
++# Anuario del Observatorio Astronómico de Madrid (2013, in Spanish).
++# http://astronomia.ign.es/rknowsys-theme/images/webAstro/paginas/documentos/Anuario/lahoraoficialenespana.pdf
++# As this source says that historical time in the Canaries is obscure,
++# and it does not discuss Ceuta, stick with Shanks for now for that data.
++#
++# In the 1918 and 1919 fallback transitions in Spain, the clock for
++# the hour-longer day officially kept going after midnight, so that
++# the repeated instances of that day's 00:00 hour were 24 hours apart,
++# with a fallback transition from the second occurrence of 00:59... to
++# the next day's 00:00. Our data format cannot represent this
++# directly, and instead repeats the first hour of the next day, with a
++# fallback transition from the next day's 00:59... to 00:00.
++
++# From Michael Deckers (2016-12-15):
++# The Royal Decree of 1900-06-26 quoted by Planesas, online at
++# https://www.boe.es/datos/pdfs/BOE//1900/209/A00383-00384.pdf
++# says in its article 5 (my translation):
++# These dispositions will enter into force beginning with the
++# instant at which, according to the time indicated in article 1,
++# the 1st day of January of 1901 will begin.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
+-# go with Shanks & Pottenger.
+-Rule Spain 1917 only - May 5 23:00s 1:00 S
+-Rule Spain 1917 1919 - Oct 6 23:00s 0 -
+-Rule Spain 1918 only - Apr 15 23:00s 1:00 S
+-Rule Spain 1919 only - Apr 5 23:00s 1:00 S
+-# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
+-Rule Spain 1924 only - Apr 16 23:00s 1:00 S
+-# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
+-Rule Spain 1924 only - Oct 4 23:00s 0 -
+-Rule Spain 1926 only - Apr 17 23:00s 1:00 S
+-# Whitman says no DST in 1929; go with Shanks & Pottenger.
+-Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
+-Rule Spain 1927 only - Apr 9 23:00s 1:00 S
+-Rule Spain 1928 only - Apr 14 23:00s 1:00 S
+-Rule Spain 1929 only - Apr 20 23:00s 1:00 S
+-# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
+-# go with Shanks & Pottenger.
+-Rule Spain 1937 only - May 22 23:00s 1:00 S
+-Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
+-Rule Spain 1938 only - Mar 22 23:00s 1:00 S
+-Rule Spain 1939 only - Apr 15 23:00s 1:00 S
+-Rule Spain 1940 only - Mar 16 23:00s 1:00 S
+-# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
+-Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
+-Rule Spain 1942 only - Sep 1 22:00s 1:00 S
+-Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
+-Rule Spain 1943 only - Oct 3 22:00s 1:00 S
+-Rule Spain 1944 only - Oct 10 22:00s 1:00 S
+-Rule Spain 1945 only - Sep 30 1:00 1:00 S
+-Rule Spain 1946 only - Sep 30 0:00 0 -
++Rule Spain 1918 only - Apr 15 23:00 1:00 S
++Rule Spain 1918 1919 - Oct 6 24:00s 0 -
++Rule Spain 1919 only - Apr 6 23:00 1:00 S
++Rule Spain 1924 only - Apr 16 23:00 1:00 S
++Rule Spain 1924 only - Oct 4 24:00s 0 -
++Rule Spain 1926 only - Apr 17 23:00 1:00 S
++Rule Spain 1926 1929 - Oct Sat>=1 24:00s 0 -
++Rule Spain 1927 only - Apr 9 23:00 1:00 S
++Rule Spain 1928 only - Apr 15 0:00 1:00 S
++Rule Spain 1929 only - Apr 20 23:00 1:00 S
++# Republican Spain during the civil war; it controlled Madrid until 1939-03-28.
++Rule Spain 1937 only - Jun 16 23:00 1:00 S
++Rule Spain 1937 only - Oct 2 24:00s 0 -
++Rule Spain 1938 only - Apr 2 23:00 1:00 S
++Rule Spain 1938 only - Apr 30 23:00 2:00 M
++Rule Spain 1938 only - Oct 2 24:00 1:00 S
++# The following rules are for unified Spain again.
++#
++# Planesas does not say what happened in Madrid between its fall on
++# 1939-03-28 and the Nationalist spring-forward transition on
++# 1939-04-15. For lack of better info, assume Madrid's clocks did not
++# change during that period.
++#
++# The first rule is commented out, as it is redundant for Republican Spain.
++#Rule Spain 1939 only - Apr 15 23:00 1:00 S
++Rule Spain 1939 only - Oct 7 24:00s 0 -
++Rule Spain 1942 only - May 2 23:00 1:00 S
++Rule Spain 1942 only - Sep 1 1:00 0 -
++Rule Spain 1943 1946 - Apr Sat>=13 23:00 1:00 S
++Rule Spain 1943 1944 - Oct Sun>=1 1:00 0 -
++Rule Spain 1945 1946 - Sep lastSun 1:00 0 -
+ Rule Spain 1949 only - Apr 30 23:00 1:00 S
+-Rule Spain 1949 only - Sep 30 1:00 0 -
+-Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
++Rule Spain 1949 only - Oct 2 1:00 0 -
++Rule Spain 1974 1975 - Apr Sat>=12 23:00 1:00 S
+ Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
+ Rule Spain 1976 only - Mar 27 23:00 1:00 S
+ Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
+-Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
+-Rule Spain 1978 only - Oct 1 1:00 0 -
++Rule Spain 1977 only - Apr 2 23:00 1:00 S
++Rule Spain 1978 only - Apr 2 2:00s 1:00 S
++Rule Spain 1978 only - Oct 1 2:00s 0 -
++# Nationalist Spain during the civil war
++#Rule NatSpain 1937 only - May 22 23:00 1:00 S
++#Rule NatSpain 1937 1938 - Oct Sat>=1 24:00s 0 -
++#Rule NatSpain 1938 only - Mar 26 23:00 1:00 S
+ # The following rules are copied from Morocco from 1967 through 1978.
+ Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
+ Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
+@@ -3263,11 +3333,11 @@
+ Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
+ Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
+- 0:00 Spain WE%sT 1946 Sep 30
++Zone Europe/Madrid -0:14:44 - LMT 1900 Dec 31 23:45:16
++ 0:00 Spain WE%sT 1940 Mar 16 23:00
+ 1:00 Spain CE%sT 1979
+ 1:00 EU CE%sT
+-Zone Africa/Ceuta -0:21:16 - LMT 1901
++Zone Africa/Ceuta -0:21:16 - LMT 1900 Dec 31 23:38:44
+ 0:00 - WET 1918 May 6 23:00
+ 0:00 1:00 WEST 1918 Oct 7 23:00
+ 0:00 - WET 1924
+@@ -3276,7 +3346,7 @@
+ 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 T
++ -1:00 - -01 1946 Sep 30 1:00
+ 0:00 - WET 1980 Apr 6 0:00s
+ 0:00 1:00 WEST 1980 Sep 28 1:00u
+ 0:00 EU WE%sT
+@@ -3396,7 +3466,7 @@
+ #
+ # From Alois Treindl (2013-09-11):
+ # The Federal regulations say
+-# http://www.admin.ch/opc/de/classified-compilation/20071096/index.html
++# https://www.admin.ch/opc/de/classified-compilation/20071096/index.html
+ # ... the meridian for Bern mean time ... is 7 degrees 26' 22.50".
+ # Expressed in time, it is 0h29m45.5s.
+
+@@ -3473,9 +3543,9 @@
+ # According to the articles linked below, Turkey will change into summer
+ # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27.
+ # This change is due to a nationwide exam on 27th.
+-# http://www.worldbulletin.net/?aType=haber&ArticleID=70872
++# https://www.worldbulletin.net/?aType=haber&ArticleID=70872
+ # Turkish:
+-# http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373
++# https://www.hurriyet.com.tr/yaz-saati-uygulamasi-bir-gun-ileri-alindi-17230464
+
+ # From Faruk Pasin (2014-02-14):
+ # The DST for Turkey has been changed for this year because of the
+@@ -3611,7 +3681,7 @@
+ # http://www.segodnya.ua/news/14290482.html
+ #
+ # Deputies cancelled the winter time (in Russian)
+-# http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
++# https://www.pravda.com.ua/rus/news/2011/09/20/6600616/
+ #
+ # From Philip Pizzey (2011-10-18):
+ # Today my Ukrainian colleagues have informed me that the
+@@ -3689,7 +3759,7 @@
+ # spelling, except omit the apostrophe as it is not allowed in
+ # portable Posix file names.
+ Zone Europe/Zaporozhye 2:20:40 - LMT 1880
+- 2:20 - CUT 1924 May 2 # Central Ukraine T
++ 2:20 - +0220 1924 May 2
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Aug 25
+ 1:00 C-Eur CE%sT 1943 Oct 25
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C52
+-# File expires on: 28 June 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+ #
+-#@ 3707596800
++#@ 3739132800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -247,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
++#h 5101445a 69948b51 9153e2b 2086e3d8 d54561a3
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -3,19 +3,18 @@
+ # This file is in the public domain.
+
+ # 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 does not work,
+-# you should be able to pick up leap-seconds.list from a secondary NIST server.
+-# See for a list of secondary servers.
++# leap-seconds.list file, which is copied from:
++# ftp://ftp.nist.gov/pub/time/leap-seconds.list
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+-# http://www.eecis.udel.edu/~mills/leap.html
++# https://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 .
++# Levine J. Coordinated Universal Time and the leap second.
++# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995
++# http://ieeexplore.ieee.org/document/7909995/
+ # 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.
+@@ -58,5 +57,5 @@
+ Leap 2015 Jun 30 23:59:60 + S
+ Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C52
+-# File expires on: 28 June 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -8,19 +8,18 @@
+ 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 does not work,"
+- print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
+- print "# See for a list of secondary servers."
++ print "# leap-seconds.list file, which is copied from:"
++ print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list"
+ 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 "# https://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 ."
++ print "# Levine J. Coordinated Universal Time and the leap second."
++ print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995"
++ print "# http://ieeexplore.ieee.org/document/7909995/"
+ 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."
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -105,10 +105,13 @@
+ # 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
++# https://web.archive.org/web/20000926032210/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.
++#
++# From Paul Eggert (2017-09-23):
++# This was the V-J Day issue of the Clamdigger, a Rowayton, CT newsletter.
+
+ # From Joseph Gallant citing
+ # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+@@ -178,22 +181,6 @@
+ Zone MST7MDT -7:00 US M%sT
+ Zone PST8PDT -8:00 US P%sT
+
+-# From Bob Devine (1988-01-28):
+-# ...Alaska (and Hawaii) had the timezone names changed in 1967.
+-# old new
+-# Pacific Standard Time(PST) -same-
+-# Yukon Standard Time(YST) -same-
+-# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
+-# Nome Standard Time (NT) Bering Standard Time (BST)
+-#
+-# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
+-# The YST zone now covers nearly all of the state, AHST just part
+-# of the Aleutian islands. No DST.
+-
+-# From Paul Eggert (1995-12-19):
+-# The tables below use 'NST', not 'NT', for Nome Standard Time.
+-# I invented 'CAWT' for Central Alaska War Time.
+-
+ # From U. S. Naval Observatory (1989-01-19):
+ # USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
+ # USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
+@@ -250,6 +237,21 @@
+ # Samoa standard time
+ # The law doesn't give abbreviations.
+ #
++# From Paul Eggert (2016-12-19):
++# Here are URLs for the 1918 and 1966 legislation:
++# http://uscode.house.gov/statviewer.htm?volume=40&page=451
++# http://uscode.house.gov/statviewer.htm?volume=80&page=108
++# Although the 1918 names were officially "United States Standard
++# Eastern Time" and similarly for "Central", "Mountain", "Pacific",
++# and "Alaska", in practice "Standard" was placed just before "Time",
++# as codified in 1966. In practice, Alaska time was abbreviated "AST"
++# before 1968. Summarizing the 1967 name changes:
++# 1918 names 1967 names
++# -08 Standard Pacific Time (PST) Pacific standard time (PST)
++# -09 (unofficial) Yukon (YST) Yukon standard time (YST)
++# -10 Standard Alaska Time (AST) Alaska-Hawaii standard time (AHST)
++# -11 (unofficial) Nome (NST) Bering standard time (BST)
++#
+ # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+ # Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
+ # for time in Guam and the Northern Marianas. See the file "australasia".
+@@ -258,7 +260,7 @@
+ # 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
++# https://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.
+@@ -305,6 +307,15 @@
+ # Roberts, city administrator in Phenix City. as saying "We are in the Central
+ # time zone, but we do go by the Eastern time zone because so many people work
+ # in Columbus."
++#
++# From Paul Eggert (2017-02-22):
++# Four cities are involved. The two not mentioned above are Smiths Station
++# and Valley. Barbara Brooks, Valley's assistant treasurer, heard it started
++# because West Point Pepperell textile mills were in Alabama while the
++# corporate office was in Georgia, and residents voted to keep Eastern
++# time even after the mills closed. See: Kazek K. Did you know which
++# Alabama towns are in a different time zone? al.com 2017-02-06.
++# http://www.al.com/living/index.ssf/2017/02/do_you_know_which_alabama_town.html
+
+ # From Paul Eggert (2014-09-06):
+ # Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
+@@ -338,7 +349,7 @@
+ # western Tennessee, most of Texas, Wisconsin
+
+ # From Larry M. Smith (2006-04-26) re Wisconsin:
+-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
++# https://docs.legis.wisconsin.gov/statutes/statutes/175.pdf
+ # is currently enforced at the 01:00 time of change. Because the local
+ # "bar time" in the state corresponds to 02:00, a number of citations
+ # are issued for the "sale of class 'B' alcohol after prohibited
+@@ -347,7 +358,7 @@
+ # From Douglas R. Bomberg (2007-03-12):
+ # Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+ # Statue 175 closer in synch with the US Congress' intent....
+-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
++# https://docs.legis.wisconsin.gov/2007/related/acts/3
+
+ # 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
+@@ -394,7 +405,7 @@
+ # ...it appears that Mercer County, North Dakota, changed from the
+ # mountain time zone to the central time zone at the last transition from
+ # daylight-saving to standard time (on Nov. 7, 2010):
+-# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
++# https://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
+ # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
+
+ # From Andy Lipscomb (2011-01-24):
+@@ -445,7 +456,7 @@
+ # 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
++# 1973-11. https://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
+@@ -466,8 +477,8 @@
+ # 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
++# https://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# https://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:01 1:00 D
+@@ -482,22 +493,33 @@
+ -8:00 US P%sT
+
+ # Alaska
+-# AK%sT is the modern abbreviation for -9:00 per USNO.
++# AK%sT is the modern abbreviation for -09 per USNO.
+ #
+-# From Paul Eggert (2001-05-30):
++# From Paul Eggert (2017-06-15):
+ # Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+ # and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+-# also a Friday. Include only the time zone part of this transition,
+-# ignoring the switch from Julian to Gregorian, since we can't represent
+-# the Julian calendar.
++# On Friday, 1867-10-18 (Gregorian), at precisely 15:30 local time, the
++# Russian forts and fleet at Sitka fired salutes to mark the ceremony of
++# formal transfer. See the Sacramento Daily Union (1867-11-14), p 3, col 2.
++# https://cdnc.ucr.edu/cgi-bin/cdnc?a=d&d=SDU18671114.2.12.1
++# Sitka workers did not change their calendars until Sunday, 1867-10-20,
++# and so celebrated two Sundays that week. See: Ahllund T (tr Hallamaa P).
++# From the memoirs of a Finnish workman. Alaska History. 2006 Fall;21(2):1-25.
++# http://alaskahistoricalsociety.org/wp-content/uploads/2016/12/Ahllund-2006-Memoirs-of-a-Finnish-Workman.pdf
++# Include only the time zone part of this transition, ignoring the switch
++# from Julian to Gregorian, since we can't represent the Julian calendar.
+ #
+-# As far as we know, none of the exact locations mentioned below were
++# As far as we know, of the locations mentioned below only Sitka was
+ # permanently inhabited in 1867 by anyone using either calendar.
+-# (Yakutat was colonized by the Russians in 1799, but the settlement
+-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
+-# were nearby inhabitants in some cases and for our purposes perhaps
+-# it's best to simply use the official transition.
++# (Yakutat was colonized by the Russians in 1799, but the settlement was
++# destroyed in 1805 by a Yakutat-kon war party.) Many of Alaska's inhabitants
++# were unaware of the US acquisition of Alaska, much less of any calendar or
++# time change. However, the Russian-influenced part of Alaska did observe
++# Russian time, and it is more accurate to model this than to ignore it.
++# The database format requires an exact transition time; use the Russian
++# salute as a somewhat-arbitrary time for the formal transfer of control for
++# all of Alaska. Sitka's UTC offset is -9:01:13; adjust its 15:30 to the
++# local times of other Alaskan locations so that they change simultaneously.
+
+ # From Paul Eggert (2014-07-18):
+ # One opinion of the early-1980s turmoil in Alaska over time zones and
+@@ -550,10 +572,10 @@
+ # 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/
++# https://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
++Zone America/Juneau 15:02:19 - LMT 1867 Oct 19 15:33:32
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -563,7 +585,7 @@
+ -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
++Zone America/Sitka 14:58:47 - LMT 1867 Oct 19 15:30
+ -9:01:13 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -571,7 +593,7 @@
+ -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
++Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 19 15:44:55
+ -8:46:18 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -579,7 +601,7 @@
+ -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
++Zone America/Yakutat 14:41:05 - LMT 1867 Oct 19 15:12:18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+ -9:00 US Y%sT 1946
+@@ -586,17 +608,15 @@
+ -9:00 - YST 1969
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
++Zone America/Anchorage 14:00:24 - LMT 1867 Oct 19 14:31:37
+ -9:59:36 - LMT 1900 Aug 20 12:00
+- -10:00 - CAT 1942
+- -10:00 US CAT/CAWT 1945 Aug 14 23:00u
+- -10:00 US CAT/CAPT 1946 # Peace
+- -10:00 - CAT 1967 Apr
++ -10:00 - AST 1942
++ -10:00 US A%sT 1967 Apr
+ -10:00 - AHST 1969
+ -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
++Zone America/Nome 12:58:22 - LMT 1867 Oct 19 13:29:35
+ -11:01:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -605,7 +625,7 @@
+ -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
++Zone America/Adak 12:13:22 - LMT 1867 Oct 19 12:44:35
+ -11:46:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -641,7 +661,7 @@
+ # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
+ # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
+ # the article is available at
+-# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
++# https://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
+ # and indicates that standard time was adopted effective noon, January
+ # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
+ # saving for the period between the last Sunday of each April and the
+@@ -680,7 +700,6 @@
+ -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.
+
+@@ -741,7 +760,7 @@
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# http://en.wikipedia.org/wiki/Time_in_Indiana
++# https://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -968,7 +987,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
++# https://www.gpo.gov/fdsys/pkg/FR-2000-08-17/html/00-20854.htm
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -994,7 +1013,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
++# https://www.gpo.gov/fdsys/pkg/FR-1999-10-21/html/99-27240.htm
+ # 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.
+@@ -1024,12 +1043,23 @@
+ # one hour in 1914." This change is not in Shanks. We have no more
+ # info, so omit this for now.
+ #
++# From Paul Eggert (2017-07-26):
++# Although Shanks says Detroit observed DST in 1967 from 06-14 00:01
++# until 10-29 00:01, I now see multiple reports that this is incorrect.
++# For example, according to a 50-year anniversary report about the 1967
++# Detroit riots and a major-league doubleheader on 1967-07-23, "By the time
++# the last fly ball of the doubleheader settled into the glove of leftfielder
++# Lenny Green, it was after 7 p.m. Detroit did not observe daylight saving
++# time, so light was already starting to fail. Twilight was made even deeper
++# by billowing columns of smoke that ascended in an unbroken wall north of the
++# ballpark." See: Dow B. Detroit '67: As violence unfolded, Tigers played two
++# at home vs. Yankees. Detroit Free Press 2017-07-23.
++# https://www.freep.com/story/sports/mlb/tigers/2017/07/23/detroit-tigers-1967-riot-new-york-yankees/499951001/
++#
+ # Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+ Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
+-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
+@@ -1068,7 +1098,7 @@
+ ################################################################################
+
+
+-# From Paul Eggert (2014-10-31):
++# From Paul Eggert (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -1075,8 +1105,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -1093,7 +1123,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# .
++# .
+ #
+ # See the 'europe' file for Greenland.
+
+@@ -1139,19 +1169,19 @@
+ # The British Columbia government announced yesterday that it will
+ # adjust daylight savings next year to align with changes in the
+ # U.S. and the rest of Canada....
+-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
++# https://archive.news.gov.bc.ca/releases/news_releases_2005-2009/2006AG0014-000330.htm
+ # ...
+ # Nova Scotia
+ # Daylight saving time will be extended by four weeks starting in 2007....
+-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
++# https://www.novascotia.ca/just/regulations/rg2/2006/ma1206.pdf
+ #
+ # [For New Brunswick] the new legislation dictates that the time change is to
+ # be done at 02:00 instead of 00:01.
+-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
++# https://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+ # ...
+ # Manitoba has traditionally changed the clock every fall at 03:00.
+ # As of 2006, the transition is to take place one hour earlier at 02:00.
+-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
++# https://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+ # ...
+ # [Alberta, Ontario, Quebec] will follow US rules.
+ # http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+@@ -1165,7 +1195,7 @@
+ # http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+ # ...
+ # Yukon
+-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
++# https://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+ # ...
+ # N.W.T. will follow US rules. Whoever maintains the government web site
+ # does not seem to believe in bookmarks. To see the news release, click the
+@@ -1186,8 +1216,8 @@
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+ # 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
++# https://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# https://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):
+@@ -1224,11 +1254,13 @@
+
+ # Newfoundland and Labrador
+
+-# From Paul Eggert (2000-10-02):
+-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+-# but the only part of Labrador that follows the rules is the
+-# southeast corner, including Port Hope Simpson and Mary's Harbour,
+-# but excluding, say, Black Tickle.
++# From Paul Eggert (2017-10-14):
++# Legally Labrador should observe Newfoundland time; see:
++# McLeod J. Labrador time - legal or not? St. John's Telegram, 2017-10-07
++# http://www.thetelegram.com/news/local/labrador-time--legal-or-not-154860/
++# Matthews and Vincent (1998) write that the only part of Labrador
++# that follows the rules is the southeast corner, including Port Hope
++# Simpson and Mary's Harbour, but excluding, say, Black Tickle.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule StJohns 1917 only - Apr 8 2:00 1:00 D
+@@ -1428,7 +1460,7 @@
+ # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm
+ # that the coastal strip from just east of Natashquan to Blanc-Sablon
+ # observes Atlantic standard time all year round.
+-# http://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
++# https://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
+ # says this common practice was codified into law as of 2007.
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+@@ -1460,6 +1492,11 @@
+ # earlier in June).
+ #
+ # Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
++#
++# From Paul Eggert (2017-07-08):
++# For more on Orillia, see: Daubs K. Bold attempt at daylight saving
++# time became a comic failure in Orillia. Toronto Star 2017-07-08.
++# https://www.thestar.com/news/insight/2017/07/08/bold-attempt-at-daylight-saving-time-became-a-comic-failure-in-orillia.html
+
+ # From Paul Eggert (1997-10-17):
+ # Mark Brader writes that an article in the 1997-10-14 Toronto Star
+@@ -1951,7 +1988,7 @@
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+ # 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]
++# [https://www.canlii.org/en/ca/laws/stat/rsc-1985-c-i-21/latest/rsc-1985-c-i-21.html]
+ # * 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.
+@@ -2016,7 +2053,7 @@
+ # 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
++# https://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
+@@ -2031,7 +2068,7 @@
+ # 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
++# https://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
+@@ -2043,7 +2080,7 @@
+ # 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
++# https://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
+@@ -2057,7 +2094,7 @@
+ # 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
++# https://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.
+@@ -2100,7 +2137,7 @@
+
+ # From Michaela Rodrigue, writing in the
+ # Nunatsiaq News (1999-11-19):
+-# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
++# http://www.nunatsiaqonline.ca/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]
+@@ -2118,7 +2155,7 @@
+ # Central Time and Southampton Island [in the Central zone] is not
+ # required to use daylight savings.
+
+-# From
++# From
+ # Nunavut now has two time zones (2000-11-10):
+ # The Nunavut government would allow its employees in Kugluktuk and
+ # Cambridge Bay to operate on central time year-round, putting them
+@@ -2449,7 +2486,7 @@
+ # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
++# https://www.timeanddate.com/news/time/north-mexico-dst-change.html
+
+ # From Arthur David Olson (2010-01-20):
+ # The page
+@@ -2734,15 +2771,15 @@
+ # Belize
+ # Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
+-Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
+-Rule Belize 1973 only - Dec 5 0:00 1:00 D
+-Rule Belize 1974 only - Feb 9 0:00 0 S
+-Rule Belize 1982 only - Dec 18 0:00 1:00 D
+-Rule Belize 1983 only - Feb 12 0:00 0 S
++Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 -0530
++Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 CST
++Rule Belize 1973 only - Dec 5 0:00 1:00 CDT
++Rule Belize 1974 only - Feb 9 0:00 0 CST
++Rule Belize 1982 only - Dec 18 0:00 1:00 CDT
++Rule Belize 1983 only - Feb 12 0:00 0 CST
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Belize -5:52:48 - LMT 1912 Apr
+- -6:00 Belize C%sT
++ -6:00 Belize %s
+
+ # Bermuda
+
+@@ -2868,7 +2905,7 @@
+ # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+ #
+ # Some more background information is posted here:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+ #
+ # The article also says that Cuba has been observing DST since 1963,
+ # while Shanks (and tzdata) has 1965 as the first date (except in the
+@@ -2915,7 +2952,7 @@
+ # http://granma.co.cu/2011/03/08/nacional/artic01.html
+ #
+ # Our info:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
+ #
+ # From Steffen Thorsen (2011-10-30)
+ # Cuba will end DST two weeks later this year. Instead of going back
+@@ -2925,7 +2962,7 @@
+ # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
++# https://www.timeanddate.com/news/time/cuba-time-changes-2011.html
+ #
+ # From Steffen Thorsen (2012-03-01)
+ # According to Radio Reloj, Cuba will start DST on Midnight between March
+@@ -2935,7 +2972,7 @@
+ # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
+ #
+ # Our info on it:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
+
+ # From Steffen Thorsen (2012-11-03):
+ # Radio Reloj and many other sources report that Cuba is changing back
+@@ -3014,16 +3051,16 @@
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule DR 1966 only - Oct 30 0:00 1:00 D
+-Rule DR 1967 only - Feb 28 0:00 0 S
+-Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
+-Rule DR 1970 only - Feb 21 0:00 0 S
+-Rule DR 1971 only - Jan 20 0:00 0 S
+-Rule DR 1972 1974 - Jan 21 0:00 0 S
++Rule DR 1966 only - Oct 30 0:00 1:00 EDT
++Rule DR 1967 only - Feb 28 0:00 0 EST
++Rule DR 1969 1973 - Oct lastSun 0:00 0:30 -0430
++Rule DR 1970 only - Feb 21 0:00 0 EST
++Rule DR 1971 only - Jan 20 0:00 0 EST
++Rule DR 1972 1974 - Jan 21 0:00 0 EST
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -5:00 DR %s 1974 Oct 27
+ -4:00 - AST 2000 Oct 29 2:00
+ -5:00 US E%sT 2000 Dec 3 1:00
+ -4:00 - AST
+@@ -3130,10 +3167,16 @@
+ # 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/
++# https://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# https://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
+ # http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
+
++# From Steffen Thorsen (2017-03-12):
++# We have received 4 mails from different people telling that Haiti
++# has started DST again today, and this source seems to confirm that,
++# I have not been able to find a more authoritative source:
++# https://www.haitilibre.com/en/news-20319-haiti-notices-time-change-in-haiti.html
++
+ # 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
+@@ -3146,6 +3189,8 @@
+ Rule Haiti 2005 2006 - Oct lastSun 0: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
++Rule Haiti 2017 max - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2017 max - 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
+@@ -3313,8 +3358,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -3:00 - -03 1987
++ -3:00 Canada -03/-02
+
+ # St Vincent and the Grenadines
+ # See America/Port_of_Spain.
+@@ -3322,7 +3367,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
++# https://bugs.debian.org/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.
+@@ -3344,12 +3389,25 @@
+ # "permanent daylight saving time" by one year....
+ # http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
++# From the Turks & Caicos Cabinet (2017-07-20), heads-up from Steffen Thorsen:
++# ... agreed to the reintroduction in TCI of Daylight Saving Time (DST)
++# during the summer months and Standard Time, also known as Local
++# Time, during the winter months with effect from April 2018 ...
++# https://www.gov.uk/government/news/turks-and-caicos-post-cabinet-meeting-statement--3
++#
++# From Paul Eggert (2017-08-26):
++# The date of effect of the spring 2018 change appears to be March 11,
++# which makes more sense. See: Hamilton D. Time change back
++# by March 2018 for TCI. Magnetic Media. 2017-08-25.
++# http://magneticmediatv.com/2017/08/time-change-back-by-march-2018-for-tci/
++#
+ # 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 - EST 1979
+ -5:00 US E%sT 2015 Nov Sun>=1 2:00
+- -4:00 - AST
++ -4:00 - AST 2018 Mar 11 3:00
++ -5:00 US E%sT
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -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 (2016-12-05):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -22,34 +22,12 @@
+ #
+ # 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
++# https://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
+-# suggests that it's better to use European style (e.g. ART and ARST).
+-# 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
+-# H L Mencken, _The American Language: Supplement I_ (1960), p 466
+-#
+-# Earlier editions of these tables also used the North American style
+-# for time zones in Brazil, but this was incorrect, as Brazilians say
+-# "summer time". Reinaldo Goulart, a São Paulo businessman active in
+-# the railroad sector, writes (1999-07-06):
+-# The subject of time zones is currently a matter of discussion/debate in
+-# Brazil. Let's say that "the Brasília time" is considered the
+-# "official time" because Brasília is the capital city.
+-# The other three time zones are called "Brasília time "minus one" or
+-# "plus one" or "plus two". As far as I know there is no such
+-# name/designation as "Eastern Time" or "Central Time".
+-# So I invented the following (English-language) abbreviations for now.
+-# Corrections are welcome!
+-# std dst
+-# -2:00 FNT FNST Fernando de Noronha
+-# -3:00 BRT BRST Brasília
+-# -4:00 AMT AMST Amazon
+-# -5:00 ACT ACST Acre
++# These tables use numeric abbreviations like -03 and -0330 for
++# integer hour and minute UTC offsets. Although earlier editions used
++# alphabetic time zone abbreviations, these abbreviations were
++# invented and did not reflect common practice.
+
+ ###############################################################################
+
+@@ -287,8 +265,8 @@
+ #
+ # Es inminente que en San Luis atrasen una hora los relojes
+ # (It is imminent in San Luis clocks one hour delay)
+-# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
+-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
++# https://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
++# http://www.worldtimezone.com/dst_news/dst_news_argentina02.html
+
+ # From Jesper Nørgaard Welen (2008-01-18):
+ # The page of the San Luis provincial government
+@@ -384,12 +362,6 @@
+ #
+ # So I guess a new set of rules, besides "Arg", must be made and the last
+ # America/Argentina/San_Luis entries should change to use these...
+-#
+-# I'm enclosing a patch that does what I say... regretfully, the San Luis
+-# timezone must be called "WART/WARST" even when most of the time (like,
+-# right now) WARST == ART... that is, since last Sunday, all the country
+-# is using UTC-3, but in my patch, San Luis calls it "WARST" and the rest
+-# of the country calls it "ART".
+ # ...
+
+ # From Alexander Krivenyshev (2010-04-09):
+@@ -413,7 +385,7 @@
+ # 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 -03; see, for example,
+-# http://es.wikipedia.org/wiki/Hora_oficial_argentina
++# https://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
+@@ -428,11 +400,11 @@
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02
+ #
+ # Córdoba (CB), Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN),
+ # Chaco (CC), Formosa (FM), Santiago del Estero (SE)
+@@ -446,113 +418,113 @@
+ #
+ Zone America/Argentina/Cordoba -4:16:48 - 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 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02
+ #
+ # Salta (SA), La Pampa (LP), Neuquén (NQ), Rio Negro (RN)
+ Zone America/Argentina/Salta -4:21:40 - 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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Tucumán (TM)
+ Zone America/Argentina/Tucuman -4:20:52 - 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 13
+- -3:00 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 13
++ -3:00 Arg -03/-02
+ #
+ # La Rioja (LR)
+ Zone America/Argentina/La_Rioja -4:27:24 - 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 1
+- -4:00 - WART 1991 May 7
+- -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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 1
++ -4:00 - -04 1991 May 7
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # San Juan (SJ)
+ Zone America/Argentina/San_Juan -4:34:04 - 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 1
+- -4:00 - WART 1991 May 7
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 31
+- -4:00 - WART 2004 Jul 25
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 1
++ -4:00 - -04 1991 May 7
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 31
++ -4:00 - -04 2004 Jul 25
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Jujuy (JY)
+ Zone America/Argentina/Jujuy -4:21:12 - 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 1990 Mar 4
+- -4:00 - WART 1990 Oct 28
+- -4:00 1:00 WARST 1991 Mar 17
+- -4:00 - WART 1991 Oct 6
+- -3:00 1:00 ARST 1992
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990 Mar 4
++ -4:00 - -04 1990 Oct 28
++ -4:00 1:00 -03 1991 Mar 17
++ -4:00 - -04 1991 Oct 6
++ -3:00 1:00 -02 1992
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Catamarca (CT), Chubut (CH)
+ Zone America/Argentina/Catamarca -4:23:08 - 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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Mendoza (MZ)
+ Zone America/Argentina/Mendoza -4:35:16 - 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 1990 Mar 4
+- -4:00 - WART 1990 Oct 15
+- -4:00 1:00 WARST 1991 Mar 1
+- -4:00 - WART 1991 Oct 15
+- -4:00 1:00 WARST 1992 Mar 1
+- -4:00 - WART 1992 Oct 18
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 23
+- -4:00 - WART 2004 Sep 26
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990 Mar 4
++ -4:00 - -04 1990 Oct 15
++ -4:00 1:00 -03 1991 Mar 1
++ -4:00 - -04 1991 Oct 15
++ -4:00 1:00 -03 1992 Mar 1
++ -4:00 - -04 1992 Oct 18
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 23
++ -4:00 - -04 2004 Sep 26
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # San Luis (SL)
+
+@@ -561,44 +533,44 @@
+
+ Zone America/Argentina/San_Luis -4:25:24 - 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 1990
+- -3:00 1:00 ARST 1990 Mar 14
+- -4:00 - WART 1990 Oct 15
+- -4:00 1:00 WARST 1991 Mar 1
+- -4:00 - WART 1991 Jun 1
+- -3:00 - ART 1999 Oct 3
+- -4:00 1:00 WARST 2000 Mar 3
+- -3:00 - ART 2004 May 31
+- -4:00 - WART 2004 Jul 25
+- -3:00 Arg AR%sT 2008 Jan 21
+- -4:00 SanLuis WAR%sT 2009 Oct 11
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990
++ -3:00 1:00 -02 1990 Mar 14
++ -4:00 - -04 1990 Oct 15
++ -4:00 1:00 -03 1991 Mar 1
++ -4:00 - -04 1991 Jun 1
++ -3:00 - -03 1999 Oct 3
++ -4:00 1:00 -03 2000 Mar 3
++ -3:00 - -03 2004 May 31
++ -4:00 - -04 2004 Jul 25
++ -3:00 Arg -03/-02 2008 Jan 21
++ -4:00 SanLuis -04/-03 2009 Oct 11
++ -3:00 - -03
+ #
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:16:48 - CMT 1920 May
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 30
+- -4:00 - WART 2004 Jun 20
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:16:48 - CMT 1920 May
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 30
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+
+ # Aruba
+ Link America/Curacao America/Aruba
+@@ -608,7 +580,7 @@
+ Zone America/La_Paz -4:32:36 - LMT 1890
+ -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
+ -4:32:36 1:00 BOST 1932 Mar 21 # Bolivia ST
+- -4:00 - BOT # Bolivia Time
++ -4:00 - -04
+
+ # Brazil
+
+@@ -744,7 +716,7 @@
+ # (Portuguese)
+ #
+ # We have a written a short article about it as well:
+-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
++# https://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+ #
+ # From Alexander Krivenyshev (2011-10-04):
+ # State Bahia will return to Daylight savings time this year after 8 years off.
+@@ -753,7 +725,7 @@
+
+ # In Portuguese:
+ # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
+
+ # From Guilherme Bernardes Rodrigues (2011-10-07):
+ # There is news in the media, however there is still no decree about it.
+@@ -779,16 +751,16 @@
+
+ # From Rodrigo Severo (2012-10-16):
+ # Tocantins state will have DST.
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
+
+ # From Steffen Thorsen (2013-09-20):
+ # Tocantins in Brazil is very likely not to observe DST from October....
+ # http://conexaoto.com.br/2013/09/18/ministerio-confirma-que-tocantins-esta-fora-do-horario-de-verao-em-2013-mas-falta-publicacao-de-decreto
+ # We will keep this article updated when this is confirmed:
+-# http://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
++# https://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
+
+ # From Steffen Thorsen (2013-10-17):
+-# http://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
++# https://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
+ # Senator Jorge Viana announced that Acre will change time zone on November 10.
+ # He did not specify the time of the change, nor if western parts of Amazonas
+ # will change as well.
+@@ -960,12 +932,12 @@
+ #
+ # Fernando de Noronha (administratively part of PE)
+ Zone America/Noronha -2:09:40 - LMT 1914
+- -2:00 Brazil FN%sT 1990 Sep 17
+- -2:00 - FNT 1999 Sep 30
+- -2:00 Brazil FN%sT 2000 Oct 15
+- -2:00 - FNT 2001 Sep 13
+- -2:00 Brazil FN%sT 2002 Oct 1
+- -2:00 - FNT
++ -2:00 Brazil -02/-01 1990 Sep 17
++ -2:00 - -02 1999 Sep 30
++ -2:00 Brazil -02/-01 2000 Oct 15
++ -2:00 - -02 2001 Sep 13
++ -2:00 Brazil -02/-01 2002 Oct 1
++ -2:00 - -02
+ # Other Atlantic islands have no permanent settlement.
+ # These include Trindade and Martim Vaz (administratively part of ES),
+ # Rocas Atoll (RN), and the St Peter and St Paul Archipelago (PE).
+@@ -978,119 +950,119 @@
+ # In the north a very small part from the river Javary (now Jari I guess,
+ # the border with Amapá) to the Amazon, then to the Xingu.
+ Zone America/Belem -3:13:56 - LMT 1914
+- -3:00 Brazil BR%sT 1988 Sep 12
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1988 Sep 12
++ -3:00 - -03
+ #
+ # west Pará (PA)
+ # 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 0:00
+- -3:00 - BRT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 2008 Jun 24 0:00
++ -3:00 - -03
+ #
+ # Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN),
+ # Paraíba (PB)
+ Zone America/Fortaleza -2:34:00 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 22
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 22
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Pernambuco (PE) (except Atlantic islands)
+ Zone America/Recife -2:19:36 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 15
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 15
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Tocantins (TO)
+ Zone America/Araguaina -3:12:48 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1995 Sep 14
+- -3:00 Brazil BR%sT 2003 Sep 24
+- -3:00 - BRT 2012 Oct 21
+- -3:00 Brazil BR%sT 2013 Sep
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1995 Sep 14
++ -3:00 Brazil -03/-02 2003 Sep 24
++ -3:00 - -03 2012 Oct 21
++ -3:00 Brazil -03/-02 2013 Sep
++ -3:00 - -03
+ #
+ # Alagoas (AL), Sergipe (SE)
+ Zone America/Maceio -2:22:52 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1995 Oct 13
+- -3:00 Brazil BR%sT 1996 Sep 4
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 22
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1995 Oct 13
++ -3:00 Brazil -03/-02 1996 Sep 4
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 22
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Bahia (BA)
+ # There are too many Salvadors elsewhere, so use America/Bahia instead
+ # of America/Salvador.
+ Zone America/Bahia -2:34:04 - LMT 1914
+- -3:00 Brazil BR%sT 2003 Sep 24
+- -3:00 - BRT 2011 Oct 16
+- -3:00 Brazil BR%sT 2012 Oct 21
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 2003 Sep 24
++ -3:00 - -03 2011 Oct 16
++ -3:00 Brazil -03/-02 2012 Oct 21
++ -3:00 - -03
+ #
+ # Goiás (GO), Distrito Federal (DF), Minas Gerais (MG),
+ # 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 0:00
+- -3:00 1:00 BRST 1964
+- -3:00 Brazil BR%sT
++ -3:00 Brazil -03/-02 1963 Oct 23 0:00
++ -3:00 1:00 -02 1964
++ -3:00 Brazil -03/-02
+ #
+ # Mato Grosso do Sul (MS)
+ Zone America/Campo_Grande -3:38:28 - LMT 1914
+- -4:00 Brazil AM%sT
++ -4:00 Brazil -04/-03
+ #
+ # Mato Grosso (MT)
+ Zone America/Cuiaba -3:44:20 - LMT 1914
+- -4:00 Brazil AM%sT 2003 Sep 24
+- -4:00 - AMT 2004 Oct 1
+- -4:00 Brazil AM%sT
++ -4:00 Brazil -04/-03 2003 Sep 24
++ -4:00 - -04 2004 Oct 1
++ -4:00 Brazil -04/-03
+ #
+ # Rondônia (RO)
+ Zone America/Porto_Velho -4:15:36 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04
+ #
+ # Roraima (RR)
+ Zone America/Boa_Vista -4:02:40 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 1999 Sep 30
+- -4:00 Brazil AM%sT 2000 Oct 15
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 1999 Sep 30
++ -4:00 Brazil -04/-03 2000 Oct 15
++ -4:00 - -04
+ #
+ # east Amazonas (AM): Boca do Acre, Jutaí, Manaus, Floriano Peixoto
+ # The great circle line from Tabatinga to Porto Acre divides
+ # east from west Amazonas.
+ Zone America/Manaus -4:00:04 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 1993 Sep 28
+- -4:00 Brazil AM%sT 1994 Sep 22
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 1993 Sep 28
++ -4:00 Brazil -04/-03 1994 Sep 22
++ -4:00 - -04
+ #
+ # west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
+ # Eirunepé, Envira, Ipixuna
+ Zone America/Eirunepe -4:39:28 - LMT 1914
+- -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 0:00
+- -4:00 - AMT 2013 Nov 10
+- -5:00 - ACT
++ -5:00 Brazil -05/-04 1988 Sep 12
++ -5:00 - -05 1993 Sep 28
++ -5:00 Brazil -05/-04 1994 Sep 22
++ -5:00 - -05 2008 Jun 24 0:00
++ -4:00 - -04 2013 Nov 10
++ -5:00 - -05
+ #
+ # 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 0:00
+- -4:00 - AMT 2013 Nov 10
+- -5:00 - ACT
++ -5:00 Brazil -05/-04 1988 Sep 12
++ -5:00 - -05 2008 Jun 24 0:00
++ -4:00 - -04 2013 Nov 10
++ -5:00 - -05
+
+ # Chile
+
+@@ -1104,18 +1076,18 @@
+ # 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:
++# This contains a copy of 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
++# https://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
++# https://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
++# https://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:
+@@ -1235,6 +1207,18 @@
+ # to mean 24:00 mainland time, not 24:00 local time, so that Easter
+ # Island is always two hours behind the mainland.
+
++# From Juan Correa (2016-12-04):
++# Magallanes region ... will keep DST (UTC -3) all year round....
++# http://www.soychile.cl/Santiago/Sociedad/2016/12/04/433428/Bachelet-firmo-el-decreto-para-establecer-un-horario-unico-para-la-Region-de-Magallanes.aspx
++#
++# From Deborah Goldsmith (2017-01-19):
++# http://www.diariooficial.interior.gob.cl/publicaciones/2017/01/17/41660/01/1169626.pdf
++# From Paul Eggert (2017-01-19):
++# The above says the Magallanes change expires 2019-05-11 at 24:00,
++# so in theory, they will revert to -04/-03 after that, which means
++# they will switch from -03 to -04 one hour after Santiago does that day.
++# For now, assume that they will not revert.
++
+ # 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 -
+@@ -1275,22 +1259,35 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Santiago -4:42:46 - LMT 1890
+ -4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
+- -5:00 - CLT 1916 Jul 1 # Chile Time
++ -5:00 - -05 1916 Jul 1
+ -4:42:46 - SMT 1918 Sep 10
+- -4:00 - CLT 1919 Jul 1
++ -4:00 - -04 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
++ -5:00 Chile -05/-04 1932 Sep 1
++ -4:00 - -04 1942 Jun 1
++ -5:00 - -05 1942 Aug 1
++ -4:00 - -04 1946 Jul 15
++ -4:00 1:00 -03 1946 Sep 1 # central Chile
++ -4:00 - -04 1947 Apr 1
++ -5:00 - -05 1947 May 21 23:00
++ -4:00 Chile -04/-03
++Zone America/Punta_Arenas -4:43:40 - LMT 1890
++ -4:42:46 - SMT 1910 Jan 10
++ -5:00 - -05 1916 Jul 1
++ -4:42:46 - SMT 1918 Sep 10
++ -4:00 - -04 1919 Jul 1
++ -4:42:46 - SMT 1927 Sep 1
++ -5:00 Chile -05/-04 1932 Sep 1
++ -4:00 - -04 1942 Jun 1
++ -5:00 - -05 1942 Aug 1
++ -4:00 - -04 1947 Apr 1
++ -5:00 - -05 1947 May 21 23:00
++ -4:00 Chile -04/-03 2016 Dec 4
++ -3:00 - -03
+ 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
++ -7:00 Chile -07/-06 1982 Mar 14 3:00u # Easter Time
++ -6:00 Chile -06/-05
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+@@ -1310,9 +1307,10 @@
+ #
+ # 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
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1982 May
++ -4:00 Chile -04/-03 2016 Dec 4
++ -3:00 - -03
+
+ # Colombia
+
+@@ -1325,7 +1323,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Bogota -4:56:16 - LMT 1884 Mar 13
+ -4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time
+- -5:00 CO CO%sT # Colombia Time
++ -5:00 CO -05/-04
+ # Malpelo, Providencia, San Andres
+ # no information; probably like America/Bogota
+
+@@ -1349,7 +1347,7 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
+- -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:30 - -0430 1965
+ -4:00 - AST
+
+ # From Arthur David Olson (2011-06-15):
+@@ -1364,19 +1362,32 @@
+ #
+ # Milne says the Central and South American Telegraph Company used -5:24:15.
+ #
+-# From Paul Eggert (2007-03-04):
+-# Apparently Ecuador had a failed experiment with DST in 1992.
+-# (2007-02-27) and
+-# (2006-11-06) both
+-# talk about "hora Sixto". Leave this alone for now, as we have no data.
++# From Alois Treindl (2016-12-15):
++# https://www.elcomercio.com/actualidad/hora-sixto-1993.html
++# ... Whether the law applied also to Galápagos, I do not know.
++# From Paul Eggert (2016-12-15):
++# https://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
++# This says President Sixto Durán Ballén signed decree No. 285, which
++# established DST from 1992-11-28 to 1993-02-05; it does not give transition
++# times. The people called it "hora de Sixto" ("Sixto hour"). The change did
++# not go over well; a popular song "Qué hora es" by Jaime Guevara had lyrics
++# that included "Amanecía en mitad de la noche, los guaguas iban a clase sin
++# sol" ("It was dawning in the middle of the night, the buses went to class
++# without sun"). Although Ballén's campaign slogan was "Ni un paso atrás"
++# (Not one step back), the clocks went back in 1993 and the experiment was not
++# repeated. For now, assume transitions were at 00:00 local time country-wide.
+ #
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Ecuador 1992 only - Nov 28 0:00 1:00 S
++Rule Ecuador 1993 only - Feb 5 0:00 0 -
++#
+ # 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 Ecuador -05/-04
+ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
+- -5:00 - ECT 1986
+- -6:00 - GALT # Galápagos Time
++ -5:00 - -05 1986
++ -6:00 Ecuador -06/-05
+
+ # Falklands
+
+@@ -1476,25 +1487,24 @@
+ # 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:00 Falk FK%sT 1985 Sep 15
+- -4:00 Falk FK%sT 2010 Sep 5 2:00
+- -3:00 - FKST
++ -4:00 Falk -04/-03 1983 May
++ -3:00 Falk -03/-02 1985 Sep 15
++ -4:00 Falk -04/-03 2010 Sep 5 2:00
++ -3:00 - -03
+
+ # French Guiana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Cayenne -3:29:20 - LMT 1911 Jul
+- -4:00 - GFT 1967 Oct # French Guiana Time
+- -3:00 - GFT
++ -4:00 - -04 1967 Oct
++ -3:00 - -03
+
+ # Guyana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -3:45 - -0345 1975 Jul 31
++ -3:00 - -03 1991
+ # IATA SSIM (1996-06) says -4:00. Assume a 1991 switch.
+- -4:00 - GYT
++ -4:00 - -04
+
+ # Paraguay
+ #
+@@ -1586,9 +1596,9 @@
+ # 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
+- -3:00 - PYT 1974 Apr
+- -4:00 Para PY%sT
++ -4:00 - -04 1972 Oct
++ -3:00 - -03 1974 Apr
++ -4:00 Para -04/-03
+
+ # Peru
+ #
+@@ -1615,12 +1625,12 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Lima -5:08:12 - LMT 1890
+ -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
+- -5:00 Peru PE%sT # Peru Time
++ -5:00 Peru -05/-04
+
+ # South Georgia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+- -2:00 - GST # South Georgia Time
++ -2:00 - -02
+
+ # South Sandwich Is
+ # uninhabited; scientific personnel have wintered
+@@ -1630,9 +1640,8 @@
+ 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:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
+- -3:30 - SRT 1984 Oct # Suriname Time
+- -3:00 - SRT
++ -3:30 - -0330 1984 Oct
++ -3:00 - -03
+
+ # Trinidad and Tobago
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -1735,11 +1744,16 @@
+ # [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]
++
++# This Zone can be simplified once we assume zic %z.
+ 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:00 Uruguay UY%sT
++ -3:30 Uruguay -0330/-03 1942 Dec 14
++ -3:00 Uruguay -03/-02 1968
++ -3:00 Uruguay -03/-0230 1971
++ -3:00 Uruguay -03/-02 1974
++ -3:00 Uruguay -03/-0230 1974 Dec 22
++ -3:00 Uruguay -03/-02
+
+ # Venezuela
+ #
+@@ -1764,7 +1778,7 @@
+ # 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
++# https://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
+ #
+ # From Matt Johnson (2016-04-20):
+ # ... published in the official Gazette [2016-04-18], here:
+@@ -1773,7 +1787,7 @@
+ # 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 2016 May 1 2:30
+- -4:00 - VET
++ -4:30 - -0430 1965 Jan 1 0:00
++ -4:00 - -04 2007 Dec 9 3:00
++ -4:30 - -0430 2016 May 1 2:30
++ -4:00 - -04
+--- contrib/tzdata/theory.html.orig
++++ contrib/tzdata/theory.html
+@@ -0,0 +1,1034 @@
++
++
++
++ Theory and pragmatics of the tz code and data
++
++
++
++
++
++
++
Theory and pragmatics of the tz code and data
++
Outline
++
++
++
++
++
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 timestamps 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 timestamps 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-2008, 2016 Edition.
++
++
++
++
++
++
++
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 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' and 'GMT+0', 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.
++
++
++ Use current abbreviations for older timestamps to avoid confusion.
++ For example, in 1910 a common English abbreviation for UT +01
++ in central Europe was 'MEZ' (short for both "Middle European
++ Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
++ 'CET' ("Central European Time") is more common in English, and
++ the database uses 'CET' even for circa-1910 timestamps as this
++ is less confusing for modern users and avoids the need for
++ determining when 'CET' supplanted 'MEZ' in common usage.
++
++
++ Use a consistent style in a zone's history. For example, if a zone's
++ history tends to use numeric abbreviations and a particular
++ entry could go either way, use a numeric abbreviation.
++
++
++ [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. 'CHAST' for CHAtham 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 timestamps, 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.
++
++
++ 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
++ "History of
++ legal time in Britain".
++ 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
++ clock error.
++
++
++ The tz database assumes Universal Time (UT) as an origin, even
++ though UT is not standardized for older timestamps. In the tz
++ database commentary, UT denotes a family of time standards that
++ includes Coordinated Universal Time (UTC) along with other variants
++ such as UT1 and GMT, with days starting at midnight. Although UT
++ equals UTC for modern timestamps, UTC was not defined until 1960,
++ so commentary uses the more-general abbreviation UT for timestamps
++ that might predate 1960. Since UT, UT1, etc. disagree slightly,
++ and since pre-1972 UTC seconds varied in length, interpretation of
++ older timestamps can be problematic when subsecond accuracy is
++ needed.
++
++
++ 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: Stephenson FR, Morrison LV, Hohenkerk CY.
++ Measurement
++ of the Earth's rotation: 720 BC to AD 2015.
++ Proc Royal Soc A. 2016 Dec 7;472:20160404.
++ Also see: Espenak F. Uncertainty
++ in Delta T (ΔT).
++
++
++ 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
++timestamps 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:
++
++ 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 New Zealand after 2007.
++ It says that standard time (NZST) is 12 hours ahead of UTC,
++ and that daylight saving time (NZDT) is observed from September's
++ last Sunday at 02:00 until April's first Sunday at 03:00:
++
++
TZ='NZST-12NZDT,M9.5.0,M4.1.0/3'
++
++ This POSIX TZ string is hard to remember, and mishandles some
++ timestamps before 2008. With this package you can use this
++ instead:
++
++
TZ='Pacific/Auckland'
++
++
++ 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 timestamps,
++ 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
++ localtime(&clock)->tm_zone
++ (if TM_ZONE is defined) or
++ tzname[localtime(&clock)->tm_isdst]
++ (if HAVE_TZNAME is defined)
++ to learn the correct time zone abbreviation to use.
++
++
++ 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:
++
++ 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.
++
++
++ The version number of the code and data, as the first line of
++ the text file 'version' in each release.
++
++
++
++Interface changes in a release attempt to preserve compatibility with
++recent releases. 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. Sources for time zone and daylight
++saving time data describes how
++releases are tagged and distributed.
++
++
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for
++timestamps, 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).
++Other information and sources are given in the file 'calendars'
++in the tz distribution. They sometimes disagree.
++
++
++
++
++
++
Time and time zones on other planets
++
++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.
++
++
++
++In our solar system, Mars is the planet with time and calendar most
++like Earth's. On other planets, Sun-based time and calendars would
++work quite differently. For example, although Mercury's sidereal
++rotation period is 58.646 Earth days, Mercury revolves around the Sun
++so rapidly that an observer on Mercury's equator would see a sunrise
++only every 175.97 Earth days, i.e., a Mercury year is 0.5 of a Mercury
++day. Venus is more complicated, partly because its rotation is
++slightly retrograde: its year is 1.92 of its days. Gas giants like
++Jupiter are trickier still, as their polar and equatorial regions
++rotate at different rates, so that the length of a day depends on
++latitude. This effect is most pronounced on Neptune, where the day is
++about 12 hours at the poles and 18 hours at the equator.
++
++
++
++Although the tz database does not support time on other planets, it is
++documented here in the hopes that support will be added eventually.
++
++
++
++
++
++
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/html
+\ No newline at end of property
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -1 +1 @@
+-2016i
++2017c
+--- contrib/tzdata/zishrink.awk.orig
++++ contrib/tzdata/zishrink.awk
+@@ -0,0 +1,156 @@
++# Convert tzdata source into a smaller version of itself.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++# This is not a general-purpose converter; it is designed for current tzdata.
++# 'zic' should treat this script's output as if it were identical to
++# this script's input.
++
++
++# Return a new rule name.
++# N_RULE_NAMES keeps track of how many rule names have been generated.
++
++function gen_rule_name(alphabet, base, rule_name, n, digit)
++{
++ alphabet = ""
++ alphabet = alphabet "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
++ alphabet = alphabet "abcdefghijklmnopqrstuvwxyz"
++ alphabet = alphabet "!$%&'()*+,./:;<=>?@[\\]^_`{|}~"
++ base = length(alphabet)
++ rule_name = ""
++ n = n_rule_names++
++
++ do {
++ n -= rule_name && n <= base
++ digit = n % base
++ rule_name = substr(alphabet, digit + 1, 1) rule_name
++ n = (n - digit) / base
++ } while (n);
++
++ return rule_name
++}
++
++# Process an input line and save it for later output.
++
++function process_input_line(line, field, end, i, n, startdef)
++{
++ # Remove comments, normalize spaces, and append a space to each line.
++ sub(/#.*/, "", line)
++ line = line " "
++ gsub(/[[:space:]]+/, " ", line)
++
++ # Abbreviate keywords. Do not abbreviate "Link" to just "L",
++ # as pre-2017c zic erroneously diagnoses "Li" as ambiguous.
++ sub(/^Link /, "Li ", line)
++ sub(/^Rule /, "R ", line)
++ sub(/^Zone /, "Z ", line)
++
++ # SystemV rules are not needed.
++ if (line ~ /^R SystemV /) return
++
++ # Replace FooAsia rules with the same rules without "Asia", as they
++ # are duplicates.
++ if (match(line, /[^ ]Asia /)) {
++ if (line ~ /^R /) return
++ line = substr(line, 1, RSTART) substr(line, RSTART + 5)
++ }
++
++ # Abbreviate times.
++ while (match(line, /[: ]0+[0-9]/))
++ line = substr(line, 1, RSTART) substr(line, RSTART + RLENGTH - 1)
++ while (match(line, /:0[^:]/))
++ line = substr(line, 1, RSTART - 1) substr(line, RSTART + 2)
++
++ # Abbreviate weekday names. Do not abbreviate "Sun" and "Sat", as
++ # pre-2017c zic erroneously diagnoses "Su" and "Sa" as ambiguous.
++ while (match(line, / (last)?(Mon|Wed|Fri)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 4) substr(line, end - 1)
++ }
++ while (match(line, / (last)?(Tue|Thu)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 3) substr(line, end - 1)
++ }
++
++ # Abbreviate "max", "only" and month names.
++ # Do not abbreviate "min", as pre-2017c zic erroneously diagnoses "mi"
++ # as ambiguous.
++ gsub(/ max /, " ma ", line)
++ gsub(/ only /, " o ", line)
++ gsub(/ Jan /, " Ja ", line)
++ gsub(/ Feb /, " F ", line)
++ gsub(/ Apr /, " Ap ", line)
++ gsub(/ Aug /, " Au ", line)
++ gsub(/ Sep /, " S ", line)
++ gsub(/ Oct /, " O ", line)
++ gsub(/ Nov /, " N ", line)
++ gsub(/ Dec /, " D ", line)
++
++ # Strip leading and trailing space.
++ sub(/^ /, "", line)
++ sub(/ $/, "", line)
++
++ # Remove unnecessary trailing zero fields.
++ sub(/ 0+$/, "", line)
++
++ # Remove unnecessary trailing days-of-month "1".
++ if (match(line, /[[:alpha:]] 1$/))
++ line = substr(line, 1, RSTART)
++
++ # Remove unnecessary trailing " Ja" (for January).
++ sub(/ Ja$/, "", line)
++
++ n = split(line, field)
++
++ # Abbreviate rule names.
++ i = field[1] == "Z" ? 4 : field[1] == "Li" ? 0 : 2
++ if (i && field[i] ~ /^[^-+0-9]/) {
++ if (!rule[field[i]])
++ rule[field[i]] = gen_rule_name()
++ field[i] = rule[field[i]]
++ }
++
++ # If this zone supersedes an earlier one, delete the earlier one
++ # from the saved output lines.
++ startdef = ""
++ if (field[1] == "Z")
++ zonename = startdef = field[2]
++ else if (field[1] == "Li")
++ zonename = startdef = field[3]
++ else if (field[1] == "R")
++ zonename = ""
++ if (startdef) {
++ i = zonedef[startdef]
++ if (i) {
++ do
++ output_line[i - 1] = ""
++ while (output_line[i++] ~ /^[-+0-9]/);
++ }
++ }
++ zonedef[zonename] = nout + 1
++
++ # Save the line for later output.
++ line = field[1]
++ for (i = 2; i <= n; i++)
++ line = line " " field[i]
++ output_line[nout++] = line
++}
++
++function output_saved_lines(i)
++{
++ for (i = 0; i < nout; i++)
++ if (output_line[i])
++ print output_line[i]
++}
++
++BEGIN {
++ print "# This zic input file is in the public domain."
++}
++
++/^[[:space:]]*[^#[:space:]]/ {
++ process_input_line($0)
++}
++
++END {
++ output_saved_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/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -142,6 +142,7 @@
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+ CL -3327-07040 America/Santiago Chile (most areas)
++CL -5309-07055 America/Punta_Arenas Region of Magallanes
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -185,7 +186,7 @@
+ GD +1203-06145 America/Grenada
+ GE +4143+04449 Asia/Tbilisi
+ GF +0456-05220 America/Cayenne
+-GG +4927-00232 Europe/Guernsey
++GG +492717-0023210 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+ GL +6411-05144 America/Godthab Greenland (most areas)
+@@ -220,7 +221,7 @@
+ IR +3540+05126 Asia/Tehran
+ IS +6409-02151 Atlantic/Reykjavik
+ IT +4154+01229 Europe/Rome
+-JE +4912-00207 Europe/Jersey
++JE +491101-0020624 Europe/Jersey
+ JM +175805-0764736 America/Jamaica
+ JO +3157+03556 Asia/Amman
+ JP +353916+1394441 Asia/Tokyo
+@@ -239,7 +240,8 @@
+ 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 +4431+05016 Asia/Aqtau Mangghystau/Mankistau
++KZ +4707+05156 Asia/Atyrau Atyrau/Atirau/Gur'yev
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -330,14 +332,15 @@
+ 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 +4844+04425 Europe/Volgograd MSK+00 - Volgograd
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5134+04602 Europe/Saratov MSK+01 - Saratov
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
+ 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 +5502+08255 Asia/Novosibirsk MSK+04 - 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
+@@ -395,7 +398,6 @@
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+ 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 (most areas)
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -2,7 +2,7 @@
+ #
+ # This file is in the public domain.
+ #
+-# From Paul Eggert (2014-07-31):
++# From Paul Eggert (2017-10-01):
+ # This file contains a table where each row stands for a zone where
+ # civil time stamps have agreed since 1970. Columns are separated by
+ # a single tab. Lines beginning with '#' are comments. All text uses
+@@ -16,7 +16,7 @@
+ # either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+ # first latitude (+ is north), then longitude (+ is east).
+ # 3. Zone name used in value of TZ environment variable.
+-# Please see the 'Theory' file for how zone names are chosen.
++# Please see the theory.html file for how zone names are chosen.
+ # If multiple zones overlap a country, each has a row in the
+ # table, with each column 1 containing the country code.
+ # 4. Comments; present if and only if a country has multiple zones.
+@@ -136,6 +136,7 @@
+ 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 Chile (most areas)
++CL -5309-07055 America/Punta_Arenas Region of Magallanes
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -211,8 +212,9 @@
+ KR +3733+12658 Asia/Seoul
+ 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 +5017+05710 Asia/Aqtobe Aqtöbe/Aktobe
++KZ +4431+05016 Asia/Aqtau Mangghystaū/Mankistau
++KZ +4707+05156 Asia/Atyrau Atyraū/Atirau/Gur'yev
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -288,14 +290,15 @@
+ 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 +4844+04425 Europe/Volgograd MSK+00 - Volgograd
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5134+04602 Europe/Saratov MSK+01 - Saratov
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
+ 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 +5502+08255 Asia/Novosibirsk MSK+04 - 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
+@@ -314,10 +317,11 @@
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+-SD,SS +1536+03232 Africa/Khartoum
++SD +1536+03232 Africa/Khartoum
+ SE +5920+01803 Europe/Stockholm
+ SG +0117+10351 Asia/Singapore
+ SR +0550-05510 America/Paramaribo
++SS +0451+03137 Africa/Juba
+ SV +1342-08912 America/El_Salvador
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
diff --git a/share/security/patches/EN-17:09/tzdata-10.3.patch.asc b/share/security/patches/EN-17:09/tzdata-10.3.patch.asc
new file mode 100644
index 0000000000..4306636d6e
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-10.3.patch.asc
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEEHPf/b631yp++G4yy7Wfs1l3PaucFAln7PXNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDFD
+RjdGRjZGQURGNUNBOUZCRTFCOENCMkVENjdFQ0Q2NURDRjZBRTcACgkQ7Wfs1l3P
+aufzVRAAwXKC4oBKgam/ixtN2mnnl7wfXyCT8cuDlfI/CboZeT/85ko2w1Md5SX9
+C4UOyfk78Lou2n4JFarC4dOtxXWUw3l2UidD/Hg0adqapwJMfssQE0ruE8W/U6yq
+6Svku1smd16V+ek5nh3XbaLtbzUCH5o3v2O2wvQ0q0CxpfOe2zfyFq446pduoDKx
+di2IDfgC+/Cejj+AKn/5d6o+oVO9uPYuzL2u466WRG/iz2sBwMU5B8dFBQUVv/12
+kY4ilnDf8NUQ+ABs4wjsXQnqWBS3t22SRIk/UUSK8socTXrzeN9+L00ibyPLdklr
+hhmsD2GBuiv5rnByNsRbSAk16UhCMswxG578Xh05KDMLHnIllJxaKlg/YXBz1r+h
+8+8ZTCP+ZZkNaT4RlCM4uNkrx7HK6URW0i0dUdmCW+WhcErn3RYRreqm8uLeYdQr
+OIJtSaJxph+DsWzrh9vCIskpR11nFUQTzV/CDdqQ1AuBSVdR3yt5dPKcxcG7Fmp8
+DMCMGRDoxVkflhnD9Zxj97oz5aXCMLaPR4ZNu2YjKCTAk327ySQwFEyAxd31ntzZ
+Ab6JBq1CbJJwGTJivSqBfvjtI5j4nAYj6q37xkFF7nuKPGbhysP7ejOWeFLsVvQs
+PxIClqICc9IjmVeFqQ82R/dWmZXC+f7S7CObYbVcY/TgDvj/w3A=
+=3wfa
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-17:09/tzdata-10.4.patch b/share/security/patches/EN-17:09/tzdata-10.4.patch
new file mode 100644
index 0000000000..029a330f03
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-10.4.patch
@@ -0,0 +1,5133 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -5,20 +5,26 @@
+ 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 tz@iana.org for use in the future. In your email, please give
++reliable sources that reviewers can check.
+
++-----
++
++Developers can contribute technical changes to the source code and
++data as follows.
++
+ 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 for
+-examples of patches that tend to work well. Ideally, additions to
++For more-elaborate changes, please read the theory.html file and browse
++the mailing list archives for
++examples of patches that tend to work well. Additions to
+ data should contain commentary citing reliable sources as
+-justification.
++justification. Citations should use https: URLs if available.
+
+ Please submit changes against either the latest release in
+- or the master branch of the development
++ or the master branch of the development
+ repository. If you use Git the following workflow may be helpful:
+
+ * Copy the development repository.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -1,4 +1,5 @@
+-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.
++Unless specified below, all files in the tz code and data (including
++this LICENSE file) are in the public domain.
++
++If the files date.c, newstrftime.3, and strftime.c are present, they
++contain material derived from BSD and use the BSD 3-clause license.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -49,6 +49,7 @@
+ # "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 should not contain "/" and should not be ".", ".." or empty.
+
+ TZDIR_BASENAME= zoneinfo
+ TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+@@ -75,7 +76,7 @@
+ # If you want only POSIX time, with time values interpreted as
+ # seconds since the epoch (not counting leap seconds), use
+ # REDO= posix_only
+-# below. If you want want only "right" time, with values interpreted
++# below. If you want only "right" time, with 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
+@@ -92,6 +93,24 @@
+
+ REDO= posix_right
+
++# To install data in text form that has all the information of the binary data,
++# (optionally incorporating leap second information), use
++# TZDATA_TEXT= tzdata.zi leapseconds
++# To install text data without leap second information (e.g., because
++# REDO='posix_only'), use
++# TZDATA_TEXT= tzdata.zi
++# To avoid installing text data, use
++# TZDATA_TEXT=
++
++TZDATA_TEXT= leapseconds tzdata.zi
++
++# For backward-compatibility links for old zone names, use
++# BACKWARD= backward pacificnew
++# To omit these links, use
++# BACKWARD=
++
++BACKWARD= backward pacificnew
++
+ # If you want out-of-scope and often-wrong data from the file 'backzone', use
+ # PACKRATDATA= backzone
+ # To omit this data, use
+@@ -99,6 +118,11 @@
+
+ PACKRATDATA=
+
++# The name of a locale using the UTF-8 encoding, used during self-tests.
++# The tests are skipped if the name does not appear to work on this system.
++
++UTF8_LOCALE= en_US.utf8
++
+ # Since "." may not be in PATH...
+
+ YEARISTYPE= ./yearistype
+@@ -106,50 +130,53 @@
+ # Non-default libraries needed to link.
+ LDLIBS=
+
+-# Add the following to the end of the "CFLAGS=" line as needed.
++# Add the following to the end of the "CFLAGS=" line as needed to override
++# defaults specified in the source code. "-DFOO" is equivalent to "-DFOO=1".
+ # -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DDEPRECATE_TWO_DIGIT_YEARS for optional runtime warnings about strftime
++# formats that generate only the last two digits of year numbers
++# -DEPOCH_LOCAL 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.
+ # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r
++# -DHAVE_DECL_ENVIRON if declares 'environ'
+ # -DHAVE_DIRECT_H if mkdir needs (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
++# -DHAVE_GENERIC=0 if _Generic does not work
++# -DHAVE_GETTEXT if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R 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_INTTYPES_H if you have a non-C99 compiler with
+ # -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 declares locale_t and strftime_l
+-# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_SNPRINTF=0 if your system lacks the snprintf function
++# -DHAVE_STDBOOL_H if you have a non-C99 compiler with
++# -DHAVE_STDINT_H if you have a non-C99 compiler with
++# -DHAVE_STRFTIME_L if declares locale_t and strftime_l
+ # -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_SYS_STAT_H=0 if your compiler lacks a
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a
+ # -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;
++# -DHAVE_UNISTD_H=0 if your compiler lacks a
++# -Dlocale_t=XXX if your system uses XXX instead of locale_t
++# -Dssize_t=long on hosts like MS-Windows that lack ssize_t
++# -DTHREAD_SAFE 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
++# This is intended for internal use only; it mangles external names.
+ # -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
++# -DUNINIT_TRAP 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.
+@@ -157,27 +184,28 @@
+ # (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 \
+- -Wundef -Wunused -Wwrite-strings \
+- -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
+- -Wno-type-limits -Wno-unused-parameter
++# Select instrumentation via "make GCC_INSTRUMENT='whatever'".
++GCC_INSTRUMENT = \
++ -fsanitize=undefined -fsanitize-address-use-after-scope \
++ -fsanitize-undefined-trap-on-error -fstack-protector
++GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
++ $(GCC_INSTRUMENT) \
++ -Wall -Wextra \
++ -Walloc-size-larger-than=100000 -Warray-bounds=2 \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement -Wdouble-promotion \
++ -Wformat=2 -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation \
++ -Winit-self -Wjump-misses-init -Wlogical-op \
++ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=5 \
++ -Wsuggest-attribute=const -Wsuggest-attribute=format \
++ -Wsuggest-attribute=noreturn -Wsuggest-attribute=pure \
++ -Wtrampolines -Wundef -Wuninitialized -Wunused \
++ -Wvariadic-macros -Wvla -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
+@@ -189,6 +217,31 @@
+ # 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.
+ #
++# The next batch of options control support for external variables
++# exported by tzcode. In practice these variables are less useful
++# than TM_GMTOFF and TM_ZONE. However, most of them are standardized.
++# #
++# # To omit or support the external variable "tzname", add one of:
++# # -DHAVE_TZNAME=0
++# # -DHAVE_TZNAME=1
++# # to the "CFLAGS=" line. "tzname" is required by POSIX 1988 and later.
++# # If not defined, the code attempts to guess HAVE_TZNAME from other macros.
++# # Warning: unless time_tz is also defined, HAVE_TZNAME=1 can cause
++# # crashes when combined with some platforms' standard libraries,
++# # presumably due to memory allocation issues.
++# #
++# # To omit or support the external variables "timezone" and "daylight", add
++# # -DUSG_COMPAT=0
++# # -DUSG_COMPAT=1
++# # to the "CFLAGS=" line; "timezone" and "daylight" are inspired by
++# # Unix Systems Group code and are required by POSIX 2008 (with XSI) and later.
++# # If not defined, the code attempts to guess USG_COMPAT from other macros.
++# #
++# # To support the external variable "altzone", add
++# # -DALTZONE
++# # to the end of the "CFLAGS=" line; although "altzone" appeared in
++# # System V Release 3.1 it has not been standardized.
++#
+ # If you want functions that were inspired by early versions of X3J11's work,
+ # add
+ # -DSTD_INSPIRED
+@@ -226,11 +279,6 @@
+ # -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
+@@ -240,8 +288,8 @@
+ # 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
++# 53 as a week number (rather than 52 or 53) for January days before
++# January's first Monday when a "%V" format is used and January 1
+ # falls on a Friday, Saturday, or Sunday.
+
+ CFLAGS=
+@@ -265,7 +313,7 @@
+
+ # How to use zic to install tz binary files.
+
+-ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++ZIC_INSTALL= $(ZIC) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
+
+ # The name of a Posix-compliant 'awk' on your system.
+ AWK= awk
+@@ -289,6 +337,7 @@
+ # The name, arguments and environment of a program to validate your web pages.
+ # See for a validator, and
+ # for a validation library.
++# Set VALIDATE=':' if you do not have such a program.
+ VALIDATE = nsgmls
+ VALIDATE_FLAGS = -s -B -wall -wno-unused-param
+ VALIDATE_ENV = \
+@@ -355,7 +404,7 @@
+ RANLIB= :
+
+ TZCOBJS= zic.o
+-TZDOBJS= zdump.o localtime.o asctime.o
++TZDOBJS= zdump.o localtime.o asctime.o strftime.o
+ DATEOBJS= date.o localtime.o strftime.o asctime.o
+ LIBSRCS= localtime.c asctime.c difftime.c
+ LIBOBJS= localtime.o asctime.o difftime.o
+@@ -370,20 +419,22 @@
+ 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
++COMMON= calendars CONTRIBUTING LICENSE Makefile \
++ NEWS README theory.html 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
++YDATA= $(PRIMARY_YDATA) etcetera $(BACKWARD)
+ NDATA= systemv factory
+ TDATA= $(YDATA) $(NDATA)
+ ZONETABLES= zone1970.tab zone.tab
+-TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++TABDATA= iso3166.tab $(TZDATA_TEXT) $(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
++TZDATA_ZI_DEPS= zishrink.awk $(TDATA) $(PACKRATDATA)
++DATA= $(YDATA) $(NDATA) backzone iso3166.tab leap-seconds.list \
++ leapseconds yearistype.sh $(ZONETABLES)
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk zishrink.awk
+ MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
+ TZS_YEAR= 2050
+ TZS= to$(TZS_YEAR).tzs
+@@ -390,13 +441,13 @@
+ 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)
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS) tzdata.zi
+
+ # 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 \
++ calendars CONTRIBUTING LICENSE Makefile NEWS README \
+ africa antarctica asctime.c asia australasia \
+ backward backzone \
+ checklinks.awk checktab.awk \
+@@ -405,7 +456,7 @@
+ leap-seconds.list leapseconds.awk localtime.c \
+ newctime.3 newstrftime.3 newtzset.3 northamerica \
+ pacificnew private.h \
+- southamerica strftime.c systemv \
++ southamerica strftime.c systemv theory.html \
+ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
+ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
+ workman.sh yearistype.sh \
+@@ -427,7 +478,7 @@
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
+- cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp -f $(TABDATA) $(DESTDIR)$(TZDIR)/.
+ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
+ cp libtz.a $(DESTDIR)$(LIBDIR)/.
+ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
+@@ -448,6 +499,11 @@
+ printf '%s\n' "$$V" >$@.out
+ mv $@.out $@
+
++# This file can be tailored by setting BACKWARD, PACKRATDATA, etc.
++tzdata.zi: $(TZDATA_ZI_DEPS)
++ LC_ALL=C $(AWK) -f zishrink.awk $(TDATA) $(PACKRATDATA) >$@.out
++ mv $@.out $@
++
+ version.h: version
+ VERSION=`cat version` && printf '%s\n' \
+ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
+@@ -473,6 +529,7 @@
+ # Arguments to pass to submakes of install_data.
+ # They can be overridden by later submake arguments.
+ INSTALLARGS = \
++ BACKWARD=$(BACKWARD) \
+ DESTDIR=$(DESTDIR) \
+ LEAPSECONDS='$(LEAPSECONDS)' \
+ PACKRATDATA='$(PACKRATDATA)' \
+@@ -481,10 +538,8 @@
+ 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)
++install_data: zic leapseconds yearistype tzdata.zi
++ $(ZIC_INSTALL) tzdata.zi
+
+ posix_only:
+ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
+@@ -521,14 +576,14 @@
+
+ zones: $(REDO)
+
+-$(TZS_NEW): $(TDATA) zdump zic
++$(TZS_NEW): tzdata.zi 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
++ $(zic) -d tzs.dir tzdata.zi
++ $(AWK) '/^L/{print "Link\t" $$2 "\t" $$3}' \
++ tzdata.zi | LC_ALL=C sort >$@.out
+ wd=`pwd` && \
+ zones=`$(AWK) -v wd="$$wd" \
+- '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ '/^Z/{print wd "/tzs.dir/" $$2}' tzdata.zi \
+ | LC_ALL=C sort` && \
+ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
+ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
+@@ -564,18 +619,24 @@
+ chmod +x $@.out
+ mv $@.out $@
+
+-check: check_character_set check_white_space check_links check_sorted \
+- check_tables check_tzs check_web
++check: check_character_set check_white_space check_links \
++ check_name_lengths check_sorted \
++ check_tables check_web check_zishrink check_tzs
+
+ check_character_set: $(ENCHILADA)
+- LC_ALL=en_US.utf8 && export LC_ALL && \
++ test ! '$(UTF8_LOCALE)' || \
++ ! printf 'A\304\200B\n' | \
++ LC_ALL='$(UTF8_LOCALE)' grep -q '^A.B$$' >/dev/null 2>&1 || { \
++ LC_ALL='$(UTF8_LOCALE)' && export LC_ALL && \
+ sharp='#' && \
+ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
+ $(MISC) $(SOURCES) $(WEB_PAGES) \
+- CONTRIBUTING LICENSE Makefile README version && \
++ CONTRIBUTING LICENSE Makefile README \
++ version tzdata.zi && \
+ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
+ leapseconds yearistype.sh zone.tab && \
+- ! grep -Env $(OK_LINE) $(ENCHILADA)
++ ! grep -Env $(OK_LINE) $(ENCHILADA); \
++ }
+
+ check_white_space: $(ENCHILADA)
+ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
+@@ -582,6 +643,13 @@
+ ! grep -En "$$pat" $(ENCHILADA)
+ ! grep -n '[[:space:]]$$' $(ENCHILADA)
+
++PRECEDES_FILE_NAME = ^(Zone|Link[[:space:]]+[^[:space:]]+)[[:space:]]+
++FILE_NAME_COMPONENT_TOO_LONG = \
++ $(PRECEDES_FILE_NAME)[^[:space:]]*[^/[:space:]]{15}
++
++check_name_lengths: $(TDATA) backzone
++ ! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' $(TDATA) backzone
++
+ 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
+@@ -596,6 +664,7 @@
+
+ check_links: checklinks.awk $(TDATA)
+ $(AWK) -f checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk tzdata.zi
+
+ check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
+ for tab in $(ZONETABLES); do \
+@@ -606,14 +675,32 @@
+ check_tzs: $(TZS) $(TZS_NEW)
+ diff -u $(TZS) $(TZS_NEW)
+
+-check_web: $(WEB_PAGES)
+- $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++# This checks only the HTML 4.01 strict page.
++# To check the the other pages, use .
++check_web: tz-how-to.html
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) tz-how-to.html
+
++# Check that tzdata.zi generates the same binary data that its sources do.
++check_zishrink: tzdata.zi zic leapseconds $(PACKRATDATA) $(TDATA)
++ for type in posix right; do \
++ mkdir -p time_t.dir/$$type time_t.dir/$$type-shrunk && \
++ case $$type in \
++ right) leap='-L leapseconds';; \
++ *) leap=;; \
++ esac && \
++ $(ZIC) $$leap -d time_t.dir/$$type $(TDATA) && \
++ $(AWK) '/^Rule/' $(TDATA) | \
++ $(ZIC) $$leap -d time_t.dir/$$type - $(PACKRATDATA) && \
++ $(ZIC) $$leap -d time_t.dir/$$type-shrunk tzdata.zi && \
++ diff -r time_t.dir/$$type time_t.dir/$$type-shrunk || exit; \
++ done
++ rm -fr time_t.dir
++
+ 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)
++ rm -fr *.dir tzdata.zi tzdb-*/ $(TZS_NEW)
+
+ maintainer-clean: clean
+ @echo 'This command is intended for maintainers to use; it'
+@@ -667,6 +754,7 @@
+ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
+ exit; \
+ done
++ touch -cmr `ls -t $(TZDATA_ZI_DEPS) | sed 1q` tzdata.zi
+ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
+ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
+ touch $@
+@@ -678,7 +766,7 @@
+ $(MAKE) maintainer-clean
+ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
+ mkdir -p public.dir
+- for i in $(TDATA) ; do \
++ for i in $(TDATA) tzdata.zi; do \
+ $(zic) -v -d public.dir $$i 2>&1 || exit; \
+ done
+ $(zic) -v -d public.dir $(TDATA)
+@@ -772,8 +860,8 @@
+ $(MAKE) clean ; \
+ done
+
+-zonenames: $(TDATA)
+- @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++zonenames: tzdata.zi
++ @$(AWK) '/^Z/ { print $$2 } /^L/ { print $$3 }' tzdata.zi
+
+ asctime.o: private.h tzfile.h
+ date.o: private.h
+@@ -789,6 +877,7 @@
+ .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: check_zishrink
+ .PHONY: clean clean_misc force_tzs
+ .PHONY: install install_data maintainer-clean names
+ .PHONY: posix_only posix_packrat posix_right
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -1,5 +1,169 @@
+ News for the tz database
+
++Release 2017c - 2017-10-20 14:49:34 -0700
++
++ Briefly:
++ Northern Cyprus switches from +03 to +02/+03 on 2017-10-29.
++ Fiji ends DST 2018-01-14, not 2018-01-21.
++ Namibia switches from +01/+02 to +02 on 2018-04-01.
++ Sudan switches from +03 to +02 on 2017-11-01.
++ Tonga likely switches from +13/+14 to +13 on 2017-11-05.
++ Turks & Caicos switches from -04 to -05/-04 on 2018-11-04.
++ A new file tzdata.zi now holds a small text copy of all data.
++ The zic input format has been regularized slightly.
++
++ Changes to future time stamps
++
++ Northern Cyprus has decided to resume EU rules starting
++ 2017-10-29, thus reinstituting winter time.
++
++ Fiji ends DST 2018-01-14 instead of the 2018-01-21 previously
++ predicted. (Thanks to Dominic Fok.) Adjust future predictions
++ accordingly.
++
++ Namibia will switch from +01 with DST to +02 all year on
++ 2017-09-03 at 02:00. This affects UT offsets starting 2018-04-01
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Sudan will switch from +03 to +02 on 2017-11-01. (Thanks to Ahmed
++ Atyya and Yahia Abdalla.) South Sudan is not switching, so
++ Africa/Juba is no longer a link to Africa/Khartoum.
++
++ Tonga has likely ended its experiment with DST, and will not
++ adjust its clocks on 2017-11-05. Although Tonga has not announced
++ whether it will continue to observe DST, the IATA is assuming that
++ it will not. (Thanks to David Wade.)
++
++ Turks & Caicos will switch from -04 all year to -05 with US DST on
++ 2018-03-11 at 03:00. This affects UT offsets starting 2018-11-04
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Namibia switched from +02 to +01 on 1994-03-21, not 1994-04-03.
++ (Thanks to Arthur David Olson.)
++
++ Detroit did not observe DST in 1967.
++
++ Use railway time for Asia/Kolkata before 1941, by switching to
++ Madras local time (UT +052110) in 1870, then to IST (UT +0530) in
++ 1906. Also, treat 1941-2's +0630 as DST, like 1942-5.
++
++ Europe/Dublin's 1946 and 1947 fallback transitions occurred at
++ 02:00 standard time, not 02:00 DST. (Thanks to Michael Deckers.)
++
++ Pacific/Apia and Pacific/Pago_Pago switched from Antipodean to
++ American time in 1892, not 1879. (Thanks to Michael Deckers.)
++
++ Adjust the 1867 transition in Alaska to better reflect the
++ historical record, by changing it to occur on 1867-10-18 at 15:30
++ Sitka time rather than at the start of 1867-10-17 local time.
++ Although strictly speaking this is accurate only for Sitka,
++ the rest of Alaska's blanks need to be filled in somehow.
++
++ Fix off-by-one errors in UT offsets for Adak and Nome before 1867.
++ (Thanks to Michael Deckers.)
++
++ Add 7 s to the UT offset in Asia/Yangon before 1920.
++
++ Changes to zone names
++
++ Remove Canada/East-Saskatchewan from the 'backward' file, as it
++ exceeded the 14-character limit and was an unused misnomer anyway.
++
++ Changes to build procedure
++
++ To support applications that prefer to read time zone data in text
++ form, two zic input files tzdata.zi and leapseconds are now
++ installed by default. The commands 'zic tzdata.zi' and 'zic -L
++ leapseconds tzdata.zi' can reproduce the tzdata binary files
++ without and with leap seconds, respectively. To prevent these two
++ new files from being installed, use 'make TZDATA_TEXT=', and to
++ suppress leap seconds from the tzdata text installation, use 'make
++ TZDATA_TEXT=tzdata.zi'.
++
++ 'make BACKWARD=' now suppresses backward-compatibility names
++ like 'US/Pacific' that are defined in the 'backward' and
++ 'pacificnew' files.
++
++ 'make check' now works on systems that lack a UTF-8 locale,
++ or that lack the nsgmls program. Set UTF8_LOCALE to configure
++ the name of a UTF-8 locale, if you have one.
++
++ Y2K runtime checks are no longer enabled by default. Add
++ -DDEPRECATE_TWO_DIGIT_YEARS to CFLAGS to enable them, instead of
++ adding -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU
++ to disable them. (New name suggested by Brian Inglis.)
++
++ The build procedure for zdump now works on AIX 7.1.
++ (Problem reported by Kees Dekker.)
++
++ Changes to code
++
++ zic and the reference runtime now reject multiple leap seconds
++ within 28 days of each other, or leap seconds before the Epoch.
++ As a result, support for double leap seconds, which was
++ obsolescent and undocumented, has been removed. Double leap
++ seconds were an error in the C89 standard; they have never existed
++ in civil timekeeping. (Thanks to Robert Elz and Bradley White for
++ noticing glitches in the code that uncovered this problem.)
++
++ zic now warns about use of the obsolescent and undocumented -y
++ option, and about use of the obsolescent TYPE field of Rule lines.
++
++ zic now allows unambiguous abbreviations like "Sa" and "Su" for
++ weekdays; formerly it rejected them due to a bug. Conversely, zic
++ no longer considers non-prefixes to be abbreviations; for example,
++ it no longer accepts "lF" as an abbreviation for "lastFriday".
++ Also, zic warns about the undocumented usage with a "last-"
++ prefix, e.g., "last-Fri".
++
++ Similarly, zic now accepts the unambiguous abbreviation "L" for
++ "Link" in ordinary context and for "Leap" in leap-second context.
++ Conversely, zic no longer accepts non-prefixes such as "La" as
++ abbreviations for words like "Leap".
++
++ zic no longer accepts leap second lines in ordinary input, or
++ ordinary lines in leap second input. Formerly, zic sometimes
++ warned about this undocumented usage and handled it incorrectly.
++
++ The new macro HAVE_TZNAME governs whether the tzname external
++ variable is exported, instead of USG_COMPAT. USG_COMPAT now
++ governs only the external variables "timezone" and "daylight".
++ This change is needed because the three variables are not in the
++ same category: although POSIX requires tzname, it specifies the
++ other two variables as optional. Also, USG_COMPAT is now 1 or 0:
++ if not defined, the code attempts to guess it from other macros.
++
++ localtime.c and difftime.c no longer require stdio.h, and .c files
++ other than zic.c no longer require sys/wait.h.
++
++ zdump.c no longer assumes snprintf. (Reported by Jonathan Leffler.)
++
++ Calculation of time_t extrema works around a bug in GCC 4.8.4
++ (Reported by Stan Shebs and Joseph Myers.)
++
++ zic.c no longer mistranslates formats of line numbers in non-English
++ locales. (Problem reported by Benno Schulenberg.)
++
++ Several minor changes have been made to the code to make it a
++ bit easier to port to MS-Windows and Solaris. (Thanks to Kees
++ Dekker for reporting the problems.)
++
++ Changes to documentation and commentary
++
++ The two new files 'theory.html' and 'calendars' contain the
++ contents of the removed file 'Theory'. The goal is to document
++ tzdb theory more accessibly.
++
++ The zic man page now documents abbreviation rules.
++
++ tz-link.htm now covers how to apply tzdata changes to clients.
++ (Thanks to Jorge Fábregas for the AIX link.) It also mentions MySQL.
++
++ The leap-seconds.list URL has been updated to something that is
++ more reliable for tzdb. (Thanks to Tim Parenti and Brian Inglis.)
++
+ Release 2017b - 2017-03-17 07:30:38 -0700
+
+ Briefly: Haiti has resumed DST.
+@@ -15,7 +179,17 @@
+ Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
+ is one byte over the POSIX limit. (Problem reported by Derick Rethans.)
+
++ Changes to code
+
++ The reference localtime implementation now falls back on the
++ current US daylight-saving transition rules rather than the
++ 1987-2006 rules. This fallback occurs only when (1) the TZ
++ environment variable's value has a name like "AST4ADT" that asks
++ for daylight saving time but does not specify the rules, (2) there
++ is no file by that name, and (3) the TZDEFRULES file cannot be
++ loaded. (Thanks to Tom Lane.)
++
++
+ Release 2017a - 2017-02-28 00:05:36 -0800
+
+ Briefly: Southern Chile moves from -04/-03 to -03, and Mongolia
+@@ -1981,7 +2155,7 @@
+
+ The 'leapseconds' file is now generated automatically from a
+ new file 'leap-seconds.list', which is a copy of
+- .
++
+ A new source file 'leapseconds.awk' implements this.
+ The goal is simplification of the future maintenance of 'leapseconds'.
+
+@@ -2187,7 +2361,7 @@
+
+ Many changes affect historical timestamps before 1940.
+ These were deduced from: Milne J. Civil time. Geogr J. 1899
+- Feb;13(2):173-94 .
++ Feb;13(2):173-94 .
+
+ Changes affecting the code:
+
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -1,870 +0,0 @@
+-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
+- Interface stability
+- 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-2008, 2016 Edition
+-
+-
+-
+-
+------ 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
+- 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.
+-
+- Use current abbreviations for older timestamps to avoid confusion.
+- For example, in 1910 a common English abbreviation for UT +01
+- in central Europe was 'MEZ' (short for both "Middle European
+- Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
+- 'CET' ("Central European Time") is more common in English, and
+- the database uses 'CET' even for circa-1910 timestamps as this
+- is less confusing for modern users and avoids the need for
+- determining when 'CET' supplanted 'MEZ' in common usage.
+-
+- Use a consistent style in a zone's history. For example, if a zone's
+- history tends to use numeric abbreviations and a particular
+- entry could go either way, use a numeric abbreviation.
+-
+- [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. 'CHAST' for CHAtham 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 .
+- 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
+- clock error.
+-
+- * The tz database assumes Universal Time (UT) as an origin, even
+- though UT is not standardized for older time stamps. In the tz
+- database commentary, UT denotes a family of time standards that
+- includes Coordinated Universal Time (UTC) along with other variants
+- such as UT1 and GMT, with days starting at midnight. Although UT
+- equals UTC for modern time stamps, UTC was not defined until 1960,
+- so commentary uses the more-general abbreviation UT for time stamps
+- that might predate 1960. Since UT, UT1, etc. disagree slightly,
+- and since pre-1972 UTC seconds varied in length, interpretation of
+- older time stamps can be problematic when subsecond accuracy is
+- needed.
+-
+- * 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: Stephenson FR, Morrison LV, Hohenkerk CY.
+- Measurement of the Earth's rotation: 720 BC to AD 2015.
+- Proc Royal Soc A. 2016 Dec 7;472:20160404.
+- http://dx.doi.org/10.1098/rspa.2016.0404
+- Also see: Espenak F. Uncertainty in Delta T (ΔT).
+- http://eclipse.gsfc.nasa.gov/SEhelp/uncertainty2004.html
+-
+- * 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 ""; 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.
+-
+- * The version number of the code and data, as the first line of
+- the text file 'version' in each release.
+-
+-Interface changes in a release attempt to preserve compatibility with
+-recent releases. 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. The tz-link.htm file describes how
+-releases are tagged and distributed.
+-
+-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)
+-.
+-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?
+-
+-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"
+- (2012-08-08).
+-
+-Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
+-
+-(2004-01-14), pp A1, A20-A21.
+-
+-Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
+-
+-
+------
+-
+-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
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -218,7 +218,7 @@
+ # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+ # From Jesper Nørgaard Welen (2007-08-15): [The following agree:]
+ # http://www.nentjes.info/Bill/bill5.htm
+-# http://www.timeanddate.com/worldclock/city.html?n=53
++# https://www.timeanddate.com/worldclock/city.html?n=53
+ # From Steffen Thorsen (2007-09-04): The official information...:
+ # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
+@@ -256,8 +256,8 @@
+ # timeanddate[2] and another site I've found[3] also support that.
+ #
+ # [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263
+-# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53
+-# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
++# [2] https://www.timeanddate.com/worldclock/clockchange.html?n=53
++# [3] https://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+
+ # From Arthur David Olson (2009-04-20):
+ # In 2009 (and for the next several years), Ramadan ends before the fourth
+@@ -267,10 +267,10 @@
+ # From Steffen Thorsen (2009-08-11):
+ # We have been able to confirm the August change with the Egyptian Cabinet
+ # Information and Decision Support Center:
+-# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
++# https://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+ #
+ # The Middle East News Agency
+-# http://www.mena.org.eg/index.aspx
++# https://www.mena.org.eg/index.aspx
+ # also reports "Egypt starts winter time on August 21"
+ # today in article numbered "71, 11/08/2009 12:25 GMT."
+ # Only the title above is available without a subscription to their service,
+@@ -320,7 +320,7 @@
+ # 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
++# https://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
+@@ -447,11 +447,11 @@
+
+ # From Even Scharning (2012-11-10):
+ # Libya set their time one hour back at 02:00 on Saturday November 10.
+-# http://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
++# https://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
+ # Here is an official source [in Arabic]: http://ls.ly/fb6Yc
+ #
+ # Steffen Thorsen forwarded a translation (2012-11-10) in
+-# http://mm.icann.org/pipermail/tz/2012-November/018451.html
++# https://mm.icann.org/pipermail/tz/2012-November/018451.html
+ #
+ # From Tim Parenti (2012-11-11):
+ # Treat the 2012-11-10 change as a zone change from UTC+2 to UTC+1.
+@@ -462,7 +462,7 @@
+ # From Even Scharning (2013-10-25):
+ # The scheduled end of DST in Libya on Friday, October 25, 2013 was
+ # cancelled yesterday....
+-# http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
++# https://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 UT +02.
+@@ -515,7 +515,7 @@
+ # basis....
+ # It seems that Mauritius observed daylight saving time from 1982-10-10 to
+ # 1983-03-20 as well, but that was not successful....
+-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
++# https://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+ # From Alex Krivenyshev (2008-06-25):
+ # http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+@@ -583,7 +583,7 @@
+ # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
++# https://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+
+ # From Arthur David Olson (2009-07-11):
+ # The "mauritius-dst-will-not-repeat" wrapup includes this:
+@@ -615,7 +615,7 @@
+ # be one hour ahead of GMT between 1 June and 27 September, according to
+ # Communication Minister and Government Spokesman, Khalid Naciri...."
+ #
+-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
++# http://www.worldtimezone.com/dst_news/dst_news_morocco01.html
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+@@ -628,7 +628,7 @@
+
+ # From Patrice Scattolin (2008-05-09):
+ # According to this article:
+-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
++# https://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+ # (and republished here: )
+ # the changes occur at midnight:
+ #
+@@ -650,7 +650,7 @@
+ # posted in English).
+ #
+ # The following Google query will generate many relevant hits:
+-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
++# https://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+
+ # From Steffen Thorsen (2008-08-27):
+ # Morocco will change the clocks back on the midnight between August 31
+@@ -661,7 +661,7 @@
+ # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+ #
+ # We have some further details posted here:
+-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
++# https://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+
+ # From Steffen Thorsen (2009-03-17):
+ # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+@@ -671,7 +671,7 @@
+ # (French)
+ #
+ # Our summary:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+@@ -694,7 +694,7 @@
+ # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html
+ # (French)
+ # Our page:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+@@ -711,7 +711,7 @@
+ # They said that the decision was already taken.
+ #
+ # More articles in the press
+-# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
++# https://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
+ # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923
+ # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim
+
+@@ -803,7 +803,7 @@
+ # 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/
++# https://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
+@@ -812,7 +812,7 @@
+ # [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
+-# agrees
++# agrees
+ # with the patch.
+
+ # From Paul Eggert (2015-06-08):
+@@ -937,10 +937,18 @@
+ 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 Arthur David Olson (2017-08-09):
++# The text of the "Namibia Time Act, 1994" is available online at
++# www.lac.org.na/laws/1994/811.pdf
++# and includes this nugget:
++# Notwithstanding the provisions of subsection (2) of section 1, the
++# first winter period after the commencement of this Act shall
++# commence at OOhOO on Monday 21 March 1994 and shall end at 02h00 on
++# Sunday 4 September 1994.
++
+ # From Petronella Sibeene (2007-03-30):
+ # http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+@@ -955,11 +963,21 @@
+ # observes Botswana time, we have no details about historical practice.
+ # In the meantime people there can use Africa/Gaborone.
+ # See: Immanuel S. The Namibian. 2017-02-23.
+-# http://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
++# https://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
+
++# From Steffen Thorsen (2017-08-09):
++# Namibia is going to change their time zone to what is now their DST:
++# https://www.newera.com.na/2017/02/23/namibias-winter-time-might-be-repealed/
++# This video is from the government decision:
++# https://www.nbc.na/news/na-passes-namibia-time-bill-repealing-1994-namibia-time-act.8665
++# We have made the assumption so far that they will change their time zone at
++# the same time they would normally start DST, the first Sunday in September:
++# https://www.timeanddate.com/news/time/namibia-new-time-zone.html
++
+ # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
+-Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
++Rule Namibia 1994 only - Mar 21 0:00 0 -
++Rule Namibia 1994 2016 - Sep Sun>=1 2:00 1:00 S
++Rule Namibia 1995 2017 - Apr Sun>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
+ 1:30 - +0130 1903 Mar
+@@ -966,8 +984,9 @@
+ 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
++ 2:00 - CAT 1994 Mar 21 0:00
++ 1:00 Namibia WA%sT 2017 Sep 3 2:00
++ 2:00 - CAT
+
+ # Niger
+ # See Africa/Lagos.
+@@ -1054,7 +1073,7 @@
+ # no information
+
+ # Sudan
+-#
++
+ # From
+ # Sudan News Agency (2000-01-13),
+ # also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen:
+@@ -1061,7 +1080,17 @@
+ # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+ # Saturday.... This was announced Thursday by Caretaker State Minister for
+ # Manpower Abdul-Rahman Nur-Eddin.
++
++# From Ahmed Atyya, National Telecommunications Corp. (NTC), Sudan (2017-10-17):
++# ... the Republic of Sudan is going to change the time zone from (GMT+3:00)
++# to (GMT+ 2:00) starting from Wednesday 1 November 2017.
+ #
++# From Paul Eggert (2017-10-18):
++# A scanned copy (in Arabic) of Cabinet Resolution No. 352 for the
++# year 2017 can be found as an attachment in email today from Yahia
++# Abdalla of NTC, archived at:
++# https://mm.icann.org/pipermail/tz/2017-October/025333.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Sudan 1970 only - May 1 0:00 1:00 S
+ Rule Sudan 1970 1985 - Oct 15 0:00 0 -
+@@ -1070,10 +1099,14 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Khartoum 2:10:08 - LMT 1931
+ 2:00 Sudan CA%sT 2000 Jan 15 12:00
+- 3:00 - EAT
++ 3:00 - EAT 2017 Nov 1
++ 2:00 - CAT
+
+ # South Sudan
+-Link Africa/Khartoum Africa/Juba
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Africa/Juba 2:06:28 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
+
+ # Swaziland
+ # See Africa/Johannesburg.
+@@ -1111,11 +1144,11 @@
+ # According to several news sources, Tunisia will not observe DST this year.
+ # (Arabic)
+ # http://www.elbashayer.com/?page=viewn&nid=42546
+-# http://www.babnet.net/kiwidetail-15295.asp
++# https://www.babnet.net/kiwidetail-15295.asp
+ #
+ # We have also confirmed this with the US embassy in Tunisia.
+ # We have a wrap-up about this on the following page:
+-# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
++# https://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to Tunis Afrique Presse News Agency
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -26,7 +26,7 @@
+ # 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
++# https://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.
+ #
+@@ -47,7 +47,7 @@
+ # http://www.aad.gov.au/default.asp?casid=37079
+ #
+ # We have more background information here:
+-# http://www.timeanddate.com/news/time/antarctica-new-times.html
++# https://www.timeanddate.com/news/time/antarctica-new-times.html
+
+ # From Steffen Thorsen (2010-03-10):
+ # We got these changes from the Australian Antarctic Division: ...
+@@ -62,7 +62,7 @@
+ # - Mawson station stays on UTC+5.
+ #
+ # Background:
+-# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
++# https://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
+@@ -145,7 +145,7 @@
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+-# (2005-12-05)
++# (2005-12-05)
+ #
+ # Another base at Port-Martin, 50km east, began operation in 1947.
+ # It was destroyed by fire on 1952-01-14.
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://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.
+@@ -75,8 +75,8 @@
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 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 -
++Rule RussiaAsia 1985 2010 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2010 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -109,6 +109,9 @@
+ # or
+ # (brief)
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Armenia 2011 only - Mar lastSun 2:00s 1:00 S
++Rule Armenia 2011 only - Oct lastSun 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+ 3:00 - +03 1957 Mar
+@@ -115,7 +118,8 @@
+ 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
++ 4:00 RussiaAsia +04/+05 2011
++ 4:00 Armenia +04/+05
+
+ # Azerbaijan
+
+@@ -127,7 +131,7 @@
+ # 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
++# https://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
+
+@@ -168,11 +172,11 @@
+ # the 19th and 20th, and they have not set the end date yet.
+ #
+ # Some sources:
+-# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
++# https://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+ # http://bdnews24.com/details.php?id=85889&cid=2
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
++# https://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+
+ # From A. N. M. Kamrus Saadat (2009-06-15):
+ # Finally we've got the official mail regarding DST start time where DST start
+@@ -258,9 +262,15 @@
+
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
++# From Paul Eggert (2017-04-20):
++# Page 27 of Reed & Low (cited for Asia/Kolkata) says "Rangoon local time is
++# used upon the railways and telegraphs of Burma, and is 6h. 24m. 47s. ahead
++# of Greenwich." This refers to the period before Burma's transition to +0630,
++# a transition for which Shanks is the only source.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
+- 6:24:40 - RMT 1920 # Rangoon Mean Time?
++Zone Asia/Yangon 6:24:47 - LMT 1880 # or Rangoon
++ 6:24:47 - RMT 1920 # Rangoon local time
+ 6:30 - +0630 1942 May
+ 9:00 - +09 1945 May 3
+ 6:30 - +0630
+@@ -317,7 +327,7 @@
+ #
+ # From Jesper Nørgaard Welen (2006-07-14):
+ # I have investigated the timezones around 1970 on the
+-# http://www.astro.com/atlas site [with provinces and county
++# https://www.astro.com/atlas site [with provinces and county
+ # boundaries summarized below].... A few other exceptions were two
+ # counties on the Sichuan side of the Xizang-Sichuan border,
+ # counties Dege and Baiyu which lies on the Sichuan side and are
+@@ -469,7 +479,7 @@
+
+ # From David Cochrane (2014-03-26):
+ # Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986:
+-# http://content.time.com/time/magazine/article/0,9171,960684,00.html
++# https://content.time.com/time/magazine/article/0,9171,960684,00.html
+
+ # From Luther Ma (2014-04-22):
+ # I have interviewed numerous people of various nationalities and from
+@@ -626,7 +636,7 @@
+ # (both in Okinawa) adopt the Western Standard Time which is based on
+ # 120E. The adoption began from Jan 1, 1896. The original text can be
+ # found on Wikisource:
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ # ... This could be the first adoption of time zone in Taiwan, because
+ # during the Qing Dynasty, it seems that there was no time zone
+ # declared officially.
+@@ -639,7 +649,7 @@
+ # territory, including later occupations, adopt Japan Central Time
+ # (UTC+9). The adoption began on Oct 1, 1937. The original text can
+ # be found on Wikisource:
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+ #
+ # That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937.
+
+@@ -775,6 +785,12 @@
+ # 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/
+
++# From Paul Eggert (2017-10-18):
++# Northern Cyprus will reinstate winter time on October 29, thus
++# staying in sync with the rest of Cyprus. See: Anastasiou A.
++# Cyprus to remain united in time. Cyprus Mail 2017-10-17.
++# https://cyprus-mail.com/2017/10/17/cyprus-remain-united-time/
++
+ # 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 -
+@@ -792,7 +808,8 @@
+ 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
++ 3:00 - +03 2017 Oct 29 1:00u
++ 2:00 EUAsia EE%sT
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -852,7 +869,7 @@
+
+ # From João Carrascalão, brother of the former governor of East Timor, in
+ # East Timor may be late for its millennium
+-# (1999-12-26/31):
++# (1999-12-26/31):
+ # Portugal tried to change the time forward in 1974 because the sun
+ # rises too early but the suggestion raised a lot of problems with the
+ # Timorese and I still don't think it would work today because it
+@@ -880,7 +897,7 @@
+ # 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/
++# https://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
+@@ -887,14 +904,55 @@
+ # local time in favor of Indian Standard Time.... Journalists called this
+ # dispute the "Battle of the Clocks." It lasted nearly half a century.
+
++# From Paul Eggert (2017-04-20):
++# Good luck trying to nail down old timekeeping records in India.
++# "... in the nineteenth century ... Madras Observatory took its magnetic
++# measurements on Göttingen time, its meteorological measurements on Madras
++# (local) time, dropped its time ball on Greenwich (ocean navigator's) time,
++# and distributed civil (local time)." -- Bartky IR. Selling the true time:
++# 19th-century timekeeping in america. Stanford U Press (2000), 247 note 19.
++# "A more potent cause of resistance to the general adoption of the present
++# standard time lies in the fact that it is Madras time. The citizen of
++# Bombay, proud of being 'primus in Indis' and of Calcutta, equally proud of
++# his city being the Capital of India, and - for a part of the year - the Seat
++# of the Supreme Government, alike look down on Madras, and refuse to change
++# the time they are using, for that of what they regard as a benighted
++# Presidency; while Madras, having for long given the standard time to the
++# rest of India, would resist the adoption of any other Indian standard in its
++# place." -- Oldham RD. On Time in India: a suggestion for its improvement.
++# Proceedings of the Asiatic Society of Bengal (April 1899), 49-55.
++#
++# "In 1870 ... Madras time - 'now used by the telegraph and regulated from the
++# only government observatory' - was suggested as a standard railway time,
++# first to be adopted on the Great Indian Peninsular Railway (GIPR)....
++# Calcutta, Bombay, and Karachi, were to be allowed to continue with their
++# local time for civil purposes." - Prasad R. Tracks of Change: Railways and
++# Everyday Life in Colonial India. Cambridge University Press (2016), 145.
++#
++# Reed S, Low F. The Indian Year Book 1936-37. Bennett, Coleman, pp 27-8.
++# https://archive.org/details/in.ernet.dli.2015.282212
++# This lists +052110 as Madras local time used in railways, and says that on
++# 1906-01-01 railways and telegraphs in India switched to +0530. Some
++# municipalities retained their former time, and the time in Calcutta
++# continued to depend on whether you were at the railway station or at
++# government offices. Government time was at +055320 (according to Shanks) or
++# at +0554 (according to the Indian Year Book). Railway time is more
++# appropriate for our purposes, as it was better documented, it is what we do
++# elsewhere (e.g., Europe/London before 1880), and after 1906 it was
++# consistent in the region now identified by Asia/Kolkata. So, use railway
++# time for 1870-1941. Shanks is our only (and dubious) source for the
++# 1941-1945 data.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+- 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+- 6:30 - +0630 1942 May 15
++Zone Asia/Kolkata 5:53:28 - LMT 1854 Jun 28 # Kolkata
++ 5:53:20 - HMT 1870 # Howrah Mean Time?
++ 5:21:10 - MMT 1906 Jan 1 # Madras local time
++ 5:30 - IST 1941 Oct
++ 5:30 1:00 +0630 1942 May 15
+ 5:30 - IST 1942 Sep
+ 5:30 1:00 +0630 1945 Oct 15
+ 5:30 - IST
+-# The following are like Asia/Kolkata:
++# Since 1970 the following are like Asia/Kolkata:
+ # Andaman Is
+ # Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+ # Nicobar Is
+@@ -1036,7 +1094,7 @@
+ # From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen:
+ # ... the Guardian Council ... approved a law on Sunday to re-introduce
+ # daylight saving time ...
+-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
++# https://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+@@ -1135,7 +1193,7 @@
+ # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+ #
+ # We have published a short article in English about the change:
+-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
++# https://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Iraq 1982 only - May 1 0:00 1:00 D
+@@ -1443,12 +1501,12 @@
+ # From Yu-Cheng Chuang (2013-07-12):
+ # ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause
+ # about standard time" ... The adoption began from Jan 1, 1896.
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ #
+ # ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which
+ # means the whole Japan territory, including later occupations, adopt Japan
+ # Central Time (UTC+9). The adoption began on Oct 1, 1937.
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+@@ -1510,7 +1568,7 @@
+ # Official, in Arabic:
+ # http://www.petra.gov.jo/public_news/Nws_NewsDetails.aspx?Menu_ID=&Site_Id=2&lang=1&NewsID=133230&CatID=14
+ # ... Our background/permalink about it
+-# http://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
++# https://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
+ # ...
+ # http://www.petra.gov.jo/Public_News/Nws_NewsDetails.aspx?lang=2&site_id=1&NewsID=133313&Type=P
+ # ... says midnight for the coming one and 1:00 for the ones in the future
+@@ -1868,9 +1926,9 @@
+ # between 1987 and 1988 ...
+
+ # From Sanghyuk Jung (2014-10-29):
+-# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# https://mm.icann.org/pipermail/tz/2014-October/021830.html
+ # According to the Korean Wikipedia
+-# http://ko.wikipedia.org/wiki/한국_표준시
++# https://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.
+@@ -2092,7 +2150,7 @@
+ # +08:00 instead. Different sources appear to disagree with the tz
+ # database on this, e.g.:
+ #
+-# http://www.timeanddate.com/worldclock/city.html?n=1026
++# https://www.timeanddate.com/worldclock/city.html?n=1026
+ # http://www.worldtimeserver.com/current_time_in_MN.aspx
+ #
+ # both say GMT+08:00.
+@@ -2222,7 +2280,7 @@
+ # 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.worldtimezone.com/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+
+ # From Arthur David Olson (2008-05-19):
+@@ -2288,7 +2346,7 @@
+ #
+ # We have confirmed this year's end date with both with the Ministry of
+ # Water and Power and the Pakistan Electric Power Company:
+-# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
++# https://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+
+ # From Christoph Göhre (2009-10-01):
+ # [T]he German Consulate General in Karachi reported me today that Pakistan
+@@ -2470,7 +2528,7 @@
+ #
+ # We are not sure if Gaza will do the same, last year they had a different
+ # end date, we will keep this page updated:
+-# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
++# https://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-09-02):
+ # Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+@@ -2508,7 +2566,7 @@
+ # the clocks were set back one hour at 2010-08-11 00:00:00 local time in
+ # Gaza and the West Bank.
+ # Some more background info:
+-# http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
++# https://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
+
+ # From Steffen Thorsen (2011-08-26):
+ # Gaza and the West Bank did go back to standard time in the beginning of
+@@ -2518,7 +2576,7 @@
+ #
+ # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217
+ # Additional info:
+-# http://www.timeanddate.com/news/time/palestine-dst-2011.html
++# https://www.timeanddate.com/news/time/palestine-dst-2011.html
+
+ # From Alexander Krivenyshev (2011-08-27):
+ # According to the article in The Jerusalem Post:
+@@ -2528,7 +2586,7 @@
+ # The Hamas government said on Saturday that it won't observe summertime after
+ # the Muslim feast of Id al-Fitr, which begins on Tuesday..."
+ # ...
+-# http://www.jpost.com/MiddleEast/Article.aspx?id=235650
++# https://www.jpost.com/MiddleEast/Article.aspx?id=235650
+ # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html
+ # The rules for Egypt are stolen from the 'africa' file.
+
+@@ -2549,7 +2607,7 @@
+ # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
++# https://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
+
+ # From Steffen Thorsen (2013-03-26):
+ # The following news sources tells that Palestine will "start daylight saving
+@@ -2569,11 +2627,11 @@
+
+ # 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
++# and https://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
++# https://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):
+@@ -2597,8 +2655,8 @@
+ #
+ # 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
++# https://www.timeanddate.com/time/change/gaza-strip/gaza
++# https://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
+@@ -2661,7 +2719,7 @@
+ # 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
++# https://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
+ # The rest of the data entries are from Shanks & Pottenger.
+
+ # From Jesper Nørgaard Welen (2006-04-26):
+@@ -2925,7 +2983,7 @@
+ # We have not found any sources saying anything about when DST ends this year.
+ #
+ # Our summary
+-# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
++# https://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+
+ # From Steffen Thorsen (2009-10-27):
+ # The Syrian Arab News Network on 2009-09-29 reported that Syria will
+@@ -2952,7 +3010,7 @@
+ # http://www.sana.sy/ara/2/2012/03/26/408215.htm
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/syria-dst-2012.html
++# https://www.timeanddate.com/news/time/syria-dst-2012.html
+
+ # From Arthur David Olson (2012-03-27):
+ # Assume last Friday in March going forward XXX.
+@@ -3035,7 +3093,7 @@
+ # 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
++# https://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
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -293,7 +293,7 @@
+ # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166
+ #
+ # A bit more background info here:
+-# http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
++# https://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
+
+ # From Alexander Krivenyshev (2010-10-24):
+ # According to Radio Fiji and Fiji Times online, Fiji will end DST 3
+@@ -357,9 +357,12 @@
+ # 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
++# From Paul Eggert (2017-08-21):
++# Dominic Fok writes (2017-08-20) that DST ends 2018-01-14, citing
++# Extraordinary Government of Fiji Gazette Supplement No. 21 (2017-08-27),
++# [Legal Notice No. 41] of an order of the previous day by J Usamate.
++# For now, guess DST from 02:00 the first Sunday in November to 03:00
++# the first Sunday on or after January 14. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+ # practice than guessing no DST.
+
+@@ -373,7 +376,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>=15 3:00 0 -
++Rule Fiji 2015 max - Jan Sun>=14 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji +12/+13
+@@ -557,7 +560,7 @@
+ # 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
++# https://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
+@@ -579,7 +582,7 @@
+ -8:00 - -08
+
+ # American Samoa
+-Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
++Zone Pacific/Pago_Pago 12:37:12 - LMT 1892 Jul 5
+ -11:22:48 - LMT 1911
+ -11:00 - SST # S=Samoa
+ Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+@@ -595,7 +598,7 @@
+ # Sunday of April 2011."
+ #
+ # Background info:
+-# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
++# https://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+ #
+ # Samoa's Daylight Saving Time Act 2009 is available here, but does not
+ # contain any dates:
+@@ -659,7 +662,7 @@
+ Rule WS 2012 max - Apr Sun>=1 4:00 0 S
+ Rule WS 2012 max - Sep lastSun 3:00 1 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
++Zone Pacific/Apia 12:33:04 - LMT 1892 Jul 5
+ -11:26:56 - LMT 1911
+ -11:30 - -1130 1950
+ -11:00 WS -11/-10 2011 Dec 29 24:00
+@@ -686,7 +689,7 @@
+ # From Paul Eggert (2012-07-25)
+ # A Google Books snippet of Appendix to the Journals of the House of
+ # Representatives of New Zealand, Session 1948,
+-# , page 65, says Tokelau
++# , page 65, says Tokelau
+ # was "11 hours slow on G.M.T." Go with Thorsen and assume Shanks & Pottenger
+ # are off by an hour starting in 1901.
+
+@@ -701,8 +704,8 @@
+ 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 -
++Rule Tonga 2016 only - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 only - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - +1220 1941
+@@ -756,7 +759,7 @@
+ # 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
++# https://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".
+@@ -822,7 +825,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -969,7 +972,7 @@
+ # AEST ACST AWST AEDT ACDT
+ #
+ # Parliamentary Library (2008-11-10)
+-# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
++# https://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
+ # EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used
+ #
+ # The Transport Safety Bureau has an extensive series of accident reports,
+@@ -1005,13 +1008,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
++# https://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
++# https://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
++# https://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
+@@ -1306,7 +1309,7 @@
+ # 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:
++# Victoria will follow NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+ # http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+@@ -1409,7 +1412,7 @@
+ # the ACT for all 52 weeks of the year...
+ #
+ # We have a wrap-up here:
+-# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
++# https://www.timeanddate.com/news/time/south-australia-extends-dst.html
+ ###############################################################################
+
+ # New Zealand
+@@ -1463,7 +1466,7 @@
+ # 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
++# https://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
+@@ -1578,7 +1581,7 @@
+ # 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
++# https://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1606,11 +1609,13 @@
+
+ # (Western) Samoa and American Samoa
+
+-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+-# that in 1879 the King of Samoa decided to change
++# Howse writes (p 153) that after the 1879 standardization on Antipodean
++# time by the British governor of Fiji, the King of Samoa decided to change
+ # "the date in his kingdom from the Antipodean to the American system,
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
++# This happened in 1892, according to the Evening News (Sydney) of 1892-07-20.
++# https://www.staff.science.uu.nl/~gent0113/idl/idl.htm
+
+ # Although Shanks & Pottenger says they both switched to UT -11:30
+ # in 1911, and to -11 in 1950. many earlier sources give -11
+@@ -1621,6 +1626,7 @@
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+
++
+ # Tonga
+
+ # From Paul Eggert (1996-01-22):
+@@ -1715,6 +1721,15 @@
+ # 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.
+
++# From David Wade (2017-10-18):
++# In August government was disolved by the King. The current prime minister
++# continued in office in care taker mode. It is easy to see that few
++# decisions will be made until elections 16th November.
++#
++# From Paul Eggert (2017-10-18):
++# For now, guess that DST is discontinued. That's what the IATA is guessing.
++
++
+ # Wake
+
+ # From Vernice Anderson, Personal Secretary to Philip Jessup,
+@@ -1727,7 +1742,7 @@
+ # making calculation of time in Washington difficult if not almost
+ # impossible.
+ #
+-# http://www.trumanlibrary.org/wake/meeting.htm
++# https://www.trumanlibrary.org/oralhist/andrsonv.htm
+
+ # From Paul Eggert (2003-03-23):
+ # We have no other report of DST in Wake Island, so omit this info for now.
+@@ -1755,7 +1770,7 @@
+ # an international standard, there are some places on the high seas where the
+ # correct date is ambiguous.
+
+-# From Wikipedia (2005-08-31):
++# From Wikipedia (2005-08-31):
+ # Before 1920, all ships kept local apparent time on the high seas by setting
+ # their clocks at night or at the morning sight so that, given the ship's
+ # speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -61,7 +61,9 @@
+ Link America/Manaus Brazil/West
+ Link America/Halifax Canada/Atlantic
+ Link America/Winnipeg Canada/Central
+-Link America/Regina Canada/East-Saskatchewan
++# This line is commented out, as the name exceeded the 14-character limit
++# and was an unused misnomer.
++#Link America/Regina Canada/East-Saskatchewan
+ Link America/Toronto Canada/Eastern
+ Link America/Edmonton Canada/Mountain
+ Link America/St_Johns Canada/Newfoundland
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -181,7 +181,7 @@
+ # with the date that it took effect, namely 1912-01-01.
+ #
+ Zone Africa/Luanda 0:52:56 - LMT 1892
+- 0:52:04 - +005204 1912 Jan 1
++ 0:52:04 - LMT 1912 Jan 1 # Luanda Mean Time?
+ 1:00 - WAT
+
+ # Democratic Republic of the Congo (east)
+@@ -540,10 +540,10 @@
+
+ # Guernsey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Town Church, St. Peter Port, 49 degrees 27'17"N 2 degrees 32'10"W
++Zone Europe/Guernsey -0:10:09 - 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
+@@ -555,11 +555,11 @@
+ #
+ # From Lester Caine (2013-09-04):
+ # The Isle of Man legislation is now on-line at
+-# , starting with the original Statutory
++# , 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
++# of the first summer time in 1916 which may have been 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.
+@@ -574,10 +574,10 @@
+
+ # Jersey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Parish Church, St. Helier, 49 degrees 11'0.57"N 2 degrees 6'24.33"W
++Zone Europe/Jersey -0:08:26 - 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
+--- contrib/tzdata/calendars.orig
++++ contrib/tzdata/calendars
+@@ -0,0 +1,173 @@
++----- Calendrical issues -----
++
++As mentioned in Theory.html, although calendrical issues are out of
++scope for tzdb, they indicate the sort of problems that we would run
++into if we extended tzdb further into the past. The following
++information and sources go beyond Theory.html's brief discussion.
++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?
++
++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.
++
++-----
++
++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/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -9,7 +9,7 @@
+ Zone = "\n"
+ }
+
+-/^Zone/ {
++/^Z/ {
+ if (defined[$2]) {
+ if (defined[$2] == Zone) {
+ printf "%s: Zone has duplicate definition\n", $2
+@@ -21,7 +21,7 @@
+ defined[$2] = Zone
+ }
+
+-/^Link/ {
++/^L/ {
+ if (defined[$3]) {
+ if (defined[$3] == Zone) {
+ printf "%s: Link with same name as Zone\n", $3
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -37,7 +37,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# . He writes:
++# . He writes:
+ # "It is requested that corrections and additions to these tables
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+@@ -44,7 +44,7 @@
+ #
+ # 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
++# https://mm.icann.org/pipermail/tz/2014-August/021320.html
+ # The full Russian citation is:
+ # Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
+ # введенный декретом Совета народных комиссаров для всей России с 1-го
+@@ -187,7 +187,7 @@
+ # foundations of civilization throughout the world.
+ # -- "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
++# https://www.winstonchurchill.org/publications/finest-hour/finest-hour-114/a-silent-toast-to-william-willett-by-winston-s-churchill
+
+ # From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+@@ -225,8 +225,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://www.polyomino.org.uk/british-time/bbc-19410418.png
+-# http://www.polyomino.org.uk/british-time/ho-19410421.png
++# https://www.polyomino.org.uk/british-time/bbc-19410418.png
++# https://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
+@@ -243,13 +243,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://www.polyomino.org.uk/british-time/
++# https://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.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
++# https://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):
+@@ -295,7 +295,7 @@
+ # 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
++# https://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 .
+@@ -348,6 +348,12 @@
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+ # "Irish Summer Time", abbreviated to "IST".
+
++# Michael Deckers (2017-06-01) gave the following URLs for Ireland's
++# Summer Time Act, 1925 and Summer Time Orders, 1926 and 1947:
++# http://www.irishstatutebook.ie/eli/1925/act/8/enacted/en/print.html
++# http://www.irishstatutebook.ie/eli/1926/sro/919/made/en/print.html
++# http://www.irishstatutebook.ie/eli/1947/sro/71/made/en/print.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ # Summer Time Act, 1916
+ Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
+@@ -472,14 +478,14 @@
+
+ # 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 # Dublin MT
++ -0:25:21 - DMT 1916 May 21 2:00s # Dublin MT
+ -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:00s
++ 0:00 1:00 IST 1946 Oct 6 2:00s
++ 0:00 - GMT 1947 Mar 16 2:00s
++ 0:00 1:00 IST 1947 Nov 2 2:00s
++ 0:00 - GMT 1948 Apr 18 2:00s
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+@@ -625,7 +631,7 @@
+ # 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/ :
++# title at https://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".
+@@ -656,7 +662,7 @@
+ # http://bmockbe.ru/events/?ID=7583
+ #
+ # Medvedev signed a law on the calculation of the time (in russian):
+-# http://www.regnum.ru/news/polit/1413906.html
++# https://www.regnum.ru/news/polit/1413906.html
+
+ # From Arthur David Olson (2011-06-15):
+ # Take "abolishing daylight saving time" to mean that time is now considered
+@@ -783,7 +789,7 @@
+ # Sources (Russian language):
+ # 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
++# https://news.tut.by/society/250578.html
+ #
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+@@ -1104,7 +1110,7 @@
+ # for their standard and summer times. He says no, they use "suveaeg"
+ # (summer time) and "talveaeg" (winter time).
+
+-# From The Baltic Times (1999-09-09)
++# From The Baltic Times (1999-09-09)
+ # via Steffen Thorsen:
+ # This year will mark the last time Estonia shifts to summer time,
+ # a council of the ruling coalition announced Sept. 6....
+@@ -1156,7 +1162,7 @@
+ # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac
+ # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in
+ # Finnish) at
+-# http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
++# https://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
+ #
+ # Page 105 (56 in PDF version) has a handy table of all past daylight savings
+ # transitions. It is easy enough to interpret without Finnish skills.
+@@ -1169,7 +1175,7 @@
+
+ # From Konstantin Hyppönen (2014-06-13):
+ # [Heikki Oja's book Aikakirja 2013]
+-# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
++# https://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
+ # pages 104-105, including a scan from a newspaper published on Apr 2 1942
+ # say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942,
+ # 00:00), clocks were moved one hour forward. The newspaper
+@@ -1299,7 +1305,7 @@
+
+ # 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/
++# https://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+@@ -1524,7 +1530,7 @@
+ # 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
++# Model Rome's occupation by 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.
+ #
+@@ -1839,7 +1845,7 @@
+ # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
+ # Tiraspol will go back to winter time on October 30, 2011.
+ # News from Moldova (in russian):
+-# http://ru.publika.md/link_317061.html
++# https://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
+@@ -1846,7 +1852,7 @@
+ # 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
++# https://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.
+
+@@ -1918,7 +1924,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
++# https://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
+@@ -1999,7 +2005,7 @@
+ # so it must have diverged from Oslo time during the war, as Oslo was
+ # keeping Berlin time.
+ #
+-# says that the meteorologists
++# says that the meteorologists
+ # burned down their station in 1940 and left the island, but returned in
+ # 1941 with a small Norwegian garrison and continued operations despite
+ # frequent air attacks from Germans. In 1943 the Americans established a
+@@ -2037,7 +2043,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
++# https://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)
+@@ -2071,7 +2077,7 @@
+ #
+ # 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
++# https://dre.pt/application/dir/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
+@@ -2253,7 +2259,7 @@
+ # 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
++# https://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:
+@@ -2261,7 +2267,7 @@
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+-# http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
++# https://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+ # 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.
+@@ -2297,7 +2303,7 @@
+ # http://itar-tass.com/obschestvo/1333711
+ # http://www.pravo.gov.ru:8080/page.aspx?111660
+ # http://www.kremlin.ru/acts/46279
+-# From October 26, 2014 the new Russian time zone map will looks like this:
++# From October 26, 2014 the new Russian time zone map will look like this:
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+@@ -2344,7 +2350,7 @@
+ # with maintenance only and represent our best guesses as to which regions
+ # are covered by each zone. They are not meant to be taken as an authoritative
+ # listing. The region codes listed come from
+-# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
++# https://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
+ # and are used for convenience only; no guarantees are made regarding their
+ # future stability. ISO 3166-2:RU codes are also listed for first-level
+ # divisions where available.
+@@ -2509,7 +2515,7 @@
+ # 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
++# https://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.
+ #
+@@ -2581,7 +2587,7 @@
+ 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
++# https://vz.ru/news/2014/3/17/677464.html
+ # From Paul Eggert (2014-03-30):
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+@@ -2764,7 +2770,7 @@
+ # suggests that Altai Republic transitioned to Moscow+3 on
+ # 1995-05-28.
+ #
+-# http://regnum.ru/news/society/1957270.html
++# https://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
+@@ -3138,8 +3144,8 @@
+ # districts, but have very similar populations. In fact, Wikipedia currently
+ # lists them both as having 3528 people, exactly 1668 males and 1860 females
+ # each! (Yikes!)
+-# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
+-# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
++# https://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
++# https://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
+ # Assume this is a mistake, albeit an amusing one.
+ #
+ # Looking at censuses, the populations of the two municipalities seem to have
+@@ -3460,7 +3466,7 @@
+ #
+ # From Alois Treindl (2013-09-11):
+ # The Federal regulations say
+-# http://www.admin.ch/opc/de/classified-compilation/20071096/index.html
++# https://www.admin.ch/opc/de/classified-compilation/20071096/index.html
+ # ... the meridian for Bern mean time ... is 7 degrees 26' 22.50".
+ # Expressed in time, it is 0h29m45.5s.
+
+@@ -3537,9 +3543,9 @@
+ # According to the articles linked below, Turkey will change into summer
+ # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27.
+ # This change is due to a nationwide exam on 27th.
+-# http://www.worldbulletin.net/?aType=haber&ArticleID=70872
++# https://www.worldbulletin.net/?aType=haber&ArticleID=70872
+ # Turkish:
+-# http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373
++# https://www.hurriyet.com.tr/yaz-saati-uygulamasi-bir-gun-ileri-alindi-17230464
+
+ # From Faruk Pasin (2014-02-14):
+ # The DST for Turkey has been changed for this year because of the
+@@ -3675,7 +3681,7 @@
+ # http://www.segodnya.ua/news/14290482.html
+ #
+ # Deputies cancelled the winter time (in Russian)
+-# http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
++# https://www.pravda.com.ua/rus/news/2011/09/20/6600616/
+ #
+ # From Philip Pizzey (2011-10-18):
+ # Today my Ukrainian colleagues have informed me that the
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C53
+-# File expires on: 28 December 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+ #
+-#@ 3723408000
++#@ 3739132800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -247,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h 62cf8c5d 8bbb6dcc c61e3b56 c308343 869bb80d
++#h 5101445a 69948b51 9153e2b 2086e3d8 d54561a3
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -3,19 +3,18 @@
+ # This file is in the public domain.
+
+ # 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 does not work,
+-# you should be able to pick up leap-seconds.list from a secondary NIST server.
+-# See for a list of secondary servers.
++# leap-seconds.list file, which is copied from:
++# ftp://ftp.nist.gov/pub/time/leap-seconds.list
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+-# http://www.eecis.udel.edu/~mills/leap.html
++# https://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 .
++# Levine J. Coordinated Universal Time and the leap second.
++# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995
++# http://ieeexplore.ieee.org/document/7909995/
+ # 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.
+@@ -58,5 +57,5 @@
+ Leap 2015 Jun 30 23:59:60 + S
+ Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C53
+-# File expires on: 28 December 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -8,19 +8,18 @@
+ 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 does not work,"
+- print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
+- print "# See for a list of secondary servers."
++ print "# leap-seconds.list file, which is copied from:"
++ print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list"
+ 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 "# https://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 ."
++ print "# Levine J. Coordinated Universal Time and the leap second."
++ print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995"
++ print "# http://ieeexplore.ieee.org/document/7909995/"
+ 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."
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -105,10 +105,13 @@
+ # 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
++# https://web.archive.org/web/20000926032210/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.
++#
++# From Paul Eggert (2017-09-23):
++# This was the V-J Day issue of the Clamdigger, a Rowayton, CT newsletter.
+
+ # From Joseph Gallant citing
+ # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+@@ -257,7 +260,7 @@
+ # 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
++# https://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.
+@@ -346,7 +349,7 @@
+ # western Tennessee, most of Texas, Wisconsin
+
+ # From Larry M. Smith (2006-04-26) re Wisconsin:
+-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
++# https://docs.legis.wisconsin.gov/statutes/statutes/175.pdf
+ # is currently enforced at the 01:00 time of change. Because the local
+ # "bar time" in the state corresponds to 02:00, a number of citations
+ # are issued for the "sale of class 'B' alcohol after prohibited
+@@ -355,7 +358,7 @@
+ # From Douglas R. Bomberg (2007-03-12):
+ # Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+ # Statue 175 closer in synch with the US Congress' intent....
+-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
++# https://docs.legis.wisconsin.gov/2007/related/acts/3
+
+ # 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
+@@ -402,7 +405,7 @@
+ # ...it appears that Mercer County, North Dakota, changed from the
+ # mountain time zone to the central time zone at the last transition from
+ # daylight-saving to standard time (on Nov. 7, 2010):
+-# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
++# https://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
+ # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
+
+ # From Andy Lipscomb (2011-01-24):
+@@ -453,7 +456,7 @@
+ # 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
++# 1973-11. https://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
+@@ -474,8 +477,8 @@
+ # 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
++# https://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# https://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:01 1:00 D
+@@ -492,20 +495,31 @@
+ # Alaska
+ # AK%sT is the modern abbreviation for -09 per USNO.
+ #
+-# From Paul Eggert (2001-05-30):
++# From Paul Eggert (2017-06-15):
+ # Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+ # and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+-# also a Friday. Include only the time zone part of this transition,
+-# ignoring the switch from Julian to Gregorian, since we can't represent
+-# the Julian calendar.
++# On Friday, 1867-10-18 (Gregorian), at precisely 15:30 local time, the
++# Russian forts and fleet at Sitka fired salutes to mark the ceremony of
++# formal transfer. See the Sacramento Daily Union (1867-11-14), p 3, col 2.
++# https://cdnc.ucr.edu/cgi-bin/cdnc?a=d&d=SDU18671114.2.12.1
++# Sitka workers did not change their calendars until Sunday, 1867-10-20,
++# and so celebrated two Sundays that week. See: Ahllund T (tr Hallamaa P).
++# From the memoirs of a Finnish workman. Alaska History. 2006 Fall;21(2):1-25.
++# http://alaskahistoricalsociety.org/wp-content/uploads/2016/12/Ahllund-2006-Memoirs-of-a-Finnish-Workman.pdf
++# Include only the time zone part of this transition, ignoring the switch
++# from Julian to Gregorian, since we can't represent the Julian calendar.
+ #
+-# As far as we know, none of the exact locations mentioned below were
++# As far as we know, of the locations mentioned below only Sitka was
+ # permanently inhabited in 1867 by anyone using either calendar.
+-# (Yakutat was colonized by the Russians in 1799, but the settlement
+-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
+-# were nearby inhabitants in some cases and for our purposes perhaps
+-# it's best to simply use the official transition.
++# (Yakutat was colonized by the Russians in 1799, but the settlement was
++# destroyed in 1805 by a Yakutat-kon war party.) Many of Alaska's inhabitants
++# were unaware of the US acquisition of Alaska, much less of any calendar or
++# time change. However, the Russian-influenced part of Alaska did observe
++# Russian time, and it is more accurate to model this than to ignore it.
++# The database format requires an exact transition time; use the Russian
++# salute as a somewhat-arbitrary time for the formal transfer of control for
++# all of Alaska. Sitka's UTC offset is -9:01:13; adjust its 15:30 to the
++# local times of other Alaskan locations so that they change simultaneously.
+
+ # From Paul Eggert (2014-07-18):
+ # One opinion of the early-1980s turmoil in Alaska over time zones and
+@@ -558,10 +572,10 @@
+ # 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/
++# https://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
++Zone America/Juneau 15:02:19 - LMT 1867 Oct 19 15:33:32
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -571,7 +585,7 @@
+ -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
++Zone America/Sitka 14:58:47 - LMT 1867 Oct 19 15:30
+ -9:01:13 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -579,7 +593,7 @@
+ -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
++Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 19 15:44:55
+ -8:46:18 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -587,7 +601,7 @@
+ -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
++Zone America/Yakutat 14:41:05 - LMT 1867 Oct 19 15:12:18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+ -9:00 US Y%sT 1946
+@@ -594,7 +608,7 @@
+ -9:00 - YST 1969
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
++Zone America/Anchorage 14:00:24 - LMT 1867 Oct 19 14:31:37
+ -9:59:36 - LMT 1900 Aug 20 12:00
+ -10:00 - AST 1942
+ -10:00 US A%sT 1967 Apr
+@@ -602,7 +616,7 @@
+ -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
++Zone America/Nome 12:58:22 - LMT 1867 Oct 19 13:29:35
+ -11:01:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -611,7 +625,7 @@
+ -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
++Zone America/Adak 12:13:22 - LMT 1867 Oct 19 12:44:35
+ -11:46:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -647,7 +661,7 @@
+ # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
+ # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
+ # the article is available at
+-# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
++# https://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
+ # and indicates that standard time was adopted effective noon, January
+ # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
+ # saving for the period between the last Sunday of each April and the
+@@ -746,7 +760,7 @@
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# http://en.wikipedia.org/wiki/Time_in_Indiana
++# https://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -973,7 +987,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
++# https://www.gpo.gov/fdsys/pkg/FR-2000-08-17/html/00-20854.htm
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -999,7 +1013,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
++# https://www.gpo.gov/fdsys/pkg/FR-1999-10-21/html/99-27240.htm
+ # 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.
+@@ -1029,12 +1043,23 @@
+ # one hour in 1914." This change is not in Shanks. We have no more
+ # info, so omit this for now.
+ #
++# From Paul Eggert (2017-07-26):
++# Although Shanks says Detroit observed DST in 1967 from 06-14 00:01
++# until 10-29 00:01, I now see multiple reports that this is incorrect.
++# For example, according to a 50-year anniversary report about the 1967
++# Detroit riots and a major-league doubleheader on 1967-07-23, "By the time
++# the last fly ball of the doubleheader settled into the glove of leftfielder
++# Lenny Green, it was after 7 p.m. Detroit did not observe daylight saving
++# time, so light was already starting to fail. Twilight was made even deeper
++# by billowing columns of smoke that ascended in an unbroken wall north of the
++# ballpark." See: Dow B. Detroit '67: As violence unfolded, Tigers played two
++# at home vs. Yankees. Detroit Free Press 2017-07-23.
++# https://www.freep.com/story/sports/mlb/tigers/2017/07/23/detroit-tigers-1967-riot-new-york-yankees/499951001/
++#
+ # Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+ Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
+-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
+@@ -1098,7 +1123,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# .
++# .
+ #
+ # See the 'europe' file for Greenland.
+
+@@ -1144,19 +1169,19 @@
+ # The British Columbia government announced yesterday that it will
+ # adjust daylight savings next year to align with changes in the
+ # U.S. and the rest of Canada....
+-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
++# https://archive.news.gov.bc.ca/releases/news_releases_2005-2009/2006AG0014-000330.htm
+ # ...
+ # Nova Scotia
+ # Daylight saving time will be extended by four weeks starting in 2007....
+-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
++# https://www.novascotia.ca/just/regulations/rg2/2006/ma1206.pdf
+ #
+ # [For New Brunswick] the new legislation dictates that the time change is to
+ # be done at 02:00 instead of 00:01.
+-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
++# https://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+ # ...
+ # Manitoba has traditionally changed the clock every fall at 03:00.
+ # As of 2006, the transition is to take place one hour earlier at 02:00.
+-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
++# https://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+ # ...
+ # [Alberta, Ontario, Quebec] will follow US rules.
+ # http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+@@ -1170,7 +1195,7 @@
+ # http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+ # ...
+ # Yukon
+-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
++# https://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+ # ...
+ # N.W.T. will follow US rules. Whoever maintains the government web site
+ # does not seem to believe in bookmarks. To see the news release, click the
+@@ -1191,8 +1216,8 @@
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+ # 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
++# https://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# https://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):
+@@ -1229,11 +1254,13 @@
+
+ # Newfoundland and Labrador
+
+-# From Paul Eggert (2000-10-02):
+-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+-# but the only part of Labrador that follows the rules is the
+-# southeast corner, including Port Hope Simpson and Mary's Harbour,
+-# but excluding, say, Black Tickle.
++# From Paul Eggert (2017-10-14):
++# Legally Labrador should observe Newfoundland time; see:
++# McLeod J. Labrador time - legal or not? St. John's Telegram, 2017-10-07
++# http://www.thetelegram.com/news/local/labrador-time--legal-or-not-154860/
++# Matthews and Vincent (1998) write that the only part of Labrador
++# that follows the rules is the southeast corner, including Port Hope
++# Simpson and Mary's Harbour, but excluding, say, Black Tickle.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule StJohns 1917 only - Apr 8 2:00 1:00 D
+@@ -1433,7 +1460,7 @@
+ # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm
+ # that the coastal strip from just east of Natashquan to Blanc-Sablon
+ # observes Atlantic standard time all year round.
+-# http://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
++# https://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
+ # says this common practice was codified into law as of 2007.
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+@@ -1465,6 +1492,11 @@
+ # earlier in June).
+ #
+ # Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
++#
++# From Paul Eggert (2017-07-08):
++# For more on Orillia, see: Daubs K. Bold attempt at daylight saving
++# time became a comic failure in Orillia. Toronto Star 2017-07-08.
++# https://www.thestar.com/news/insight/2017/07/08/bold-attempt-at-daylight-saving-time-became-a-comic-failure-in-orillia.html
+
+ # From Paul Eggert (1997-10-17):
+ # Mark Brader writes that an article in the 1997-10-14 Toronto Star
+@@ -1956,7 +1988,7 @@
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+ # 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]
++# [https://www.canlii.org/en/ca/laws/stat/rsc-1985-c-i-21/latest/rsc-1985-c-i-21.html]
+ # * 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.
+@@ -2021,7 +2053,7 @@
+ # 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
++# https://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
+@@ -2036,7 +2068,7 @@
+ # 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
++# https://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
+@@ -2048,7 +2080,7 @@
+ # 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
++# https://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
+@@ -2062,7 +2094,7 @@
+ # 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
++# https://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.
+@@ -2105,7 +2137,7 @@
+
+ # From Michaela Rodrigue, writing in the
+ # Nunatsiaq News (1999-11-19):
+-# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
++# http://www.nunatsiaqonline.ca/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]
+@@ -2123,7 +2155,7 @@
+ # Central Time and Southampton Island [in the Central zone] is not
+ # required to use daylight savings.
+
+-# From
++# From
+ # Nunavut now has two time zones (2000-11-10):
+ # The Nunavut government would allow its employees in Kugluktuk and
+ # Cambridge Bay to operate on central time year-round, putting them
+@@ -2454,7 +2486,7 @@
+ # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
++# https://www.timeanddate.com/news/time/north-mexico-dst-change.html
+
+ # From Arthur David Olson (2010-01-20):
+ # The page
+@@ -2873,7 +2905,7 @@
+ # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+ #
+ # Some more background information is posted here:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+ #
+ # The article also says that Cuba has been observing DST since 1963,
+ # while Shanks (and tzdata) has 1965 as the first date (except in the
+@@ -2920,7 +2952,7 @@
+ # http://granma.co.cu/2011/03/08/nacional/artic01.html
+ #
+ # Our info:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
+ #
+ # From Steffen Thorsen (2011-10-30)
+ # Cuba will end DST two weeks later this year. Instead of going back
+@@ -2930,7 +2962,7 @@
+ # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
++# https://www.timeanddate.com/news/time/cuba-time-changes-2011.html
+ #
+ # From Steffen Thorsen (2012-03-01)
+ # According to Radio Reloj, Cuba will start DST on Midnight between March
+@@ -2940,7 +2972,7 @@
+ # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
+ #
+ # Our info on it:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
+
+ # From Steffen Thorsen (2012-11-03):
+ # Radio Reloj and many other sources report that Cuba is changing back
+@@ -3135,8 +3167,8 @@
+ # 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/
++# https://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# https://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
+ # http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
+
+ # From Steffen Thorsen (2017-03-12):
+@@ -3335,7 +3367,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
++# https://bugs.debian.org/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.
+@@ -3357,12 +3389,25 @@
+ # "permanent daylight saving time" by one year....
+ # http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
++# From the Turks & Caicos Cabinet (2017-07-20), heads-up from Steffen Thorsen:
++# ... agreed to the reintroduction in TCI of Daylight Saving Time (DST)
++# during the summer months and Standard Time, also known as Local
++# Time, during the winter months with effect from April 2018 ...
++# https://www.gov.uk/government/news/turks-and-caicos-post-cabinet-meeting-statement--3
++#
++# From Paul Eggert (2017-08-26):
++# The date of effect of the spring 2018 change appears to be March 11,
++# which makes more sense. See: Hamilton D. Time change back
++# by March 2018 for TCI. Magnetic Media. 2017-08-25.
++# http://magneticmediatv.com/2017/08/time-change-back-by-march-2018-for-tci/
++#
+ # 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 - EST 1979
+ -5:00 US E%sT 2015 Nov Sun>=1 2:00
+- -4:00 - AST
++ -4:00 - AST 2018 Mar 11 3:00
++ -5:00 US E%sT
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -22,7 +22,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # These tables use numeric abbreviations like -03 and -0330 for
+ # integer hour and minute UTC offsets. Although earlier editions used
+@@ -265,8 +265,8 @@
+ #
+ # Es inminente que en San Luis atrasen una hora los relojes
+ # (It is imminent in San Luis clocks one hour delay)
+-# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
+-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
++# https://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
++# http://www.worldtimezone.com/dst_news/dst_news_argentina02.html
+
+ # From Jesper Nørgaard Welen (2008-01-18):
+ # The page of the San Luis provincial government
+@@ -385,7 +385,7 @@
+ # 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 -03; see, for example,
+-# http://es.wikipedia.org/wiki/Hora_oficial_argentina
++# https://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
+@@ -716,7 +716,7 @@
+ # (Portuguese)
+ #
+ # We have a written a short article about it as well:
+-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
++# https://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+ #
+ # From Alexander Krivenyshev (2011-10-04):
+ # State Bahia will return to Daylight savings time this year after 8 years off.
+@@ -725,7 +725,7 @@
+
+ # In Portuguese:
+ # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
+
+ # From Guilherme Bernardes Rodrigues (2011-10-07):
+ # There is news in the media, however there is still no decree about it.
+@@ -751,16 +751,16 @@
+
+ # From Rodrigo Severo (2012-10-16):
+ # Tocantins state will have DST.
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
+
+ # From Steffen Thorsen (2013-09-20):
+ # Tocantins in Brazil is very likely not to observe DST from October....
+ # http://conexaoto.com.br/2013/09/18/ministerio-confirma-que-tocantins-esta-fora-do-horario-de-verao-em-2013-mas-falta-publicacao-de-decreto
+ # We will keep this article updated when this is confirmed:
+-# http://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
++# https://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
+
+ # From Steffen Thorsen (2013-10-17):
+-# http://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
++# https://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
+ # Senator Jorge Viana announced that Acre will change time zone on November 10.
+ # He did not specify the time of the change, nor if western parts of Amazonas
+ # will change as well.
+@@ -1076,18 +1076,18 @@
+ # 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:
++# This contains a copy of 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
++# https://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
++# https://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
++# https://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:
+@@ -1363,10 +1363,10 @@
+ # Milne says the Central and South American Telegraph Company used -5:24:15.
+ #
+ # From Alois Treindl (2016-12-15):
+-# http://www.elcomercio.com/actualidad/hora-sixto-1993.html
++# https://www.elcomercio.com/actualidad/hora-sixto-1993.html
+ # ... Whether the law applied also to Galápagos, I do not know.
+ # From Paul Eggert (2016-12-15):
+-# http://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
++# https://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
+ # This says President Sixto Durán Ballén signed decree No. 285, which
+ # established DST from 1992-11-28 to 1993-02-05; it does not give transition
+ # times. The people called it "hora de Sixto" ("Sixto hour"). The change did
+@@ -1778,7 +1778,7 @@
+ # 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
++# https://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
+ #
+ # From Matt Johnson (2016-04-20):
+ # ... published in the official Gazette [2016-04-18], here:
+--- contrib/tzdata/theory.html.orig
++++ contrib/tzdata/theory.html
+@@ -0,0 +1,1034 @@
++
++
++
++ Theory and pragmatics of the tz code and data
++
++
++
++
++
++
++
Theory and pragmatics of the tz code and data
++
Outline
++
++
++
++
++
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 timestamps 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 timestamps 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-2008, 2016 Edition.
++
++
++
++
++
++
++
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 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' and 'GMT+0', 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.
++
++
++ Use current abbreviations for older timestamps to avoid confusion.
++ For example, in 1910 a common English abbreviation for UT +01
++ in central Europe was 'MEZ' (short for both "Middle European
++ Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
++ 'CET' ("Central European Time") is more common in English, and
++ the database uses 'CET' even for circa-1910 timestamps as this
++ is less confusing for modern users and avoids the need for
++ determining when 'CET' supplanted 'MEZ' in common usage.
++
++
++ Use a consistent style in a zone's history. For example, if a zone's
++ history tends to use numeric abbreviations and a particular
++ entry could go either way, use a numeric abbreviation.
++
++
++ [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. 'CHAST' for CHAtham 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 timestamps, 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.
++
++
++ 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
++ "History of
++ legal time in Britain".
++ 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
++ clock error.
++
++
++ The tz database assumes Universal Time (UT) as an origin, even
++ though UT is not standardized for older timestamps. In the tz
++ database commentary, UT denotes a family of time standards that
++ includes Coordinated Universal Time (UTC) along with other variants
++ such as UT1 and GMT, with days starting at midnight. Although UT
++ equals UTC for modern timestamps, UTC was not defined until 1960,
++ so commentary uses the more-general abbreviation UT for timestamps
++ that might predate 1960. Since UT, UT1, etc. disagree slightly,
++ and since pre-1972 UTC seconds varied in length, interpretation of
++ older timestamps can be problematic when subsecond accuracy is
++ needed.
++
++
++ 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: Stephenson FR, Morrison LV, Hohenkerk CY.
++ Measurement
++ of the Earth's rotation: 720 BC to AD 2015.
++ Proc Royal Soc A. 2016 Dec 7;472:20160404.
++ Also see: Espenak F. Uncertainty
++ in Delta T (ΔT).
++
++
++ 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
++timestamps 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:
++
++ 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 New Zealand after 2007.
++ It says that standard time (NZST) is 12 hours ahead of UTC,
++ and that daylight saving time (NZDT) is observed from September's
++ last Sunday at 02:00 until April's first Sunday at 03:00:
++
++
TZ='NZST-12NZDT,M9.5.0,M4.1.0/3'
++
++ This POSIX TZ string is hard to remember, and mishandles some
++ timestamps before 2008. With this package you can use this
++ instead:
++
++
TZ='Pacific/Auckland'
++
++
++ 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 timestamps,
++ 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
++ localtime(&clock)->tm_zone
++ (if TM_ZONE is defined) or
++ tzname[localtime(&clock)->tm_isdst]
++ (if HAVE_TZNAME is defined)
++ to learn the correct time zone abbreviation to use.
++
++
++ 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:
++
++ 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.
++
++
++ The version number of the code and data, as the first line of
++ the text file 'version' in each release.
++
++
++
++Interface changes in a release attempt to preserve compatibility with
++recent releases. 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. Sources for time zone and daylight
++saving time data describes how
++releases are tagged and distributed.
++
++
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for
++timestamps, 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).
++Other information and sources are given in the file 'calendars'
++in the tz distribution. They sometimes disagree.
++
++
++
++
++
++
Time and time zones on other planets
++
++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.
++
++
++
++In our solar system, Mars is the planet with time and calendar most
++like Earth's. On other planets, Sun-based time and calendars would
++work quite differently. For example, although Mercury's sidereal
++rotation period is 58.646 Earth days, Mercury revolves around the Sun
++so rapidly that an observer on Mercury's equator would see a sunrise
++only every 175.97 Earth days, i.e., a Mercury year is 0.5 of a Mercury
++day. Venus is more complicated, partly because its rotation is
++slightly retrograde: its year is 1.92 of its days. Gas giants like
++Jupiter are trickier still, as their polar and equatorial regions
++rotate at different rates, so that the length of a day depends on
++latitude. This effect is most pronounced on Neptune, where the day is
++about 12 hours at the poles and 18 hours at the equator.
++
++
++
++Although the tz database does not support time on other planets, it is
++documented here in the hopes that support will be added eventually.
++
++
++
++
++
++
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -1 +1 @@
+-2017b
++2017c
+--- contrib/tzdata/zishrink.awk.orig
++++ contrib/tzdata/zishrink.awk
+@@ -0,0 +1,156 @@
++# Convert tzdata source into a smaller version of itself.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++# This is not a general-purpose converter; it is designed for current tzdata.
++# 'zic' should treat this script's output as if it were identical to
++# this script's input.
++
++
++# Return a new rule name.
++# N_RULE_NAMES keeps track of how many rule names have been generated.
++
++function gen_rule_name(alphabet, base, rule_name, n, digit)
++{
++ alphabet = ""
++ alphabet = alphabet "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
++ alphabet = alphabet "abcdefghijklmnopqrstuvwxyz"
++ alphabet = alphabet "!$%&'()*+,./:;<=>?@[\\]^_`{|}~"
++ base = length(alphabet)
++ rule_name = ""
++ n = n_rule_names++
++
++ do {
++ n -= rule_name && n <= base
++ digit = n % base
++ rule_name = substr(alphabet, digit + 1, 1) rule_name
++ n = (n - digit) / base
++ } while (n);
++
++ return rule_name
++}
++
++# Process an input line and save it for later output.
++
++function process_input_line(line, field, end, i, n, startdef)
++{
++ # Remove comments, normalize spaces, and append a space to each line.
++ sub(/#.*/, "", line)
++ line = line " "
++ gsub(/[[:space:]]+/, " ", line)
++
++ # Abbreviate keywords. Do not abbreviate "Link" to just "L",
++ # as pre-2017c zic erroneously diagnoses "Li" as ambiguous.
++ sub(/^Link /, "Li ", line)
++ sub(/^Rule /, "R ", line)
++ sub(/^Zone /, "Z ", line)
++
++ # SystemV rules are not needed.
++ if (line ~ /^R SystemV /) return
++
++ # Replace FooAsia rules with the same rules without "Asia", as they
++ # are duplicates.
++ if (match(line, /[^ ]Asia /)) {
++ if (line ~ /^R /) return
++ line = substr(line, 1, RSTART) substr(line, RSTART + 5)
++ }
++
++ # Abbreviate times.
++ while (match(line, /[: ]0+[0-9]/))
++ line = substr(line, 1, RSTART) substr(line, RSTART + RLENGTH - 1)
++ while (match(line, /:0[^:]/))
++ line = substr(line, 1, RSTART - 1) substr(line, RSTART + 2)
++
++ # Abbreviate weekday names. Do not abbreviate "Sun" and "Sat", as
++ # pre-2017c zic erroneously diagnoses "Su" and "Sa" as ambiguous.
++ while (match(line, / (last)?(Mon|Wed|Fri)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 4) substr(line, end - 1)
++ }
++ while (match(line, / (last)?(Tue|Thu)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 3) substr(line, end - 1)
++ }
++
++ # Abbreviate "max", "only" and month names.
++ # Do not abbreviate "min", as pre-2017c zic erroneously diagnoses "mi"
++ # as ambiguous.
++ gsub(/ max /, " ma ", line)
++ gsub(/ only /, " o ", line)
++ gsub(/ Jan /, " Ja ", line)
++ gsub(/ Feb /, " F ", line)
++ gsub(/ Apr /, " Ap ", line)
++ gsub(/ Aug /, " Au ", line)
++ gsub(/ Sep /, " S ", line)
++ gsub(/ Oct /, " O ", line)
++ gsub(/ Nov /, " N ", line)
++ gsub(/ Dec /, " D ", line)
++
++ # Strip leading and trailing space.
++ sub(/^ /, "", line)
++ sub(/ $/, "", line)
++
++ # Remove unnecessary trailing zero fields.
++ sub(/ 0+$/, "", line)
++
++ # Remove unnecessary trailing days-of-month "1".
++ if (match(line, /[[:alpha:]] 1$/))
++ line = substr(line, 1, RSTART)
++
++ # Remove unnecessary trailing " Ja" (for January).
++ sub(/ Ja$/, "", line)
++
++ n = split(line, field)
++
++ # Abbreviate rule names.
++ i = field[1] == "Z" ? 4 : field[1] == "Li" ? 0 : 2
++ if (i && field[i] ~ /^[^-+0-9]/) {
++ if (!rule[field[i]])
++ rule[field[i]] = gen_rule_name()
++ field[i] = rule[field[i]]
++ }
++
++ # If this zone supersedes an earlier one, delete the earlier one
++ # from the saved output lines.
++ startdef = ""
++ if (field[1] == "Z")
++ zonename = startdef = field[2]
++ else if (field[1] == "Li")
++ zonename = startdef = field[3]
++ else if (field[1] == "R")
++ zonename = ""
++ if (startdef) {
++ i = zonedef[startdef]
++ if (i) {
++ do
++ output_line[i - 1] = ""
++ while (output_line[i++] ~ /^[-+0-9]/);
++ }
++ }
++ zonedef[zonename] = nout + 1
++
++ # Save the line for later output.
++ line = field[1]
++ for (i = 2; i <= n; i++)
++ line = line " " field[i]
++ output_line[nout++] = line
++}
++
++function output_saved_lines(i)
++{
++ for (i = 0; i < nout; i++)
++ if (output_line[i])
++ print output_line[i]
++}
++
++BEGIN {
++ print "# This zic input file is in the public domain."
++}
++
++/^[[:space:]]*[^#[:space:]]/ {
++ process_input_line($0)
++}
++
++END {
++ output_saved_lines()
++}
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -186,7 +186,7 @@
+ GD +1203-06145 America/Grenada
+ GE +4143+04449 Asia/Tbilisi
+ GF +0456-05220 America/Cayenne
+-GG +4927-00232 Europe/Guernsey
++GG +492717-0023210 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+ GL +6411-05144 America/Godthab Greenland (most areas)
+@@ -221,7 +221,7 @@
+ IR +3540+05126 Asia/Tehran
+ IS +6409-02151 Atlantic/Reykjavik
+ IT +4154+01229 Europe/Rome
+-JE +4912-00207 Europe/Jersey
++JE +491101-0020624 Europe/Jersey
+ JM +175805-0764736 America/Jamaica
+ JO +3157+03556 Asia/Amman
+ JP +353916+1394441 Asia/Tokyo
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -2,7 +2,7 @@
+ #
+ # This file is in the public domain.
+ #
+-# From Paul Eggert (2014-07-31):
++# From Paul Eggert (2017-10-01):
+ # This file contains a table where each row stands for a zone where
+ # civil time stamps have agreed since 1970. Columns are separated by
+ # a single tab. Lines beginning with '#' are comments. All text uses
+@@ -16,7 +16,7 @@
+ # either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+ # first latitude (+ is north), then longitude (+ is east).
+ # 3. Zone name used in value of TZ environment variable.
+-# Please see the 'Theory' file for how zone names are chosen.
++# Please see the theory.html file for how zone names are chosen.
+ # If multiple zones overlap a country, each has a row in the
+ # table, with each column 1 containing the country code.
+ # 4. Comments; present if and only if a country has multiple zones.
+@@ -317,10 +317,11 @@
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+-SD,SS +1536+03232 Africa/Khartoum
++SD +1536+03232 Africa/Khartoum
+ SE +5920+01803 Europe/Stockholm
+ SG +0117+10351 Asia/Singapore
+ SR +0550-05510 America/Paramaribo
++SS +0451+03137 Africa/Juba
+ SV +1342-08912 America/El_Salvador
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
diff --git a/share/security/patches/EN-17:09/tzdata-10.4.patch.asc b/share/security/patches/EN-17:09/tzdata-10.4.patch.asc
new file mode 100644
index 0000000000..862b43a912
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-10.4.patch.asc
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEEHPf/b631yp++G4yy7Wfs1l3PaucFAln7PXNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDFD
+RjdGRjZGQURGNUNBOUZCRTFCOENCMkVENjdFQ0Q2NURDRjZBRTcACgkQ7Wfs1l3P
+aucjGw/+NiOz552mus6PkvE+Bec2QycZuDvhLkZ3lPHJTh/hVzTKQ+48wX3sboeI
+VsBf6l5Ay5RQz+sz6QAvyKEQvlD0XHKWTg3gPtnp57KcskQGvRK3p96Hp5Iw3nVb
+JS5bSs0WgCAIk/J/8Q4a1YCNfhjdJ/QDoufIavAa0BlwLeO4vr45BLDXAhPCfdNF
+nt7Vk63JjtlOw7zvGj+JJHWIarY2NGE7sbAFalfdywBdiJNzVpeoZowNBuhI5hmR
+Y0FXFVHLVkXUrNJ3BL2wZQPowCSGfdf9UAgOkNMWQyiqvSI6ahcqg/ASs+EZt0Yg
+67/PavXCpq5xjFvx8exNp9/eI8NifgEnXV4ZEl1O9eRDuwVfTKP/wou5/23OAcgK
+VUzRx4UUBzMUWhxlKOWLYcxkh0a7RuZf0ZoGSZjyTS0c3132xbjkej4wdOsZLJXB
+xWSczhEFcthn8CaOjfbPiHqElrcYf2WlF/LiUQmLkEVDHj6/DX6Wtm/WRvkLgSYJ
+ZPfbuDEUP1zG8GIu6i7MCNeKX2NMKxoMIMolNjSrowSNLr+PTqialKDcsuj2LCNv
+aaVRR00zwGvVGwDSDffE9VM7VrNm3Kh3iJk7mpkk/z9ywUrHW6642L5Ab/BmGq3N
+3Mzqb9pvJQgwdSv9J7er2P4jon8haeCHupTzyvpFyMB02d4EJXI=
+=g5SZ
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-17:09/tzdata-11.0.patch b/share/security/patches/EN-17:09/tzdata-11.0.patch
new file mode 100644
index 0000000000..fb398ea14f
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-11.0.patch
@@ -0,0 +1,8914 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -5,23 +5,29 @@
+ 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 tz@iana.org for use in the future. In your email, please give
++reliable sources that reviewers can check.
+
++-----
++
++Developers can contribute technical changes to the source code and
++data as follows.
++
+ 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 for
+-examples of patches that tend to work well. Ideally, additions to
++For more-elaborate changes, please read the theory.html file and browse
++the mailing list archives for
++examples of patches that tend to work well. Additions to
+ data should contain commentary citing reliable sources as
+-justification.
++justification. Citations should use https: URLs if available.
+
+ Please submit changes against either the latest release in
+- or the master branch of the experimental
+-Git repository. If you use Git the following workflow may be helpful:
++ or the master branch of the development
++repository. If you use Git the following workflow may be helpful:
+
+- * Copy the experimental repository.
++ * Copy the development repository.
+
+ git clone https://github.com/eggert/tz.git
+ cd tz
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -1,4 +1,5 @@
+-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.
++Unless specified below, all files in the tz code and data (including
++this LICENSE file) are in the public domain.
++
++If the files date.c, newstrftime.3, and strftime.c are present, they
++contain material derived from BSD and use the BSD 3-clause license.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -49,6 +49,7 @@
+ # "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 should not contain "/" and should not be ".", ".." or empty.
+
+ TZDIR_BASENAME= zoneinfo
+ TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+@@ -72,11 +73,11 @@
+
+ LIBDIR= $(TOPDIR)/lib
+
+-# If you always want time values interpreted as "seconds since the epoch
+-# (not counting leap seconds)", use
++# If you want only POSIX time, with 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
++# below. If you want only "right" time, with 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
+@@ -85,10 +86,31 @@
+ # normally, use
+ # REDO= right_posix
+ # below. POSIX mandates that leap seconds not be counted; for compatibility
+-# with it, use "posix_only" or "posix_right".
++# with it, use "posix_only" or "posix_right". Use POSIX time on systems with
++# leap smearing; this can work better than unsmeared "right" time with
++# applications that are not leap second aware, and is closer to unsmeared
++# "right" time than unsmeared POSIX time is (e.g., 0.5 vs 1.0 s max error).
+
+ REDO= posix_right
+
++# To install data in text form that has all the information of the binary data,
++# (optionally incorporating leap second information), use
++# TZDATA_TEXT= tzdata.zi leapseconds
++# To install text data without leap second information (e.g., because
++# REDO='posix_only'), use
++# TZDATA_TEXT= tzdata.zi
++# To avoid installing text data, use
++# TZDATA_TEXT=
++
++TZDATA_TEXT= leapseconds tzdata.zi
++
++# For backward-compatibility links for old zone names, use
++# BACKWARD= backward pacificnew
++# To omit these links, use
++# BACKWARD=
++
++BACKWARD= backward pacificnew
++
+ # If you want out-of-scope and often-wrong data from the file 'backzone', use
+ # PACKRATDATA= backzone
+ # To omit this data, use
+@@ -96,6 +118,11 @@
+
+ PACKRATDATA=
+
++# The name of a locale using the UTF-8 encoding, used during self-tests.
++# The tests are skipped if the name does not appear to work on this system.
++
++UTF8_LOCALE= en_US.utf8
++
+ # Since "." may not be in PATH...
+
+ YEARISTYPE= ./yearistype
+@@ -103,50 +130,53 @@
+ # Non-default libraries needed to link.
+ LDLIBS=
+
+-# Add the following to the end of the "CFLAGS=" line as needed.
++# Add the following to the end of the "CFLAGS=" line as needed to override
++# defaults specified in the source code. "-DFOO" is equivalent to "-DFOO=1".
+ # -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DDEPRECATE_TWO_DIGIT_YEARS for optional runtime warnings about strftime
++# formats that generate only the last two digits of year numbers
++# -DEPOCH_LOCAL 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.
+ # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r
++# -DHAVE_DECL_ENVIRON if declares 'environ'
+ # -DHAVE_DIRECT_H if mkdir needs (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
++# -DHAVE_GENERIC=0 if _Generic does not work
++# -DHAVE_GETTEXT if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R 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_INTTYPES_H if you have a non-C99 compiler with
+ # -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 declares locale_t and strftime_l
+-# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_SNPRINTF=0 if your system lacks the snprintf function
++# -DHAVE_STDBOOL_H if you have a non-C99 compiler with
++# -DHAVE_STDINT_H if you have a non-C99 compiler with
++# -DHAVE_STRFTIME_L if declares locale_t and strftime_l
+ # -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_SYS_STAT_H=0 if your compiler lacks a
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a
+ # -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;
++# -DHAVE_UNISTD_H=0 if your compiler lacks a
++# -Dlocale_t=XXX if your system uses XXX instead of locale_t
++# -Dssize_t=long on hosts like MS-Windows that lack ssize_t
++# -DTHREAD_SAFE 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
++# This is intended for internal use only; it mangles external names.
+ # -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
++# -DUNINIT_TRAP 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.
+@@ -154,27 +184,28 @@
+ # (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
++# Select instrumentation via "make GCC_INSTRUMENT='whatever'".
++GCC_INSTRUMENT = \
++ -fsanitize=undefined -fsanitize-address-use-after-scope \
++ -fsanitize-undefined-trap-on-error -fstack-protector
++GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
++ $(GCC_INSTRUMENT) \
++ -Wall -Wextra \
++ -Walloc-size-larger-than=100000 -Warray-bounds=2 \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement -Wdouble-promotion \
++ -Wformat=2 -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation \
++ -Winit-self -Wjump-misses-init -Wlogical-op \
++ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=5 \
++ -Wsuggest-attribute=const -Wsuggest-attribute=format \
++ -Wsuggest-attribute=noreturn -Wsuggest-attribute=pure \
++ -Wtrampolines -Wundef -Wuninitialized -Wunused \
++ -Wvariadic-macros -Wvla -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
+@@ -186,6 +217,31 @@
+ # 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.
+ #
++# The next batch of options control support for external variables
++# exported by tzcode. In practice these variables are less useful
++# than TM_GMTOFF and TM_ZONE. However, most of them are standardized.
++# #
++# # To omit or support the external variable "tzname", add one of:
++# # -DHAVE_TZNAME=0
++# # -DHAVE_TZNAME=1
++# # to the "CFLAGS=" line. "tzname" is required by POSIX 1988 and later.
++# # If not defined, the code attempts to guess HAVE_TZNAME from other macros.
++# # Warning: unless time_tz is also defined, HAVE_TZNAME=1 can cause
++# # crashes when combined with some platforms' standard libraries,
++# # presumably due to memory allocation issues.
++# #
++# # To omit or support the external variables "timezone" and "daylight", add
++# # -DUSG_COMPAT=0
++# # -DUSG_COMPAT=1
++# # to the "CFLAGS=" line; "timezone" and "daylight" are inspired by
++# # Unix Systems Group code and are required by POSIX 2008 (with XSI) and later.
++# # If not defined, the code attempts to guess USG_COMPAT from other macros.
++# #
++# # To support the external variable "altzone", add
++# # -DALTZONE
++# # to the end of the "CFLAGS=" line; although "altzone" appeared in
++# # System V Release 3.1 it has not been standardized.
++#
+ # If you want functions that were inspired by early versions of X3J11's work,
+ # add
+ # -DSTD_INSPIRED
+@@ -223,11 +279,6 @@
+ # -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
+@@ -237,8 +288,8 @@
+ # 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
++# 53 as a week number (rather than 52 or 53) for January days before
++# January's first Monday when a "%V" format is used and January 1
+ # falls on a Friday, Saturday, or Sunday.
+
+ CFLAGS=
+@@ -262,7 +313,7 @@
+
+ # How to use zic to install tz binary files.
+
+-ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++ZIC_INSTALL= $(ZIC) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
+
+ # The name of a Posix-compliant 'awk' on your system.
+ AWK= awk
+@@ -286,6 +337,7 @@
+ # The name, arguments and environment of a program to validate your web pages.
+ # See for a validator, and
+ # for a validation library.
++# Set VALIDATE=':' if you do not have such a program.
+ VALIDATE = nsgmls
+ VALIDATE_FLAGS = -s -B -wall -wno-unused-param
+ VALIDATE_ENV = \
+@@ -352,7 +404,7 @@
+ RANLIB= :
+
+ TZCOBJS= zic.o
+-TZDOBJS= zdump.o localtime.o asctime.o
++TZDOBJS= zdump.o localtime.o asctime.o strftime.o
+ DATEOBJS= date.o localtime.o strftime.o asctime.o
+ LIBSRCS= localtime.c asctime.c difftime.c
+ LIBOBJS= localtime.o asctime.o difftime.o
+@@ -367,20 +419,22 @@
+ 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
++COMMON= calendars CONTRIBUTING LICENSE Makefile \
++ NEWS README theory.html 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
++YDATA= $(PRIMARY_YDATA) etcetera $(BACKWARD)
+ NDATA= systemv factory
+ TDATA= $(YDATA) $(NDATA)
+ ZONETABLES= zone1970.tab zone.tab
+-TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++TABDATA= iso3166.tab $(TZDATA_TEXT) $(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
++TZDATA_ZI_DEPS= zishrink.awk $(TDATA) $(PACKRATDATA)
++DATA= $(YDATA) $(NDATA) backzone iso3166.tab leap-seconds.list \
++ leapseconds yearistype.sh $(ZONETABLES)
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk zishrink.awk
+ MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
+ TZS_YEAR= 2050
+ TZS= to$(TZS_YEAR).tzs
+@@ -387,13 +441,13 @@
+ 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)
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS) tzdata.zi
+
+ # 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 \
++ calendars CONTRIBUTING LICENSE Makefile NEWS README \
+ africa antarctica asctime.c asia australasia \
+ backward backzone \
+ checklinks.awk checktab.awk \
+@@ -402,7 +456,7 @@
+ leap-seconds.list leapseconds.awk localtime.c \
+ newctime.3 newstrftime.3 newtzset.3 northamerica \
+ pacificnew private.h \
+- southamerica strftime.c systemv \
++ southamerica strftime.c systemv theory.html \
+ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
+ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
+ workman.sh yearistype.sh \
+@@ -424,7 +478,7 @@
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
+- cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp -f $(TABDATA) $(DESTDIR)$(TZDIR)/.
+ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
+ cp libtz.a $(DESTDIR)$(LIBDIR)/.
+ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
+@@ -445,6 +499,11 @@
+ printf '%s\n' "$$V" >$@.out
+ mv $@.out $@
+
++# This file can be tailored by setting BACKWARD, PACKRATDATA, etc.
++tzdata.zi: $(TZDATA_ZI_DEPS)
++ LC_ALL=C $(AWK) -f zishrink.awk $(TDATA) $(PACKRATDATA) >$@.out
++ mv $@.out $@
++
+ version.h: version
+ VERSION=`cat version` && printf '%s\n' \
+ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
+@@ -470,6 +529,7 @@
+ # Arguments to pass to submakes of install_data.
+ # They can be overridden by later submake arguments.
+ INSTALLARGS = \
++ BACKWARD=$(BACKWARD) \
+ DESTDIR=$(DESTDIR) \
+ LEAPSECONDS='$(LEAPSECONDS)' \
+ PACKRATDATA='$(PACKRATDATA)' \
+@@ -478,10 +538,8 @@
+ 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)
++install_data: zic leapseconds yearistype tzdata.zi
++ $(ZIC_INSTALL) tzdata.zi
+
+ posix_only:
+ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
+@@ -518,14 +576,14 @@
+
+ zones: $(REDO)
+
+-$(TZS_NEW): $(TDATA) zdump zic
++$(TZS_NEW): tzdata.zi 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
++ $(zic) -d tzs.dir tzdata.zi
++ $(AWK) '/^L/{print "Link\t" $$2 "\t" $$3}' \
++ tzdata.zi | LC_ALL=C sort >$@.out
+ wd=`pwd` && \
+ zones=`$(AWK) -v wd="$$wd" \
+- '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ '/^Z/{print wd "/tzs.dir/" $$2}' tzdata.zi \
+ | LC_ALL=C sort` && \
+ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
+ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
+@@ -542,7 +600,8 @@
+ cp $(TZS_NEW) $(TZS)
+
+ libtz.a: $(LIBOBJS)
+- $(AR) ru $@ $(LIBOBJS)
++ rm -f $@
++ $(AR) -rc $@ $(LIBOBJS)
+ $(RANLIB) $@
+
+ date: $(DATEOBJS)
+@@ -560,18 +619,24 @@
+ chmod +x $@.out
+ mv $@.out $@
+
+-check: check_character_set check_white_space check_links check_sorted \
+- check_tables check_tzs check_web
++check: check_character_set check_white_space check_links \
++ check_name_lengths check_sorted \
++ check_tables check_web check_zishrink check_tzs
+
+ check_character_set: $(ENCHILADA)
+- LC_ALL=en_US.utf8 && export LC_ALL && \
++ test ! '$(UTF8_LOCALE)' || \
++ ! printf 'A\304\200B\n' | \
++ LC_ALL='$(UTF8_LOCALE)' grep -q '^A.B$$' >/dev/null 2>&1 || { \
++ LC_ALL='$(UTF8_LOCALE)' && export LC_ALL && \
+ sharp='#' && \
+ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
+ $(MISC) $(SOURCES) $(WEB_PAGES) \
+- CONTRIBUTING LICENSE Makefile README version && \
++ CONTRIBUTING LICENSE Makefile README \
++ version tzdata.zi && \
+ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
+ leapseconds yearistype.sh zone.tab && \
+- ! grep -Env $(OK_LINE) $(ENCHILADA)
++ ! grep -Env $(OK_LINE) $(ENCHILADA); \
++ }
+
+ check_white_space: $(ENCHILADA)
+ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
+@@ -578,6 +643,13 @@
+ ! grep -En "$$pat" $(ENCHILADA)
+ ! grep -n '[[:space:]]$$' $(ENCHILADA)
+
++PRECEDES_FILE_NAME = ^(Zone|Link[[:space:]]+[^[:space:]]+)[[:space:]]+
++FILE_NAME_COMPONENT_TOO_LONG = \
++ $(PRECEDES_FILE_NAME)[^[:space:]]*[^/[:space:]]{15}
++
++check_name_lengths: $(TDATA) backzone
++ ! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' $(TDATA) backzone
++
+ 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
+@@ -592,6 +664,7 @@
+
+ check_links: checklinks.awk $(TDATA)
+ $(AWK) -f checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk tzdata.zi
+
+ check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
+ for tab in $(ZONETABLES); do \
+@@ -602,14 +675,32 @@
+ check_tzs: $(TZS) $(TZS_NEW)
+ diff -u $(TZS) $(TZS_NEW)
+
+-check_web: $(WEB_PAGES)
+- $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++# This checks only the HTML 4.01 strict page.
++# To check the the other pages, use .
++check_web: tz-how-to.html
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) tz-how-to.html
+
++# Check that tzdata.zi generates the same binary data that its sources do.
++check_zishrink: tzdata.zi zic leapseconds $(PACKRATDATA) $(TDATA)
++ for type in posix right; do \
++ mkdir -p time_t.dir/$$type time_t.dir/$$type-shrunk && \
++ case $$type in \
++ right) leap='-L leapseconds';; \
++ *) leap=;; \
++ esac && \
++ $(ZIC) $$leap -d time_t.dir/$$type $(TDATA) && \
++ $(AWK) '/^Rule/' $(TDATA) | \
++ $(ZIC) $$leap -d time_t.dir/$$type - $(PACKRATDATA) && \
++ $(ZIC) $$leap -d time_t.dir/$$type-shrunk tzdata.zi && \
++ diff -r time_t.dir/$$type time_t.dir/$$type-shrunk || exit; \
++ done
++ rm -fr time_t.dir
++
+ 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)
++ rm -fr *.dir tzdata.zi tzdb-*/ $(TZS_NEW)
+
+ maintainer-clean: clean
+ @echo 'This command is intended for maintainers to use; it'
+@@ -663,6 +754,7 @@
+ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
+ exit; \
+ done
++ touch -cmr `ls -t $(TZDATA_ZI_DEPS) | sed 1q` tzdata.zi
+ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
+ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
+ touch $@
+@@ -674,7 +766,7 @@
+ $(MAKE) maintainer-clean
+ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
+ mkdir -p public.dir
+- for i in $(TDATA) ; do \
++ for i in $(TDATA) tzdata.zi; do \
+ $(zic) -v -d public.dir $$i 2>&1 || exit; \
+ done
+ $(zic) -v -d public.dir $(TDATA)
+@@ -768,8 +860,8 @@
+ $(MAKE) clean ; \
+ done
+
+-zonenames: $(TDATA)
+- @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++zonenames: tzdata.zi
++ @$(AWK) '/^Z/ { print $$2 } /^L/ { print $$3 }' tzdata.zi
+
+ asctime.o: private.h tzfile.h
+ date.o: private.h
+@@ -785,6 +877,7 @@
+ .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: check_zishrink
+ .PHONY: clean clean_misc force_tzs
+ .PHONY: install install_data maintainer-clean names
+ .PHONY: posix_only posix_packrat posix_right
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -1,5 +1,344 @@
+ News for the tz database
+
++Release 2017c - 2017-10-20 14:49:34 -0700
++
++ Briefly:
++ Northern Cyprus switches from +03 to +02/+03 on 2017-10-29.
++ Fiji ends DST 2018-01-14, not 2018-01-21.
++ Namibia switches from +01/+02 to +02 on 2018-04-01.
++ Sudan switches from +03 to +02 on 2017-11-01.
++ Tonga likely switches from +13/+14 to +13 on 2017-11-05.
++ Turks & Caicos switches from -04 to -05/-04 on 2018-11-04.
++ A new file tzdata.zi now holds a small text copy of all data.
++ The zic input format has been regularized slightly.
++
++ Changes to future time stamps
++
++ Northern Cyprus has decided to resume EU rules starting
++ 2017-10-29, thus reinstituting winter time.
++
++ Fiji ends DST 2018-01-14 instead of the 2018-01-21 previously
++ predicted. (Thanks to Dominic Fok.) Adjust future predictions
++ accordingly.
++
++ Namibia will switch from +01 with DST to +02 all year on
++ 2017-09-03 at 02:00. This affects UT offsets starting 2018-04-01
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Sudan will switch from +03 to +02 on 2017-11-01. (Thanks to Ahmed
++ Atyya and Yahia Abdalla.) South Sudan is not switching, so
++ Africa/Juba is no longer a link to Africa/Khartoum.
++
++ Tonga has likely ended its experiment with DST, and will not
++ adjust its clocks on 2017-11-05. Although Tonga has not announced
++ whether it will continue to observe DST, the IATA is assuming that
++ it will not. (Thanks to David Wade.)
++
++ Turks & Caicos will switch from -04 all year to -05 with US DST on
++ 2018-03-11 at 03:00. This affects UT offsets starting 2018-11-04
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Namibia switched from +02 to +01 on 1994-03-21, not 1994-04-03.
++ (Thanks to Arthur David Olson.)
++
++ Detroit did not observe DST in 1967.
++
++ Use railway time for Asia/Kolkata before 1941, by switching to
++ Madras local time (UT +052110) in 1870, then to IST (UT +0530) in
++ 1906. Also, treat 1941-2's +0630 as DST, like 1942-5.
++
++ Europe/Dublin's 1946 and 1947 fallback transitions occurred at
++ 02:00 standard time, not 02:00 DST. (Thanks to Michael Deckers.)
++
++ Pacific/Apia and Pacific/Pago_Pago switched from Antipodean to
++ American time in 1892, not 1879. (Thanks to Michael Deckers.)
++
++ Adjust the 1867 transition in Alaska to better reflect the
++ historical record, by changing it to occur on 1867-10-18 at 15:30
++ Sitka time rather than at the start of 1867-10-17 local time.
++ Although strictly speaking this is accurate only for Sitka,
++ the rest of Alaska's blanks need to be filled in somehow.
++
++ Fix off-by-one errors in UT offsets for Adak and Nome before 1867.
++ (Thanks to Michael Deckers.)
++
++ Add 7 s to the UT offset in Asia/Yangon before 1920.
++
++ Changes to zone names
++
++ Remove Canada/East-Saskatchewan from the 'backward' file, as it
++ exceeded the 14-character limit and was an unused misnomer anyway.
++
++ Changes to build procedure
++
++ To support applications that prefer to read time zone data in text
++ form, two zic input files tzdata.zi and leapseconds are now
++ installed by default. The commands 'zic tzdata.zi' and 'zic -L
++ leapseconds tzdata.zi' can reproduce the tzdata binary files
++ without and with leap seconds, respectively. To prevent these two
++ new files from being installed, use 'make TZDATA_TEXT=', and to
++ suppress leap seconds from the tzdata text installation, use 'make
++ TZDATA_TEXT=tzdata.zi'.
++
++ 'make BACKWARD=' now suppresses backward-compatibility names
++ like 'US/Pacific' that are defined in the 'backward' and
++ 'pacificnew' files.
++
++ 'make check' now works on systems that lack a UTF-8 locale,
++ or that lack the nsgmls program. Set UTF8_LOCALE to configure
++ the name of a UTF-8 locale, if you have one.
++
++ Y2K runtime checks are no longer enabled by default. Add
++ -DDEPRECATE_TWO_DIGIT_YEARS to CFLAGS to enable them, instead of
++ adding -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU
++ to disable them. (New name suggested by Brian Inglis.)
++
++ The build procedure for zdump now works on AIX 7.1.
++ (Problem reported by Kees Dekker.)
++
++ Changes to code
++
++ zic and the reference runtime now reject multiple leap seconds
++ within 28 days of each other, or leap seconds before the Epoch.
++ As a result, support for double leap seconds, which was
++ obsolescent and undocumented, has been removed. Double leap
++ seconds were an error in the C89 standard; they have never existed
++ in civil timekeeping. (Thanks to Robert Elz and Bradley White for
++ noticing glitches in the code that uncovered this problem.)
++
++ zic now warns about use of the obsolescent and undocumented -y
++ option, and about use of the obsolescent TYPE field of Rule lines.
++
++ zic now allows unambiguous abbreviations like "Sa" and "Su" for
++ weekdays; formerly it rejected them due to a bug. Conversely, zic
++ no longer considers non-prefixes to be abbreviations; for example,
++ it no longer accepts "lF" as an abbreviation for "lastFriday".
++ Also, zic warns about the undocumented usage with a "last-"
++ prefix, e.g., "last-Fri".
++
++ Similarly, zic now accepts the unambiguous abbreviation "L" for
++ "Link" in ordinary context and for "Leap" in leap-second context.
++ Conversely, zic no longer accepts non-prefixes such as "La" as
++ abbreviations for words like "Leap".
++
++ zic no longer accepts leap second lines in ordinary input, or
++ ordinary lines in leap second input. Formerly, zic sometimes
++ warned about this undocumented usage and handled it incorrectly.
++
++ The new macro HAVE_TZNAME governs whether the tzname external
++ variable is exported, instead of USG_COMPAT. USG_COMPAT now
++ governs only the external variables "timezone" and "daylight".
++ This change is needed because the three variables are not in the
++ same category: although POSIX requires tzname, it specifies the
++ other two variables as optional. Also, USG_COMPAT is now 1 or 0:
++ if not defined, the code attempts to guess it from other macros.
++
++ localtime.c and difftime.c no longer require stdio.h, and .c files
++ other than zic.c no longer require sys/wait.h.
++
++ zdump.c no longer assumes snprintf. (Reported by Jonathan Leffler.)
++
++ Calculation of time_t extrema works around a bug in GCC 4.8.4
++ (Reported by Stan Shebs and Joseph Myers.)
++
++ zic.c no longer mistranslates formats of line numbers in non-English
++ locales. (Problem reported by Benno Schulenberg.)
++
++ Several minor changes have been made to the code to make it a
++ bit easier to port to MS-Windows and Solaris. (Thanks to Kees
++ Dekker for reporting the problems.)
++
++ Changes to documentation and commentary
++
++ The two new files 'theory.html' and 'calendars' contain the
++ contents of the removed file 'Theory'. The goal is to document
++ tzdb theory more accessibly.
++
++ The zic man page now documents abbreviation rules.
++
++ tz-link.htm now covers how to apply tzdata changes to clients.
++ (Thanks to Jorge Fábregas for the AIX link.) It also mentions MySQL.
++
++ The leap-seconds.list URL has been updated to something that is
++ more reliable for tzdb. (Thanks to Tim Parenti and Brian Inglis.)
++
++Release 2017b - 2017-03-17 07:30:38 -0700
++
++ Briefly: Haiti has resumed DST.
++
++ Changes to past and future time stamps
++
++ Haiti resumed observance of DST in 2017. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Liberia changed from -004430 to +00 on 1972-01-07, not 1972-05-01.
++
++ Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
++ is one byte over the POSIX limit. (Problem reported by Derick Rethans.)
++
++ Changes to code
++
++ The reference localtime implementation now falls back on the
++ current US daylight-saving transition rules rather than the
++ 1987-2006 rules. This fallback occurs only when (1) the TZ
++ environment variable's value has a name like "AST4ADT" that asks
++ for daylight saving time but does not specify the rules, (2) there
++ is no file by that name, and (3) the TZDEFRULES file cannot be
++ loaded. (Thanks to Tom Lane.)
++
++
++Release 2017a - 2017-02-28 00:05:36 -0800
++
++ Briefly: Southern Chile moves from -04/-03 to -03, and Mongolia
++ discontinues DST.
++
++ Changes to future time stamps
++
++ Mongolia no longer observes DST. (Thanks to Ganbold Tsagaankhuu.)
++
++ Chile's Region of Magallanes moves from -04/-03 to -03 year-round.
++ Its clocks diverge from America/Santiago starting 2017-05-13 at
++ 23:00, hiving off a new zone America/Punta_Arenas. Although the
++ Chilean government says this change expires in May 2019, for now
++ assume it's permanent. (Thanks to Juan Correa and Deborah
++ Goldsmith.) This also affects Antarctica/Palmer.
++
++ Changes to past time stamps
++
++ Fix many entries for historical time stamps for Europe/Madrid
++ before 1979, to agree with tables compiled by Pere Planesas of the
++ National Astronomical Observatory of Spain. As a side effect,
++ this changes some time stamps for Africa/Ceuta before 1929, which
++ are probably guesswork anyway. (Thanks to Steve Allen and
++ Pierpaolo Bernardi for the heads-ups, and to Michael Deckers for
++ correcting the 1901 transition.)
++
++ Ecuador observed DST from 1992-11-28 to 1993-02-05.
++ (Thanks to Alois Treindl.)
++
++ Asia/Atyrau and Asia/Oral were at +03 (not +04) before 1930-06-21.
++ (Thanks to Stepan Golosunov.)
++
++ Changes to past and future time zone abbreviations
++
++ Switch to numeric time zone abbreviations for South America, as
++ part of the ongoing project of removing invented abbreviations.
++ This avoids the need to invent an abbreviation for the new Chilean
++ new zone. Similarly, switch from invented to numeric time zone
++ abbreviations for Afghanistan, American Samoa, the Azores,
++ Bangladesh, Bhutan, the British Indian Ocean Territory, Brunei,
++ Cape Verde, Chatham Is, Christmas I, Cocos (Keeling) Is, Cook Is,
++ Dubai, East Timor, Eucla, Fiji, French Polynesia, Greenland,
++ Indochina, Iran, Iraq, Kiribati, Lord Howe, Macquarie, Malaysia,
++ the Maldives, Marshall Is, Mauritius, Micronesia, Mongolia,
++ Myanmar, Nauru, Nepal, New Caledonia, Niue, Norfolk I, Palau,
++ Papua New Guinea, the Philippines, Pitcairn, Qatar, Réunion, St
++ Pierre & Miquelon, Samoa, Saudi Arabia, Seychelles, Singapore,
++ Solomon Is, Tokelau, Tuvalu, Wake, Vanuatu, Wallis & Futuna, and
++ Xinjiang; for 20-minute daylight saving time in Ghana before 1943;
++ for half-hour daylight saving time in Belize before 1944 and in
++ the Dominican Republic before 1975; and for Canary Islands before
++ 1946, for Guinea-Bissau before 1975, for Iceland before 1969, for
++ Indian Summer Time before 1942, for Indonesia before around 1964,
++ for Kenya before 1960, for Liberia before 1973, for Madeira before
++ 1967, for Namibia before 1943, for the Netherlands in 1937-9, for
++ Pakistan before 1971, for Western Sahara before 1977, and for
++ Zaporozhye in 1880-1924.
++
++ For Alaska time from 1900 through 1967, instead of "CAT" use the
++ abbreviation "AST", the abbreviation commonly used at the time
++ (Atlantic Standard Time had not been standardized yet). Use "AWT"
++ and "APT" instead of the invented abbreviations "CAWT" and "CAPT".
++
++ Use "CST" and "CDT" instead of invented abbreviations for Macau
++ before 1999 and Taiwan before 1938, and use "JST" instead of the
++ invented abbreviation "JCST" for Japan and Korea before 1938.
++
++ Change to database entry category
++
++ Move the Pacific/Johnston link from 'australasia' to 'backward',
++ since Johnston is now uninhabited.
++
++ Changes to code
++
++ zic no longer mishandles some transitions in January 2038 when it
++ attempts to work around Qt bug 53071. This fixes a bug affecting
++ Pacific/Tongatapu that was introduced in zic 2016e. localtime.c
++ now contains a workaround, useful when loading a file generated by
++ a buggy zic. (Problem and localtime.c fix reported by Bradley
++ White.)
++
++ zdump -i now outputs non-hour numeric time zone abbreviations
++ without a colon, e.g., "+0530" rather than "+05:30". This agrees
++ with zic %z and with common practice, and simplifies auditing of
++ zdump output.
++
++ zdump is now buildable again with -DUSE_LTZ=0.
++ (Problem reported by Joseph Myers.)
++
++ zdump.c now always includes private.h, to avoid code duplication
++ with private.h. (Problem reported by Kees Dekker.)
++
++ localtime.c no longer mishandles early or late timestamps
++ when TZ is set to a POSIX-style string that specifies DST.
++ (Problem reported by Kees Dekker.)
++
++ date and strftime now cause %z to generate "-0000" instead of
++ "+0000" when the UT offset is zero and the time zone abbreviation
++ begins with "-".
++
++ Changes to documentation and commentary
++
++ The 'Theory' file now better documents choice of historical time
++ zone abbreviations. (Problems reported by Michael Deckers.)
++
++ tz-link.htm now covers leap smearing, which is popular in clouds.
++
++
++Release 2016j - 2016-11-22 23:17:13 -0800
++
++ Briefly: Saratov, Russia moves from +03 to +04 on 2016-12-04.
++
++ Changes to future time stamps
++
++ Saratov, Russia switches from +03 to +04 on 2016-12-04 at 02:00.
++ This hives off a new zone Europe/Saratov from Europe/Volgograd.
++ (Thanks to Yuri Konotopov and Stepan Golosunov.)
++
++ Changes to past time stamps
++
++ The new zone Asia/Atyrau for Atyraū Region, Kazakhstan, is like
++ Asia/Aqtau except it switched from +05/+06 to +04/+05 in spring
++ 1999, not fall 1994. (Thanks to Stepan Golosunov.)
++
++ Changes to past time zone abbreviations
++
++ Asia/Gaza and Asia/Hebron now use "EEST", not "EET", to denote
++ summer time before 1948. The old use of "EET" was a typo.
++
++ Changes to code
++
++ zic no longer mishandles file systems that lack hard links, fixing
++ bugs introduced in 2016g. (Problems reported by Tom Lane.)
++ Also, when the destination already contains symbolic links, zic
++ should now work better on systems where the 'link' system call
++ does not follow symbolic links.
++
++ Changes to documentation and commentary
++
++ tz-link.htm now documents the relationship between release version
++ numbers and development-repository commit tags. (Suggested by
++ Paul Koning.)
++
++ The 'Theory' file now documents UT.
++
++ iso3166.tab now accents "Curaçao", and commentary now mentions
++ the names "Cabo Verde" and "Czechia". (Thanks to Jiří Boháč.)
++
++
+ Release 2016i - 2016-11-01 23:19:52 -0700
+
+ Briefly: Cyprus split into two time zones on 2016-10-30, and Tonga
+@@ -212,7 +551,7 @@
+ 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,
++ Tagged releases use 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'.
+@@ -870,9 +1209,9 @@
+ 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,
++ If USG_COMPAT is defined and the requested timestamp 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
++ variable timezone to a value appropriate for that timestamp; 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.
+@@ -879,7 +1218,7 @@
+
+ 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
++ return NULL and set errno when a timestamp is out of range, rather
+ than having undefined behavior.
+
+ Some bugs associated with the new 2014g functions have been fixed.
+@@ -896,7 +1235,7 @@
+
+ Release 2014h - 2014-09-25 18:59:03 -0700
+
+- Changes affecting past time stamps
++ Changes affecting past timestamps
+
+ America/Jamaica's 1974 spring-forward transition was Jan. 6, not Apr. 28.
+
+@@ -904,8 +1243,8 @@
+ 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.
++ from existing zones only for older timestamps. As usual,
++ these changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -917,7 +1256,7 @@
+ 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
++ appropriate for the requested timestamp, and zdump now uses this
+ on platforms not defining TM_ZONE, fixing a 2014g regression.
+ (Thanks to Tim Parenti for reporting the problem.)
+
+@@ -957,13 +1296,13 @@
+
+ Release 2014g - 2014-08-28 12:31:23 -0700
+
+- Changes affecting future time stamps
++ Changes affecting future timestamps
+
+ 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
++ Changes affecting past timestamps
+
+ Time in Russia or the USSR before 1926 or so has been corrected by
+ a few seconds in the following zones: Asia/Irkutsk,
+@@ -973,7 +1312,7 @@
+ 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,
++ This affects 1911 timestamps 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.)
+@@ -981,7 +1320,7 @@
+ 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
++ connoisseurs of old timestamps, 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.
+@@ -989,8 +1328,8 @@
+ 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.
++ from existing zones only for older timestamps. As usual,
++ these changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -1041,7 +1380,7 @@
+ 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
++ more likely to guess right for ambiguous timestamps near
+ transitions where tm_isdst does not change.
+
+ If HAVE_STRFTIME_L is defined to 1, the tz library now defines
+@@ -1114,7 +1453,7 @@
+
+ Release 2014f - 2014-08-05 17:42:36 -0700
+
+- Changes affecting future time stamps
++ Changes affecting future timestamps
+
+ Russia will subtract an hour from most of its time zones on 2014-10-26
+ at 02:00 local time. (Thanks to Alexander Krivenyshev.)
+@@ -1165,13 +1504,13 @@
+ These abbreviations are now used for time in Korea, Taiwan,
+ and Sakhalin while controlled by Japan.
+
+- Changes affecting past time stamps
++ Changes affecting past timestamps
+
+ 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
++ different behaviors for timestamps 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.)
+@@ -1178,7 +1517,7 @@
+
+ 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
++ These changes affect UTC offsets in pre-1970 timestamps 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,
+@@ -1323,7 +1662,7 @@
+
+ Release 2014e - 2014-06-12 21:53:52 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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
+@@ -1335,7 +1674,7 @@
+ 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
++ Changes affecting past timestamps
+
+ The abbreviation "MSM" (Moscow Midsummer Time) is now used instead of
+ "MSD" for Moscow's double daylight time in summer 1921. Also, a typo
+@@ -1353,7 +1692,7 @@
+
+ Changes affecting code
+
+- zic no longer generates files containing time stamps before the Big Bang.
++ zic no longer generates files containing timestamps before the Big Bang.
+ This works around GNOME bug 730332
+ .
+ (Thanks to Leonardo Chiquitto for reporting the bug, and to
+@@ -1366,7 +1705,7 @@
+
+ Release 2014c - 2014-05-13 07:44:13 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ Egypt observes DST starting 2014-05-15 at 24:00.
+ (Thanks to Ahmad El-Dardiry and Gunther Vermier.)
+@@ -1380,7 +1719,7 @@
+ Changes affecting code
+
+ zic now generates transitions for minimum time values, eliminating guesswork
+- when handling low-valued time stamps. (Thanks to Arthur David Olson.)
++ when handling low-valued timestamps. (Thanks to Arthur David Olson.)
+
+ Port to Cygwin sans glibc. (Thanks to Arthur David Olson.)
+
+@@ -1391,7 +1730,7 @@
+
+ Release 2014b - 2014-03-24 21:28:50 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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.
+@@ -1430,12 +1769,12 @@
+
+ Release 2014a - 2014-03-07 23:30:29 -0800
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ 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
++ Changes affecting past timestamps
+
+ Fiji ended DST on 2014-01-19 at 02:00, not the previously-scheduled 03:00.
+ (Thanks to Steffen Thorsen.)
+@@ -1499,13 +1838,13 @@
+
+ Release 2013i - 2013-12-17 07:25:23 -0800
+
+- Changes affecting near-future time stamps:
++ Changes affecting near-future timestamps:
+
+ 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:
++ Changes affecting past timestamps:
+
+ In 2004, Cuba began DST on March 28, not April 4.
+ (Thanks to Steffen Thorsen.)
+@@ -1529,7 +1868,7 @@
+
+ Release 2013h - 2013-10-25 15:32:32 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Libya has switched its UT offset back to +02 without DST, instead
+ of +01 with DST. (Thanks to Even Scharning.)
+@@ -1537,7 +1876,7 @@
+ Western Sahara (Africa/El_Aaiun) uses Morocco's DST rules.
+ (Thanks to Gwillim Law.)
+
+- Changes affecting future time stamps:
++ Changes affecting future timestamps:
+
+ 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.
+@@ -1588,7 +1927,7 @@
+
+ Release 2013g - 2013-09-30 21:08:26 -0700
+
+- Changes affecting current and near-future time stamps
++ Changes affecting current and near-future timestamps
+
+ Morocco now observes DST from the last Sunday in March to the last
+ Sunday in October, not April to September respectively. (Thanks
+@@ -1621,7 +1960,7 @@
+
+ Release 2013f - 2013-09-24 23:37:36 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ Tocantins will very likely not observe DST starting this spring.
+ (Thanks to Steffen Thorsen.)
+@@ -1668,7 +2007,7 @@
+
+ Release 2013e - 2013-09-19 23:50:04 -0700
+
+- Changes affecting near-future time stamps
++ Changes affecting near-future timestamps
+
+ This year Fiji will start DST on October 27, not October 20.
+ (Thanks to David Wheeler for the heads-up.) For now, guess that
+@@ -1686,13 +2025,13 @@
+ 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
++ Changes affecting Godthåb timestamps 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,
++ far-future timestamps 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.)
+@@ -1710,12 +2049,12 @@
+ 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
++ all timestamps 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
++ files, and typically works in practice even for timestamps after
+ 2037; the only known exception is America/Godthab.
+
+- Changes affecting time stamps before 1970
++ Changes affecting timestamps before 1970
+
+ Pacific/Johnston is now a link to Pacific/Honolulu. This corrects
+ some errors before 1947.
+@@ -1723,7 +2062,7 @@
+ 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:
++ only timestamps 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,
+@@ -1733,11 +2072,11 @@
+ 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
++ America/Cayman, America/Jamaica and America/Grand_Turk timestamps
+ 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
++ This affects Europe/Zurich timestamps from 1853 to 1894. (Thanks
+ to Alois Treindl).
+
+ Change the date of the circa-1850 Zurich transition from 1849-09-12
+@@ -1755,7 +2094,7 @@
+ 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
++ timestamps 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
+@@ -1787,7 +2126,7 @@
+ 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
++ "UTC" does not make sense for timestamps that predate the introduction
+ of UTC, whereas "UT", a more-generic term, does. (Thanks to Steve Allen
+ for clarifying UT vs UTC.)
+
+@@ -1798,7 +2137,7 @@
+
+ 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
++ same-country-code zones for post-1970 timestamps. The data entries for
+ these names are unchanged, so the names continue to work as before.
+
+ Changes affecting code internals
+@@ -1816,7 +2155,7 @@
+
+ The 'leapseconds' file is now generated automatically from a
+ new file 'leap-seconds.list', which is a copy of
+- .
++
+ A new source file 'leapseconds.awk' implements this.
+ The goal is simplification of the future maintenance of 'leapseconds'.
+
+@@ -1858,7 +2197,7 @@
+
+ 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
++ explaining why so many of the pre-1970 timestamps are wrong or
+ misleading (thanks to Steve Allen, Lester Caine, and Garrett
+ Wollman for discussions that contributed to this).
+
+@@ -1893,7 +2232,7 @@
+
+ Release 2013d - 2013-07-05 07:38:01 -0700
+
+- Changes affecting future time stamps:
++ Changes affecting future timestamps:
+
+ Morocco's midsummer transitions this year are July 7 and August 10,
+ not July 9 and August 8. (Thanks to Andrew Paprocki.)
+@@ -1901,7 +2240,7 @@
+ Israel now falls back on the last Sunday of October.
+ (Thanks to Ephraim Silverberg.)
+
+- Changes affecting past time stamps:
++ Changes affecting past timestamps:
+
+ Specify Jerusalem's location more precisely; this changes the pre-1880
+ times by 2 s.
+@@ -1939,7 +2278,7 @@
+
+ Release 2013c - 2013-04-19 16:17:40 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Palestine observed DST starting March 29, 2013. (Thanks to
+ Steffen Thorsen.) From 2013 on, Gaza and Hebron both observe DST,
+@@ -1950,7 +2289,7 @@
+ 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:
++ Changes affecting past timestamps:
+
+ Fix some historical data for Palestine to agree with that of
+ timeanddate.com, as follows:
+@@ -1984,10 +2323,10 @@
+
+ Release 2013b - 2013-03-10 22:33:40 -0700
+
+- Changes affecting current and future time stamps:
++ Changes affecting current and future timestamps:
+
+ Haiti uses US daylight-saving rules this year, and presumably future years.
+- This changes time stamps starting today. (Thanks to Steffen Thorsen.)
++ This changes timestamps 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.
+@@ -2011,7 +2350,7 @@
+ 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:
++ Changes affecting current and future timestamps:
+
+ 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.
+@@ -2020,9 +2359,9 @@
+ 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.
++ Many changes affect historical timestamps before 1940.
+ These were deduced from: Milne J. Civil time. Geogr J. 1899
+- Feb;13(2):173-94 .
++ Feb;13(2):173-94 .
+
+ Changes affecting the code:
+
+@@ -2152,7 +2491,7 @@
+
+ Release code2012c-data2012d - 2012-07-19 16:35:33 -0700
+
+- Changes for Morocco's time stamps, which take effect in a couple of
++ Changes for Morocco's timestamps, which take effect in a couple of
+ hours, along with infrastructure changes to accommodate how the tz
+ code and data are released on IANA.
+
+@@ -2296,12 +2635,12 @@
+
+ Release 2011d - 2011-03-14 09:18:01 -0400
+
+- changes that impact present-day time stamps in Cuba, Samoa, and Turkey
++ changes that impact present-day timestamps 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.
++ These do affect current timestamps in Chile and Annette Island, Canada.
+
+
+ Release 2011b - 2011-02-07 08:44:50 -0500
+@@ -3766,7 +4105,7 @@
+ 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,
++Release timestamps 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
+--- contrib/tzdata/README.orig
++++ contrib/tzdata/README
+@@ -10,24 +10,9 @@
+ 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
++See or the
++file tz-link.htm for how to acquire the code and data. Once acquired,
++read the comments in the file '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":
+@@ -60,10 +45,6 @@
+ maintainer, to whom the time zone community owes the greatest debt of all.
+ None of them are responsible for remaining errors.
+
+-Look in 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
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -1,840 +0,0 @@
+-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
+-
+-
+-
+-
+------ 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
+- 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 .
+- 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
+- ;
+- Historical values of the Earth's clock error. J Hist Astron. 2005;36:339
+- .
+-
+- * 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 ""; 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)
+-.
+-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?
+-
+-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"
+- (2012-08-08).
+-
+-Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
+-
+-(2004-01-14), pp A1, A20-A21.
+-
+-Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
+-
+-
+------
+-
+-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
+@@ -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 (2017-02-20):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -26,44 +26,38 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
++# European-style abbreviations are commonly used along the Mediterranean.
++# For sub-Saharan Africa abbreviations were less standardized.
+ # Previous editions of this database used WAT, CAT, SAT, and EAT
+-# for +0:00 through +3:00, respectively,
+-# but Mark R V Murray reports that
+-# 'SAST' is the official abbreviation for +2:00 in the country of South Africa,
+-# 'CAT' is commonly used for +2:00 in countries north of South Africa, and
+-# 'WAT' is probably the best name for +1:00, as the common phrase for
++# for UT +00 through +03, respectively,
++# but in 1997 Mark R V Murray reported that
++# 'SAST' is the official abbreviation for +02 in the country of South Africa,
++# 'CAT' is commonly used for +02 in countries north of South Africa, and
++# 'WAT' is probably the best name for +01, as the common phrase for
+ # the area that includes Nigeria is "West Africa".
+-# He has heard of "Western Sahara Time" for +0:00 but can find no reference.
+ #
+-# To make things confusing, 'WAT' seems to have been used for -1:00 long ago;
+-# I'd guess that this was because people needed _some_ name for -1:00,
+-# and at the time, far west Africa was the only major land area in -1:00.
+-# This usage is now obsolete, as the last use of -1:00 on the African
+-# mainland seems to have been 1976 in Western Sahara.
++# To summarize, the following abbreviations seemed to have some currency:
++# +00 GMT Greenwich Mean Time
++# +02 CAT Central Africa Time
++# +02 SAST South Africa Standard Time
++# and Murray suggested the following abbreviation:
++# +01 WAT West Africa Time
++# Murray's suggestion seems to have caught on in news reports and the like.
++# I vaguely recall 'WAT' also being used for -01 in the past but
++# cannot now come up with solid citations.
+ #
+-# To summarize, the following abbreviations seem to have some currency:
+-# -1:00 WAT West Africa Time (no longer used)
+-# 0:00 GMT Greenwich Mean Time
+-# 2:00 CAT Central Africa Time
+-# 2:00 SAST South Africa Standard Time
+-# and Murray suggests the following abbreviation:
+-# 1:00 WAT West Africa Time
+-# I realize that this leads to 'WAT' being used for both -1:00 and 1:00
+-# for times before 1976, but this is the best I can think of
+-# until we get more information.
+-#
+ # I invented the following abbreviations; corrections are welcome!
+-# 2:00 WAST West Africa Summer Time
+-# 2:30 BEAT British East Africa Time (no longer used)
+-# 2:45 BEAUT British East Africa Unified Time (no longer used)
+-# 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
++# +02 WAST West Africa Summer Time
++# +03 CAST Central Africa Summer Time (no longer used)
++# +03 SAST South Africa Summer Time (no longer used)
++# +03 EAT East Africa Time
++# 'EAT' also seems to have caught on; the others are rare but are paired
++# with better-attested non-DST abbreviations.
+
+ # Algeria
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -119,19 +113,19 @@
+ # Cameroon
+ # See Africa/Lagos.
+
+-# Cape Verde
++# Cape Verde / Cabo Verde
+ #
+-# Shanks gives 1907 for the transition to CVT.
++# Shanks gives 1907 for the transition to +02.
+ # Perhaps the 1911-05-26 Portuguese decree
+-# http://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
++# https://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
+- -2:00 - CVT 1942 Sep
+- -2:00 1:00 CVST 1945 Oct 15
+- -2:00 - CVT 1975 Nov 25 2:00
+- -1:00 - CVT
++ -2:00 - -02 1942 Sep
++ -2:00 1:00 -01 1945 Oct 15
++ -2:00 - -02 1975 Nov 25 2:00
++ -1:00 - -01
+
+ # Central African Republic
+ # See Africa/Lagos.
+@@ -224,7 +218,7 @@
+ # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+ # From Jesper Nørgaard Welen (2007-08-15): [The following agree:]
+ # http://www.nentjes.info/Bill/bill5.htm
+-# http://www.timeanddate.com/worldclock/city.html?n=53
++# https://www.timeanddate.com/worldclock/city.html?n=53
+ # From Steffen Thorsen (2007-09-04): The official information...:
+ # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
+@@ -262,8 +256,8 @@
+ # timeanddate[2] and another site I've found[3] also support that.
+ #
+ # [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263
+-# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53
+-# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
++# [2] https://www.timeanddate.com/worldclock/clockchange.html?n=53
++# [3] https://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+
+ # From Arthur David Olson (2009-04-20):
+ # In 2009 (and for the next several years), Ramadan ends before the fourth
+@@ -273,10 +267,10 @@
+ # From Steffen Thorsen (2009-08-11):
+ # We have been able to confirm the August change with the Egyptian Cabinet
+ # Information and Decision Support Center:
+-# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
++# https://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+ #
+ # The Middle East News Agency
+-# http://www.mena.org.eg/index.aspx
++# https://www.mena.org.eg/index.aspx
+ # also reports "Egypt starts winter time on August 21"
+ # today in article numbered "71, 11/08/2009 12:25 GMT."
+ # Only the title above is available without a subscription to their service,
+@@ -326,7 +320,7 @@
+ # 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
++# https://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
+@@ -388,7 +382,7 @@
+ Rule Ghana 1920 1942 - Dec 31 0:00 0 GMT
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Accra -0:00:52 - LMT 1918
+- 0:00 Ghana %s
++ 0:00 Ghana GMT/+0020
+
+ # Guinea
+ # See Africa/Abidjan.
+@@ -397,12 +391,12 @@
+ #
+ # 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
++# https://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 1912 Jan 1
+- -1:00 - WAT 1975
++ -1:00 - -01 1975
+ 0:00 - GMT
+
+ # Kenya
+@@ -409,8 +403,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Nairobi 2:27:16 - LMT 1928 Jul
+ 3:00 - EAT 1930
+- 2:30 - BEAT 1940
+- 2:45 - BEAUT 1960
++ 2:30 - +0230 1940
++ 2:45 - +0245 1960
+ 3:00 - EAT
+ Link Africa/Nairobi Africa/Addis_Ababa # Ethiopia
+ Link Africa/Nairobi Africa/Asmara # Eritrea
+@@ -426,18 +420,25 @@
+ # See Africa/Johannesburg.
+
+ # Liberia
+-# From Paul Eggert (2006-03-22):
+-# In 1972 Liberia was the last country to switch
+-# from a UTC offset that was not a multiple of 15 or 20 minutes.
+-# Howse reports that it was in honor of their president's birthday.
+-# Shank & Pottenger report the date as May 1, whereas Howse reports Jan;
+-# go with Shanks & Pottenger.
+-# For Liberia before 1972, Shanks & Pottenger report -0:44, whereas Howse and
+-# Whitman each report -0:44:30; go with the more precise figure.
++#
++# From Paul Eggert (2017-03-02):
++#
++# The Nautical Almanac for the Year 1970, p 264, is the source for -0:44:30.
++#
++# In 1972 Liberia was the last country to switch from a UTC offset
++# that was not a multiple of 15 or 20 minutes. The 1972 change was on
++# 1972-01-07, according to an entry dated 1972-01-04 on p 330 of:
++# Presidential Papers: First year of the administration of
++# President William R. Tolbert, Jr., July 23, 1971-July 31, 1972.
++# Monrovia: Executive Mansion.
++#
++# Use the abbreviation "MMT" before 1972, as the more-accurate numeric
++# abbreviation "-004430" would be one byte over the POSIX limit.
++#
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Monrovia -0:43:08 - LMT 1882
+ -0:43:08 - MMT 1919 Mar # Monrovia Mean Time
+- -0:44:30 - LRT 1972 May # Liberia Time
++ -0:44:30 - MMT 1972 Jan 7 # approximately MMT
+ 0:00 - GMT
+
+ ###############################################################################
+@@ -446,11 +447,11 @@
+
+ # From Even Scharning (2012-11-10):
+ # Libya set their time one hour back at 02:00 on Saturday November 10.
+-# http://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
++# https://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
+ # Here is an official source [in Arabic]: http://ls.ly/fb6Yc
+ #
+ # Steffen Thorsen forwarded a translation (2012-11-10) in
+-# http://mm.icann.org/pipermail/tz/2012-November/018451.html
++# https://mm.icann.org/pipermail/tz/2012-November/018451.html
+ #
+ # From Tim Parenti (2012-11-11):
+ # Treat the 2012-11-10 change as a zone change from UTC+2 to UTC+1.
+@@ -461,7 +462,7 @@
+ # From Even Scharning (2013-10-25):
+ # The scheduled end of DST in Libya on Friday, October 25, 2013 was
+ # cancelled yesterday....
+-# http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
++# https://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 UT +02.
+@@ -514,7 +515,7 @@
+ # basis....
+ # It seems that Mauritius observed daylight saving time from 1982-10-10 to
+ # 1983-03-20 as well, but that was not successful....
+-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
++# https://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+ # From Alex Krivenyshev (2008-06-25):
+ # http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+@@ -582,7 +583,7 @@
+ # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
++# https://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+
+ # From Arthur David Olson (2009-07-11):
+ # The "mauritius-dst-will-not-repeat" wrapup includes this:
+@@ -596,7 +597,7 @@
+ 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
+- 4:00 Mauritius MU%sT # Mauritius Time
++ 4:00 Mauritius +04/+05
+ # Agalega Is, Rodriguez
+ # no information; probably like Indian/Mauritius
+
+@@ -614,7 +615,7 @@
+ # be one hour ahead of GMT between 1 June and 27 September, according to
+ # Communication Minister and Government Spokesman, Khalid Naciri...."
+ #
+-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
++# http://www.worldtimezone.com/dst_news/dst_news_morocco01.html
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+@@ -627,7 +628,7 @@
+
+ # From Patrice Scattolin (2008-05-09):
+ # According to this article:
+-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
++# https://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+ # (and republished here: )
+ # the changes occur at midnight:
+ #
+@@ -649,7 +650,7 @@
+ # posted in English).
+ #
+ # The following Google query will generate many relevant hits:
+-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
++# https://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+
+ # From Steffen Thorsen (2008-08-27):
+ # Morocco will change the clocks back on the midnight between August 31
+@@ -660,7 +661,7 @@
+ # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+ #
+ # We have some further details posted here:
+-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
++# https://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+
+ # From Steffen Thorsen (2009-03-17):
+ # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+@@ -670,7 +671,7 @@
+ # (French)
+ #
+ # Our summary:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+@@ -693,7 +694,7 @@
+ # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html
+ # (French)
+ # Our page:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+@@ -710,7 +711,7 @@
+ # They said that the decision was already taken.
+ #
+ # More articles in the press
+-# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
++# https://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
+ # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923
+ # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim
+
+@@ -802,7 +803,7 @@
+ # 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/
++# https://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
+@@ -811,7 +812,7 @@
+ # [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
+-# agrees
++# agrees
+ # with the patch.
+
+ # From Paul Eggert (2015-06-08):
+@@ -915,7 +916,7 @@
+ # since most of it was then controlled by Morocco.
+
+ Zone Africa/El_Aaiun -0:52:48 - LMT 1934 Jan # El Aaiún
+- -1:00 - WAT 1976 Apr 14
++ -1:00 - -01 1976 Apr 14
+ 0:00 Morocco WE%sT
+
+ # Mozambique
+@@ -922,7 +923,7 @@
+ #
+ # 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
++# https://dre.pt/pdf1sdip/1911/05/12500/23132313.pdf
+ # merely made it official?
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -936,10 +937,18 @@
+ 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 Arthur David Olson (2017-08-09):
++# The text of the "Namibia Time Act, 1994" is available online at
++# www.lac.org.na/laws/1994/811.pdf
++# and includes this nugget:
++# Notwithstanding the provisions of subsection (2) of section 1, the
++# first winter period after the commencement of this Act shall
++# commence at OOhOO on Monday 21 March 1994 and shall end at 02h00 on
++# Sunday 4 September 1994.
++
+ # From Petronella Sibeene (2007-03-30):
+ # http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+@@ -949,21 +958,35 @@
+ # the country are close to 40 minutes earlier in sunrise than the rest
+ # of the country.
+ #
+-# From Paul Eggert (2007-03-31):
+-# Apparently the Caprivi Strip informally observes Botswana time, but
+-# we have no details. In the meantime people there can use Africa/Gaborone.
++# From Paul Eggert (2017-02-22):
++# Although the Zambezi Region (formerly known as Caprivi) informally
++# observes Botswana time, we have no details about historical practice.
++# In the meantime people there can use Africa/Gaborone.
++# See: Immanuel S. The Namibian. 2017-02-23.
++# https://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
+
++# From Steffen Thorsen (2017-08-09):
++# Namibia is going to change their time zone to what is now their DST:
++# https://www.newera.com.na/2017/02/23/namibias-winter-time-might-be-repealed/
++# This video is from the government decision:
++# https://www.nbc.na/news/na-passes-namibia-time-bill-repealing-1994-namibia-time-act.8665
++# We have made the assumption so far that they will change their time zone at
++# the same time they would normally start DST, the first Sunday in September:
++# https://www.timeanddate.com/news/time/namibia-new-time-zone.html
++
+ # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
+-Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
++Rule Namibia 1994 only - Mar 21 0:00 0 -
++Rule Namibia 1994 2016 - Sep Sun>=1 2:00 1:00 S
++Rule Namibia 1995 2017 - 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
++ 1:30 - +0130 1903 Mar
+ 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
++ 2:00 - CAT 1994 Mar 21 0:00
++ 1:00 Namibia WA%sT 2017 Sep 3 2:00
++ 2:00 - CAT
+
+ # Niger
+ # See Africa/Lagos.
+@@ -985,7 +1008,7 @@
+ # Réunion
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Reunion 3:41:52 - LMT 1911 Jun # Saint-Denis
+- 4:00 - RET # Réunion Time
++ 4:00 - +04
+ #
+ # Crozet Islands also observes Réunion time; see the 'antarctica' file.
+ #
+@@ -1020,7 +1043,7 @@
+ # Seychelles
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Mahe 3:41:48 - LMT 1906 Jun # Victoria
+- 4:00 - SCT # Seychelles Time
++ 4:00 - +04
+ # From Paul Eggert (2001-05-30):
+ # Aldabra, Farquhar, and Desroches, originally dependencies of the
+ # Seychelles, were transferred to the British Indian Ocean Territory
+@@ -1050,7 +1073,7 @@
+ # no information
+
+ # Sudan
+-#
++
+ # From
+ # Sudan News Agency (2000-01-13),
+ # also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen:
+@@ -1057,7 +1080,17 @@
+ # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+ # Saturday.... This was announced Thursday by Caretaker State Minister for
+ # Manpower Abdul-Rahman Nur-Eddin.
++
++# From Ahmed Atyya, National Telecommunications Corp. (NTC), Sudan (2017-10-17):
++# ... the Republic of Sudan is going to change the time zone from (GMT+3:00)
++# to (GMT+ 2:00) starting from Wednesday 1 November 2017.
+ #
++# From Paul Eggert (2017-10-18):
++# A scanned copy (in Arabic) of Cabinet Resolution No. 352 for the
++# year 2017 can be found as an attachment in email today from Yahia
++# Abdalla of NTC, archived at:
++# https://mm.icann.org/pipermail/tz/2017-October/025333.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Sudan 1970 only - May 1 0:00 1:00 S
+ Rule Sudan 1970 1985 - Oct 15 0:00 0 -
+@@ -1066,10 +1099,14 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Khartoum 2:10:08 - LMT 1931
+ 2:00 Sudan CA%sT 2000 Jan 15 12:00
+- 3:00 - EAT
++ 3:00 - EAT 2017 Nov 1
++ 2:00 - CAT
+
+ # South Sudan
+-Link Africa/Khartoum Africa/Juba
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Africa/Juba 2:06:28 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
+
+ # Swaziland
+ # See Africa/Johannesburg.
+@@ -1107,11 +1144,11 @@
+ # According to several news sources, Tunisia will not observe DST this year.
+ # (Arabic)
+ # http://www.elbashayer.com/?page=viewn&nid=42546
+-# http://www.babnet.net/kiwidetail-15295.asp
++# https://www.babnet.net/kiwidetail-15295.asp
+ #
+ # We have also confirmed this with the US embassy in Tunisia.
+ # We have a wrap-up about this on the following page:
+-# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
++# https://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to Tunis Afrique Presse News Agency
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -26,7 +26,7 @@
+ # 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
++# https://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.
+ #
+@@ -47,7 +47,7 @@
+ # http://www.aad.gov.au/default.asp?casid=37079
+ #
+ # We have more background information here:
+-# http://www.timeanddate.com/news/time/antarctica-new-times.html
++# https://www.timeanddate.com/news/time/antarctica-new-times.html
+
+ # From Steffen Thorsen (2010-03-10):
+ # We got these changes from the Australian Antarctic Division: ...
+@@ -62,7 +62,7 @@
+ # - Mawson station stays on UTC+5.
+ #
+ # Background:
+-# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
++# https://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
+@@ -110,7 +110,8 @@
+ # O'Higgins, Antarctic Peninsula, -6319-05704, since 1948-02
+ # Prat, -6230-05941
+ # Villa Las Estrellas (a town), around the Frei base, since 1984-04-09
+-# These locations have always used Santiago time; use TZ='America/Santiago'.
++# These locations employ Region of Magallanes time; use
++# TZ='America/Punta_Arenas'.
+
+ # China - year-round bases
+ # Great Wall, King George Island, -6213-05858, since 1985-02-20
+@@ -144,7 +145,7 @@
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+-# (2005-12-05)
++# (2005-12-05)
+ #
+ # Another base at Port-Martin, 50km east, began operation in 1947.
+ # It was destroyed by fire on 1952-01-14.
+--- 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 (2015-08-08):
++# From Paul Eggert (2017-01-13):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://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.
+@@ -35,29 +35,24 @@
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
+-# I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
+-# Corrections are welcome!
++# The following alphabetic abbreviations appear in these tables:
+ # std dst
+ # LMT Local Mean Time
+ # 2:00 EET EEST Eastern European Time
+ # 2:00 IST IDT Israel
+-# 3:00 AST ADT Arabia*
+-# 3:30 IRST IRDT Iran*
+-# 4:00 GST Gulf*
+ # 5:30 IST India
+-# 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)
++# 8:30 KST KDT Korea when at +0830
+ # 9:00 WIT east Indonesia (Waktu Indonesia Timur)
+ # 9:00 JST JDT Japan
+ # 9:00 KST KDT Korea when at +09
+ # 9:30 ACST Australian Central Standard Time
++# Otherwise, these tables typically use numeric abbreviations like +03
++# and +0330 for integer hour and minute UTC offsets. Although earlier
++# editions invented alphabetic time zone abbreviations for every
++# offset, this did not reflect common practice.
+ #
+ # See the 'europe' file for Russia and Turkey in Asia.
+
+@@ -65,7 +60,7 @@
+ # Incorporates data for Singapore from Robert Elz' asia 1.1, as well as
+ # additional information from Tom Yap, Sun Microsystems Intercontinental
+ # Technical Support (including a page from the Official Airline Guide -
+-# Worldwide Edition). The names for time zones are guesses.
++# Worldwide Edition).
+
+ ###############################################################################
+
+@@ -80,14 +75,14 @@
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 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 -
++Rule RussiaAsia 1985 2010 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2010 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kabul 4:36:48 - LMT 1890
+- 4:00 - AFT 1945
+- 4:30 - AFT
++ 4:00 - +04 1945
++ 4:30 - +0430
+
+ # Armenia
+ # From Paul Eggert (2006-03-22):
+@@ -114,6 +109,9 @@
+ # or
+ # (brief)
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Armenia 2011 only - Mar lastSun 2:00s 1:00 S
++Rule Armenia 2011 only - Oct lastSun 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+ 3:00 - +03 1957 Mar
+@@ -120,7 +118,8 @@
+ 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
++ 4:00 RussiaAsia +04/+05 2011
++ 4:00 Armenia +04/+05
+
+ # Azerbaijan
+
+@@ -132,7 +131,7 @@
+ # 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
++# https://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
+
+@@ -173,11 +172,11 @@
+ # the 19th and 20th, and they have not set the end date yet.
+ #
+ # Some sources:
+-# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
++# https://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+ # http://bdnews24.com/details.php?id=85889&cid=2
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
++# https://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+
+ # From A. N. M. Kamrus Saadat (2009-06-15):
+ # Finally we've got the official mail regarding DST start time where DST start
+@@ -230,18 +229,17 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dhaka 6:01:40 - LMT 1890
+ 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+- 6:30 - BURT 1942 May 15 # Burma Time
+- 5:30 - IST 1942 Sep
+- 6:30 - BURT 1951 Sep 30
+- 6:00 - DACT 1971 Mar 26 # Dacca Time
+- 6:00 - BDT 2009
+- 6:00 Dhaka BD%sT
++ 6:30 - +0630 1942 May 15
++ 5:30 - +0530 1942 Sep
++ 6:30 - +0630 1951 Sep 30
++ 6:00 - +06 2009
++ 6:00 Dhaka +06/+07
+
+ # Bhutan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Thimphu 5:58:36 - LMT 1947 Aug 15 # or Thimbu
+- 5:30 - IST 1987 Oct
+- 6:00 - BTT # Bhutan Time
++ 5:30 - +0530 1987 Oct
++ 6:00 - +06
+
+ # British Indian Ocean Territory
+ # Whitman and the 1995 CIA time zone map say 5:00, but the
+@@ -251,25 +249,31 @@
+ # then contained the Chagos Archipelago).
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Chagos 4:49:40 - LMT 1907
+- 5:00 - IOT 1996 # BIOT Time
+- 6:00 - IOT
++ 5:00 - +05 1996
++ 6:00 - +06
+
+ # Brunei
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Brunei 7:39:40 - LMT 1926 Mar # Bandar Seri Begawan
+- 7:30 - BNT 1933
+- 8:00 - BNT
++ 7:30 - +0730 1933
++ 8:00 - +08
+
+ # Burma / Myanmar
+
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
++# From Paul Eggert (2017-04-20):
++# Page 27 of Reed & Low (cited for Asia/Kolkata) says "Rangoon local time is
++# used upon the railways and telegraphs of Burma, and is 6h. 24m. 47s. ahead
++# of Greenwich." This refers to the period before Burma's transition to +0630,
++# a transition for which Shanks is the only source.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-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
++Zone Asia/Yangon 6:24:47 - LMT 1880 # or Rangoon
++ 6:24:47 - RMT 1920 # Rangoon local time
++ 6:30 - +0630 1942 May
++ 9:00 - +09 1945 May 3
++ 6:30 - +0630
+
+ # Cambodia
+ # See Asia/Bangkok.
+@@ -323,7 +327,7 @@
+ #
+ # From Jesper Nørgaard Welen (2006-07-14):
+ # I have investigated the timezones around 1970 on the
+-# http://www.astro.com/atlas site [with provinces and county
++# https://www.astro.com/atlas site [with provinces and county
+ # boundaries summarized below].... A few other exceptions were two
+ # counties on the Sichuan side of the Xizang-Sichuan border,
+ # counties Dege and Baiyu which lies on the Sichuan side and are
+@@ -332,7 +336,7 @@
+ # (could be true), for the moment I am assuming that those two
+ # counties are mistakes in the astro.com data.
+
+-# From Paul Eggert (2014-06-30):
++# From Paul Eggert (2017-01-05):
+ # Alois Treindl kindly sent me translations of the following two sources:
+ #
+ # (1)
+@@ -390,28 +394,26 @@
+ # mainly observed in coastal areas), the five zones were:
+ #
+ # Changbai Time ("Long-white Time", Long-white = Heilongjiang area) UT +08:30
+-# Asia/Harbin (currently a link to Asia/Shanghai)
++# Now part of Asia/Shanghai; its pre-1970 times are not recorded here.
+ # Heilongjiang (except Mohe county), Jilin
+ #
+ # Zhongyuan Time ("Central plain Time") UT +08
+-# Asia/Shanghai
++# Now part of 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 +08 "from the end of the 19th century".
+ #
+-# 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)
++# Long-shu Time (probably as Long and Shu were two names of the area) UT +07
++# Now part of Asia/Shanghai; its pre-1970 times are not recorded here.
+ # Guangxi, Guizhou, Hainan, Ningxia, Sichuan, Shaanxi, and Yunnan;
+-# most of Gansu; west Inner Mongolia; west Qinghai; and the Guangdong
++# most of Gansu; west Inner Mongolia; east Qinghai; and the Guangdong
+ # counties Deqing, Enping, Kaiping, Luoding, Taishan, Xinxing,
+ # Yangchun, Yangjiang, Yu'nan, and Yunfu.
+ #
+ # 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.
++# This region is now part of either Asia/Urumqi or Asia/Shanghai with
++# current boundaries uncertain; times before 1970 for areas that
++# disagree with Ürümqi or Shanghai are not recorded here.
+ # The Gansu counties Aksay, Anxi, Dunhuang, Subei; west Qinghai;
+ # the Guangdong counties Xuwen, Haikang, Suixi, Lianjiang,
+ # Zhanjiang, Wuchuan, Huazhou, Gaozhou, Maoming, Dianbai, and Xinyi;
+@@ -422,7 +424,7 @@
+ # Fukang, Kuitun, Kumukuli, Miquan, Qitai, and Turfan.
+ #
+ # Kunlun Time UT +05:30
+-# Asia/Kashgar (currently a link to Asia/Urumqi)
++# This region is now in the same status as Xin-zang Time (see above).
+ # West Tibet, including Pulan, Aheqi, Shufu, Shule;
+ # West Xinjiang, including Aksu, Atushi, Yining, Hetian, Cele, Luopu, Nileke,
+ # Zhaosu, Tekesi, Gongliu, Chabuchaer, Huocheng, Bole, Pishan, Suiding,
+@@ -477,7 +479,7 @@
+
+ # From David Cochrane (2014-03-26):
+ # Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986:
+-# http://content.time.com/time/magazine/article/0,9171,960684,00.html
++# https://content.time.com/time/magazine/article/0,9171,960684,00.html
+
+ # From Luther Ma (2014-04-22):
+ # I have interviewed numerous people of various nationalities and from
+@@ -523,7 +525,7 @@
+ # Xinjiang time, used by many in western China; represented by Ürümqi / Ürümchi
+ # / Wulumuqi. (Please use Asia/Shanghai if you prefer Beijing time.)
+ Zone Asia/Urumqi 5:50:20 - LMT 1928
+- 6:00 - XJT
++ 6:00 - +06
+
+
+ # Hong Kong (Xianggang)
+@@ -634,7 +636,7 @@
+ # (both in Okinawa) adopt the Western Standard Time which is based on
+ # 120E. The adoption began from Jan 1, 1896. The original text can be
+ # found on Wikisource:
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ # ... This could be the first adoption of time zone in Taiwan, because
+ # during the Qing Dynasty, it seems that there was no time zone
+ # declared officially.
+@@ -647,7 +649,7 @@
+ # territory, including later occupations, adopt Japan Central Time
+ # (UTC+9). The adoption began on Oct 1, 1937. The original text can
+ # be found on Wikisource:
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+ #
+ # That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937.
+
+@@ -742,30 +744,29 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ # Taipei or Taibei or T'ai-pei
+ Zone Asia/Taipei 8:06:00 - LMT 1896 Jan 1
+- 8:00 - JWST 1937 Oct 1
++ 8:00 - CST 1937 Oct 1
+ 9:00 - JST 1945 Sep 21 1:00
+ 8:00 Taiwan C%sT
+
+ # Macau (Macao, Aomen)
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 S
+-Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 -
+-Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 S
+-Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 S
+-Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 S
+-Rule Macau 1965 only - Oct 31 0:00 0 -
+-Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 S
+-Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 -
+-Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 S
+-Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 -
+-Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 -
+-Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 S
+-Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 S
+-Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 -
++Rule Macau 1961 1962 - Mar Sun>=16 3:30 1:00 D
++Rule Macau 1961 1964 - Nov Sun>=1 3:30 0 S
++Rule Macau 1963 only - Mar Sun>=16 0:00 1:00 D
++Rule Macau 1964 only - Mar Sun>=16 3:30 1:00 D
++Rule Macau 1965 only - Mar Sun>=16 0:00 1:00 D
++Rule Macau 1965 only - Oct 31 0:00 0 S
++Rule Macau 1966 1971 - Apr Sun>=16 3:30 1:00 D
++Rule Macau 1966 1971 - Oct Sun>=16 3:30 0 S
++Rule Macau 1972 1974 - Apr Sun>=15 0:00 1:00 D
++Rule Macau 1972 1973 - Oct Sun>=15 0:00 0 S
++Rule Macau 1974 1977 - Oct Sun>=15 3:30 0 S
++Rule Macau 1975 1977 - Apr Sun>=15 3:30 1:00 D
++Rule Macau 1978 1980 - Apr Sun>=15 0:00 1:00 D
++Rule Macau 1978 1980 - Oct Sun>=15 0:00 0 S
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ 8:00 Macau C%sT
+
+
+ ###############################################################################
+@@ -784,6 +785,12 @@
+ # 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/
+
++# From Paul Eggert (2017-10-18):
++# Northern Cyprus will reinstate winter time on October 29, thus
++# staying in sync with the rest of Cyprus. See: Anastasiou A.
++# Cyprus to remain united in time. Cyprus Mail 2017-10-17.
++# https://cyprus-mail.com/2017/10/17/cyprus-remain-united-time/
++
+ # 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 -
+@@ -801,7 +808,8 @@
+ 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
++ 3:00 - +03 2017 Oct 29 1:00u
++ 2:00 EUAsia EE%sT
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -861,7 +869,7 @@
+
+ # From João Carrascalão, brother of the former governor of East Timor, in
+ # East Timor may be late for its millennium
+-# (1999-12-26/31):
++# (1999-12-26/31):
+ # Portugal tried to change the time forward in 1974 because the sun
+ # rises too early but the suggestion raised a lot of problems with the
+ # Timorese and I still don't think it would work today because it
+@@ -881,16 +889,15 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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 0:00
+- 9:00 - TLT
++ 8:00 - +08 1942 Feb 21 23:00
++ 9:00 - +09 1976 May 3
++ 8:00 - +08 2000 Sep 17 0:00
++ 9:00 - +09
+
+ # 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/
++# https://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
+@@ -897,14 +904,55 @@
+ # local time in favor of Indian Standard Time.... Journalists called this
+ # dispute the "Battle of the Clocks." It lasted nearly half a century.
+
++# From Paul Eggert (2017-04-20):
++# Good luck trying to nail down old timekeeping records in India.
++# "... in the nineteenth century ... Madras Observatory took its magnetic
++# measurements on Göttingen time, its meteorological measurements on Madras
++# (local) time, dropped its time ball on Greenwich (ocean navigator's) time,
++# and distributed civil (local time)." -- Bartky IR. Selling the true time:
++# 19th-century timekeeping in america. Stanford U Press (2000), 247 note 19.
++# "A more potent cause of resistance to the general adoption of the present
++# standard time lies in the fact that it is Madras time. The citizen of
++# Bombay, proud of being 'primus in Indis' and of Calcutta, equally proud of
++# his city being the Capital of India, and - for a part of the year - the Seat
++# of the Supreme Government, alike look down on Madras, and refuse to change
++# the time they are using, for that of what they regard as a benighted
++# Presidency; while Madras, having for long given the standard time to the
++# rest of India, would resist the adoption of any other Indian standard in its
++# place." -- Oldham RD. On Time in India: a suggestion for its improvement.
++# Proceedings of the Asiatic Society of Bengal (April 1899), 49-55.
++#
++# "In 1870 ... Madras time - 'now used by the telegraph and regulated from the
++# only government observatory' - was suggested as a standard railway time,
++# first to be adopted on the Great Indian Peninsular Railway (GIPR)....
++# Calcutta, Bombay, and Karachi, were to be allowed to continue with their
++# local time for civil purposes." - Prasad R. Tracks of Change: Railways and
++# Everyday Life in Colonial India. Cambridge University Press (2016), 145.
++#
++# Reed S, Low F. The Indian Year Book 1936-37. Bennett, Coleman, pp 27-8.
++# https://archive.org/details/in.ernet.dli.2015.282212
++# This lists +052110 as Madras local time used in railways, and says that on
++# 1906-01-01 railways and telegraphs in India switched to +0530. Some
++# municipalities retained their former time, and the time in Calcutta
++# continued to depend on whether you were at the railway station or at
++# government offices. Government time was at +055320 (according to Shanks) or
++# at +0554 (according to the Indian Year Book). Railway time is more
++# appropriate for our purposes, as it was better documented, it is what we do
++# elsewhere (e.g., Europe/London before 1880), and after 1906 it was
++# consistent in the region now identified by Asia/Kolkata. So, use railway
++# time for 1870-1941. Shanks is our only (and dubious) source for the
++# 1941-1945 data.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-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
++Zone Asia/Kolkata 5:53:28 - LMT 1854 Jun 28 # Kolkata
++ 5:53:20 - HMT 1870 # Howrah Mean Time?
++ 5:21:10 - MMT 1906 Jan 1 # Madras local time
++ 5:30 - IST 1941 Oct
++ 5:30 1:00 +0630 1942 May 15
+ 5:30 - IST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 15
++ 5:30 1:00 +0630 1945 Oct 15
+ 5:30 - IST
+-# The following are like Asia/Kolkata:
++# Since 1970 the following are like Asia/Kolkata:
+ # Andaman Is
+ # Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+ # Nicobar Is
+@@ -953,33 +1001,33 @@
+ # 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:30 - WIB 1942 Mar 23
+- 9:00 - JST 1945 Sep 23
+- 7:30 - WIB 1948 May
+- 8:00 - WIB 1950 May
+- 7:30 - WIB 1964
++ 7:20 - +0720 1932 Nov
++ 7:30 - +0730 1942 Mar 23
++ 9:00 - +09 1945 Sep 23
++ 7:30 - +0730 1948 May
++ 8:00 - +08 1950 May
++ 7:30 - +0730 1964
+ 7:00 - WIB
+ # west and central Borneo
+ Zone Asia/Pontianak 7:17:20 - LMT 1908 May
+ 7:17:20 - PMT 1932 Nov # Pontianak MT
+- 7:30 - WIB 1942 Jan 29
+- 9:00 - JST 1945 Sep 23
+- 7:30 - WIB 1948 May
+- 8:00 - WIB 1950 May
+- 7:30 - WIB 1964
++ 7:30 - +0730 1942 Jan 29
++ 9:00 - +09 1945 Sep 23
++ 7:30 - +0730 1948 May
++ 8:00 - +08 1950 May
++ 7:30 - +0730 1964
+ 8:00 - WITA 1988 Jan 1
+ 7:00 - WIB
+ # Sulawesi, Lesser Sundas, east and south Borneo
+ Zone Asia/Makassar 7:57:36 - LMT 1920
+ 7:57:36 - MMT 1932 Nov # Macassar MT
+- 8:00 - WITA 1942 Feb 9
+- 9:00 - JST 1945 Sep 23
++ 8:00 - +08 1942 Feb 9
++ 9:00 - +09 1945 Sep 23
+ 8:00 - WITA
+ # Maluku Islands, West Papua, Papua
+ Zone Asia/Jayapura 9:22:48 - LMT 1932 Nov
+- 9:00 - WIT 1944 Sep 1
+- 9:30 - ACST 1964
++ 9:00 - +09 1944 Sep 1
++ 9:30 - +0930 1964
+ 9:00 - WIT
+
+ # Iran
+@@ -1011,8 +1059,6 @@
+ # for at least the last 5 years. Before that, for a few years, the
+ # date used was the first Thursday night of Farvardin and the last
+ # Thursday night of Shahrivar, but I can't give exact dates....
+-# I have also changed the abbreviations to what is considered correct
+-# here in Iran, IRST for regular time and IRDT for daylight saving time.
+ #
+ # From Roozbeh Pournader (2005-04-05):
+ # The text of the Iranian law, in effect since 1925, clearly mentions
+@@ -1048,7 +1094,7 @@
+ # From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen:
+ # ... the Guardian Council ... approved a law on Sunday to re-introduce
+ # daylight saving time ...
+-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
++# https://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+@@ -1119,9 +1165,9 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tehran 3:25:44 - LMT 1916
+ 3:25:44 - TMT 1946 # Tehran Mean Time
+- 3:30 - IRST 1977 Nov
+- 4:00 Iran IR%sT 1979
+- 3:30 Iran IR%sT
++ 3:30 - +0330 1977 Nov
++ 4:00 Iran +04/+05 1979
++ 3:30 Iran +0330/+0430
+
+
+ # Iraq
+@@ -1147,7 +1193,7 @@
+ # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+ #
+ # We have published a short article in English about the change:
+-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
++# https://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Iraq 1982 only - May 1 0:00 1:00 D
+@@ -1164,8 +1210,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Baghdad 2:57:40 - LMT 1890
+ 2:57:36 - BMT 1918 # Baghdad Mean Time?
+- 3:00 - AST 1982 May
+- 3:00 Iraq A%sT
++ 3:00 - +03 1982 May
++ 3:00 Iraq +03/+04
+
+
+ ###############################################################################
+@@ -1455,17 +1501,15 @@
+ # From Yu-Cheng Chuang (2013-07-12):
+ # ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause
+ # about standard time" ... The adoption began from Jan 1, 1896.
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ #
+ # ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which
+ # means the whole Japan territory, including later occupations, adopt Japan
+ # Central Time (UTC+9). The adoption began on Oct 1, 1937.
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+- 9:00 - JST 1896 Jan 1
+- 9:00 - JCST 1937 Oct 1
+ 9:00 Japan J%sT
+ # Since 1938, all Japanese possessions have been like Asia/Tokyo.
+
+@@ -1524,7 +1568,7 @@
+ # Official, in Arabic:
+ # http://www.petra.gov.jo/public_news/Nws_NewsDetails.aspx?Menu_ID=&Site_Id=2&lang=1&NewsID=133230&CatID=14
+ # ... Our background/permalink about it
+-# http://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
++# https://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
+ # ...
+ # http://www.petra.gov.jo/Public_News/Nws_NewsDetails.aspx?lang=2&site_id=1&NewsID=133313&Type=P
+ # ... says midnight for the coming one and 1:00 for the ones in the future
+@@ -1583,12 +1627,12 @@
+ # was "blended" with the Central zone. Therefore, Kazakhstan now has
+ # two time zones, and difference between them is one hour. The zone
+ # closer to UTC is the former Western zone (probably still called the
+-# same), encompassing four provinces in the west: Aqtobe, Atyrau,
+-# Mangghystau, and West Kazakhstan. The other zone encompasses
++# same), encompassing four provinces in the west: Aqtöbe, Atyraū,
++# Mangghystaū, and West Kazakhstan. The other zone encompasses
+ # 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):
++# From Stepan Golosunov (2016-03-27):
+ # Review of the linked documents from http://adilet.zan.kz/
+ # produced the following data for post-1991 Kazakhstan:
+ #
+@@ -1634,7 +1678,7 @@
+ #
+ # 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
++# to +04/+05. It's unclear how Qyzylorda 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
+@@ -1647,18 +1691,18 @@
+ # 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
++# border between them to be located east of Qostanay and Aktyubinsk
++# oblasts (notably including Turgai and Qyzylorda 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) [*]....
++# Asia/Aqtau, Asia/Aqtobe, Asia/Oral, Atyraū and Qostanay 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
++# cancels extra hour ("decree time") for Uralsk and Qyzylorda oblasts
+ # since the last Sunday of March 1992, while keeping them in the fourth
+ # and the fifth time belts respectively.
+ #
+@@ -1665,7 +1709,7 @@
+ # 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
++# cancels the extra hour ("decree time") on the territory of Mangghystaū
+ # oblast since the last Sunday of September 1994 (saying that time on
+ # the territory would correspond to the third time belt as a
+ # result)....
+@@ -1679,15 +1723,12 @@
+ # 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
++# cancels the extra hour ("decree time") for Atyraū 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.
++# 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
+@@ -1696,10 +1737,10 @@
+ # 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
++# probably changed time in territories incorporated into Qostanay oblast
++# (including Arkalyk) from +06/+07 to +05/+06) and move Qyzylorda oblast
+ # from being in the fifth time belt and not using decree time into the
+-# fourth time belt (no change in practice).[*]
++# fourth time belt (no change in practice).
+ #
+ # 7. Act of the Government of the Republic of Kazakhstan
+ # from 2003-12-29 No. 1342
+@@ -1709,7 +1750,7 @@
+ # 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
++# modified the 2000-11-23 act to move Qostanay and Qyzylorda 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
+@@ -1721,14 +1762,14 @@
+ # 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.
++# 2004-07-20 act to implement changes for Atyraū, West Kazakhstan,
++# Qostanay, Qyzylorda and Mangghystaū oblasts by not moving clocks
++# during the 2004 transition to "winter" time.
+ #
+-# This means transition from +04/+05 to +05/+06 for Atyrau oblast (no
++# This means transition from +04/+05 to +05/+06 for Atyraū 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....[*]
++# +06/+07 for Qostanay oblast (Qostanay 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
+@@ -1744,14 +1785,25 @@
+ # 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.
++# From Stepan Golosunov (2016-11-08):
++# Turgai reorganization should affect only southern part of Qostanay
++# oblast. Which should probably be separated into Asia/Arkalyk zone.
++# (There were also 1970, 1988 and 1990 Turgai oblast reorganizations
++# according to wikipedia.)
++#
++# [For Qostanay] http://www.ng.kz/gazeta/195/hranit/
++# suggests that clocks were to be moved 40 minutes backwards on
++# 1920-01-01 to the fourth time belt. But I do not understand
++# how that could happen....
++#
++# [For Atyrau and Oral] 1919 decree
++# (http://www.worldtimezone.com/dst_news/dst_news_russia-1919-02-08.html
++# and in Byalokoz) lists Ural river (plus 10 versts on its left bank) in
++# the third time belt (before 1930 this means +03).
+
+-#
++# From Paul Eggert (2016-12-06):
++# The tables below reflect Golosunov's remarks, with exceptions as noted.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ #
+ # Almaty (formerly Alma-Ata), representing most locations in Kazakhstan
+@@ -1764,6 +1816,8 @@
+ 6:00 RussiaAsia +06/+07 2004 Oct 31 2:00s
+ 6:00 - +06
+ # Qyzylorda (aka Kyzylorda, Kizilorda, Kzyl-Orda, etc.) (KZ-KZY)
++# This currently includes Qostanay (aka Kostanay, Kustanay) (KZ-KUS);
++# see comments below.
+ Zone Asia/Qyzylorda 4:21:52 - LMT 1924 May 2
+ 4:00 - +04 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+@@ -1775,7 +1829,21 @@
+ 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)
++# The following zone is like Asia/Qyzylorda except for being one
++# hour earlier from 1991-09-29 to 1992-03-29. The 1991/2 rules for
++# Qostanay are unclear partly because of the 1997 Turgai
++# reorganization, so this zone is commented out for now.
++#Zone Asia/Qostanay 4:14:20 - 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 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
++# 6:00 - +06
++#
++# Aqtöbe (aka Aktobe, formerly Aktyubinsk) (KZ-AKT)
+ Zone Asia/Aqtobe 3:48:40 - LMT 1924 May 2
+ 4:00 - +04 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+@@ -1785,14 +1853,11 @@
+ 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)
++# Mangghystaū (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 - +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
+@@ -1800,12 +1865,22 @@
+ 5:00 RussiaAsia +05/+06 1994 Sep 25 2:00s
+ 4:00 RussiaAsia +04/+05 2004 Oct 31 2:00s
+ 5:00 - +05
+-
++# Atyraū (KZ-ATY) is like Mangghystaū except it switched from
++# +04/+05 to +05/+06 in spring 1999, not fall 1994.
++Zone Asia/Atyrau 3:27:44 - LMT 1924 May 2
++ 3:00 - +03 1930 Jun 21
++ 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 1999 Mar 28 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 - +04 1930 Jun 21
++ 3:00 - +03 1930 Jun 21
+ 5:00 - +05 1981 Apr 1
+ 5:00 1:00 +06 1981 Oct 1
+ 6:00 - +06 1982 Apr 1
+@@ -1851,9 +1926,9 @@
+ # between 1987 and 1988 ...
+
+ # From Sanghyuk Jung (2014-10-29):
+-# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# https://mm.icann.org/pipermail/tz/2014-October/021830.html
+ # According to the Korean Wikipedia
+-# http://ko.wikipedia.org/wiki/한국_표준시
++# https://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.
+@@ -1911,7 +1986,6 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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:30 ROK K%sT 1961 Aug 10
+@@ -1918,7 +1992,6 @@
+ 9:00 ROK K%sT
+ 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 2015 Aug 15 00:00
+ 8:30 - KST
+@@ -1973,13 +2046,13 @@
+ # 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.
+- 7:00 - MALT 1933 Jan 1 # Malaya Time
+- 7:00 0:20 MALST 1936 Jan 1
+- 7:20 - MALT 1941 Sep 1
+- 7:30 - MALT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 7:30 - MALT 1982 Jan 1
+- 8:00 - MYT # Malaysia Time
++ 7:00 - +07 1933 Jan 1
++ 7:00 0:20 +0720 1936 Jan 1
++ 7:20 - +0720 1941 Sep 1
++ 7:30 - +0730 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 7:30 - +0730 1982 Jan 1
++ 8:00 - +08
+ # Sabah & Sarawak
+ # From Paul Eggert (2014-08-12):
+ # The data entries here are mostly from Shanks & Pottenger, but the 1942, 1945
+@@ -1986,17 +2059,16 @@
+ # 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
+- 8:00 NBorneo BOR%sT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 8:00 - BORT 1982 Jan 1
+- 8:00 - MYT
++ 7:30 - +0730 1933
++ 8:00 NBorneo +08/+0820 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 8:00 - +08
+
+ # 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
++ 5:00 - +05
+
+ # Mongolia
+
+@@ -2078,7 +2150,7 @@
+ # +08:00 instead. Different sources appear to disagree with the tz
+ # database on this, e.g.:
+ #
+-# http://www.timeanddate.com/worldclock/city.html?n=1026
++# https://www.timeanddate.com/worldclock/city.html?n=1026
+ # http://www.worldtimeserver.com/current_time_in_MN.aspx
+ #
+ # both say GMT+08:00.
+@@ -2123,6 +2195,10 @@
+ # correction of 02:00 (in the previous edition) not being done correctly
+ # in the latest edition; so ignore it for now.
+
++# From Ganbold Tsagaankhuu (2017-02-09):
++# Mongolian Government meeting has concluded today to cancel daylight
++# saving time adoption in Mongolia. Source: http://zasag.mn/news/view/16192
++
+ Rule Mongol 1985 1998 - Mar lastSun 0:00 1:00 S
+ Rule Mongol 1984 1998 - Sep lastSun 0:00 0 -
+ # IATA SSIM (1999-09) says Mongolia no longer observes DST.
+@@ -2129,31 +2205,31 @@
+ 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 -
++Rule Mongol 2015 2016 - Mar lastSat 2:00 1:00 S
++Rule Mongol 2015 2016 - 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
+- 7:00 Mongol HOV%sT
++ 6:00 - +06 1978
++ 7:00 Mongol +07/+08
+ # Ulaanbaatar, a.k.a. Ulan Bataar, Ulan Bator, Urga
+ Zone Asia/Ulaanbaatar 7:07:32 - LMT 1905 Aug
+- 7:00 - ULAT 1978 # Ulaanbaatar Time
+- 8:00 Mongol ULA%sT
++ 7:00 - +07 1978
++ 8:00 Mongol +08/+09
+ # 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
+- 8:00 - ULAT 1983 Apr
+- 9:00 Mongol CHO%sT 2008 Mar 31 # Choibalsan Time
+- 8:00 Mongol CHO%sT
++ 7:00 - +07 1978
++ 8:00 - +08 1983 Apr
++ 9:00 Mongol +09/+10 2008 Mar 31
++ 8:00 Mongol +08/+09
+
+ # Nepal
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Kathmandu 5:41:16 - LMT 1920
+- 5:30 - IST 1986
+- 5:45 - NPT # Nepal Time
++ 5:30 - +0530 1986
++ 5:45 - +0545
+
+ # Oman
+ # See Asia/Dubai.
+@@ -2204,7 +2280,7 @@
+ # 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.worldtimezone.com/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+
+ # From Arthur David Olson (2008-05-19):
+@@ -2270,7 +2346,7 @@
+ #
+ # We have confirmed this year's end date with both with the Ministry of
+ # Water and Power and the Pakistan Electric Power Company:
+-# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
++# https://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+
+ # From Christoph Göhre (2009-10-01):
+ # [T]he German Consulate General in Karachi reported me today that Pakistan
+@@ -2302,10 +2378,10 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Karachi 4:28:12 - LMT 1907
+- 5:30 - IST 1942 Sep
+- 5:30 1:00 IST 1945 Oct 15
+- 5:30 - IST 1951 Sep 30
+- 5:00 - KART 1971 Mar 26 # Karachi Time
++ 5:30 - +0530 1942 Sep
++ 5:30 1:00 +0630 1945 Oct 15
++ 5:30 - +0530 1951 Sep 30
++ 5:00 - +05 1971 Mar 26
+ 5:00 Pakistan PK%sT # Pakistan Time
+
+ # Palestine
+@@ -2452,7 +2528,7 @@
+ #
+ # We are not sure if Gaza will do the same, last year they had a different
+ # end date, we will keep this page updated:
+-# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
++# https://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-09-02):
+ # Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+@@ -2490,7 +2566,7 @@
+ # the clocks were set back one hour at 2010-08-11 00:00:00 local time in
+ # Gaza and the West Bank.
+ # Some more background info:
+-# http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
++# https://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
+
+ # From Steffen Thorsen (2011-08-26):
+ # Gaza and the West Bank did go back to standard time in the beginning of
+@@ -2500,7 +2576,7 @@
+ #
+ # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217
+ # Additional info:
+-# http://www.timeanddate.com/news/time/palestine-dst-2011.html
++# https://www.timeanddate.com/news/time/palestine-dst-2011.html
+
+ # From Alexander Krivenyshev (2011-08-27):
+ # According to the article in The Jerusalem Post:
+@@ -2510,7 +2586,7 @@
+ # The Hamas government said on Saturday that it won't observe summertime after
+ # the Muslim feast of Id al-Fitr, which begins on Tuesday..."
+ # ...
+-# http://www.jpost.com/MiddleEast/Article.aspx?id=235650
++# https://www.jpost.com/MiddleEast/Article.aspx?id=235650
+ # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html
+ # The rules for Egypt are stolen from the 'africa' file.
+
+@@ -2531,7 +2607,7 @@
+ # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
++# https://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
+
+ # From Steffen Thorsen (2013-03-26):
+ # The following news sources tells that Palestine will "start daylight saving
+@@ -2551,11 +2627,11 @@
+
+ # 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
++# and https://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
++# https://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):
+@@ -2579,8 +2655,8 @@
+ #
+ # 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
++# https://www.timeanddate.com/time/change/gaza-strip/gaza
++# https://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
+@@ -2616,7 +2692,7 @@
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Gaza 2:17:52 - LMT 1900 Oct
+- 2:00 Zion EET 1948 May 15
++ 2:00 Zion EET/EEST 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+@@ -2629,7 +2705,7 @@
+ 2:00 Palestine EE%sT
+
+ Zone Asia/Hebron 2:20:23 - LMT 1900 Oct
+- 2:00 Zion EET 1948 May 15
++ 2:00 Zion EET/EEST 1948 May 15
+ 2:00 EgyptAsia EE%sT 1967 Jun 5
+ 2:00 Zion I%sT 1996
+ 2:00 Jordan EE%sT 1999
+@@ -2643,7 +2719,7 @@
+ # 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
++# https://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
+ # The rest of the data entries are from Shanks & Pottenger.
+
+ # From Jesper Nørgaard Welen (2006-04-26):
+@@ -2670,15 +2746,15 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Manila -15:56:00 - LMT 1844 Dec 31
+ 8:04:00 - LMT 1899 May 11
+- 8:00 Phil PH%sT 1942 May
+- 9:00 - JST 1944 Nov
+- 8:00 Phil PH%sT
++ 8:00 Phil +08/+09 1942 May
++ 9:00 - +09 1944 Nov
++ 8:00 Phil +08/+09
+
+ # Qatar
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Qatar 3:26:08 - LMT 1920 # Al Dawhah / Doha
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++ 4:00 - +04 1972 Jun
++ 3:00 - +03
+ Link Asia/Qatar Asia/Bahrain
+
+ # Saudi Arabia
+@@ -2705,7 +2781,7 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Riyadh 3:06:52 - LMT 1947 Mar 14
+- 3:00 - AST
++ 3:00 - +03
+ Link Asia/Riyadh Asia/Aden # Yemen
+ Link Asia/Riyadh Asia/Kuwait
+
+@@ -2715,14 +2791,13 @@
+ # 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.
+- 7:00 - MALT 1933 Jan 1 # Malaya Time
+- 7:00 0:20 MALST 1936 Jan 1
+- 7:20 - MALT 1941 Sep 1
+- 7:30 - MALT 1942 Feb 16
+- 9:00 - JST 1945 Sep 12
+- 7:30 - MALT 1965 Aug 9 # independence
+- 7:30 - SGT 1982 Jan 1 # Singapore Time
+- 8:00 - SGT
++ 7:00 - +07 1933 Jan 1
++ 7:00 0:20 +0720 1936 Jan 1
++ 7:20 - +0720 1941 Sep 1
++ 7:30 - +0730 1942 Feb 16
++ 9:00 - +09 1945 Sep 12
++ 7:30 - +0730 1982 Jan 1
++ 8:00 - +08
+
+ # Spratly Is
+ # no information
+@@ -2781,8 +2856,8 @@
+ Zone Asia/Colombo 5:19:24 - LMT 1880
+ 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 0:30 +06 1942 Sep
++ 5:30 1:00 +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
+@@ -2908,7 +2983,7 @@
+ # We have not found any sources saying anything about when DST ends this year.
+ #
+ # Our summary
+-# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
++# https://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+
+ # From Steffen Thorsen (2009-10-27):
+ # The Syrian Arab News Network on 2009-09-29 reported that Syria will
+@@ -2935,7 +3010,7 @@
+ # http://www.sana.sy/ara/2/2012/03/26/408215.htm
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/syria-dst-2012.html
++# https://www.timeanddate.com/news/time/syria-dst-2012.html
+
+ # From Arthur David Olson (2012-03-27):
+ # Assume last Friday in March going forward XXX.
+@@ -2964,7 +3039,7 @@
+ # 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
++ 7:00 - +07
+ Link Asia/Bangkok Asia/Phnom_Penh # Cambodia
+ Link Asia/Bangkok Asia/Vientiane # Laos
+
+@@ -2980,7 +3055,7 @@
+ # United Arab Emirates
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Dubai 3:41:12 - LMT 1920
+- 4:00 - GST
++ 4:00 - +04
+ Link Asia/Dubai Asia/Muscat # Oman
+
+ # Uzbekistan
+@@ -3018,7 +3093,7 @@
+ # 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
++# https://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
+@@ -3053,15 +3128,15 @@
+
+ # 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
++ 7:06:30 - PLMT 1911 May 1 # Phù Liễn MT
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1955 Jul 1
++ 7:00 - +07 1959 Dec 31 23:00
++ 8:00 - +08 1975 Jun 13
++ 7:00 - +07
+
+ # Yemen
+ # See Asia/Riyadh.
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -44,8 +44,8 @@
+ 8:00 Aus AW%sT 1943 Jul
+ 8:00 AW AW%sT
+ Zone Australia/Eucla 8:35:28 - LMT 1895 Dec
+- 8:45 Aus ACW%sT 1943 Jul
+- 8:45 AW ACW%sT
++ 8:45 Aus +0845/+0945 1943 Jul
++ 8:45 AW +0845/+0945
+
+ # Queensland
+ #
+@@ -212,7 +212,8 @@
+ Rule LH 2008 max - Oct Sun>=1 2:00 0:30 D
+ Zone Australia/Lord_Howe 10:36:20 - LMT 1895 Feb
+ 10:00 - AEST 1981 Mar
+- 10:30 LH LH%sT
++ 10:30 LH +1030/+1130 1985 Jul
++ 10:30 LH +1030/+11
+
+ # Australian miscellany
+ #
+@@ -250,12 +251,12 @@
+ 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
++ 11:00 - +11
+
+ # Christmas
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Christmas 7:02:52 - LMT 1895 Feb
+- 7:00 - CXT # Christmas Island Time
++ 7:00 - +07
+
+ # Cocos (Keeling) Is
+ # These islands were ruled by the Ross family from about 1830 to 1978.
+@@ -262,7 +263,7 @@
+ # We don't know when standard time was introduced; for now, we guess 1900.
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Indian/Cocos 6:27:40 - LMT 1900
+- 6:30 - CCT # Cocos Islands Time
++ 6:30 - +0630
+
+
+ # Fiji
+@@ -292,7 +293,7 @@
+ # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166
+ #
+ # A bit more background info here:
+-# http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
++# https://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
+
+ # From Alexander Krivenyshev (2010-10-24):
+ # According to Radio Fiji and Fiji Times online, Fiji will end DST 3
+@@ -356,9 +357,12 @@
+ # 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
++# From Paul Eggert (2017-08-21):
++# Dominic Fok writes (2017-08-20) that DST ends 2018-01-14, citing
++# Extraordinary Government of Fiji Gazette Supplement No. 21 (2017-08-27),
++# [Legal Notice No. 41] of an order of the previous day by J Usamate.
++# For now, guess DST from 02:00 the first Sunday in November to 03:00
++# the first Sunday on or after January 14. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+ # practice than guessing no DST.
+
+@@ -372,19 +376,19 @@
+ 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>=15 3:00 0 -
++Rule Fiji 2015 max - Jan Sun>=14 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
++ 12:00 Fiji +12/+13
+
+ # French Polynesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Gambier -8:59:48 - LMT 1912 Oct # Rikitea
+- -9:00 - GAMT # Gambier Time
++ -9:00 - -09
+ Zone Pacific/Marquesas -9:18:00 - LMT 1912 Oct
+- -9:30 - MART # Marquesas Time
++ -9:30 - -0930
+ Zone Pacific/Tahiti -9:58:16 - LMT 1912 Oct # Papeete
+- -10:00 - TAHT # Tahiti Time
++ -10:00 - -10
+ # Clipperton (near North America) is administered from French Polynesia;
+ # it is uninhabited.
+
+@@ -399,15 +403,15 @@
+ # Kiribati
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tarawa 11:32:04 - LMT 1901 # Bairiki
+- 12:00 - GILT # Gilbert Is Time
++ 12:00 - +12
+ Zone Pacific/Enderbury -11:24:20 - LMT 1901
+- -12:00 - PHOT 1979 Oct # Phoenix Is Time
+- -11:00 - PHOT 1995
+- 13:00 - PHOT
++ -12:00 - -12 1979 Oct
++ -11:00 - -11 1995
++ 13:00 - +13
+ Zone Pacific/Kiritimati -10:29:20 - LMT 1901
+- -10:40 - LINT 1979 Oct # Line Is Time
+- -10:00 - LINT 1995
+- 14:00 - LINT
++ -10:40 - -1040 1979 Oct
++ -10:00 - -10 1995
++ 14:00 - +14
+
+ # N Mariana Is
+ # See Pacific/Guam.
+@@ -415,31 +419,31 @@
+ # Marshall Is
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Majuro 11:24:48 - LMT 1901
+- 11:00 - MHT 1969 Oct # Marshall Islands Time
+- 12:00 - MHT
++ 11:00 - +11 1969 Oct
++ 12:00 - +12
+ Zone Pacific/Kwajalein 11:09:20 - LMT 1901
+- 11:00 - MHT 1969 Oct
+- -12:00 - KWAT 1993 Aug 20 # Kwajalein Time
+- 12:00 - MHT
++ 11:00 - +11 1969 Oct
++ -12:00 - -12 1993 Aug 20
++ 12:00 - +12
+
+ # Micronesia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Chuuk 10:07:08 - LMT 1901
+- 10:00 - CHUT # Chuuk Time
++ 10:00 - +10
+ Zone Pacific/Pohnpei 10:32:52 - LMT 1901 # Kolonia
+- 11:00 - PONT # Pohnpei Time
++ 11:00 - +11
+ Zone Pacific/Kosrae 10:51:56 - LMT 1901
+- 11:00 - KOST 1969 Oct # Kosrae Time
+- 12:00 - KOST 1999
+- 11:00 - KOST
++ 11:00 - +11 1969 Oct
++ 12:00 - +12 1999
++ 11:00 - +11
+
+ # 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
+- 9:00 - JST 1944 Aug 15
+- 11:30 - NRT 1979 May
+- 12:00 - NRT
++ 11:30 - +1130 1942 Mar 15
++ 9:00 - +09 1944 Aug 15
++ 11:30 - +1130 1979 May
++ 12:00 - +12
+
+ # New Caledonia
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -450,7 +454,7 @@
+ Rule NC 1997 only - Mar 2 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Noumea 11:05:48 - LMT 1912 Jan 13 # Nouméa
+- 11:00 NC NC%sT
++ 11:00 NC +11/+12
+
+
+ ###############################################################################
+@@ -491,8 +495,8 @@
+ 11:30 NZ NZ%sT 1946 Jan 1
+ 12:00 NZ NZ%sT
+ Zone Pacific/Chatham 12:13:48 - LMT 1868 Nov 2
+- 12:15 - CHAST 1946 Jan 1
+- 12:45 Chatham CHA%sT
++ 12:15 - +1215 1946 Jan 1
++ 12:45 Chatham +1245/+1345
+
+ Link Pacific/Auckland Antarctica/McMurdo
+
+@@ -514,8 +518,8 @@
+ 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
+- -10:00 Cook CK%sT
++ -10:30 - -1030 1978 Nov 12
++ -10:00 Cook -10/-0930
+
+ ###############################################################################
+
+@@ -523,29 +527,29 @@
+ # 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
+- -11:00 - NUT
++ -11:20 - -1120 1951
++ -11:30 - -1130 1978 Oct 1
++ -11:00 - -11
+
+ # 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 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
++ 11:12 - +1112 1951
++ 11:30 - +1130 1974 Oct 27 02:00
++ 11:30 1:00 +1230 1975 Mar 2 02:00
++ 11:30 - +1130 2015 Oct 4 02:00
++ 11:00 - +11
+
+ # Palau (Belau)
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Palau 8:57:56 - LMT 1901 # Koror
+- 9:00 - PWT # Palau Time
++ 9:00 - +09
+
+ # 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
++ 10:00 - +10
+ #
+ # From Paul Eggert (2014-10-13):
+ # Base the Bougainville entry on the Arawa-Kieta region, which appears to have
+@@ -556,32 +560,30 @@
+ # 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
++# https://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:
++# on 2014-12-28 at 02:00. They call +11 "Bougainville Standard Time".
++# 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
++ 10:00 - +10 1942 Jul
++ 9:00 - +09 1945 Aug 21
++ 10:00 - +10 2014 Dec 28 2:00
++ 11:00 - +11
+
+ # Pitcairn
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Pitcairn -8:40:20 - LMT 1901 # Adamstown
+- -8:30 - PNT 1998 Apr 27 0:00
+- -8:00 - PST # Pitcairn Standard Time
++ -8:30 - -0830 1998 Apr 27 0:00
++ -8:00 - -08
+
+ # American Samoa
+-Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
++Zone Pacific/Pago_Pago 12:37:12 - LMT 1892 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
+ Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+
+@@ -596,7 +598,7 @@
+ # Sunday of April 2011."
+ #
+ # Background info:
+-# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
++# https://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+ #
+ # Samoa's Daylight Saving Time Act 2009 is available here, but does not
+ # contain any dates:
+@@ -660,19 +662,19 @@
+ Rule WS 2012 max - Apr Sun>=1 4:00 0 S
+ Rule WS 2012 max - Sep lastSun 3:00 1 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
++Zone Pacific/Apia 12:33:04 - LMT 1892 Jul 5
+ -11:26:56 - LMT 1911
+- -11:30 - WSST 1950
+- -11:00 WS S%sT 2011 Dec 29 24:00 # S=Samoa
+- 13:00 WS WS%sT
++ -11:30 - -1130 1950
++ -11:00 WS -11/-10 2011 Dec 29 24:00
++ 13:00 WS +13/+14
+
+ # 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
+- 11:00 - SBT # Solomon Is Time
++ 11:00 - +11
+
+-# Tokelau Is
++# Tokelau
+ #
+ # From Gwillim Law (2011-12-29)
+ # A correspondent informed me that Tokelau, like Samoa, will be skipping
+@@ -687,14 +689,14 @@
+ # From Paul Eggert (2012-07-25)
+ # A Google Books snippet of Appendix to the Journals of the House of
+ # Representatives of New Zealand, Session 1948,
+-# , page 65, says Tokelau
++# , page 65, says Tokelau
+ # was "11 hours slow on G.M.T." Go with Thorsen and assume Shanks & Pottenger
+ # are off by an hour starting in 1901.
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fakaofo -11:24:56 - LMT 1901
+- -11:00 - TKT 2011 Dec 30 # Tokelau Time
+- 13:00 - TKT
++ -11:00 - -11 2011 Dec 30
++ 13:00 - +13
+
+ # Tonga
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+@@ -702,8 +704,8 @@
+ 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 -
++Rule Tonga 2016 only - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 only - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - +1220 1941
+@@ -713,7 +715,7 @@
+ # Tuvalu
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Funafuti 11:56:52 - LMT 1901
+- 12:00 - TVT # Tuvalu Time
++ 12:00 - +12
+
+
+ # US minor outlying islands
+@@ -737,10 +739,11 @@
+
+ # Johnston
+ #
+-# From Paul Eggert (2014-03-11):
++# From Paul Eggert (2017-02-10):
+ # Sometimes Johnston kept Hawaii time, and sometimes it was an hour behind.
+ # Details are uncertain. We have no data for Johnston after 1970, so
+-# treat it like Hawaii for now.
++# treat it like Hawaii for now. Since Johnston is now uninhabited,
++# its link to Pacific/Honolulu is in the 'backward' file.
+ #
+ # In his memoirs of June 6th to October 4, 1945
+ # (2005), Herbert C. Bach writes,
+@@ -756,12 +759,10 @@
+ # 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
++# https://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".
+-#
+-# See 'northamerica' for Pacific/Johnston.
+
+ # Kingman
+ # uninhabited
+@@ -775,7 +776,7 @@
+ # Wake
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wake 11:06:28 - LMT 1901
+- 12:00 - WAKT # Wake Time
++ 12:00 - +12
+
+
+ # Vanuatu
+@@ -788,12 +789,12 @@
+ 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
+- 11:00 Vanuatu VU%sT # Vanuatu Time
++ 11:00 Vanuatu +11/+12
+
+ # Wallis and Futuna
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Wallis 12:15:20 - LMT 1901
+- 12:00 - WFT # Wallis & Futuna Time
++ 12:00 - +12
+
+ ###############################################################################
+
+@@ -804,7 +805,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 (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -811,8 +812,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -824,33 +825,24 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+ #
+-# I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
++# The following abbreviations are from other sources.
+ # Corrections are welcome!
+ # std dst
+ # LMT Local Mean Time
+ # 8:00 AWST AWDT Western Australia
+-# 8:45 ACWST ACWDT Central Western Australia*
+-# 9:00 JST Japan
+ # 9:30 ACST ACDT Central Australia
+ # 10:00 AEST AEDT Eastern Australia
++# 10:00 GST Guam through 2000
+ # 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*
+-# 12:45 CHAST CHADT Chatham 1946-present*
+-# 13:00 WSST WSDT (western) Samoa 2011-present*
+-# -11:30 WSST Western Samoa through 1950*
+ # -11:00 SST Samoa
+ # -10:00 HST Hawaii
+-# - 8:00 PST Pitcairn*
+ #
+ # See the 'northamerica' file for Hawaii.
+ # See the 'southamerica' file for Easter I and the Galápagos Is.
+@@ -980,7 +972,7 @@
+ # AEST ACST AWST AEDT ACDT
+ #
+ # Parliamentary Library (2008-11-10)
+-# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
++# https://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
+ # EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used
+ #
+ # The Transport Safety Bureau has an extensive series of accident reports,
+@@ -1016,13 +1008,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
++# https://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
++# https://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
++# https://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
+@@ -1317,7 +1309,7 @@
+ # 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:
++# Victoria will follow NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+ # http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+@@ -1420,7 +1412,7 @@
+ # the ACT for all 52 weeks of the year...
+ #
+ # We have a wrap-up here:
+-# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
++# https://www.timeanddate.com/news/time/south-australia-extends-dst.html
+ ###############################################################################
+
+ # New Zealand
+@@ -1474,7 +1466,7 @@
+ # 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
++# https://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
+@@ -1589,7 +1581,7 @@
+ # 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
++# https://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1617,11 +1609,13 @@
+
+ # (Western) Samoa and American Samoa
+
+-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+-# that in 1879 the King of Samoa decided to change
++# Howse writes (p 153) that after the 1879 standardization on Antipodean
++# time by the British governor of Fiji, the King of Samoa decided to change
+ # "the date in his kingdom from the Antipodean to the American system,
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
++# This happened in 1892, according to the Evening News (Sydney) of 1892-07-20.
++# https://www.staff.science.uu.nl/~gent0113/idl/idl.htm
+
+ # Although Shanks & Pottenger says they both switched to UT -11:30
+ # in 1911, and to -11 in 1950. many earlier sources give -11
+@@ -1632,6 +1626,7 @@
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+
++
+ # Tonga
+
+ # From Paul Eggert (1996-01-22):
+@@ -1726,6 +1721,15 @@
+ # 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.
+
++# From David Wade (2017-10-18):
++# In August government was disolved by the King. The current prime minister
++# continued in office in care taker mode. It is easy to see that few
++# decisions will be made until elections 16th November.
++#
++# From Paul Eggert (2017-10-18):
++# For now, guess that DST is discontinued. That's what the IATA is guessing.
++
++
+ # Wake
+
+ # From Vernice Anderson, Personal Secretary to Philip Jessup,
+@@ -1738,7 +1742,7 @@
+ # making calculation of time in Washington difficult if not almost
+ # impossible.
+ #
+-# http://www.trumanlibrary.org/wake/meeting.htm
++# https://www.trumanlibrary.org/oralhist/andrsonv.htm
+
+ # From Paul Eggert (2003-03-23):
+ # We have no other report of DST in Wake Island, so omit this info for now.
+@@ -1766,7 +1770,7 @@
+ # an international standard, there are some places on the high seas where the
+ # correct date is ambiguous.
+
+-# From Wikipedia (2005-08-31):
++# From Wikipedia (2005-08-31):
+ # Before 1920, all ships kept local apparent time on the high seas by setting
+ # their clocks at night or at the morning sight so that, given the ship's
+ # speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -61,7 +61,9 @@
+ Link America/Manaus Brazil/West
+ Link America/Halifax Canada/Atlantic
+ Link America/Winnipeg Canada/Central
+-Link America/Regina Canada/East-Saskatchewan
++# This line is commented out, as the name exceeded the 14-character limit
++# and was an unused misnomer.
++#Link America/Regina Canada/East-Saskatchewan
+ Link America/Toronto Canada/Eastern
+ Link America/Edmonton Canada/Mountain
+ Link America/St_Johns Canada/Newfoundland
+@@ -96,6 +98,7 @@
+ Link Pacific/Chatham NZ-CHAT
+ Link America/Denver Navajo
+ Link Asia/Shanghai PRC
++Link Pacific/Honolulu Pacific/Johnston
+ Link Pacific/Pohnpei Pacific/Ponape
+ Link Pacific/Pago_Pago Pacific/Samoa
+ Link Pacific/Chuuk Pacific/Truk
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -65,7 +65,7 @@
+ # Mali (southern)
+ Zone Africa/Bamako -0:32:00 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960 Jun 20
++ -1:00 - -01 1960 Jun 20
+ 0:00 - GMT
+
+ # Central African Republic
+@@ -75,7 +75,7 @@
+ # Gambia
+ Zone Africa/Banjul -1:06:36 - LMT 1912
+ -1:06:36 - BMT 1935 # Banjul Mean Time
+- -1:00 - WAT 1964
++ -1:00 - -01 1964
+ 0:00 - GMT
+
+ # Malawi
+@@ -93,18 +93,18 @@
+ # Guinea
+ Zone Africa/Conakry -0:54:52 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960
++ -1:00 - -01 1960
+ 0:00 - GMT
+
+ # Senegal
+ Zone Africa/Dakar -1:09:44 - LMT 1912
+- -1:00 - WAT 1941 Jun
++ -1:00 - -01 1941 Jun
+ 0:00 - GMT
+
+ # Tanzania
+ Zone Africa/Dar_es_Salaam 2:37:08 - LMT 1931
+ 3:00 - EAT 1948
+- 2:45 - BEAUT 1961
++ 2:45 - +0245 1961
+ 3:00 - EAT
+
+ # Djibouti
+@@ -122,14 +122,14 @@
+ # 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 1935 1942 - Jun 1 0:00 0:40 -0020
++Rule SL 1935 1942 - Oct 1 0:00 0 -01
++Rule SL 1957 1962 - Jun 1 0:00 1:00 +01
+ 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
++ 0:00 SL GMT/+01
+
+ # Botswana
+ # From Paul Eggert (2013-02-21):
+@@ -153,8 +153,8 @@
+ # Uganda
+ Zone Africa/Kampala 2:09:40 - LMT 1928 Jul
+ 3:00 - EAT 1930
+- 2:30 - BEAT 1948
+- 2:45 - BEAUT 1957
++ 2:30 - +0230 1948
++ 2:45 - +0245 1957
+ 3:00 - EAT
+
+ # Rwanda
+@@ -177,11 +177,11 @@
+ #
+ # 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
++# https://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
++ 0:52:04 - LMT 1912 Jan 1 # Luanda Mean Time?
+ 1:00 - WAT
+
+ # Democratic Republic of the Congo (east)
+@@ -216,12 +216,12 @@
+ # Somalia
+ Zone Africa/Mogadishu 3:01:28 - LMT 1893 Nov
+ 3:00 - EAT 1931
+- 2:30 - BEAT 1957
++ 2:30 - +0230 1957
+ 3:00 - EAT
+
+ # Niger
+ Zone Africa/Niamey 0:08:28 - LMT 1912
+- -1:00 - WAT 1934 Feb 26
++ -1:00 - -01 1934 Feb 26
+ 0:00 - GMT 1960
+ 1:00 - WAT
+
+@@ -228,7 +228,7 @@
+ # Mauritania
+ Zone Africa/Nouakchott -1:03:48 - LMT 1912
+ 0:00 - GMT 1934 Feb 26
+- -1:00 - WAT 1960 Nov 28
++ -1:00 - -01 1960 Nov 28
+ 0:00 - GMT
+
+ # Burkina Faso
+@@ -264,19 +264,19 @@
+ # 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
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 - -03
+
+ # Aruba
+ Zone America/Aruba -4:40:24 - LMT 1912 Feb 12 # Oranjestad
+- -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:30 - -0430 1965
+ -4:00 - AST
+
+ # Cayman Is
+@@ -365,12 +365,12 @@
+ # 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
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Jul
++ -3:00 - -03 1999 Oct 3 0:00
++ -4:00 Arg -04/-03 2000 Mar 3 0:00
++ -3:00 - -03
+
+ # St Kitts-Nevis
+ Zone America/St_Kitts -4:10:52 - LMT 1912 Mar 2 # Basseterre
+@@ -403,12 +403,12 @@
+ # 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
++ 3:00 - +03
+
+ # Bahrain
+ Zone Asia/Bahrain 3:22:20 - LMT 1920 # Manamah
+- 4:00 - GST 1972 Jun
+- 3:00 - AST
++ 4:00 - +04 1972 Jun
++ 3:00 - +03
+
+ # India
+ #
+@@ -431,7 +431,7 @@
+ # 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
++ 7:00 - +07 1980 May
+ 8:00 PRC C%sT
+ Link Asia/Chongqing Asia/Chungking
+
+@@ -442,43 +442,43 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1954 Oct
++ 7:00 - +07
+
+ # 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:30 - +0830 1932 Mar
+ 8:00 - CST 1940
+- 9:00 - CHAT 1966 May
+- 8:30 - CHAT 1980 May
++ 9:00 - +09 1966 May
++ 8:30 - +0830 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
++ 5:30 - +0530 1940
++ 5:00 - +05 1980 May
+ 8:00 PRC C%sT
+
+ # Kuwait
+ Zone Asia/Kuwait 3:11:56 - LMT 1950
+- 3:00 - AST
++ 3:00 - +03
+
+
+ # 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
++ 4:00 - +04
+
+ # 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
++# https://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]
+
+@@ -491,12 +491,12 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1953 Nov 9
++ 7:00 - +07
+
+ # Israel
+ Zone Asia/Tel_Aviv 2:19:04 - LMT 1880
+@@ -511,16 +511,16 @@
+ # 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
++ 7:00 - +07 1942 Dec 31 23:00
++ 8:00 - +08 1945 Mar 14 23:00
++ 9:00 - +09 1945 Sep 2
++ 7:00 - +07 1947 Apr 1
++ 8:00 - +08 1955 Apr 15
++ 7:00 - +07
+
+ # Jan Mayen
+ # From Whitman:
+-Zone Atlantic/Jan_Mayen -1:00 - EGT
++Zone Atlantic/Jan_Mayen -1:00 - -01
+
+ # St Helena
+ Zone Atlantic/St_Helena -0:22:48 - LMT 1890 # Jamestown
+@@ -540,10 +540,10 @@
+
+ # Guernsey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Town Church, St. Peter Port, 49 degrees 27'17"N 2 degrees 32'10"W
++Zone Europe/Guernsey -0:10:09 - 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
+@@ -555,11 +555,11 @@
+ #
+ # From Lester Caine (2013-09-04):
+ # The Isle of Man legislation is now on-line at
+-# , starting with the original Statutory
++# , 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
++# of the first summer time in 1916 which may have been 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.
+@@ -574,10 +574,10 @@
+
+ # Jersey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Parish Church, St. Helier, 49 degrees 11'0.57"N 2 degrees 6'24.33"W
++Zone Europe/Jersey -0:08:26 - 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
+@@ -663,15 +663,13 @@
+ # " 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
++ -11:00 - -11 1956 Jun 3
++ -11:00 1:00 -10 1956 Sep 2
++ -11:00 - -11
+
+ # 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
++ 9:00 - +09 1969 Oct
++ 10:00 - +10 2000 Dec 23
+ 10:00 - ChST # Chamorro Standard Time
+--- contrib/tzdata/calendars.orig
++++ contrib/tzdata/calendars
+@@ -0,0 +1,173 @@
++----- Calendrical issues -----
++
++As mentioned in Theory.html, although calendrical issues are out of
++scope for tzdb, they indicate the sort of problems that we would run
++into if we extended tzdb further into the past. The following
++information and sources go beyond Theory.html's brief discussion.
++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?
++
++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.
++
++-----
++
++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/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -9,7 +9,7 @@
+ Zone = "\n"
+ }
+
+-/^Zone/ {
++/^Z/ {
+ if (defined[$2]) {
+ if (defined[$2] == Zone) {
+ printf "%s: Zone has duplicate definition\n", $2
+@@ -21,7 +21,7 @@
+ defined[$2] = Zone
+ }
+
+-/^Link/ {
++/^L/ {
+ if (defined[$3]) {
+ if (defined[$3] == Zone) {
+ printf "%s: Link with same name as Zone\n", $3
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -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 (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -37,7 +37,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# . He writes:
++# . He writes:
+ # "It is requested that corrections and additions to these tables
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+@@ -44,7 +44,7 @@
+ #
+ # 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
++# https://mm.icann.org/pipermail/tz/2014-August/021320.html
+ # The full Russian citation is:
+ # Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
+ # введенный декретом Совета народных комиссаров для всей России с 1-го
+@@ -56,26 +56,23 @@
+ # History of Summer Time
+ #
+ # (1998-09-21, in Portuguese)
+-
+ #
+ # I invented the abbreviations marked '*' in the following table;
+-# the rest are from earlier versions of this file, or from other sources.
+-# Corrections are welcome!
+-# std dst 2dst
+-# LMT Local Mean Time
+-# -4:00 AST ADT Atlantic
+-# -3:00 WGT WGST Western Greenland*
+-# -1:00 EGT EGST Eastern Greenland*
+-# 0:00 GMT BST BDST Greenwich, British Summer
+-# 0:00 GMT IST Greenwich, Irish Summer
+-# 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 MSK MSD Moscow
++# the rest are variants of the "xMT" pattern for a city's mean time,
++# or are from other sources. Corrections are welcome!
++# std dst 2dst
++# LMT Local Mean Time
++# -4:00 AST ADT Atlantic
++# 0:00 GMT BST BDST Greenwich, British Summer
++# 0:00 GMT IST Greenwich, Irish Summer
++# 0:00 WET WEST WEMT Western Europe
++# 0:19:32.13 AMT* NST* Amsterdam, Netherlands Summer (1835-1937)
++# 1:00 BST British Standard (1968-1971)
++# 1:00 CET CEST CEMT Central Europe
++# 1:00:14 SET Swedish (1879-1899)
++# 1:36:34 RMT* LST* Riga, Latvian Summer (1880-1926)*
++# 2:00 EET EEST Eastern Europe
++# 3:00 MSK MSD MDST* Moscow
+
+ # From Peter Ilieve (1994-12-04),
+ # The original six [EU members]: Belgium, France, (West) Germany, Italy,
+@@ -190,7 +187,7 @@
+ # foundations of civilization throughout the world.
+ # -- "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
++# https://www.winstonchurchill.org/publications/finest-hour/finest-hour-114/a-silent-toast-to-william-willett-by-winston-s-churchill
+
+ # From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+@@ -228,8 +225,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://www.polyomino.org.uk/british-time/bbc-19410418.png
+-# http://www.polyomino.org.uk/british-time/ho-19410421.png
++# https://www.polyomino.org.uk/british-time/bbc-19410418.png
++# https://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
+@@ -246,13 +243,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://www.polyomino.org.uk/british-time/
++# https://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.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
++# https://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):
+@@ -298,7 +295,7 @@
+ # 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
++# https://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 .
+@@ -351,6 +348,12 @@
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+ # "Irish Summer Time", abbreviated to "IST".
+
++# Michael Deckers (2017-06-01) gave the following URLs for Ireland's
++# Summer Time Act, 1925 and Summer Time Orders, 1926 and 1947:
++# http://www.irishstatutebook.ie/eli/1925/act/8/enacted/en/print.html
++# http://www.irishstatutebook.ie/eli/1926/sro/919/made/en/print.html
++# http://www.irishstatutebook.ie/eli/1947/sro/71/made/en/print.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ # Summer Time Act, 1916
+ Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
+@@ -475,14 +478,14 @@
+
+ # 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 - DMT 1916 May 21 2:00s # Dublin MT
+ -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:00s
++ 0:00 1:00 IST 1946 Oct 6 2:00s
++ 0:00 - GMT 1947 Mar 16 2:00s
++ 0:00 1:00 IST 1947 Nov 2 2:00s
++ 0:00 - GMT 1948 Apr 18 2:00s
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+@@ -628,7 +631,7 @@
+ # 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/ :
++# title at https://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".
+@@ -659,7 +662,7 @@
+ # http://bmockbe.ru/events/?ID=7583
+ #
+ # Medvedev signed a law on the calculation of the time (in russian):
+-# http://www.regnum.ru/news/polit/1413906.html
++# https://www.regnum.ru/news/polit/1413906.html
+
+ # From Arthur David Olson (2011-06-15):
+ # Take "abolishing daylight saving time" to mean that time is now considered
+@@ -786,7 +789,7 @@
+ # Sources (Russian language):
+ # 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
++# https://news.tut.by/society/250578.html
+ #
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+@@ -901,7 +904,7 @@
+ # Cyprus
+ # Please see the 'asia' file for Asia/Nicosia.
+
+-# Czech Republic
++# Czech Republic / Czechia
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Czech 1945 only - Apr 8 2:00s 1:00 S
+ Rule Czech 1945 only - Nov 18 2:00s 0 -
+@@ -1064,16 +1067,16 @@
+ #
+ # 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 EU WG%sT 1996
++ -3:00 - -03 1980 Apr 6 2:00
++ -3:00 EU -03/-02 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 C-Eur CG%sT 1981 Mar 29
+- -1:00 EU EG%sT
++ -2:00 - -02 1980 Apr 6 2:00
++ -2:00 C-Eur -02/-01 1981 Mar 29
++ -1:00 EU -01/+00
+ Zone America/Godthab -3:26:56 - LMT 1916 Jul 28 # Nuuk
+- -3:00 - WGT 1980 Apr 6 2:00
+- -3:00 EU WG%sT
++ -3:00 - -03 1980 Apr 6 2:00
++ -3:00 EU -03/-02
+ Zone America/Thule -4:35:08 - LMT 1916 Jul 28 # Pituffik air base
+ -4:00 Thule A%sT
+
+@@ -1107,7 +1110,7 @@
+ # for their standard and summer times. He says no, they use "suveaeg"
+ # (summer time) and "talveaeg" (winter time).
+
+-# From The Baltic Times (1999-09-09)
++# From The Baltic Times (1999-09-09)
+ # via Steffen Thorsen:
+ # This year will mark the last time Estonia shifts to summer time,
+ # a council of the ruling coalition announced Sept. 6....
+@@ -1159,7 +1162,7 @@
+ # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac
+ # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in
+ # Finnish) at
+-# http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
++# https://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
+ #
+ # Page 105 (56 in PDF version) has a handy table of all past daylight savings
+ # transitions. It is easy enough to interpret without Finnish skills.
+@@ -1172,7 +1175,7 @@
+
+ # From Konstantin Hyppönen (2014-06-13):
+ # [Heikki Oja's book Aikakirja 2013]
+-# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
++# https://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
+ # pages 104-105, including a scan from a newspaper published on Apr 2 1942
+ # say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942,
+ # 00:00), clocks were moved one hour forward. The newspaper
+@@ -1302,7 +1305,7 @@
+
+ # 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/
++# https://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+@@ -1488,7 +1491,7 @@
+ Rule Iceland 1967 only - Oct 29 1:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/Reykjavik -1:28 - LMT 1908
+- -1:00 Iceland IS%sT 1968 Apr 7 1:00s
++ -1:00 Iceland -01/+00 1968 Apr 7 1:00s
+ 0:00 - GMT
+
+ # Italy
+@@ -1527,7 +1530,7 @@
+ # 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
++# Model Rome's occupation by 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.
+ #
+@@ -1842,7 +1845,7 @@
+ # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
+ # Tiraspol will go back to winter time on October 30, 2011.
+ # News from Moldova (in russian):
+-# http://ru.publika.md/link_317061.html
++# https://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
+@@ -1849,7 +1852,7 @@
+ # 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
++# https://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.
+
+@@ -1921,7 +1924,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
++# https://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
+@@ -1952,7 +1955,7 @@
+ # 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
++ 0:20 Neth +0020/+0120 1940 May 16 0:00
+ 1:00 C-Eur CE%sT 1945 Apr 2 2:00
+ 1:00 Neth CE%sT 1977
+ 1:00 EU CE%sT
+@@ -2002,7 +2005,7 @@
+ # so it must have diverged from Oslo time during the war, as Oslo was
+ # keeping Berlin time.
+ #
+-# says that the meteorologists
++# says that the meteorologists
+ # burned down their station in 1940 and left the island, but returned in
+ # 1941 with a small Norwegian garrison and continued operations despite
+ # frequent air attacks from Germans. In 1943 the Americans established a
+@@ -2040,7 +2043,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
++# https://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)
+@@ -2074,7 +2077,7 @@
+ #
+ # 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
++# https://dre.pt/application/dir/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
+@@ -2169,16 +2172,34 @@
+ 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
++# This Zone can be simplified once we assume zic %z.
+ 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
++ -2:00 Port -02/-01 1942 Apr 25 22:00s
++ -2:00 Port +00 1942 Aug 15 22:00s
++ -2:00 Port -02/-01 1943 Apr 17 22:00s
++ -2:00 Port +00 1943 Aug 28 22:00s
++ -2:00 Port -02/-01 1944 Apr 22 22:00s
++ -2:00 Port +00 1944 Aug 26 22:00s
++ -2:00 Port -02/-01 1945 Apr 21 22:00s
++ -2:00 Port +00 1945 Aug 25 22:00s
++ -2:00 Port -02/-01 1966 Apr 3 2:00
++ -1:00 Port -01/+00 1983 Sep 25 1:00s
++ -1:00 W-Eur -01/+00 1992 Sep 27 1:00s
+ 0:00 EU WE%sT 1993 Mar 28 1:00u
+- -1:00 EU AZO%sT
++ -1:00 EU -01/+00
++# This Zone can be simplified once we assume zic %z.
+ 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
++ -1:00 Port -01/+00 1942 Apr 25 22:00s
++ -1:00 Port +01 1942 Aug 15 22:00s
++ -1:00 Port -01/+00 1943 Apr 17 22:00s
++ -1:00 Port +01 1943 Aug 28 22:00s
++ -1:00 Port -01/+00 1944 Apr 22 22:00s
++ -1:00 Port +01 1944 Aug 26 22:00s
++ -1:00 Port -01/+00 1945 Apr 21 22:00s
++ -1:00 Port +01 1945 Aug 25 22:00s
++ -1:00 Port -01/+00 1966 Apr 3 2:00
+ 0:00 Port WE%sT 1983 Sep 25 1:00s
+ 0:00 EU WE%sT
+
+@@ -2238,7 +2259,7 @@
+ # 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
++# https://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:
+@@ -2246,7 +2267,7 @@
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+-# http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
++# https://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+ # 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.
+@@ -2282,7 +2303,7 @@
+ # http://itar-tass.com/obschestvo/1333711
+ # http://www.pravo.gov.ru:8080/page.aspx?111660
+ # http://www.kremlin.ru/acts/46279
+-# From October 26, 2014 the new Russian time zone map will looks like this:
++# From October 26, 2014 the new Russian time zone map will look like this:
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+@@ -2329,7 +2350,7 @@
+ # with maintenance only and represent our best guesses as to which regions
+ # are covered by each zone. They are not meant to be taken as an authoritative
+ # listing. The region codes listed come from
+-# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
++# https://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
+ # and are used for convenience only; no guarantees are made regarding their
+ # future stability. ISO 3166-2:RU codes are also listed for first-level
+ # divisions where available.
+@@ -2494,7 +2515,7 @@
+ # 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
++# https://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.
+ #
+@@ -2536,10 +2557,8 @@
+ 3:00 - MSK
+
+
+-# From Tim Parenti (2014-07-03):
+-# Europe/Simferopol covers...
+-# ** **** Crimea, Republic of
+-# ** **** Sevastopol
++# From Paul Eggert (2016-12-06):
++# Europe/Simferopol covers Crimea.
+
+ Zone Europe/Simferopol 2:16:24 - LMT 1880
+ 2:16 - SMT 1924 May 2 # Simferopol Mean T
+@@ -2568,7 +2587,7 @@
+ 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
++# https://vz.ru/news/2014/3/17/677464.html
+ # From Paul Eggert (2014-03-30):
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+@@ -2601,10 +2620,9 @@
+ 3:00 - +03 2016 Mar 27 2:00s
+ 4:00 - +04
+
+-# From Paul Eggert (2016-03-18):
++# From Paul Eggert (2016-11-11):
+ # 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
+@@ -2617,6 +2635,27 @@
+ 4:00 - +04 2014 Oct 26 2:00s
+ 3:00 - +03
+
++# From Paul Eggert (2016-11-11):
++# Europe/Saratov covers:
++# 64 RU-SAR Saratov Oblast
++
++# From Yuri Konotopov (2016-11-11):
++# Dec 4, 2016 02:00 UTC+3.... Saratov Region's local time will be ... UTC+4.
++# From Stepan Golosunov (2016-11-11):
++# ... Byalokoz listed Saratov on 03:04:18.
++# From Stepan Golosunov (2016-11-22):
++# http://publication.pravo.gov.ru/Document/View/0001201611220031
++
++Zone Europe/Saratov 3:04:18 - LMT 1919 Jul 1 0:00u
++ 3:00 - +03 1930 Jun 21
++ 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 2016 Dec 4 2:00s
++ 4:00 - +04
++
+ # From Paul Eggert (2016-03-18):
+ # Europe/Kirov covers:
+ # 43 RU-KIR Kirov Oblast
+@@ -2731,7 +2770,7 @@
+ # suggests that Altai Republic transitioned to Moscow+3 on
+ # 1995-05-28.
+ #
+-# http://regnum.ru/news/society/1957270.html
++# https://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
+@@ -3105,8 +3144,8 @@
+ # districts, but have very similar populations. In fact, Wikipedia currently
+ # lists them both as having 3528 people, exactly 1668 males and 1860 females
+ # each! (Yikes!)
+-# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
+-# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
++# https://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
++# https://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
+ # Assume this is a mistake, albeit an amusing one.
+ #
+ # Looking at censuses, the populations of the two municipalities seem to have
+@@ -3212,46 +3251,77 @@
+ # See Europe/Belgrade.
+
+ # Spain
++#
++# From Paul Eggert (2016-12-14):
++#
++# The source for Europe/Madrid before 2013 is:
++# Planesas P. La hora oficial en España y sus cambios.
++# Anuario del Observatorio Astronómico de Madrid (2013, in Spanish).
++# http://astronomia.ign.es/rknowsys-theme/images/webAstro/paginas/documentos/Anuario/lahoraoficialenespana.pdf
++# As this source says that historical time in the Canaries is obscure,
++# and it does not discuss Ceuta, stick with Shanks for now for that data.
++#
++# In the 1918 and 1919 fallback transitions in Spain, the clock for
++# the hour-longer day officially kept going after midnight, so that
++# the repeated instances of that day's 00:00 hour were 24 hours apart,
++# with a fallback transition from the second occurrence of 00:59... to
++# the next day's 00:00. Our data format cannot represent this
++# directly, and instead repeats the first hour of the next day, with a
++# fallback transition from the next day's 00:59... to 00:00.
++
++# From Michael Deckers (2016-12-15):
++# The Royal Decree of 1900-06-26 quoted by Planesas, online at
++# https://www.boe.es/datos/pdfs/BOE//1900/209/A00383-00384.pdf
++# says in its article 5 (my translation):
++# These dispositions will enter into force beginning with the
++# instant at which, according to the time indicated in article 1,
++# the 1st day of January of 1901 will begin.
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-# For 1917-1919 Whitman gives Apr Sat>=1 - Oct Sat>=1;
+-# go with Shanks & Pottenger.
+-Rule Spain 1917 only - May 5 23:00s 1:00 S
+-Rule Spain 1917 1919 - Oct 6 23:00s 0 -
+-Rule Spain 1918 only - Apr 15 23:00s 1:00 S
+-Rule Spain 1919 only - Apr 5 23:00s 1:00 S
+-# Whitman gives 1921 Feb 28 - Oct 14; go with Shanks & Pottenger.
+-Rule Spain 1924 only - Apr 16 23:00s 1:00 S
+-# Whitman gives 1924 Oct 14; go with Shanks & Pottenger.
+-Rule Spain 1924 only - Oct 4 23:00s 0 -
+-Rule Spain 1926 only - Apr 17 23:00s 1:00 S
+-# Whitman says no DST in 1929; go with Shanks & Pottenger.
+-Rule Spain 1926 1929 - Oct Sat>=1 23:00s 0 -
+-Rule Spain 1927 only - Apr 9 23:00s 1:00 S
+-Rule Spain 1928 only - Apr 14 23:00s 1:00 S
+-Rule Spain 1929 only - Apr 20 23:00s 1:00 S
+-# Whitman gives 1937 Jun 16, 1938 Apr 16, 1940 Apr 13;
+-# go with Shanks & Pottenger.
+-Rule Spain 1937 only - May 22 23:00s 1:00 S
+-Rule Spain 1937 1939 - Oct Sat>=1 23:00s 0 -
+-Rule Spain 1938 only - Mar 22 23:00s 1:00 S
+-Rule Spain 1939 only - Apr 15 23:00s 1:00 S
+-Rule Spain 1940 only - Mar 16 23:00s 1:00 S
+-# Whitman says no DST 1942-1945; go with Shanks & Pottenger.
+-Rule Spain 1942 only - May 2 22:00s 2:00 M # Midsummer
+-Rule Spain 1942 only - Sep 1 22:00s 1:00 S
+-Rule Spain 1943 1946 - Apr Sat>=13 22:00s 2:00 M
+-Rule Spain 1943 only - Oct 3 22:00s 1:00 S
+-Rule Spain 1944 only - Oct 10 22:00s 1:00 S
+-Rule Spain 1945 only - Sep 30 1:00 1:00 S
+-Rule Spain 1946 only - Sep 30 0:00 0 -
++Rule Spain 1918 only - Apr 15 23:00 1:00 S
++Rule Spain 1918 1919 - Oct 6 24:00s 0 -
++Rule Spain 1919 only - Apr 6 23:00 1:00 S
++Rule Spain 1924 only - Apr 16 23:00 1:00 S
++Rule Spain 1924 only - Oct 4 24:00s 0 -
++Rule Spain 1926 only - Apr 17 23:00 1:00 S
++Rule Spain 1926 1929 - Oct Sat>=1 24:00s 0 -
++Rule Spain 1927 only - Apr 9 23:00 1:00 S
++Rule Spain 1928 only - Apr 15 0:00 1:00 S
++Rule Spain 1929 only - Apr 20 23:00 1:00 S
++# Republican Spain during the civil war; it controlled Madrid until 1939-03-28.
++Rule Spain 1937 only - Jun 16 23:00 1:00 S
++Rule Spain 1937 only - Oct 2 24:00s 0 -
++Rule Spain 1938 only - Apr 2 23:00 1:00 S
++Rule Spain 1938 only - Apr 30 23:00 2:00 M
++Rule Spain 1938 only - Oct 2 24:00 1:00 S
++# The following rules are for unified Spain again.
++#
++# Planesas does not say what happened in Madrid between its fall on
++# 1939-03-28 and the Nationalist spring-forward transition on
++# 1939-04-15. For lack of better info, assume Madrid's clocks did not
++# change during that period.
++#
++# The first rule is commented out, as it is redundant for Republican Spain.
++#Rule Spain 1939 only - Apr 15 23:00 1:00 S
++Rule Spain 1939 only - Oct 7 24:00s 0 -
++Rule Spain 1942 only - May 2 23:00 1:00 S
++Rule Spain 1942 only - Sep 1 1:00 0 -
++Rule Spain 1943 1946 - Apr Sat>=13 23:00 1:00 S
++Rule Spain 1943 1944 - Oct Sun>=1 1:00 0 -
++Rule Spain 1945 1946 - Sep lastSun 1:00 0 -
+ Rule Spain 1949 only - Apr 30 23:00 1:00 S
+-Rule Spain 1949 only - Sep 30 1:00 0 -
+-Rule Spain 1974 1975 - Apr Sat>=13 23:00 1:00 S
++Rule Spain 1949 only - Oct 2 1:00 0 -
++Rule Spain 1974 1975 - Apr Sat>=12 23:00 1:00 S
+ Rule Spain 1974 1975 - Oct Sun>=1 1:00 0 -
+ Rule Spain 1976 only - Mar 27 23:00 1:00 S
+ Rule Spain 1976 1977 - Sep lastSun 1:00 0 -
+-Rule Spain 1977 1978 - Apr 2 23:00 1:00 S
+-Rule Spain 1978 only - Oct 1 1:00 0 -
++Rule Spain 1977 only - Apr 2 23:00 1:00 S
++Rule Spain 1978 only - Apr 2 2:00s 1:00 S
++Rule Spain 1978 only - Oct 1 2:00s 0 -
++# Nationalist Spain during the civil war
++#Rule NatSpain 1937 only - May 22 23:00 1:00 S
++#Rule NatSpain 1937 1938 - Oct Sat>=1 24:00s 0 -
++#Rule NatSpain 1938 only - Mar 26 23:00 1:00 S
+ # The following rules are copied from Morocco from 1967 through 1978.
+ Rule SpainAfrica 1967 only - Jun 3 12:00 1:00 S
+ Rule SpainAfrica 1967 only - Oct 1 0:00 0 -
+@@ -3263,11 +3333,11 @@
+ Rule SpainAfrica 1978 only - Jun 1 0:00 1:00 S
+ Rule SpainAfrica 1978 only - Aug 4 0:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Europe/Madrid -0:14:44 - LMT 1901 Jan 1 0:00s
+- 0:00 Spain WE%sT 1946 Sep 30
++Zone Europe/Madrid -0:14:44 - LMT 1900 Dec 31 23:45:16
++ 0:00 Spain WE%sT 1940 Mar 16 23:00
+ 1:00 Spain CE%sT 1979
+ 1:00 EU CE%sT
+-Zone Africa/Ceuta -0:21:16 - LMT 1901
++Zone Africa/Ceuta -0:21:16 - LMT 1900 Dec 31 23:38:44
+ 0:00 - WET 1918 May 6 23:00
+ 0:00 1:00 WEST 1918 Oct 7 23:00
+ 0:00 - WET 1924
+@@ -3276,7 +3346,7 @@
+ 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 T
++ -1:00 - -01 1946 Sep 30 1:00
+ 0:00 - WET 1980 Apr 6 0:00s
+ 0:00 1:00 WEST 1980 Sep 28 1:00u
+ 0:00 EU WE%sT
+@@ -3396,7 +3466,7 @@
+ #
+ # From Alois Treindl (2013-09-11):
+ # The Federal regulations say
+-# http://www.admin.ch/opc/de/classified-compilation/20071096/index.html
++# https://www.admin.ch/opc/de/classified-compilation/20071096/index.html
+ # ... the meridian for Bern mean time ... is 7 degrees 26' 22.50".
+ # Expressed in time, it is 0h29m45.5s.
+
+@@ -3473,9 +3543,9 @@
+ # According to the articles linked below, Turkey will change into summer
+ # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27.
+ # This change is due to a nationwide exam on 27th.
+-# http://www.worldbulletin.net/?aType=haber&ArticleID=70872
++# https://www.worldbulletin.net/?aType=haber&ArticleID=70872
+ # Turkish:
+-# http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373
++# https://www.hurriyet.com.tr/yaz-saati-uygulamasi-bir-gun-ileri-alindi-17230464
+
+ # From Faruk Pasin (2014-02-14):
+ # The DST for Turkey has been changed for this year because of the
+@@ -3611,7 +3681,7 @@
+ # http://www.segodnya.ua/news/14290482.html
+ #
+ # Deputies cancelled the winter time (in Russian)
+-# http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
++# https://www.pravda.com.ua/rus/news/2011/09/20/6600616/
+ #
+ # From Philip Pizzey (2011-10-18):
+ # Today my Ukrainian colleagues have informed me that the
+@@ -3689,7 +3759,7 @@
+ # spelling, except omit the apostrophe as it is not allowed in
+ # portable Posix file names.
+ Zone Europe/Zaporozhye 2:20:40 - LMT 1880
+- 2:20 - CUT 1924 May 2 # Central Ukraine T
++ 2:20 - +0220 1924 May 2
+ 2:00 - EET 1930 Jun 21
+ 3:00 - MSK 1941 Aug 25
+ 1:00 C-Eur CE%sT 1943 Oct 25
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C52
+-# File expires on: 28 June 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+ #
+-#@ 3707596800
++#@ 3739132800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -247,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67
++#h 5101445a 69948b51 9153e2b 2086e3d8 d54561a3
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -3,19 +3,18 @@
+ # This file is in the public domain.
+
+ # 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 does not work,
+-# you should be able to pick up leap-seconds.list from a secondary NIST server.
+-# See for a list of secondary servers.
++# leap-seconds.list file, which is copied from:
++# ftp://ftp.nist.gov/pub/time/leap-seconds.list
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+-# http://www.eecis.udel.edu/~mills/leap.html
++# https://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 .
++# Levine J. Coordinated Universal Time and the leap second.
++# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995
++# http://ieeexplore.ieee.org/document/7909995/
+ # 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.
+@@ -58,5 +57,5 @@
+ Leap 2015 Jun 30 23:59:60 + S
+ Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C52
+-# File expires on: 28 June 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -8,19 +8,18 @@
+ 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 does not work,"
+- print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
+- print "# See for a list of secondary servers."
++ print "# leap-seconds.list file, which is copied from:"
++ print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list"
+ 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 "# https://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 ."
++ print "# Levine J. Coordinated Universal Time and the leap second."
++ print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995"
++ print "# http://ieeexplore.ieee.org/document/7909995/"
+ 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."
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -105,10 +105,13 @@
+ # 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
++# https://web.archive.org/web/20000926032210/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.
++#
++# From Paul Eggert (2017-09-23):
++# This was the V-J Day issue of the Clamdigger, a Rowayton, CT newsletter.
+
+ # From Joseph Gallant citing
+ # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+@@ -178,22 +181,6 @@
+ Zone MST7MDT -7:00 US M%sT
+ Zone PST8PDT -8:00 US P%sT
+
+-# From Bob Devine (1988-01-28):
+-# ...Alaska (and Hawaii) had the timezone names changed in 1967.
+-# old new
+-# Pacific Standard Time(PST) -same-
+-# Yukon Standard Time(YST) -same-
+-# Central Alaska S.T. (CAT) Alaska-Hawaii St[an]dard Time (AHST)
+-# Nome Standard Time (NT) Bering Standard Time (BST)
+-#
+-# ...Alaska's timezone lines were redrawn in 1983 to give only 2 tz.
+-# The YST zone now covers nearly all of the state, AHST just part
+-# of the Aleutian islands. No DST.
+-
+-# From Paul Eggert (1995-12-19):
+-# The tables below use 'NST', not 'NT', for Nome Standard Time.
+-# I invented 'CAWT' for Central Alaska War Time.
+-
+ # From U. S. Naval Observatory (1989-01-19):
+ # USA EASTERN 5 H BEHIND UTC NEW YORK, WASHINGTON
+ # USA EASTERN 4 H BEHIND UTC APR 3 - OCT 30
+@@ -250,6 +237,21 @@
+ # Samoa standard time
+ # The law doesn't give abbreviations.
+ #
++# From Paul Eggert (2016-12-19):
++# Here are URLs for the 1918 and 1966 legislation:
++# http://uscode.house.gov/statviewer.htm?volume=40&page=451
++# http://uscode.house.gov/statviewer.htm?volume=80&page=108
++# Although the 1918 names were officially "United States Standard
++# Eastern Time" and similarly for "Central", "Mountain", "Pacific",
++# and "Alaska", in practice "Standard" was placed just before "Time",
++# as codified in 1966. In practice, Alaska time was abbreviated "AST"
++# before 1968. Summarizing the 1967 name changes:
++# 1918 names 1967 names
++# -08 Standard Pacific Time (PST) Pacific standard time (PST)
++# -09 (unofficial) Yukon (YST) Yukon standard time (YST)
++# -10 Standard Alaska Time (AST) Alaska-Hawaii standard time (AHST)
++# -11 (unofficial) Nome (NST) Bering standard time (BST)
++#
+ # From Paul Eggert (2000-01-08), following a heads-up from Rives McDow:
+ # Public law 106-564 (2000-12-23) introduced ... "Chamorro Standard Time"
+ # for time in Guam and the Northern Marianas. See the file "australasia".
+@@ -258,7 +260,7 @@
+ # 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
++# https://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.
+@@ -305,6 +307,15 @@
+ # Roberts, city administrator in Phenix City. as saying "We are in the Central
+ # time zone, but we do go by the Eastern time zone because so many people work
+ # in Columbus."
++#
++# From Paul Eggert (2017-02-22):
++# Four cities are involved. The two not mentioned above are Smiths Station
++# and Valley. Barbara Brooks, Valley's assistant treasurer, heard it started
++# because West Point Pepperell textile mills were in Alabama while the
++# corporate office was in Georgia, and residents voted to keep Eastern
++# time even after the mills closed. See: Kazek K. Did you know which
++# Alabama towns are in a different time zone? al.com 2017-02-06.
++# http://www.al.com/living/index.ssf/2017/02/do_you_know_which_alabama_town.html
+
+ # From Paul Eggert (2014-09-06):
+ # Monthly Notices of the Royal Astronomical Society 44, 4 (1884-02-08), 208
+@@ -338,7 +349,7 @@
+ # western Tennessee, most of Texas, Wisconsin
+
+ # From Larry M. Smith (2006-04-26) re Wisconsin:
+-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
++# https://docs.legis.wisconsin.gov/statutes/statutes/175.pdf
+ # is currently enforced at the 01:00 time of change. Because the local
+ # "bar time" in the state corresponds to 02:00, a number of citations
+ # are issued for the "sale of class 'B' alcohol after prohibited
+@@ -347,7 +358,7 @@
+ # From Douglas R. Bomberg (2007-03-12):
+ # Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+ # Statue 175 closer in synch with the US Congress' intent....
+-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
++# https://docs.legis.wisconsin.gov/2007/related/acts/3
+
+ # 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
+@@ -394,7 +405,7 @@
+ # ...it appears that Mercer County, North Dakota, changed from the
+ # mountain time zone to the central time zone at the last transition from
+ # daylight-saving to standard time (on Nov. 7, 2010):
+-# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
++# https://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
+ # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
+
+ # From Andy Lipscomb (2011-01-24):
+@@ -445,7 +456,7 @@
+ # 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
++# 1973-11. https://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
+@@ -466,8 +477,8 @@
+ # 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
++# https://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# https://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:01 1:00 D
+@@ -482,22 +493,33 @@
+ -8:00 US P%sT
+
+ # Alaska
+-# AK%sT is the modern abbreviation for -9:00 per USNO.
++# AK%sT is the modern abbreviation for -09 per USNO.
+ #
+-# From Paul Eggert (2001-05-30):
++# From Paul Eggert (2017-06-15):
+ # Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+ # and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+-# also a Friday. Include only the time zone part of this transition,
+-# ignoring the switch from Julian to Gregorian, since we can't represent
+-# the Julian calendar.
++# On Friday, 1867-10-18 (Gregorian), at precisely 15:30 local time, the
++# Russian forts and fleet at Sitka fired salutes to mark the ceremony of
++# formal transfer. See the Sacramento Daily Union (1867-11-14), p 3, col 2.
++# https://cdnc.ucr.edu/cgi-bin/cdnc?a=d&d=SDU18671114.2.12.1
++# Sitka workers did not change their calendars until Sunday, 1867-10-20,
++# and so celebrated two Sundays that week. See: Ahllund T (tr Hallamaa P).
++# From the memoirs of a Finnish workman. Alaska History. 2006 Fall;21(2):1-25.
++# http://alaskahistoricalsociety.org/wp-content/uploads/2016/12/Ahllund-2006-Memoirs-of-a-Finnish-Workman.pdf
++# Include only the time zone part of this transition, ignoring the switch
++# from Julian to Gregorian, since we can't represent the Julian calendar.
+ #
+-# As far as we know, none of the exact locations mentioned below were
++# As far as we know, of the locations mentioned below only Sitka was
+ # permanently inhabited in 1867 by anyone using either calendar.
+-# (Yakutat was colonized by the Russians in 1799, but the settlement
+-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
+-# were nearby inhabitants in some cases and for our purposes perhaps
+-# it's best to simply use the official transition.
++# (Yakutat was colonized by the Russians in 1799, but the settlement was
++# destroyed in 1805 by a Yakutat-kon war party.) Many of Alaska's inhabitants
++# were unaware of the US acquisition of Alaska, much less of any calendar or
++# time change. However, the Russian-influenced part of Alaska did observe
++# Russian time, and it is more accurate to model this than to ignore it.
++# The database format requires an exact transition time; use the Russian
++# salute as a somewhat-arbitrary time for the formal transfer of control for
++# all of Alaska. Sitka's UTC offset is -9:01:13; adjust its 15:30 to the
++# local times of other Alaskan locations so that they change simultaneously.
+
+ # From Paul Eggert (2014-07-18):
+ # One opinion of the early-1980s turmoil in Alaska over time zones and
+@@ -550,10 +572,10 @@
+ # 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/
++# https://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
++Zone America/Juneau 15:02:19 - LMT 1867 Oct 19 15:33:32
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -563,7 +585,7 @@
+ -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
++Zone America/Sitka 14:58:47 - LMT 1867 Oct 19 15:30
+ -9:01:13 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -571,7 +593,7 @@
+ -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
++Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 19 15:44:55
+ -8:46:18 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -579,7 +601,7 @@
+ -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
++Zone America/Yakutat 14:41:05 - LMT 1867 Oct 19 15:12:18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+ -9:00 US Y%sT 1946
+@@ -586,17 +608,15 @@
+ -9:00 - YST 1969
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
++Zone America/Anchorage 14:00:24 - LMT 1867 Oct 19 14:31:37
+ -9:59:36 - LMT 1900 Aug 20 12:00
+- -10:00 - CAT 1942
+- -10:00 US CAT/CAWT 1945 Aug 14 23:00u
+- -10:00 US CAT/CAPT 1946 # Peace
+- -10:00 - CAT 1967 Apr
++ -10:00 - AST 1942
++ -10:00 US A%sT 1967 Apr
+ -10:00 - AHST 1969
+ -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
++Zone America/Nome 12:58:22 - LMT 1867 Oct 19 13:29:35
+ -11:01:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -605,7 +625,7 @@
+ -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
++Zone America/Adak 12:13:22 - LMT 1867 Oct 19 12:44:35
+ -11:46:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -641,7 +661,7 @@
+ # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
+ # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
+ # the article is available at
+-# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
++# https://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
+ # and indicates that standard time was adopted effective noon, January
+ # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
+ # saving for the period between the last Sunday of each April and the
+@@ -680,7 +700,6 @@
+ -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.
+
+@@ -741,7 +760,7 @@
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# http://en.wikipedia.org/wiki/Time_in_Indiana
++# https://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -968,7 +987,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
++# https://www.gpo.gov/fdsys/pkg/FR-2000-08-17/html/00-20854.htm
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -994,7 +1013,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
++# https://www.gpo.gov/fdsys/pkg/FR-1999-10-21/html/99-27240.htm
+ # 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.
+@@ -1024,12 +1043,23 @@
+ # one hour in 1914." This change is not in Shanks. We have no more
+ # info, so omit this for now.
+ #
++# From Paul Eggert (2017-07-26):
++# Although Shanks says Detroit observed DST in 1967 from 06-14 00:01
++# until 10-29 00:01, I now see multiple reports that this is incorrect.
++# For example, according to a 50-year anniversary report about the 1967
++# Detroit riots and a major-league doubleheader on 1967-07-23, "By the time
++# the last fly ball of the doubleheader settled into the glove of leftfielder
++# Lenny Green, it was after 7 p.m. Detroit did not observe daylight saving
++# time, so light was already starting to fail. Twilight was made even deeper
++# by billowing columns of smoke that ascended in an unbroken wall north of the
++# ballpark." See: Dow B. Detroit '67: As violence unfolded, Tigers played two
++# at home vs. Yankees. Detroit Free Press 2017-07-23.
++# https://www.freep.com/story/sports/mlb/tigers/2017/07/23/detroit-tigers-1967-riot-new-york-yankees/499951001/
++#
+ # Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+ Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
+-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
+@@ -1068,7 +1098,7 @@
+ ################################################################################
+
+
+-# From Paul Eggert (2014-10-31):
++# From Paul Eggert (2017-02-10):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -1075,8 +1105,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -1093,7 +1123,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# .
++# .
+ #
+ # See the 'europe' file for Greenland.
+
+@@ -1139,19 +1169,19 @@
+ # The British Columbia government announced yesterday that it will
+ # adjust daylight savings next year to align with changes in the
+ # U.S. and the rest of Canada....
+-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
++# https://archive.news.gov.bc.ca/releases/news_releases_2005-2009/2006AG0014-000330.htm
+ # ...
+ # Nova Scotia
+ # Daylight saving time will be extended by four weeks starting in 2007....
+-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
++# https://www.novascotia.ca/just/regulations/rg2/2006/ma1206.pdf
+ #
+ # [For New Brunswick] the new legislation dictates that the time change is to
+ # be done at 02:00 instead of 00:01.
+-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
++# https://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+ # ...
+ # Manitoba has traditionally changed the clock every fall at 03:00.
+ # As of 2006, the transition is to take place one hour earlier at 02:00.
+-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
++# https://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+ # ...
+ # [Alberta, Ontario, Quebec] will follow US rules.
+ # http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+@@ -1165,7 +1195,7 @@
+ # http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+ # ...
+ # Yukon
+-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
++# https://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+ # ...
+ # N.W.T. will follow US rules. Whoever maintains the government web site
+ # does not seem to believe in bookmarks. To see the news release, click the
+@@ -1186,8 +1216,8 @@
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+ # 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
++# https://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# https://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):
+@@ -1224,11 +1254,13 @@
+
+ # Newfoundland and Labrador
+
+-# From Paul Eggert (2000-10-02):
+-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+-# but the only part of Labrador that follows the rules is the
+-# southeast corner, including Port Hope Simpson and Mary's Harbour,
+-# but excluding, say, Black Tickle.
++# From Paul Eggert (2017-10-14):
++# Legally Labrador should observe Newfoundland time; see:
++# McLeod J. Labrador time - legal or not? St. John's Telegram, 2017-10-07
++# http://www.thetelegram.com/news/local/labrador-time--legal-or-not-154860/
++# Matthews and Vincent (1998) write that the only part of Labrador
++# that follows the rules is the southeast corner, including Port Hope
++# Simpson and Mary's Harbour, but excluding, say, Black Tickle.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule StJohns 1917 only - Apr 8 2:00 1:00 D
+@@ -1428,7 +1460,7 @@
+ # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm
+ # that the coastal strip from just east of Natashquan to Blanc-Sablon
+ # observes Atlantic standard time all year round.
+-# http://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
++# https://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
+ # says this common practice was codified into law as of 2007.
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+@@ -1460,6 +1492,11 @@
+ # earlier in June).
+ #
+ # Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
++#
++# From Paul Eggert (2017-07-08):
++# For more on Orillia, see: Daubs K. Bold attempt at daylight saving
++# time became a comic failure in Orillia. Toronto Star 2017-07-08.
++# https://www.thestar.com/news/insight/2017/07/08/bold-attempt-at-daylight-saving-time-became-a-comic-failure-in-orillia.html
+
+ # From Paul Eggert (1997-10-17):
+ # Mark Brader writes that an article in the 1997-10-14 Toronto Star
+@@ -1951,7 +1988,7 @@
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+ # 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]
++# [https://www.canlii.org/en/ca/laws/stat/rsc-1985-c-i-21/latest/rsc-1985-c-i-21.html]
+ # * 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.
+@@ -2016,7 +2053,7 @@
+ # 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
++# https://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
+@@ -2031,7 +2068,7 @@
+ # 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
++# https://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
+@@ -2043,7 +2080,7 @@
+ # 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
++# https://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
+@@ -2057,7 +2094,7 @@
+ # 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
++# https://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.
+@@ -2100,7 +2137,7 @@
+
+ # From Michaela Rodrigue, writing in the
+ # Nunatsiaq News (1999-11-19):
+-# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
++# http://www.nunatsiaqonline.ca/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]
+@@ -2118,7 +2155,7 @@
+ # Central Time and Southampton Island [in the Central zone] is not
+ # required to use daylight savings.
+
+-# From
++# From
+ # Nunavut now has two time zones (2000-11-10):
+ # The Nunavut government would allow its employees in Kugluktuk and
+ # Cambridge Bay to operate on central time year-round, putting them
+@@ -2449,7 +2486,7 @@
+ # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
++# https://www.timeanddate.com/news/time/north-mexico-dst-change.html
+
+ # From Arthur David Olson (2010-01-20):
+ # The page
+@@ -2734,15 +2771,15 @@
+ # Belize
+ # Whitman entirely disagrees with Shanks; go with Shanks & Pottenger.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 HD
+-Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 S
+-Rule Belize 1973 only - Dec 5 0:00 1:00 D
+-Rule Belize 1974 only - Feb 9 0:00 0 S
+-Rule Belize 1982 only - Dec 18 0:00 1:00 D
+-Rule Belize 1983 only - Feb 12 0:00 0 S
++Rule Belize 1918 1942 - Oct Sun>=2 0:00 0:30 -0530
++Rule Belize 1919 1943 - Feb Sun>=9 0:00 0 CST
++Rule Belize 1973 only - Dec 5 0:00 1:00 CDT
++Rule Belize 1974 only - Feb 9 0:00 0 CST
++Rule Belize 1982 only - Dec 18 0:00 1:00 CDT
++Rule Belize 1983 only - Feb 12 0:00 0 CST
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Belize -5:52:48 - LMT 1912 Apr
+- -6:00 Belize C%sT
++ -6:00 Belize %s
+
+ # Bermuda
+
+@@ -2868,7 +2905,7 @@
+ # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+ #
+ # Some more background information is posted here:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+ #
+ # The article also says that Cuba has been observing DST since 1963,
+ # while Shanks (and tzdata) has 1965 as the first date (except in the
+@@ -2915,7 +2952,7 @@
+ # http://granma.co.cu/2011/03/08/nacional/artic01.html
+ #
+ # Our info:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
+ #
+ # From Steffen Thorsen (2011-10-30)
+ # Cuba will end DST two weeks later this year. Instead of going back
+@@ -2925,7 +2962,7 @@
+ # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
++# https://www.timeanddate.com/news/time/cuba-time-changes-2011.html
+ #
+ # From Steffen Thorsen (2012-03-01)
+ # According to Radio Reloj, Cuba will start DST on Midnight between March
+@@ -2935,7 +2972,7 @@
+ # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
+ #
+ # Our info on it:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
+
+ # From Steffen Thorsen (2012-11-03):
+ # Radio Reloj and many other sources report that Cuba is changing back
+@@ -3014,16 +3051,16 @@
+
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule DR 1966 only - Oct 30 0:00 1:00 D
+-Rule DR 1967 only - Feb 28 0:00 0 S
+-Rule DR 1969 1973 - Oct lastSun 0:00 0:30 HD
+-Rule DR 1970 only - Feb 21 0:00 0 S
+-Rule DR 1971 only - Jan 20 0:00 0 S
+-Rule DR 1972 1974 - Jan 21 0:00 0 S
++Rule DR 1966 only - Oct 30 0:00 1:00 EDT
++Rule DR 1967 only - Feb 28 0:00 0 EST
++Rule DR 1969 1973 - Oct lastSun 0:00 0:30 -0430
++Rule DR 1970 only - Feb 21 0:00 0 EST
++Rule DR 1971 only - Jan 20 0:00 0 EST
++Rule DR 1972 1974 - Jan 21 0:00 0 EST
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -5:00 DR %s 1974 Oct 27
+ -4:00 - AST 2000 Oct 29 2:00
+ -5:00 US E%sT 2000 Dec 3 1:00
+ -4:00 - AST
+@@ -3130,10 +3167,16 @@
+ # 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/
++# https://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# https://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
+ # http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
+
++# From Steffen Thorsen (2017-03-12):
++# We have received 4 mails from different people telling that Haiti
++# has started DST again today, and this source seems to confirm that,
++# I have not been able to find a more authoritative source:
++# https://www.haitilibre.com/en/news-20319-haiti-notices-time-change-in-haiti.html
++
+ # 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
+@@ -3146,6 +3189,8 @@
+ Rule Haiti 2005 2006 - Oct lastSun 0: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
++Rule Haiti 2017 max - Mar Sun>=8 2:00 1:00 D
++Rule Haiti 2017 max - 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
+@@ -3313,8 +3358,8 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -3:00 - -03 1987
++ -3:00 Canada -03/-02
+
+ # St Vincent and the Grenadines
+ # See America/Port_of_Spain.
+@@ -3322,7 +3367,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
++# https://bugs.debian.org/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.
+@@ -3344,12 +3389,25 @@
+ # "permanent daylight saving time" by one year....
+ # http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
++# From the Turks & Caicos Cabinet (2017-07-20), heads-up from Steffen Thorsen:
++# ... agreed to the reintroduction in TCI of Daylight Saving Time (DST)
++# during the summer months and Standard Time, also known as Local
++# Time, during the winter months with effect from April 2018 ...
++# https://www.gov.uk/government/news/turks-and-caicos-post-cabinet-meeting-statement--3
++#
++# From Paul Eggert (2017-08-26):
++# The date of effect of the spring 2018 change appears to be March 11,
++# which makes more sense. See: Hamilton D. Time change back
++# by March 2018 for TCI. Magnetic Media. 2017-08-25.
++# http://magneticmediatv.com/2017/08/time-change-back-by-march-2018-for-tci/
++#
+ # 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 - EST 1979
+ -5:00 US E%sT 2015 Nov Sun>=1 2:00
+- -4:00 - AST
++ -4:00 - AST 2018 Mar 11 3:00
++ -5:00 US E%sT
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -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 (2016-12-05):
+ #
+ # Unless otherwise specified, the source for data through 1990 is:
+ # Thomas G. Shanks and Rique Pottenger, The International Atlas (6th edition),
+@@ -13,8 +13,8 @@
+ # 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
++# Many years ago Gwillim Law wrote that a good source
++# for time zone data was 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,
+@@ -22,34 +22,12 @@
+ #
+ # 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
++# https://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
+-# suggests that it's better to use European style (e.g. ART and ARST).
+-# 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
+-# H L Mencken, _The American Language: Supplement I_ (1960), p 466
+-#
+-# Earlier editions of these tables also used the North American style
+-# for time zones in Brazil, but this was incorrect, as Brazilians say
+-# "summer time". Reinaldo Goulart, a São Paulo businessman active in
+-# the railroad sector, writes (1999-07-06):
+-# The subject of time zones is currently a matter of discussion/debate in
+-# Brazil. Let's say that "the Brasília time" is considered the
+-# "official time" because Brasília is the capital city.
+-# The other three time zones are called "Brasília time "minus one" or
+-# "plus one" or "plus two". As far as I know there is no such
+-# name/designation as "Eastern Time" or "Central Time".
+-# So I invented the following (English-language) abbreviations for now.
+-# Corrections are welcome!
+-# std dst
+-# -2:00 FNT FNST Fernando de Noronha
+-# -3:00 BRT BRST Brasília
+-# -4:00 AMT AMST Amazon
+-# -5:00 ACT ACST Acre
++# These tables use numeric abbreviations like -03 and -0330 for
++# integer hour and minute UTC offsets. Although earlier editions used
++# alphabetic time zone abbreviations, these abbreviations were
++# invented and did not reflect common practice.
+
+ ###############################################################################
+
+@@ -287,8 +265,8 @@
+ #
+ # Es inminente que en San Luis atrasen una hora los relojes
+ # (It is imminent in San Luis clocks one hour delay)
+-# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
+-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
++# https://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
++# http://www.worldtimezone.com/dst_news/dst_news_argentina02.html
+
+ # From Jesper Nørgaard Welen (2008-01-18):
+ # The page of the San Luis provincial government
+@@ -384,12 +362,6 @@
+ #
+ # So I guess a new set of rules, besides "Arg", must be made and the last
+ # America/Argentina/San_Luis entries should change to use these...
+-#
+-# I'm enclosing a patch that does what I say... regretfully, the San Luis
+-# timezone must be called "WART/WARST" even when most of the time (like,
+-# right now) WARST == ART... that is, since last Sunday, all the country
+-# is using UTC-3, but in my patch, San Luis calls it "WARST" and the rest
+-# of the country calls it "ART".
+ # ...
+
+ # From Alexander Krivenyshev (2010-04-09):
+@@ -413,7 +385,7 @@
+ # 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 -03; see, for example,
+-# http://es.wikipedia.org/wiki/Hora_oficial_argentina
++# https://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
+@@ -428,11 +400,11 @@
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02
+ #
+ # Córdoba (CB), Santa Fe (SF), Entre Ríos (ER), Corrientes (CN), Misiones (MN),
+ # Chaco (CC), Formosa (FM), Santiago del Estero (SE)
+@@ -446,113 +418,113 @@
+ #
+ Zone America/Argentina/Cordoba -4:16:48 - 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 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02
+ #
+ # Salta (SA), La Pampa (LP), Neuquén (NQ), Rio Negro (RN)
+ Zone America/Argentina/Salta -4:21:40 - 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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Tucumán (TM)
+ Zone America/Argentina/Tucuman -4:20:52 - 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 13
+- -3:00 Arg AR%sT
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 13
++ -3:00 Arg -03/-02
+ #
+ # La Rioja (LR)
+ Zone America/Argentina/La_Rioja -4:27:24 - 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 1
+- -4:00 - WART 1991 May 7
+- -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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 1
++ -4:00 - -04 1991 May 7
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # San Juan (SJ)
+ Zone America/Argentina/San_Juan -4:34:04 - 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 1
+- -4:00 - WART 1991 May 7
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 31
+- -4:00 - WART 2004 Jul 25
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 1
++ -4:00 - -04 1991 May 7
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 31
++ -4:00 - -04 2004 Jul 25
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Jujuy (JY)
+ Zone America/Argentina/Jujuy -4:21:12 - 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 1990 Mar 4
+- -4:00 - WART 1990 Oct 28
+- -4:00 1:00 WARST 1991 Mar 17
+- -4:00 - WART 1991 Oct 6
+- -3:00 1:00 ARST 1992
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990 Mar 4
++ -4:00 - -04 1990 Oct 28
++ -4:00 1:00 -03 1991 Mar 17
++ -4:00 - -04 1991 Oct 6
++ -3:00 1:00 -02 1992
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Catamarca (CT), Chubut (CH)
+ Zone America/Argentina/Catamarca -4:23:08 - 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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1991 Mar 3
++ -4:00 - -04 1991 Oct 20
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # Mendoza (MZ)
+ Zone America/Argentina/Mendoza -4:35:16 - 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 1990 Mar 4
+- -4:00 - WART 1990 Oct 15
+- -4:00 1:00 WARST 1991 Mar 1
+- -4:00 - WART 1991 Oct 15
+- -4:00 1:00 WARST 1992 Mar 1
+- -4:00 - WART 1992 Oct 18
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 23
+- -4:00 - WART 2004 Sep 26
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990 Mar 4
++ -4:00 - -04 1990 Oct 15
++ -4:00 1:00 -03 1991 Mar 1
++ -4:00 - -04 1991 Oct 15
++ -4:00 1:00 -03 1992 Mar 1
++ -4:00 - -04 1992 Oct 18
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 23
++ -4:00 - -04 2004 Sep 26
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # San Luis (SL)
+
+@@ -561,44 +533,44 @@
+
+ Zone America/Argentina/San_Luis -4:25:24 - 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 1990
+- -3:00 1:00 ARST 1990 Mar 14
+- -4:00 - WART 1990 Oct 15
+- -4:00 1:00 WARST 1991 Mar 1
+- -4:00 - WART 1991 Jun 1
+- -3:00 - ART 1999 Oct 3
+- -4:00 1:00 WARST 2000 Mar 3
+- -3:00 - ART 2004 May 31
+- -4:00 - WART 2004 Jul 25
+- -3:00 Arg AR%sT 2008 Jan 21
+- -4:00 SanLuis WAR%sT 2009 Oct 11
+- -3:00 - ART
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1990
++ -3:00 1:00 -02 1990 Mar 14
++ -4:00 - -04 1990 Oct 15
++ -4:00 1:00 -03 1991 Mar 1
++ -4:00 - -04 1991 Jun 1
++ -3:00 - -03 1999 Oct 3
++ -4:00 1:00 -03 2000 Mar 3
++ -3:00 - -03 2004 May 31
++ -4:00 - -04 2004 Jul 25
++ -3:00 Arg -03/-02 2008 Jan 21
++ -4:00 SanLuis -04/-03 2009 Oct 11
++ -3:00 - -03
+ #
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -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 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:16:48 - CMT 1920 May
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 Jun 1
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+ #
+ # 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
+- -4:00 - ART 1930 Dec
+- -4:00 Arg AR%sT 1969 Oct 5
+- -3:00 Arg AR%sT 1999 Oct 3
+- -4:00 Arg AR%sT 2000 Mar 3
+- -3:00 - ART 2004 May 30
+- -4:00 - WART 2004 Jun 20
+- -3:00 Arg AR%sT 2008 Oct 18
+- -3:00 - ART
++ -4:16:48 - CMT 1920 May
++ -4:00 - -04 1930 Dec
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1999 Oct 3
++ -4:00 Arg -04/-03 2000 Mar 3
++ -3:00 - -03 2004 May 30
++ -4:00 - -04 2004 Jun 20
++ -3:00 Arg -03/-02 2008 Oct 18
++ -3:00 - -03
+
+ # Aruba
+ Link America/Curacao America/Aruba
+@@ -608,7 +580,7 @@
+ Zone America/La_Paz -4:32:36 - LMT 1890
+ -4:32:36 - CMT 1931 Oct 15 # Calamarca MT
+ -4:32:36 1:00 BOST 1932 Mar 21 # Bolivia ST
+- -4:00 - BOT # Bolivia Time
++ -4:00 - -04
+
+ # Brazil
+
+@@ -744,7 +716,7 @@
+ # (Portuguese)
+ #
+ # We have a written a short article about it as well:
+-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
++# https://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+ #
+ # From Alexander Krivenyshev (2011-10-04):
+ # State Bahia will return to Daylight savings time this year after 8 years off.
+@@ -753,7 +725,7 @@
+
+ # In Portuguese:
+ # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
+
+ # From Guilherme Bernardes Rodrigues (2011-10-07):
+ # There is news in the media, however there is still no decree about it.
+@@ -779,16 +751,16 @@
+
+ # From Rodrigo Severo (2012-10-16):
+ # Tocantins state will have DST.
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
+
+ # From Steffen Thorsen (2013-09-20):
+ # Tocantins in Brazil is very likely not to observe DST from October....
+ # http://conexaoto.com.br/2013/09/18/ministerio-confirma-que-tocantins-esta-fora-do-horario-de-verao-em-2013-mas-falta-publicacao-de-decreto
+ # We will keep this article updated when this is confirmed:
+-# http://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
++# https://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
+
+ # From Steffen Thorsen (2013-10-17):
+-# http://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
++# https://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
+ # Senator Jorge Viana announced that Acre will change time zone on November 10.
+ # He did not specify the time of the change, nor if western parts of Amazonas
+ # will change as well.
+@@ -960,12 +932,12 @@
+ #
+ # Fernando de Noronha (administratively part of PE)
+ Zone America/Noronha -2:09:40 - LMT 1914
+- -2:00 Brazil FN%sT 1990 Sep 17
+- -2:00 - FNT 1999 Sep 30
+- -2:00 Brazil FN%sT 2000 Oct 15
+- -2:00 - FNT 2001 Sep 13
+- -2:00 Brazil FN%sT 2002 Oct 1
+- -2:00 - FNT
++ -2:00 Brazil -02/-01 1990 Sep 17
++ -2:00 - -02 1999 Sep 30
++ -2:00 Brazil -02/-01 2000 Oct 15
++ -2:00 - -02 2001 Sep 13
++ -2:00 Brazil -02/-01 2002 Oct 1
++ -2:00 - -02
+ # Other Atlantic islands have no permanent settlement.
+ # These include Trindade and Martim Vaz (administratively part of ES),
+ # Rocas Atoll (RN), and the St Peter and St Paul Archipelago (PE).
+@@ -978,119 +950,119 @@
+ # In the north a very small part from the river Javary (now Jari I guess,
+ # the border with Amapá) to the Amazon, then to the Xingu.
+ Zone America/Belem -3:13:56 - LMT 1914
+- -3:00 Brazil BR%sT 1988 Sep 12
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1988 Sep 12
++ -3:00 - -03
+ #
+ # west Pará (PA)
+ # 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 0:00
+- -3:00 - BRT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 2008 Jun 24 0:00
++ -3:00 - -03
+ #
+ # Maranhão (MA), Piauí (PI), Ceará (CE), Rio Grande do Norte (RN),
+ # Paraíba (PB)
+ Zone America/Fortaleza -2:34:00 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 22
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 22
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Pernambuco (PE) (except Atlantic islands)
+ Zone America/Recife -2:19:36 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 15
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 15
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Tocantins (TO)
+ Zone America/Araguaina -3:12:48 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1995 Sep 14
+- -3:00 Brazil BR%sT 2003 Sep 24
+- -3:00 - BRT 2012 Oct 21
+- -3:00 Brazil BR%sT 2013 Sep
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1995 Sep 14
++ -3:00 Brazil -03/-02 2003 Sep 24
++ -3:00 - -03 2012 Oct 21
++ -3:00 Brazil -03/-02 2013 Sep
++ -3:00 - -03
+ #
+ # Alagoas (AL), Sergipe (SE)
+ Zone America/Maceio -2:22:52 - LMT 1914
+- -3:00 Brazil BR%sT 1990 Sep 17
+- -3:00 - BRT 1995 Oct 13
+- -3:00 Brazil BR%sT 1996 Sep 4
+- -3:00 - BRT 1999 Sep 30
+- -3:00 Brazil BR%sT 2000 Oct 22
+- -3:00 - BRT 2001 Sep 13
+- -3:00 Brazil BR%sT 2002 Oct 1
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 1990 Sep 17
++ -3:00 - -03 1995 Oct 13
++ -3:00 Brazil -03/-02 1996 Sep 4
++ -3:00 - -03 1999 Sep 30
++ -3:00 Brazil -03/-02 2000 Oct 22
++ -3:00 - -03 2001 Sep 13
++ -3:00 Brazil -03/-02 2002 Oct 1
++ -3:00 - -03
+ #
+ # Bahia (BA)
+ # There are too many Salvadors elsewhere, so use America/Bahia instead
+ # of America/Salvador.
+ Zone America/Bahia -2:34:04 - LMT 1914
+- -3:00 Brazil BR%sT 2003 Sep 24
+- -3:00 - BRT 2011 Oct 16
+- -3:00 Brazil BR%sT 2012 Oct 21
+- -3:00 - BRT
++ -3:00 Brazil -03/-02 2003 Sep 24
++ -3:00 - -03 2011 Oct 16
++ -3:00 Brazil -03/-02 2012 Oct 21
++ -3:00 - -03
+ #
+ # Goiás (GO), Distrito Federal (DF), Minas Gerais (MG),
+ # 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 0:00
+- -3:00 1:00 BRST 1964
+- -3:00 Brazil BR%sT
++ -3:00 Brazil -03/-02 1963 Oct 23 0:00
++ -3:00 1:00 -02 1964
++ -3:00 Brazil -03/-02
+ #
+ # Mato Grosso do Sul (MS)
+ Zone America/Campo_Grande -3:38:28 - LMT 1914
+- -4:00 Brazil AM%sT
++ -4:00 Brazil -04/-03
+ #
+ # Mato Grosso (MT)
+ Zone America/Cuiaba -3:44:20 - LMT 1914
+- -4:00 Brazil AM%sT 2003 Sep 24
+- -4:00 - AMT 2004 Oct 1
+- -4:00 Brazil AM%sT
++ -4:00 Brazil -04/-03 2003 Sep 24
++ -4:00 - -04 2004 Oct 1
++ -4:00 Brazil -04/-03
+ #
+ # Rondônia (RO)
+ Zone America/Porto_Velho -4:15:36 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04
+ #
+ # Roraima (RR)
+ Zone America/Boa_Vista -4:02:40 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 1999 Sep 30
+- -4:00 Brazil AM%sT 2000 Oct 15
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 1999 Sep 30
++ -4:00 Brazil -04/-03 2000 Oct 15
++ -4:00 - -04
+ #
+ # east Amazonas (AM): Boca do Acre, Jutaí, Manaus, Floriano Peixoto
+ # The great circle line from Tabatinga to Porto Acre divides
+ # east from west Amazonas.
+ Zone America/Manaus -4:00:04 - LMT 1914
+- -4:00 Brazil AM%sT 1988 Sep 12
+- -4:00 - AMT 1993 Sep 28
+- -4:00 Brazil AM%sT 1994 Sep 22
+- -4:00 - AMT
++ -4:00 Brazil -04/-03 1988 Sep 12
++ -4:00 - -04 1993 Sep 28
++ -4:00 Brazil -04/-03 1994 Sep 22
++ -4:00 - -04
+ #
+ # west Amazonas (AM): Atalaia do Norte, Boca do Maoco, Benjamin Constant,
+ # Eirunepé, Envira, Ipixuna
+ Zone America/Eirunepe -4:39:28 - LMT 1914
+- -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 0:00
+- -4:00 - AMT 2013 Nov 10
+- -5:00 - ACT
++ -5:00 Brazil -05/-04 1988 Sep 12
++ -5:00 - -05 1993 Sep 28
++ -5:00 Brazil -05/-04 1994 Sep 22
++ -5:00 - -05 2008 Jun 24 0:00
++ -4:00 - -04 2013 Nov 10
++ -5:00 - -05
+ #
+ # 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 0:00
+- -4:00 - AMT 2013 Nov 10
+- -5:00 - ACT
++ -5:00 Brazil -05/-04 1988 Sep 12
++ -5:00 - -05 2008 Jun 24 0:00
++ -4:00 - -04 2013 Nov 10
++ -5:00 - -05
+
+ # Chile
+
+@@ -1104,18 +1076,18 @@
+ # 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:
++# This contains a copy of 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
++# https://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
++# https://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
++# https://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:
+@@ -1235,6 +1207,18 @@
+ # to mean 24:00 mainland time, not 24:00 local time, so that Easter
+ # Island is always two hours behind the mainland.
+
++# From Juan Correa (2016-12-04):
++# Magallanes region ... will keep DST (UTC -3) all year round....
++# http://www.soychile.cl/Santiago/Sociedad/2016/12/04/433428/Bachelet-firmo-el-decreto-para-establecer-un-horario-unico-para-la-Region-de-Magallanes.aspx
++#
++# From Deborah Goldsmith (2017-01-19):
++# http://www.diariooficial.interior.gob.cl/publicaciones/2017/01/17/41660/01/1169626.pdf
++# From Paul Eggert (2017-01-19):
++# The above says the Magallanes change expires 2019-05-11 at 24:00,
++# so in theory, they will revert to -04/-03 after that, which means
++# they will switch from -03 to -04 one hour after Santiago does that day.
++# For now, assume that they will not revert.
++
+ # 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 -
+@@ -1275,22 +1259,35 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Santiago -4:42:46 - LMT 1890
+ -4:42:46 - SMT 1910 Jan 10 # Santiago Mean Time
+- -5:00 - CLT 1916 Jul 1 # Chile Time
++ -5:00 - -05 1916 Jul 1
+ -4:42:46 - SMT 1918 Sep 10
+- -4:00 - CLT 1919 Jul 1
++ -4:00 - -04 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
++ -5:00 Chile -05/-04 1932 Sep 1
++ -4:00 - -04 1942 Jun 1
++ -5:00 - -05 1942 Aug 1
++ -4:00 - -04 1946 Jul 15
++ -4:00 1:00 -03 1946 Sep 1 # central Chile
++ -4:00 - -04 1947 Apr 1
++ -5:00 - -05 1947 May 21 23:00
++ -4:00 Chile -04/-03
++Zone America/Punta_Arenas -4:43:40 - LMT 1890
++ -4:42:46 - SMT 1910 Jan 10
++ -5:00 - -05 1916 Jul 1
++ -4:42:46 - SMT 1918 Sep 10
++ -4:00 - -04 1919 Jul 1
++ -4:42:46 - SMT 1927 Sep 1
++ -5:00 Chile -05/-04 1932 Sep 1
++ -4:00 - -04 1942 Jun 1
++ -5:00 - -05 1942 Aug 1
++ -4:00 - -04 1947 Apr 1
++ -5:00 - -05 1947 May 21 23:00
++ -4:00 Chile -04/-03 2016 Dec 4
++ -3:00 - -03
+ 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
++ -7:00 Chile -07/-06 1982 Mar 14 3:00u # Easter Time
++ -6:00 Chile -06/-05
+ #
+ # Salas y Gómez Island is uninhabited.
+ # Other Chilean locations, including Juan Fernández Is, Desventuradas Is,
+@@ -1310,9 +1307,10 @@
+ #
+ # 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
++ -4:00 Arg -04/-03 1969 Oct 5
++ -3:00 Arg -03/-02 1982 May
++ -4:00 Chile -04/-03 2016 Dec 4
++ -3:00 - -03
+
+ # Colombia
+
+@@ -1325,7 +1323,7 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Bogota -4:56:16 - LMT 1884 Mar 13
+ -4:56:16 - BMT 1914 Nov 23 # Bogotá Mean Time
+- -5:00 CO CO%sT # Colombia Time
++ -5:00 CO -05/-04
+ # Malpelo, Providencia, San Andres
+ # no information; probably like America/Bogota
+
+@@ -1349,7 +1347,7 @@
+ #
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Curacao -4:35:47 - LMT 1912 Feb 12 # Willemstad
+- -4:30 - ANT 1965 # Netherlands Antilles Time
++ -4:30 - -0430 1965
+ -4:00 - AST
+
+ # From Arthur David Olson (2011-06-15):
+@@ -1364,19 +1362,32 @@
+ #
+ # Milne says the Central and South American Telegraph Company used -5:24:15.
+ #
+-# From Paul Eggert (2007-03-04):
+-# Apparently Ecuador had a failed experiment with DST in 1992.
+-# (2007-02-27) and
+-# (2006-11-06) both
+-# talk about "hora Sixto". Leave this alone for now, as we have no data.
++# From Alois Treindl (2016-12-15):
++# https://www.elcomercio.com/actualidad/hora-sixto-1993.html
++# ... Whether the law applied also to Galápagos, I do not know.
++# From Paul Eggert (2016-12-15):
++# https://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
++# This says President Sixto Durán Ballén signed decree No. 285, which
++# established DST from 1992-11-28 to 1993-02-05; it does not give transition
++# times. The people called it "hora de Sixto" ("Sixto hour"). The change did
++# not go over well; a popular song "Qué hora es" by Jaime Guevara had lyrics
++# that included "Amanecía en mitad de la noche, los guaguas iban a clase sin
++# sol" ("It was dawning in the middle of the night, the buses went to class
++# without sun"). Although Ballén's campaign slogan was "Ni un paso atrás"
++# (Not one step back), the clocks went back in 1993 and the experiment was not
++# repeated. For now, assume transitions were at 00:00 local time country-wide.
+ #
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Ecuador 1992 only - Nov 28 0:00 1:00 S
++Rule Ecuador 1993 only - Feb 5 0:00 0 -
++#
+ # 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 Ecuador -05/-04
+ Zone Pacific/Galapagos -5:58:24 - LMT 1931 # Puerto Baquerizo Moreno
+- -5:00 - ECT 1986
+- -6:00 - GALT # Galápagos Time
++ -5:00 - -05 1986
++ -6:00 Ecuador -06/-05
+
+ # Falklands
+
+@@ -1476,25 +1487,24 @@
+ # 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:00 Falk FK%sT 1985 Sep 15
+- -4:00 Falk FK%sT 2010 Sep 5 2:00
+- -3:00 - FKST
++ -4:00 Falk -04/-03 1983 May
++ -3:00 Falk -03/-02 1985 Sep 15
++ -4:00 Falk -04/-03 2010 Sep 5 2:00
++ -3:00 - -03
+
+ # French Guiana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Cayenne -3:29:20 - LMT 1911 Jul
+- -4:00 - GFT 1967 Oct # French Guiana Time
+- -3:00 - GFT
++ -4:00 - -04 1967 Oct
++ -3:00 - -03
+
+ # Guyana
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ 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
++ -3:45 - -0345 1975 Jul 31
++ -3:00 - -03 1991
+ # IATA SSIM (1996-06) says -4:00. Assume a 1991 switch.
+- -4:00 - GYT
++ -4:00 - -04
+
+ # Paraguay
+ #
+@@ -1586,9 +1596,9 @@
+ # 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
+- -3:00 - PYT 1974 Apr
+- -4:00 Para PY%sT
++ -4:00 - -04 1972 Oct
++ -3:00 - -03 1974 Apr
++ -4:00 Para -04/-03
+
+ # Peru
+ #
+@@ -1615,12 +1625,12 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone America/Lima -5:08:12 - LMT 1890
+ -5:08:36 - LMT 1908 Jul 28 # Lima Mean Time?
+- -5:00 Peru PE%sT # Peru Time
++ -5:00 Peru -05/-04
+
+ # South Georgia
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Atlantic/South_Georgia -2:26:08 - LMT 1890 # Grytviken
+- -2:00 - GST # South Georgia Time
++ -2:00 - -02
+
+ # South Sandwich Is
+ # uninhabited; scientific personnel have wintered
+@@ -1630,9 +1640,8 @@
+ 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:30 - NEGT 1975 Nov 20 # Dutch Guiana Time
+- -3:30 - SRT 1984 Oct # Suriname Time
+- -3:00 - SRT
++ -3:30 - -0330 1984 Oct
++ -3:00 - -03
+
+ # Trinidad and Tobago
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -1735,11 +1744,16 @@
+ # [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]
++
++# This Zone can be simplified once we assume zic %z.
+ 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:00 Uruguay UY%sT
++ -3:30 Uruguay -0330/-03 1942 Dec 14
++ -3:00 Uruguay -03/-02 1968
++ -3:00 Uruguay -03/-0230 1971
++ -3:00 Uruguay -03/-02 1974
++ -3:00 Uruguay -03/-0230 1974 Dec 22
++ -3:00 Uruguay -03/-02
+
+ # Venezuela
+ #
+@@ -1764,7 +1778,7 @@
+ # 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
++# https://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
+ #
+ # From Matt Johnson (2016-04-20):
+ # ... published in the official Gazette [2016-04-18], here:
+@@ -1773,7 +1787,7 @@
+ # 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 2016 May 1 2:30
+- -4:00 - VET
++ -4:30 - -0430 1965 Jan 1 0:00
++ -4:00 - -04 2007 Dec 9 3:00
++ -4:30 - -0430 2016 May 1 2:30
++ -4:00 - -04
+--- contrib/tzdata/theory.html.orig
++++ contrib/tzdata/theory.html
+@@ -0,0 +1,1034 @@
++
++
++
++ Theory and pragmatics of the tz code and data
++
++
++
++
++
++
++
Theory and pragmatics of the tz code and data
++
Outline
++
++
++
++
++
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 timestamps 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 timestamps 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-2008, 2016 Edition.
++
++
++
++
++
++
++
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 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' and 'GMT+0', 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.
++
++
++ Use current abbreviations for older timestamps to avoid confusion.
++ For example, in 1910 a common English abbreviation for UT +01
++ in central Europe was 'MEZ' (short for both "Middle European
++ Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
++ 'CET' ("Central European Time") is more common in English, and
++ the database uses 'CET' even for circa-1910 timestamps as this
++ is less confusing for modern users and avoids the need for
++ determining when 'CET' supplanted 'MEZ' in common usage.
++
++
++ Use a consistent style in a zone's history. For example, if a zone's
++ history tends to use numeric abbreviations and a particular
++ entry could go either way, use a numeric abbreviation.
++
++
++ [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. 'CHAST' for CHAtham 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 timestamps, 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.
++
++
++ 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
++ "History of
++ legal time in Britain".
++ 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
++ clock error.
++
++
++ The tz database assumes Universal Time (UT) as an origin, even
++ though UT is not standardized for older timestamps. In the tz
++ database commentary, UT denotes a family of time standards that
++ includes Coordinated Universal Time (UTC) along with other variants
++ such as UT1 and GMT, with days starting at midnight. Although UT
++ equals UTC for modern timestamps, UTC was not defined until 1960,
++ so commentary uses the more-general abbreviation UT for timestamps
++ that might predate 1960. Since UT, UT1, etc. disagree slightly,
++ and since pre-1972 UTC seconds varied in length, interpretation of
++ older timestamps can be problematic when subsecond accuracy is
++ needed.
++
++
++ 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: Stephenson FR, Morrison LV, Hohenkerk CY.
++ Measurement
++ of the Earth's rotation: 720 BC to AD 2015.
++ Proc Royal Soc A. 2016 Dec 7;472:20160404.
++ Also see: Espenak F. Uncertainty
++ in Delta T (ΔT).
++
++
++ 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
++timestamps 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:
++
++ 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 New Zealand after 2007.
++ It says that standard time (NZST) is 12 hours ahead of UTC,
++ and that daylight saving time (NZDT) is observed from September's
++ last Sunday at 02:00 until April's first Sunday at 03:00:
++
++
TZ='NZST-12NZDT,M9.5.0,M4.1.0/3'
++
++ This POSIX TZ string is hard to remember, and mishandles some
++ timestamps before 2008. With this package you can use this
++ instead:
++
++
TZ='Pacific/Auckland'
++
++
++ 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 timestamps,
++ 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
++ localtime(&clock)->tm_zone
++ (if TM_ZONE is defined) or
++ tzname[localtime(&clock)->tm_isdst]
++ (if HAVE_TZNAME is defined)
++ to learn the correct time zone abbreviation to use.
++
++
++ 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:
++
++ 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.
++
++
++ The version number of the code and data, as the first line of
++ the text file 'version' in each release.
++
++
++
++Interface changes in a release attempt to preserve compatibility with
++recent releases. 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. Sources for time zone and daylight
++saving time data describes how
++releases are tagged and distributed.
++
++
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for
++timestamps, 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).
++Other information and sources are given in the file 'calendars'
++in the tz distribution. They sometimes disagree.
++
++
++
++
++
++
Time and time zones on other planets
++
++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.
++
++
++
++In our solar system, Mars is the planet with time and calendar most
++like Earth's. On other planets, Sun-based time and calendars would
++work quite differently. For example, although Mercury's sidereal
++rotation period is 58.646 Earth days, Mercury revolves around the Sun
++so rapidly that an observer on Mercury's equator would see a sunrise
++only every 175.97 Earth days, i.e., a Mercury year is 0.5 of a Mercury
++day. Venus is more complicated, partly because its rotation is
++slightly retrograde: its year is 1.92 of its days. Gas giants like
++Jupiter are trickier still, as their polar and equatorial regions
++rotate at different rates, so that the length of a day depends on
++latitude. This effect is most pronounced on Neptune, where the day is
++about 12 hours at the poles and 18 hours at the equator.
++
++
++
++Although the tz database does not support time on other planets, it is
++documented here in the hopes that support will be added eventually.
++
++
++
++
++
++
++native
+\ No newline at end of property
++FreeBSD=%H
+\ No newline at end of property
++text/html
+\ No newline at end of property
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -1 +1 @@
+-2016i
++2017c
+--- contrib/tzdata/zishrink.awk.orig
++++ contrib/tzdata/zishrink.awk
+@@ -0,0 +1,156 @@
++# Convert tzdata source into a smaller version of itself.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++# This is not a general-purpose converter; it is designed for current tzdata.
++# 'zic' should treat this script's output as if it were identical to
++# this script's input.
++
++
++# Return a new rule name.
++# N_RULE_NAMES keeps track of how many rule names have been generated.
++
++function gen_rule_name(alphabet, base, rule_name, n, digit)
++{
++ alphabet = ""
++ alphabet = alphabet "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
++ alphabet = alphabet "abcdefghijklmnopqrstuvwxyz"
++ alphabet = alphabet "!$%&'()*+,./:;<=>?@[\\]^_`{|}~"
++ base = length(alphabet)
++ rule_name = ""
++ n = n_rule_names++
++
++ do {
++ n -= rule_name && n <= base
++ digit = n % base
++ rule_name = substr(alphabet, digit + 1, 1) rule_name
++ n = (n - digit) / base
++ } while (n);
++
++ return rule_name
++}
++
++# Process an input line and save it for later output.
++
++function process_input_line(line, field, end, i, n, startdef)
++{
++ # Remove comments, normalize spaces, and append a space to each line.
++ sub(/#.*/, "", line)
++ line = line " "
++ gsub(/[[:space:]]+/, " ", line)
++
++ # Abbreviate keywords. Do not abbreviate "Link" to just "L",
++ # as pre-2017c zic erroneously diagnoses "Li" as ambiguous.
++ sub(/^Link /, "Li ", line)
++ sub(/^Rule /, "R ", line)
++ sub(/^Zone /, "Z ", line)
++
++ # SystemV rules are not needed.
++ if (line ~ /^R SystemV /) return
++
++ # Replace FooAsia rules with the same rules without "Asia", as they
++ # are duplicates.
++ if (match(line, /[^ ]Asia /)) {
++ if (line ~ /^R /) return
++ line = substr(line, 1, RSTART) substr(line, RSTART + 5)
++ }
++
++ # Abbreviate times.
++ while (match(line, /[: ]0+[0-9]/))
++ line = substr(line, 1, RSTART) substr(line, RSTART + RLENGTH - 1)
++ while (match(line, /:0[^:]/))
++ line = substr(line, 1, RSTART - 1) substr(line, RSTART + 2)
++
++ # Abbreviate weekday names. Do not abbreviate "Sun" and "Sat", as
++ # pre-2017c zic erroneously diagnoses "Su" and "Sa" as ambiguous.
++ while (match(line, / (last)?(Mon|Wed|Fri)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 4) substr(line, end - 1)
++ }
++ while (match(line, / (last)?(Tue|Thu)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 3) substr(line, end - 1)
++ }
++
++ # Abbreviate "max", "only" and month names.
++ # Do not abbreviate "min", as pre-2017c zic erroneously diagnoses "mi"
++ # as ambiguous.
++ gsub(/ max /, " ma ", line)
++ gsub(/ only /, " o ", line)
++ gsub(/ Jan /, " Ja ", line)
++ gsub(/ Feb /, " F ", line)
++ gsub(/ Apr /, " Ap ", line)
++ gsub(/ Aug /, " Au ", line)
++ gsub(/ Sep /, " S ", line)
++ gsub(/ Oct /, " O ", line)
++ gsub(/ Nov /, " N ", line)
++ gsub(/ Dec /, " D ", line)
++
++ # Strip leading and trailing space.
++ sub(/^ /, "", line)
++ sub(/ $/, "", line)
++
++ # Remove unnecessary trailing zero fields.
++ sub(/ 0+$/, "", line)
++
++ # Remove unnecessary trailing days-of-month "1".
++ if (match(line, /[[:alpha:]] 1$/))
++ line = substr(line, 1, RSTART)
++
++ # Remove unnecessary trailing " Ja" (for January).
++ sub(/ Ja$/, "", line)
++
++ n = split(line, field)
++
++ # Abbreviate rule names.
++ i = field[1] == "Z" ? 4 : field[1] == "Li" ? 0 : 2
++ if (i && field[i] ~ /^[^-+0-9]/) {
++ if (!rule[field[i]])
++ rule[field[i]] = gen_rule_name()
++ field[i] = rule[field[i]]
++ }
++
++ # If this zone supersedes an earlier one, delete the earlier one
++ # from the saved output lines.
++ startdef = ""
++ if (field[1] == "Z")
++ zonename = startdef = field[2]
++ else if (field[1] == "Li")
++ zonename = startdef = field[3]
++ else if (field[1] == "R")
++ zonename = ""
++ if (startdef) {
++ i = zonedef[startdef]
++ if (i) {
++ do
++ output_line[i - 1] = ""
++ while (output_line[i++] ~ /^[-+0-9]/);
++ }
++ }
++ zonedef[zonename] = nout + 1
++
++ # Save the line for later output.
++ line = field[1]
++ for (i = 2; i <= n; i++)
++ line = line " " field[i]
++ output_line[nout++] = line
++}
++
++function output_saved_lines(i)
++{
++ for (i = 0; i < nout; i++)
++ if (output_line[i])
++ print output_line[i]
++}
++
++BEGIN {
++ print "# This zic input file is in the public domain."
++}
++
++/^[[:space:]]*[^#[:space:]]/ {
++ process_input_line($0)
++}
++
++END {
++ output_saved_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/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -142,6 +142,7 @@
+ CI +0519-00402 Africa/Abidjan
+ CK -2114-15946 Pacific/Rarotonga
+ CL -3327-07040 America/Santiago Chile (most areas)
++CL -5309-07055 America/Punta_Arenas Region of Magallanes
+ CL -2709-10926 Pacific/Easter Easter Island
+ CM +0403+00942 Africa/Douala
+ CN +3114+12128 Asia/Shanghai Beijing Time
+@@ -185,7 +186,7 @@
+ GD +1203-06145 America/Grenada
+ GE +4143+04449 Asia/Tbilisi
+ GF +0456-05220 America/Cayenne
+-GG +4927-00232 Europe/Guernsey
++GG +492717-0023210 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+ GL +6411-05144 America/Godthab Greenland (most areas)
+@@ -220,7 +221,7 @@
+ IR +3540+05126 Asia/Tehran
+ IS +6409-02151 Atlantic/Reykjavik
+ IT +4154+01229 Europe/Rome
+-JE +4912-00207 Europe/Jersey
++JE +491101-0020624 Europe/Jersey
+ JM +175805-0764736 America/Jamaica
+ JO +3157+03556 Asia/Amman
+ JP +353916+1394441 Asia/Tokyo
+@@ -239,7 +240,8 @@
+ 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 +4431+05016 Asia/Aqtau Mangghystau/Mankistau
++KZ +4707+05156 Asia/Atyrau Atyrau/Atirau/Gur'yev
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LA +1758+10236 Asia/Vientiane
+ LB +3353+03530 Asia/Beirut
+@@ -330,14 +332,15 @@
+ 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 +4844+04425 Europe/Volgograd MSK+00 - Volgograd
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5134+04602 Europe/Saratov MSK+01 - Saratov
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
+ 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 +5502+08255 Asia/Novosibirsk MSK+04 - 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
+@@ -395,7 +398,6 @@
+ UA +4837+02218 Europe/Uzhgorod Ruthenia
+ 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 (most areas)
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -2,7 +2,7 @@
+ #
+ # This file is in the public domain.
+ #
+-# From Paul Eggert (2014-07-31):
++# From Paul Eggert (2017-10-01):
+ # This file contains a table where each row stands for a zone where
+ # civil time stamps have agreed since 1970. Columns are separated by
+ # a single tab. Lines beginning with '#' are comments. All text uses
+@@ -16,7 +16,7 @@
+ # either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+ # first latitude (+ is north), then longitude (+ is east).
+ # 3. Zone name used in value of TZ environment variable.
+-# Please see the 'Theory' file for how zone names are chosen.
++# Please see the theory.html file for how zone names are chosen.
+ # If multiple zones overlap a country, each has a row in the
+ # table, with each column 1 containing the country code.
+ # 4. Comments; present if and only if a country has multiple zones.
+@@ -136,6 +136,7 @@
+ 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 Chile (most areas)
++CL -5309-07055 America/Punta_Arenas Region of Magallanes
+ CL -2709-10926 Pacific/Easter Easter Island
+ CN +3114+12128 Asia/Shanghai Beijing Time
+ CN +4348+08735 Asia/Urumqi Xinjiang Time
+@@ -211,8 +212,9 @@
+ KR +3733+12658 Asia/Seoul
+ 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 +5017+05710 Asia/Aqtobe Aqtöbe/Aktobe
++KZ +4431+05016 Asia/Aqtau Mangghystaū/Mankistau
++KZ +4707+05156 Asia/Atyrau Atyraū/Atirau/Gur'yev
+ KZ +5113+05121 Asia/Oral West Kazakhstan
+ LB +3353+03530 Asia/Beirut
+ LK +0656+07951 Asia/Colombo
+@@ -288,14 +290,15 @@
+ 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 +4844+04425 Europe/Volgograd MSK+00 - Volgograd
+ RU +5836+04939 Europe/Kirov MSK+00 - Kirov
+ RU +4621+04803 Europe/Astrakhan MSK+01 - Astrakhan
++RU +5134+04602 Europe/Saratov MSK+01 - Saratov
++RU +5420+04824 Europe/Ulyanovsk MSK+01 - Ulyanovsk
+ 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 +5502+08255 Asia/Novosibirsk MSK+04 - 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
+@@ -314,10 +317,11 @@
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+-SD,SS +1536+03232 Africa/Khartoum
++SD +1536+03232 Africa/Khartoum
+ SE +5920+01803 Europe/Stockholm
+ SG +0117+10351 Asia/Singapore
+ SR +0550-05510 America/Paramaribo
++SS +0451+03137 Africa/Juba
+ SV +1342-08912 America/El_Salvador
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
diff --git a/share/security/patches/EN-17:09/tzdata-11.0.patch.asc b/share/security/patches/EN-17:09/tzdata-11.0.patch.asc
new file mode 100644
index 0000000000..4306636d6e
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-11.0.patch.asc
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEEHPf/b631yp++G4yy7Wfs1l3PaucFAln7PXNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDFD
+RjdGRjZGQURGNUNBOUZCRTFCOENCMkVENjdFQ0Q2NURDRjZBRTcACgkQ7Wfs1l3P
+aufzVRAAwXKC4oBKgam/ixtN2mnnl7wfXyCT8cuDlfI/CboZeT/85ko2w1Md5SX9
+C4UOyfk78Lou2n4JFarC4dOtxXWUw3l2UidD/Hg0adqapwJMfssQE0ruE8W/U6yq
+6Svku1smd16V+ek5nh3XbaLtbzUCH5o3v2O2wvQ0q0CxpfOe2zfyFq446pduoDKx
+di2IDfgC+/Cejj+AKn/5d6o+oVO9uPYuzL2u466WRG/iz2sBwMU5B8dFBQUVv/12
+kY4ilnDf8NUQ+ABs4wjsXQnqWBS3t22SRIk/UUSK8socTXrzeN9+L00ibyPLdklr
+hhmsD2GBuiv5rnByNsRbSAk16UhCMswxG578Xh05KDMLHnIllJxaKlg/YXBz1r+h
+8+8ZTCP+ZZkNaT4RlCM4uNkrx7HK6URW0i0dUdmCW+WhcErn3RYRreqm8uLeYdQr
+OIJtSaJxph+DsWzrh9vCIskpR11nFUQTzV/CDdqQ1AuBSVdR3yt5dPKcxcG7Fmp8
+DMCMGRDoxVkflhnD9Zxj97oz5aXCMLaPR4ZNu2YjKCTAk327ySQwFEyAxd31ntzZ
+Ab6JBq1CbJJwGTJivSqBfvjtI5j4nAYj6q37xkFF7nuKPGbhysP7ejOWeFLsVvQs
+PxIClqICc9IjmVeFqQ82R/dWmZXC+f7S7CObYbVcY/TgDvj/w3A=
+=3wfa
+-----END PGP SIGNATURE-----
diff --git a/share/security/patches/EN-17:09/tzdata-11.1.patch b/share/security/patches/EN-17:09/tzdata-11.1.patch
new file mode 100644
index 0000000000..029a330f03
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-11.1.patch
@@ -0,0 +1,5133 @@
+--- contrib/tzdata/CONTRIBUTING.orig
++++ contrib/tzdata/CONTRIBUTING
+@@ -5,20 +5,26 @@
+ 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 tz@iana.org for use in the future. In your email, please give
++reliable sources that reviewers can check.
+
++-----
++
++Developers can contribute technical changes to the source code and
++data as follows.
++
+ 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 for
+-examples of patches that tend to work well. Ideally, additions to
++For more-elaborate changes, please read the theory.html file and browse
++the mailing list archives for
++examples of patches that tend to work well. Additions to
+ data should contain commentary citing reliable sources as
+-justification.
++justification. Citations should use https: URLs if available.
+
+ Please submit changes against either the latest release in
+- or the master branch of the development
++ or the master branch of the development
+ repository. If you use Git the following workflow may be helpful:
+
+ * Copy the development repository.
+--- contrib/tzdata/LICENSE.orig
++++ contrib/tzdata/LICENSE
+@@ -1,4 +1,5 @@
+-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.
++Unless specified below, all files in the tz code and data (including
++this LICENSE file) are in the public domain.
++
++If the files date.c, newstrftime.3, and strftime.c are present, they
++contain material derived from BSD and use the BSD 3-clause license.
+--- contrib/tzdata/Makefile.orig
++++ contrib/tzdata/Makefile
+@@ -49,6 +49,7 @@
+ # "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 should not contain "/" and should not be ".", ".." or empty.
+
+ TZDIR_BASENAME= zoneinfo
+ TZDIR= $(TOPDIR)/etc/$(TZDIR_BASENAME)
+@@ -75,7 +76,7 @@
+ # If you want only POSIX time, with time values interpreted as
+ # seconds since the epoch (not counting leap seconds), use
+ # REDO= posix_only
+-# below. If you want want only "right" time, with values interpreted
++# below. If you want only "right" time, with 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
+@@ -92,6 +93,24 @@
+
+ REDO= posix_right
+
++# To install data in text form that has all the information of the binary data,
++# (optionally incorporating leap second information), use
++# TZDATA_TEXT= tzdata.zi leapseconds
++# To install text data without leap second information (e.g., because
++# REDO='posix_only'), use
++# TZDATA_TEXT= tzdata.zi
++# To avoid installing text data, use
++# TZDATA_TEXT=
++
++TZDATA_TEXT= leapseconds tzdata.zi
++
++# For backward-compatibility links for old zone names, use
++# BACKWARD= backward pacificnew
++# To omit these links, use
++# BACKWARD=
++
++BACKWARD= backward pacificnew
++
+ # If you want out-of-scope and often-wrong data from the file 'backzone', use
+ # PACKRATDATA= backzone
+ # To omit this data, use
+@@ -99,6 +118,11 @@
+
+ PACKRATDATA=
+
++# The name of a locale using the UTF-8 encoding, used during self-tests.
++# The tests are skipped if the name does not appear to work on this system.
++
++UTF8_LOCALE= en_US.utf8
++
+ # Since "." may not be in PATH...
+
+ YEARISTYPE= ./yearistype
+@@ -106,50 +130,53 @@
+ # Non-default libraries needed to link.
+ LDLIBS=
+
+-# Add the following to the end of the "CFLAGS=" line as needed.
++# Add the following to the end of the "CFLAGS=" line as needed to override
++# defaults specified in the source code. "-DFOO" is equivalent to "-DFOO=1".
+ # -DBIG_BANG=-9999999LL if the Big Bang occurred at time -9999999 (see zic.c)
++# -DDEPRECATE_TWO_DIGIT_YEARS for optional runtime warnings about strftime
++# formats that generate only the last two digits of year numbers
++# -DEPOCH_LOCAL 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.
+ # -DHAVE_DECL_ASCTIME_R=0 if does not declare asctime_r
++# -DHAVE_DECL_ENVIRON if declares 'environ'
+ # -DHAVE_DIRECT_H if mkdir needs (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
++# -DHAVE_GENERIC=0 if _Generic does not work
++# -DHAVE_GETTEXT if 'gettext' works (e.g., GNU/Linux, FreeBSD, Solaris)
++# -DHAVE_INCOMPATIBLE_CTIME_R 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_INTTYPES_H if you have a non-C99 compiler with
+ # -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 declares locale_t and strftime_l
+-# This defaults to 0 if _POSIX_VERSION < 200809, 1 otherwise.
++# -DHAVE_SNPRINTF=0 if your system lacks the snprintf function
++# -DHAVE_STDBOOL_H if you have a non-C99 compiler with
++# -DHAVE_STDINT_H if you have a non-C99 compiler with
++# -DHAVE_STRFTIME_L if declares locale_t and strftime_l
+ # -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_SYS_STAT_H=0 if your compiler lacks a
++# -DHAVE_SYS_WAIT_H=0 if your compiler lacks a
+ # -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;
++# -DHAVE_UNISTD_H=0 if your compiler lacks a
++# -Dlocale_t=XXX if your system uses XXX instead of locale_t
++# -Dssize_t=long on hosts like MS-Windows that lack ssize_t
++# -DTHREAD_SAFE 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
++# This is intended for internal use only; it mangles external names.
+ # -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
++# -DUNINIT_TRAP 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.
+@@ -157,27 +184,28 @@
+ # (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 \
+- -Wundef -Wunused -Wwrite-strings \
+- -Wno-address -Wno-format-nonliteral -Wno-sign-compare \
+- -Wno-type-limits -Wno-unused-parameter
++# Select instrumentation via "make GCC_INSTRUMENT='whatever'".
++GCC_INSTRUMENT = \
++ -fsanitize=undefined -fsanitize-address-use-after-scope \
++ -fsanitize-undefined-trap-on-error -fstack-protector
++GCC_DEBUG_FLAGS = -DGCC_LINT -g3 -O3 -fno-common \
++ $(GCC_INSTRUMENT) \
++ -Wall -Wextra \
++ -Walloc-size-larger-than=100000 -Warray-bounds=2 \
++ -Wbad-function-cast -Wcast-align -Wdate-time \
++ -Wdeclaration-after-statement -Wdouble-promotion \
++ -Wformat=2 -Wformat-overflow=2 -Wformat-signedness -Wformat-truncation \
++ -Winit-self -Wjump-misses-init -Wlogical-op \
++ -Wmissing-declarations -Wmissing-prototypes -Wnested-externs \
++ -Wold-style-definition -Woverlength-strings -Wpointer-arith \
++ -Wshadow -Wshift-overflow=2 -Wstrict-prototypes -Wstringop-overflow=5 \
++ -Wsuggest-attribute=const -Wsuggest-attribute=format \
++ -Wsuggest-attribute=noreturn -Wsuggest-attribute=pure \
++ -Wtrampolines -Wundef -Wuninitialized -Wunused \
++ -Wvariadic-macros -Wvla -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
+@@ -189,6 +217,31 @@
+ # 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.
+ #
++# The next batch of options control support for external variables
++# exported by tzcode. In practice these variables are less useful
++# than TM_GMTOFF and TM_ZONE. However, most of them are standardized.
++# #
++# # To omit or support the external variable "tzname", add one of:
++# # -DHAVE_TZNAME=0
++# # -DHAVE_TZNAME=1
++# # to the "CFLAGS=" line. "tzname" is required by POSIX 1988 and later.
++# # If not defined, the code attempts to guess HAVE_TZNAME from other macros.
++# # Warning: unless time_tz is also defined, HAVE_TZNAME=1 can cause
++# # crashes when combined with some platforms' standard libraries,
++# # presumably due to memory allocation issues.
++# #
++# # To omit or support the external variables "timezone" and "daylight", add
++# # -DUSG_COMPAT=0
++# # -DUSG_COMPAT=1
++# # to the "CFLAGS=" line; "timezone" and "daylight" are inspired by
++# # Unix Systems Group code and are required by POSIX 2008 (with XSI) and later.
++# # If not defined, the code attempts to guess USG_COMPAT from other macros.
++# #
++# # To support the external variable "altzone", add
++# # -DALTZONE
++# # to the end of the "CFLAGS=" line; although "altzone" appeared in
++# # System V Release 3.1 it has not been standardized.
++#
+ # If you want functions that were inspired by early versions of X3J11's work,
+ # add
+ # -DSTD_INSPIRED
+@@ -226,11 +279,6 @@
+ # -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
+@@ -240,8 +288,8 @@
+ # 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
++# 53 as a week number (rather than 52 or 53) for January days before
++# January's first Monday when a "%V" format is used and January 1
+ # falls on a Friday, Saturday, or Sunday.
+
+ CFLAGS=
+@@ -265,7 +313,7 @@
+
+ # How to use zic to install tz binary files.
+
+-ZIC_INSTALL= $(ZIC) -y $(YEARISTYPE) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
++ZIC_INSTALL= $(ZIC) -d $(DESTDIR)$(TZDIR) $(LEAPSECONDS)
+
+ # The name of a Posix-compliant 'awk' on your system.
+ AWK= awk
+@@ -289,6 +337,7 @@
+ # The name, arguments and environment of a program to validate your web pages.
+ # See for a validator, and
+ # for a validation library.
++# Set VALIDATE=':' if you do not have such a program.
+ VALIDATE = nsgmls
+ VALIDATE_FLAGS = -s -B -wall -wno-unused-param
+ VALIDATE_ENV = \
+@@ -355,7 +404,7 @@
+ RANLIB= :
+
+ TZCOBJS= zic.o
+-TZDOBJS= zdump.o localtime.o asctime.o
++TZDOBJS= zdump.o localtime.o asctime.o strftime.o
+ DATEOBJS= date.o localtime.o strftime.o asctime.o
+ LIBSRCS= localtime.c asctime.c difftime.c
+ LIBOBJS= localtime.o asctime.o difftime.o
+@@ -370,20 +419,22 @@
+ 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
++COMMON= calendars CONTRIBUTING LICENSE Makefile \
++ NEWS README theory.html 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
++YDATA= $(PRIMARY_YDATA) etcetera $(BACKWARD)
+ NDATA= systemv factory
+ TDATA= $(YDATA) $(NDATA)
+ ZONETABLES= zone1970.tab zone.tab
+-TABDATA= iso3166.tab leapseconds $(ZONETABLES)
++TABDATA= iso3166.tab $(TZDATA_TEXT) $(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
++TZDATA_ZI_DEPS= zishrink.awk $(TDATA) $(PACKRATDATA)
++DATA= $(YDATA) $(NDATA) backzone iso3166.tab leap-seconds.list \
++ leapseconds yearistype.sh $(ZONETABLES)
++AWK_SCRIPTS= checklinks.awk checktab.awk leapseconds.awk zishrink.awk
+ MISC= $(AWK_SCRIPTS) zoneinfo2tdf.pl
+ TZS_YEAR= 2050
+ TZS= to$(TZS_YEAR).tzs
+@@ -390,13 +441,13 @@
+ 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)
++ENCHILADA= $(COMMON) $(DOCS) $(SOURCES) $(DATA) $(MISC) $(TZS) tzdata.zi
+
+ # 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 \
++ calendars CONTRIBUTING LICENSE Makefile NEWS README \
+ africa antarctica asctime.c asia australasia \
+ backward backzone \
+ checklinks.awk checktab.awk \
+@@ -405,7 +456,7 @@
+ leap-seconds.list leapseconds.awk localtime.c \
+ newctime.3 newstrftime.3 newtzset.3 northamerica \
+ pacificnew private.h \
+- southamerica strftime.c systemv \
++ southamerica strftime.c systemv theory.html \
+ time2posix.3 tz-art.htm tz-how-to.html tz-link.htm \
+ tzfile.5 tzfile.h tzselect.8 tzselect.ksh \
+ workman.sh yearistype.sh \
+@@ -427,7 +478,7 @@
+ $(DESTDIR)$(MANDIR)/man3 $(DESTDIR)$(MANDIR)/man5 \
+ $(DESTDIR)$(MANDIR)/man8
+ $(ZIC_INSTALL) -l $(LOCALTIME) -p $(POSIXRULES)
+- cp -f iso3166.tab $(ZONETABLES) $(DESTDIR)$(TZDIR)/.
++ cp -f $(TABDATA) $(DESTDIR)$(TZDIR)/.
+ cp tzselect zic zdump $(DESTDIR)$(ETCDIR)/.
+ cp libtz.a $(DESTDIR)$(LIBDIR)/.
+ $(RANLIB) $(DESTDIR)$(LIBDIR)/libtz.a
+@@ -448,6 +499,11 @@
+ printf '%s\n' "$$V" >$@.out
+ mv $@.out $@
+
++# This file can be tailored by setting BACKWARD, PACKRATDATA, etc.
++tzdata.zi: $(TZDATA_ZI_DEPS)
++ LC_ALL=C $(AWK) -f zishrink.awk $(TDATA) $(PACKRATDATA) >$@.out
++ mv $@.out $@
++
+ version.h: version
+ VERSION=`cat version` && printf '%s\n' \
+ 'static char const PKGVERSION[]="($(PACKAGE)) ";' \
+@@ -473,6 +529,7 @@
+ # Arguments to pass to submakes of install_data.
+ # They can be overridden by later submake arguments.
+ INSTALLARGS = \
++ BACKWARD=$(BACKWARD) \
+ DESTDIR=$(DESTDIR) \
+ LEAPSECONDS='$(LEAPSECONDS)' \
+ PACKRATDATA='$(PACKRATDATA)' \
+@@ -481,10 +538,8 @@
+ 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)
++install_data: zic leapseconds yearistype tzdata.zi
++ $(ZIC_INSTALL) tzdata.zi
+
+ posix_only:
+ $(MAKE) $(INSTALLARGS) LEAPSECONDS= install_data
+@@ -521,14 +576,14 @@
+
+ zones: $(REDO)
+
+-$(TZS_NEW): $(TDATA) zdump zic
++$(TZS_NEW): tzdata.zi 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
++ $(zic) -d tzs.dir tzdata.zi
++ $(AWK) '/^L/{print "Link\t" $$2 "\t" $$3}' \
++ tzdata.zi | LC_ALL=C sort >$@.out
+ wd=`pwd` && \
+ zones=`$(AWK) -v wd="$$wd" \
+- '/^Zone/{print wd "/tzs.dir/" $$2}' $(TDATA) \
++ '/^Z/{print wd "/tzs.dir/" $$2}' tzdata.zi \
+ | LC_ALL=C sort` && \
+ ./zdump -i -c $(TZS_YEAR) $$zones >>$@.out
+ sed 's,^TZ=".*tzs\.dir/,TZ=",' $@.out >$@.sed.out
+@@ -564,18 +619,24 @@
+ chmod +x $@.out
+ mv $@.out $@
+
+-check: check_character_set check_white_space check_links check_sorted \
+- check_tables check_tzs check_web
++check: check_character_set check_white_space check_links \
++ check_name_lengths check_sorted \
++ check_tables check_web check_zishrink check_tzs
+
+ check_character_set: $(ENCHILADA)
+- LC_ALL=en_US.utf8 && export LC_ALL && \
++ test ! '$(UTF8_LOCALE)' || \
++ ! printf 'A\304\200B\n' | \
++ LC_ALL='$(UTF8_LOCALE)' grep -q '^A.B$$' >/dev/null 2>&1 || { \
++ LC_ALL='$(UTF8_LOCALE)' && export LC_ALL && \
+ sharp='#' && \
+ ! grep -Env $(SAFE_LINE) $(MANS) date.1 $(MANTXTS) \
+ $(MISC) $(SOURCES) $(WEB_PAGES) \
+- CONTRIBUTING LICENSE Makefile README version && \
++ CONTRIBUTING LICENSE Makefile README \
++ version tzdata.zi && \
+ ! grep -Env $(SAFE_SHARP_LINE) $(TDATA) backzone \
+ leapseconds yearistype.sh zone.tab && \
+- ! grep -Env $(OK_LINE) $(ENCHILADA)
++ ! grep -Env $(OK_LINE) $(ENCHILADA); \
++ }
+
+ check_white_space: $(ENCHILADA)
+ patfmt=' \t|[\f\r\v]' && pat=`printf "$$patfmt\\n"` && \
+@@ -582,6 +643,13 @@
+ ! grep -En "$$pat" $(ENCHILADA)
+ ! grep -n '[[:space:]]$$' $(ENCHILADA)
+
++PRECEDES_FILE_NAME = ^(Zone|Link[[:space:]]+[^[:space:]]+)[[:space:]]+
++FILE_NAME_COMPONENT_TOO_LONG = \
++ $(PRECEDES_FILE_NAME)[^[:space:]]*[^/[:space:]]{15}
++
++check_name_lengths: $(TDATA) backzone
++ ! grep -En '$(FILE_NAME_COMPONENT_TOO_LONG)' $(TDATA) backzone
++
+ 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
+@@ -596,6 +664,7 @@
+
+ check_links: checklinks.awk $(TDATA)
+ $(AWK) -f checklinks.awk $(TDATA)
++ $(AWK) -f checklinks.awk tzdata.zi
+
+ check_tables: checktab.awk $(PRIMARY_YDATA) $(ZONETABLES)
+ for tab in $(ZONETABLES); do \
+@@ -606,14 +675,32 @@
+ check_tzs: $(TZS) $(TZS_NEW)
+ diff -u $(TZS) $(TZS_NEW)
+
+-check_web: $(WEB_PAGES)
+- $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) $(WEB_PAGES)
++# This checks only the HTML 4.01 strict page.
++# To check the the other pages, use .
++check_web: tz-how-to.html
++ $(VALIDATE_ENV) $(VALIDATE) $(VALIDATE_FLAGS) tz-how-to.html
+
++# Check that tzdata.zi generates the same binary data that its sources do.
++check_zishrink: tzdata.zi zic leapseconds $(PACKRATDATA) $(TDATA)
++ for type in posix right; do \
++ mkdir -p time_t.dir/$$type time_t.dir/$$type-shrunk && \
++ case $$type in \
++ right) leap='-L leapseconds';; \
++ *) leap=;; \
++ esac && \
++ $(ZIC) $$leap -d time_t.dir/$$type $(TDATA) && \
++ $(AWK) '/^Rule/' $(TDATA) | \
++ $(ZIC) $$leap -d time_t.dir/$$type - $(PACKRATDATA) && \
++ $(ZIC) $$leap -d time_t.dir/$$type-shrunk tzdata.zi && \
++ diff -r time_t.dir/$$type time_t.dir/$$type-shrunk || exit; \
++ done
++ rm -fr time_t.dir
++
+ 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)
++ rm -fr *.dir tzdata.zi tzdb-*/ $(TZS_NEW)
+
+ maintainer-clean: clean
+ @echo 'This command is intended for maintainers to use; it'
+@@ -667,6 +754,7 @@
+ touch -cmr `ls -t $$file workman.sh | sed 1q` $$file.txt || \
+ exit; \
+ done
++ touch -cmr `ls -t $(TZDATA_ZI_DEPS) | sed 1q` tzdata.zi
+ touch -cmr `ls -t $(TZS_DEPS) | sed 1q` $(TZS)
+ touch -cmr `ls -t $(VERSION_DEPS) | sed 1q` version
+ touch $@
+@@ -678,7 +766,7 @@
+ $(MAKE) maintainer-clean
+ $(MAKE) "CFLAGS=$(GCC_DEBUG_FLAGS)" ALL
+ mkdir -p public.dir
+- for i in $(TDATA) ; do \
++ for i in $(TDATA) tzdata.zi; do \
+ $(zic) -v -d public.dir $$i 2>&1 || exit; \
+ done
+ $(zic) -v -d public.dir $(TDATA)
+@@ -772,8 +860,8 @@
+ $(MAKE) clean ; \
+ done
+
+-zonenames: $(TDATA)
+- @$(AWK) '/^Zone/ { print $$2 } /^Link/ { print $$3 }' $(TDATA)
++zonenames: tzdata.zi
++ @$(AWK) '/^Z/ { print $$2 } /^L/ { print $$3 }' tzdata.zi
+
+ asctime.o: private.h tzfile.h
+ date.o: private.h
+@@ -789,6 +877,7 @@
+ .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: check_zishrink
+ .PHONY: clean clean_misc force_tzs
+ .PHONY: install install_data maintainer-clean names
+ .PHONY: posix_only posix_packrat posix_right
+--- contrib/tzdata/NEWS.orig
++++ contrib/tzdata/NEWS
+@@ -1,5 +1,169 @@
+ News for the tz database
+
++Release 2017c - 2017-10-20 14:49:34 -0700
++
++ Briefly:
++ Northern Cyprus switches from +03 to +02/+03 on 2017-10-29.
++ Fiji ends DST 2018-01-14, not 2018-01-21.
++ Namibia switches from +01/+02 to +02 on 2018-04-01.
++ Sudan switches from +03 to +02 on 2017-11-01.
++ Tonga likely switches from +13/+14 to +13 on 2017-11-05.
++ Turks & Caicos switches from -04 to -05/-04 on 2018-11-04.
++ A new file tzdata.zi now holds a small text copy of all data.
++ The zic input format has been regularized slightly.
++
++ Changes to future time stamps
++
++ Northern Cyprus has decided to resume EU rules starting
++ 2017-10-29, thus reinstituting winter time.
++
++ Fiji ends DST 2018-01-14 instead of the 2018-01-21 previously
++ predicted. (Thanks to Dominic Fok.) Adjust future predictions
++ accordingly.
++
++ Namibia will switch from +01 with DST to +02 all year on
++ 2017-09-03 at 02:00. This affects UT offsets starting 2018-04-01
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Sudan will switch from +03 to +02 on 2017-11-01. (Thanks to Ahmed
++ Atyya and Yahia Abdalla.) South Sudan is not switching, so
++ Africa/Juba is no longer a link to Africa/Khartoum.
++
++ Tonga has likely ended its experiment with DST, and will not
++ adjust its clocks on 2017-11-05. Although Tonga has not announced
++ whether it will continue to observe DST, the IATA is assuming that
++ it will not. (Thanks to David Wade.)
++
++ Turks & Caicos will switch from -04 all year to -05 with US DST on
++ 2018-03-11 at 03:00. This affects UT offsets starting 2018-11-04
++ at 02:00. (Thanks to Steffen Thorsen.)
++
++ Changes to past time stamps
++
++ Namibia switched from +02 to +01 on 1994-03-21, not 1994-04-03.
++ (Thanks to Arthur David Olson.)
++
++ Detroit did not observe DST in 1967.
++
++ Use railway time for Asia/Kolkata before 1941, by switching to
++ Madras local time (UT +052110) in 1870, then to IST (UT +0530) in
++ 1906. Also, treat 1941-2's +0630 as DST, like 1942-5.
++
++ Europe/Dublin's 1946 and 1947 fallback transitions occurred at
++ 02:00 standard time, not 02:00 DST. (Thanks to Michael Deckers.)
++
++ Pacific/Apia and Pacific/Pago_Pago switched from Antipodean to
++ American time in 1892, not 1879. (Thanks to Michael Deckers.)
++
++ Adjust the 1867 transition in Alaska to better reflect the
++ historical record, by changing it to occur on 1867-10-18 at 15:30
++ Sitka time rather than at the start of 1867-10-17 local time.
++ Although strictly speaking this is accurate only for Sitka,
++ the rest of Alaska's blanks need to be filled in somehow.
++
++ Fix off-by-one errors in UT offsets for Adak and Nome before 1867.
++ (Thanks to Michael Deckers.)
++
++ Add 7 s to the UT offset in Asia/Yangon before 1920.
++
++ Changes to zone names
++
++ Remove Canada/East-Saskatchewan from the 'backward' file, as it
++ exceeded the 14-character limit and was an unused misnomer anyway.
++
++ Changes to build procedure
++
++ To support applications that prefer to read time zone data in text
++ form, two zic input files tzdata.zi and leapseconds are now
++ installed by default. The commands 'zic tzdata.zi' and 'zic -L
++ leapseconds tzdata.zi' can reproduce the tzdata binary files
++ without and with leap seconds, respectively. To prevent these two
++ new files from being installed, use 'make TZDATA_TEXT=', and to
++ suppress leap seconds from the tzdata text installation, use 'make
++ TZDATA_TEXT=tzdata.zi'.
++
++ 'make BACKWARD=' now suppresses backward-compatibility names
++ like 'US/Pacific' that are defined in the 'backward' and
++ 'pacificnew' files.
++
++ 'make check' now works on systems that lack a UTF-8 locale,
++ or that lack the nsgmls program. Set UTF8_LOCALE to configure
++ the name of a UTF-8 locale, if you have one.
++
++ Y2K runtime checks are no longer enabled by default. Add
++ -DDEPRECATE_TWO_DIGIT_YEARS to CFLAGS to enable them, instead of
++ adding -DNO_RUN_TIME_WARNINGS_ABOUT_YEAR_2000_PROBLEMS_THANK_YOU
++ to disable them. (New name suggested by Brian Inglis.)
++
++ The build procedure for zdump now works on AIX 7.1.
++ (Problem reported by Kees Dekker.)
++
++ Changes to code
++
++ zic and the reference runtime now reject multiple leap seconds
++ within 28 days of each other, or leap seconds before the Epoch.
++ As a result, support for double leap seconds, which was
++ obsolescent and undocumented, has been removed. Double leap
++ seconds were an error in the C89 standard; they have never existed
++ in civil timekeeping. (Thanks to Robert Elz and Bradley White for
++ noticing glitches in the code that uncovered this problem.)
++
++ zic now warns about use of the obsolescent and undocumented -y
++ option, and about use of the obsolescent TYPE field of Rule lines.
++
++ zic now allows unambiguous abbreviations like "Sa" and "Su" for
++ weekdays; formerly it rejected them due to a bug. Conversely, zic
++ no longer considers non-prefixes to be abbreviations; for example,
++ it no longer accepts "lF" as an abbreviation for "lastFriday".
++ Also, zic warns about the undocumented usage with a "last-"
++ prefix, e.g., "last-Fri".
++
++ Similarly, zic now accepts the unambiguous abbreviation "L" for
++ "Link" in ordinary context and for "Leap" in leap-second context.
++ Conversely, zic no longer accepts non-prefixes such as "La" as
++ abbreviations for words like "Leap".
++
++ zic no longer accepts leap second lines in ordinary input, or
++ ordinary lines in leap second input. Formerly, zic sometimes
++ warned about this undocumented usage and handled it incorrectly.
++
++ The new macro HAVE_TZNAME governs whether the tzname external
++ variable is exported, instead of USG_COMPAT. USG_COMPAT now
++ governs only the external variables "timezone" and "daylight".
++ This change is needed because the three variables are not in the
++ same category: although POSIX requires tzname, it specifies the
++ other two variables as optional. Also, USG_COMPAT is now 1 or 0:
++ if not defined, the code attempts to guess it from other macros.
++
++ localtime.c and difftime.c no longer require stdio.h, and .c files
++ other than zic.c no longer require sys/wait.h.
++
++ zdump.c no longer assumes snprintf. (Reported by Jonathan Leffler.)
++
++ Calculation of time_t extrema works around a bug in GCC 4.8.4
++ (Reported by Stan Shebs and Joseph Myers.)
++
++ zic.c no longer mistranslates formats of line numbers in non-English
++ locales. (Problem reported by Benno Schulenberg.)
++
++ Several minor changes have been made to the code to make it a
++ bit easier to port to MS-Windows and Solaris. (Thanks to Kees
++ Dekker for reporting the problems.)
++
++ Changes to documentation and commentary
++
++ The two new files 'theory.html' and 'calendars' contain the
++ contents of the removed file 'Theory'. The goal is to document
++ tzdb theory more accessibly.
++
++ The zic man page now documents abbreviation rules.
++
++ tz-link.htm now covers how to apply tzdata changes to clients.
++ (Thanks to Jorge Fábregas for the AIX link.) It also mentions MySQL.
++
++ The leap-seconds.list URL has been updated to something that is
++ more reliable for tzdb. (Thanks to Tim Parenti and Brian Inglis.)
++
+ Release 2017b - 2017-03-17 07:30:38 -0700
+
+ Briefly: Haiti has resumed DST.
+@@ -15,7 +179,17 @@
+ Use "MMT" to abbreviate Liberia's time zone before 1972, as "-004430"
+ is one byte over the POSIX limit. (Problem reported by Derick Rethans.)
+
++ Changes to code
+
++ The reference localtime implementation now falls back on the
++ current US daylight-saving transition rules rather than the
++ 1987-2006 rules. This fallback occurs only when (1) the TZ
++ environment variable's value has a name like "AST4ADT" that asks
++ for daylight saving time but does not specify the rules, (2) there
++ is no file by that name, and (3) the TZDEFRULES file cannot be
++ loaded. (Thanks to Tom Lane.)
++
++
+ Release 2017a - 2017-02-28 00:05:36 -0800
+
+ Briefly: Southern Chile moves from -04/-03 to -03, and Mongolia
+@@ -1981,7 +2155,7 @@
+
+ The 'leapseconds' file is now generated automatically from a
+ new file 'leap-seconds.list', which is a copy of
+- .
++
+ A new source file 'leapseconds.awk' implements this.
+ The goal is simplification of the future maintenance of 'leapseconds'.
+
+@@ -2187,7 +2361,7 @@
+
+ Many changes affect historical timestamps before 1940.
+ These were deduced from: Milne J. Civil time. Geogr J. 1899
+- Feb;13(2):173-94 .
++ Feb;13(2):173-94 .
+
+ Changes affecting the code:
+
+--- contrib/tzdata/Theory.orig
++++ contrib/tzdata/Theory
+@@ -1,870 +0,0 @@
+-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
+- Interface stability
+- 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-2008, 2016 Edition
+-
+-
+-
+-
+------ 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
+- 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.
+-
+- Use current abbreviations for older timestamps to avoid confusion.
+- For example, in 1910 a common English abbreviation for UT +01
+- in central Europe was 'MEZ' (short for both "Middle European
+- Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
+- 'CET' ("Central European Time") is more common in English, and
+- the database uses 'CET' even for circa-1910 timestamps as this
+- is less confusing for modern users and avoids the need for
+- determining when 'CET' supplanted 'MEZ' in common usage.
+-
+- Use a consistent style in a zone's history. For example, if a zone's
+- history tends to use numeric abbreviations and a particular
+- entry could go either way, use a numeric abbreviation.
+-
+- [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. 'CHAST' for CHAtham 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 .
+- 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
+- clock error.
+-
+- * The tz database assumes Universal Time (UT) as an origin, even
+- though UT is not standardized for older time stamps. In the tz
+- database commentary, UT denotes a family of time standards that
+- includes Coordinated Universal Time (UTC) along with other variants
+- such as UT1 and GMT, with days starting at midnight. Although UT
+- equals UTC for modern time stamps, UTC was not defined until 1960,
+- so commentary uses the more-general abbreviation UT for time stamps
+- that might predate 1960. Since UT, UT1, etc. disagree slightly,
+- and since pre-1972 UTC seconds varied in length, interpretation of
+- older time stamps can be problematic when subsecond accuracy is
+- needed.
+-
+- * 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: Stephenson FR, Morrison LV, Hohenkerk CY.
+- Measurement of the Earth's rotation: 720 BC to AD 2015.
+- Proc Royal Soc A. 2016 Dec 7;472:20160404.
+- http://dx.doi.org/10.1098/rspa.2016.0404
+- Also see: Espenak F. Uncertainty in Delta T (ΔT).
+- http://eclipse.gsfc.nasa.gov/SEhelp/uncertainty2004.html
+-
+- * 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 ""; 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.
+-
+- * The version number of the code and data, as the first line of
+- the text file 'version' in each release.
+-
+-Interface changes in a release attempt to preserve compatibility with
+-recent releases. 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. The tz-link.htm file describes how
+-releases are tagged and distributed.
+-
+-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)
+-.
+-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?
+-
+-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"
+- (2012-08-08).
+-
+-Jia-Rui Chong, "Workdays Fit for a Martian", Los Angeles Times
+-
+-(2004-01-14), pp A1, A20-A21.
+-
+-Tom Chmielewski, "Jet Lag Is Worse on Mars", The Atlantic (2015-02-26)
+-
+-
+------
+-
+-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
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -218,7 +218,7 @@
+ # saving time in Egypt will end in the night of 2007-09-06 to 2007-09-07.
+ # From Jesper Nørgaard Welen (2007-08-15): [The following agree:]
+ # http://www.nentjes.info/Bill/bill5.htm
+-# http://www.timeanddate.com/worldclock/city.html?n=53
++# https://www.timeanddate.com/worldclock/city.html?n=53
+ # From Steffen Thorsen (2007-09-04): The official information...:
+ # http://www.sis.gov.eg/En/EgyptOnline/Miscellaneous/000002/0207000000000000001580.htm
+ Rule Egypt 2007 only - Sep Thu>=1 24:00 0 -
+@@ -256,8 +256,8 @@
+ # timeanddate[2] and another site I've found[3] also support that.
+ #
+ # [1] https://bugzilla.redhat.com/show_bug.cgi?id=492263
+-# [2] http://www.timeanddate.com/worldclock/clockchange.html?n=53
+-# [3] http://wwp.greenwichmeantime.com/time-zone/africa/egypt/
++# [2] https://www.timeanddate.com/worldclock/clockchange.html?n=53
++# [3] https://wwp.greenwichmeantime.com/time-zone/africa/egypt/
+
+ # From Arthur David Olson (2009-04-20):
+ # In 2009 (and for the next several years), Ramadan ends before the fourth
+@@ -267,10 +267,10 @@
+ # From Steffen Thorsen (2009-08-11):
+ # We have been able to confirm the August change with the Egyptian Cabinet
+ # Information and Decision Support Center:
+-# http://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
++# https://www.timeanddate.com/news/time/egypt-dst-ends-2009.html
+ #
+ # The Middle East News Agency
+-# http://www.mena.org.eg/index.aspx
++# https://www.mena.org.eg/index.aspx
+ # also reports "Egypt starts winter time on August 21"
+ # today in article numbered "71, 11/08/2009 12:25 GMT."
+ # Only the title above is available without a subscription to their service,
+@@ -320,7 +320,7 @@
+ # 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
++# https://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
+@@ -447,11 +447,11 @@
+
+ # From Even Scharning (2012-11-10):
+ # Libya set their time one hour back at 02:00 on Saturday November 10.
+-# http://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
++# https://www.libyaherald.com/2012/11/04/clocks-to-go-back-an-hour-on-saturday/
+ # Here is an official source [in Arabic]: http://ls.ly/fb6Yc
+ #
+ # Steffen Thorsen forwarded a translation (2012-11-10) in
+-# http://mm.icann.org/pipermail/tz/2012-November/018451.html
++# https://mm.icann.org/pipermail/tz/2012-November/018451.html
+ #
+ # From Tim Parenti (2012-11-11):
+ # Treat the 2012-11-10 change as a zone change from UTC+2 to UTC+1.
+@@ -462,7 +462,7 @@
+ # From Even Scharning (2013-10-25):
+ # The scheduled end of DST in Libya on Friday, October 25, 2013 was
+ # cancelled yesterday....
+-# http://www.libyaherald.com/2013/10/24/correction-no-time-change-tomorrow/
++# https://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 UT +02.
+@@ -515,7 +515,7 @@
+ # basis....
+ # It seems that Mauritius observed daylight saving time from 1982-10-10 to
+ # 1983-03-20 as well, but that was not successful....
+-# http://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
++# https://www.timeanddate.com/news/time/mauritius-daylight-saving-time.html
+
+ # From Alex Krivenyshev (2008-06-25):
+ # http://economicdevelopment.gov.mu/portal/site/Mainhomepage/menuitem.a42b24128104d9845dabddd154508a0c/?content_id=0a7cee8b5d69a110VgnVCM1000000a04a8c0RCRD
+@@ -583,7 +583,7 @@
+ # http://lexpress.mu/Story/3398~Beebeejaun---Les-objectifs-d-%C3%A9conomie-d-%C3%A9nergie-de-l-heure-d-%C3%A9t%C3%A9-ont-%C3%A9t%C3%A9-atteints-
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
++# https://www.timeanddate.com/news/time/mauritius-dst-will-not-repeat.html
+
+ # From Arthur David Olson (2009-07-11):
+ # The "mauritius-dst-will-not-repeat" wrapup includes this:
+@@ -615,7 +615,7 @@
+ # be one hour ahead of GMT between 1 June and 27 September, according to
+ # Communication Minister and Government Spokesman, Khalid Naciri...."
+ #
+-# http://www.worldtimezone.net/dst_news/dst_news_morocco01.html
++# http://www.worldtimezone.com/dst_news/dst_news_morocco01.html
+ # http://en.afrik.com/news11892.html
+
+ # From Alex Krivenyshev (2008-05-09):
+@@ -628,7 +628,7 @@
+
+ # From Patrice Scattolin (2008-05-09):
+ # According to this article:
+-# http://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
++# https://www.avmaroc.com/actualite/heure-dete-comment-a127896.html
+ # (and republished here: )
+ # the changes occur at midnight:
+ #
+@@ -650,7 +650,7 @@
+ # posted in English).
+ #
+ # The following Google query will generate many relevant hits:
+-# http://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
++# https://www.google.com/search?hl=en&q=Conseil+de+gouvernement+maroc+heure+avance&btnG=Search
+
+ # From Steffen Thorsen (2008-08-27):
+ # Morocco will change the clocks back on the midnight between August 31
+@@ -661,7 +661,7 @@
+ # http://www.menara.ma/fr/Actualites/Maroc/Societe/ci.retour_a_l_heure_gmt_a_partir_du_dimanche_31_aout_a_minuit_officiel_.default
+ #
+ # We have some further details posted here:
+-# http://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
++# https://www.timeanddate.com/news/time/morocco-ends-dst-early-2008.html
+
+ # From Steffen Thorsen (2009-03-17):
+ # Morocco will observe DST from 2009-06-01 00:00 to 2009-08-21 00:00 according
+@@ -671,7 +671,7 @@
+ # (French)
+ #
+ # Our summary:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to official document from Royaume du Maroc Premier Ministre,
+@@ -694,7 +694,7 @@
+ # http://www.lavieeco.com/actualites/4099-le-maroc-passera-a-l-heure-d-ete-gmt1-le-2-mai.html
+ # (French)
+ # Our page:
+-# http://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
++# https://www.timeanddate.com/news/time/morocco-starts-dst-2010.html
+
+ # From Dan Abitol (2011-03-30):
+ # ...Rules for Africa/Casablanca are the following (24h format)
+@@ -711,7 +711,7 @@
+ # They said that the decision was already taken.
+ #
+ # More articles in the press
+-# http://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
++# https://www.yabiladi.com/articles/details/5058/secret-l-heure-d-ete-maroc-leve.html
+ # http://www.lematin.ma/Actualite/Express/Article.asp?id=148923
+ # http://www.lavieeco.com/actualite/Le-Maroc-passe-sur-GMT%2B1-a-partir-de-dim
+
+@@ -803,7 +803,7 @@
+ # 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/
++# https://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
+@@ -812,7 +812,7 @@
+ # [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
+-# agrees
++# agrees
+ # with the patch.
+
+ # From Paul Eggert (2015-06-08):
+@@ -937,10 +937,18 @@
+ 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 Arthur David Olson (2017-08-09):
++# The text of the "Namibia Time Act, 1994" is available online at
++# www.lac.org.na/laws/1994/811.pdf
++# and includes this nugget:
++# Notwithstanding the provisions of subsection (2) of section 1, the
++# first winter period after the commencement of this Act shall
++# commence at OOhOO on Monday 21 March 1994 and shall end at 02h00 on
++# Sunday 4 September 1994.
++
+ # From Petronella Sibeene (2007-03-30):
+ # http://allafrica.com/stories/200703300178.html
+ # While the entire country changes its time, Katima Mulilo and other
+@@ -955,11 +963,21 @@
+ # observes Botswana time, we have no details about historical practice.
+ # In the meantime people there can use Africa/Gaborone.
+ # See: Immanuel S. The Namibian. 2017-02-23.
+-# http://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
++# https://www.namibian.com.na/51480/read/Time-change-divides-lawmakers
+
++# From Steffen Thorsen (2017-08-09):
++# Namibia is going to change their time zone to what is now their DST:
++# https://www.newera.com.na/2017/02/23/namibias-winter-time-might-be-repealed/
++# This video is from the government decision:
++# https://www.nbc.na/news/na-passes-namibia-time-bill-repealing-1994-namibia-time-act.8665
++# We have made the assumption so far that they will change their time zone at
++# the same time they would normally start DST, the first Sunday in September:
++# https://www.timeanddate.com/news/time/namibia-new-time-zone.html
++
+ # RULE NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+-Rule Namibia 1994 max - Sep Sun>=1 2:00 1:00 S
+-Rule Namibia 1995 max - Apr Sun>=1 2:00 0 -
++Rule Namibia 1994 only - Mar 21 0:00 0 -
++Rule Namibia 1994 2016 - Sep Sun>=1 2:00 1:00 S
++Rule Namibia 1995 2017 - Apr Sun>=1 2:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Windhoek 1:08:24 - LMT 1892 Feb 8
+ 1:30 - +0130 1903 Mar
+@@ -966,8 +984,9 @@
+ 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
++ 2:00 - CAT 1994 Mar 21 0:00
++ 1:00 Namibia WA%sT 2017 Sep 3 2:00
++ 2:00 - CAT
+
+ # Niger
+ # See Africa/Lagos.
+@@ -1054,7 +1073,7 @@
+ # no information
+
+ # Sudan
+-#
++
+ # From
+ # Sudan News Agency (2000-01-13),
+ # also reported by Michaël De Beukelaer-Dossche via Steffen Thorsen:
+@@ -1061,7 +1080,17 @@
+ # Clocks will be moved ahead for 60 minutes all over the Sudan as of noon
+ # Saturday.... This was announced Thursday by Caretaker State Minister for
+ # Manpower Abdul-Rahman Nur-Eddin.
++
++# From Ahmed Atyya, National Telecommunications Corp. (NTC), Sudan (2017-10-17):
++# ... the Republic of Sudan is going to change the time zone from (GMT+3:00)
++# to (GMT+ 2:00) starting from Wednesday 1 November 2017.
+ #
++# From Paul Eggert (2017-10-18):
++# A scanned copy (in Arabic) of Cabinet Resolution No. 352 for the
++# year 2017 can be found as an attachment in email today from Yahia
++# Abdalla of NTC, archived at:
++# https://mm.icann.org/pipermail/tz/2017-October/025333.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Sudan 1970 only - May 1 0:00 1:00 S
+ Rule Sudan 1970 1985 - Oct 15 0:00 0 -
+@@ -1070,10 +1099,14 @@
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Africa/Khartoum 2:10:08 - LMT 1931
+ 2:00 Sudan CA%sT 2000 Jan 15 12:00
+- 3:00 - EAT
++ 3:00 - EAT 2017 Nov 1
++ 2:00 - CAT
+
+ # South Sudan
+-Link Africa/Khartoum Africa/Juba
++# Zone NAME GMTOFF RULES FORMAT [UNTIL]
++Zone Africa/Juba 2:06:28 - LMT 1931
++ 2:00 Sudan CA%sT 2000 Jan 15 12:00
++ 3:00 - EAT
+
+ # Swaziland
+ # See Africa/Johannesburg.
+@@ -1111,11 +1144,11 @@
+ # According to several news sources, Tunisia will not observe DST this year.
+ # (Arabic)
+ # http://www.elbashayer.com/?page=viewn&nid=42546
+-# http://www.babnet.net/kiwidetail-15295.asp
++# https://www.babnet.net/kiwidetail-15295.asp
+ #
+ # We have also confirmed this with the US embassy in Tunisia.
+ # We have a wrap-up about this on the following page:
+-# http://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
++# https://www.timeanddate.com/news/time/tunisia-cancels-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-03-17):
+ # Here is a link to Tunis Afrique Presse News Agency
+--- contrib/tzdata/antarctica.orig
++++ contrib/tzdata/antarctica
+@@ -26,7 +26,7 @@
+ # 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
++# https://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.
+ #
+@@ -47,7 +47,7 @@
+ # http://www.aad.gov.au/default.asp?casid=37079
+ #
+ # We have more background information here:
+-# http://www.timeanddate.com/news/time/antarctica-new-times.html
++# https://www.timeanddate.com/news/time/antarctica-new-times.html
+
+ # From Steffen Thorsen (2010-03-10):
+ # We got these changes from the Australian Antarctic Division: ...
+@@ -62,7 +62,7 @@
+ # - Mawson station stays on UTC+5.
+ #
+ # Background:
+-# http://www.timeanddate.com/news/time/antartica-time-changes-2010.html
++# https://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
+@@ -145,7 +145,7 @@
+ #
+ # year-round base in the main continent
+ # Dumont d'Urville, Île des Pétrels, -6640+14001, since 1956-11
+-# (2005-12-05)
++# (2005-12-05)
+ #
+ # Another base at Port-Martin, 50km east, began operation in 1947.
+ # It was destroyed by fire on 1952-01-14.
+--- contrib/tzdata/asia.orig
++++ contrib/tzdata/asia
+@@ -26,7 +26,7 @@
+ #
+ # 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
++# https://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.
+@@ -75,8 +75,8 @@
+ Rule RussiaAsia 1981 1984 - Apr 1 0:00 1:00 S
+ Rule RussiaAsia 1981 1983 - Oct 1 0:00 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 -
++Rule RussiaAsia 1985 2010 - Mar lastSun 2:00s 1:00 S
++Rule RussiaAsia 1996 2010 - Oct lastSun 2:00s 0 -
+
+ # Afghanistan
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+@@ -109,6 +109,9 @@
+ # or
+ # (brief)
+ # http://www.worldtimezone.com/dst_news/dst_news_armenia03.html
++# Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
++Rule Armenia 2011 only - Mar lastSun 2:00s 1:00 S
++Rule Armenia 2011 only - Oct lastSun 2:00s 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Yerevan 2:58:00 - LMT 1924 May 2
+ 3:00 - +03 1957 Mar
+@@ -115,7 +118,8 @@
+ 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
++ 4:00 RussiaAsia +04/+05 2011
++ 4:00 Armenia +04/+05
+
+ # Azerbaijan
+
+@@ -127,7 +131,7 @@
+ # 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
++# https://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
+
+@@ -168,11 +172,11 @@
+ # the 19th and 20th, and they have not set the end date yet.
+ #
+ # Some sources:
+-# http://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
++# https://in.reuters.com/article/southAsiaNews/idINIndia-40017620090601
+ # http://bdnews24.com/details.php?id=85889&cid=2
+ #
+ # Our wrap-up:
+-# http://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
++# https://www.timeanddate.com/news/time/bangladesh-daylight-saving-2009.html
+
+ # From A. N. M. Kamrus Saadat (2009-06-15):
+ # Finally we've got the official mail regarding DST start time where DST start
+@@ -258,9 +262,15 @@
+
+ # Milne says 6:24:40 was the meridian of the time ball observatory at Rangoon.
+
++# From Paul Eggert (2017-04-20):
++# Page 27 of Reed & Low (cited for Asia/Kolkata) says "Rangoon local time is
++# used upon the railways and telegraphs of Burma, and is 6h. 24m. 47s. ahead
++# of Greenwich." This refers to the period before Burma's transition to +0630,
++# a transition for which Shanks is the only source.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Yangon 6:24:40 - LMT 1880 # or Rangoon
+- 6:24:40 - RMT 1920 # Rangoon Mean Time?
++Zone Asia/Yangon 6:24:47 - LMT 1880 # or Rangoon
++ 6:24:47 - RMT 1920 # Rangoon local time
+ 6:30 - +0630 1942 May
+ 9:00 - +09 1945 May 3
+ 6:30 - +0630
+@@ -317,7 +327,7 @@
+ #
+ # From Jesper Nørgaard Welen (2006-07-14):
+ # I have investigated the timezones around 1970 on the
+-# http://www.astro.com/atlas site [with provinces and county
++# https://www.astro.com/atlas site [with provinces and county
+ # boundaries summarized below].... A few other exceptions were two
+ # counties on the Sichuan side of the Xizang-Sichuan border,
+ # counties Dege and Baiyu which lies on the Sichuan side and are
+@@ -469,7 +479,7 @@
+
+ # From David Cochrane (2014-03-26):
+ # Just a confirmation that Ürümqi time was implemented in Ürümqi on 1 Feb 1986:
+-# http://content.time.com/time/magazine/article/0,9171,960684,00.html
++# https://content.time.com/time/magazine/article/0,9171,960684,00.html
+
+ # From Luther Ma (2014-04-22):
+ # I have interviewed numerous people of various nationalities and from
+@@ -626,7 +636,7 @@
+ # (both in Okinawa) adopt the Western Standard Time which is based on
+ # 120E. The adoption began from Jan 1, 1896. The original text can be
+ # found on Wikisource:
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ # ... This could be the first adoption of time zone in Taiwan, because
+ # during the Qing Dynasty, it seems that there was no time zone
+ # declared officially.
+@@ -639,7 +649,7 @@
+ # territory, including later occupations, adopt Japan Central Time
+ # (UTC+9). The adoption began on Oct 1, 1937. The original text can
+ # be found on Wikisource:
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+ #
+ # That is, the time zone of Taipei switched to UTC+9 on Oct 1, 1937.
+
+@@ -775,6 +785,12 @@
+ # 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/
+
++# From Paul Eggert (2017-10-18):
++# Northern Cyprus will reinstate winter time on October 29, thus
++# staying in sync with the rest of Cyprus. See: Anastasiou A.
++# Cyprus to remain united in time. Cyprus Mail 2017-10-17.
++# https://cyprus-mail.com/2017/10/17/cyprus-remain-united-time/
++
+ # 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 -
+@@ -792,7 +808,8 @@
+ 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
++ 3:00 - +03 2017 Oct 29 1:00u
++ 2:00 EUAsia EE%sT
+
+ # Classically, Cyprus belongs to Asia; e.g. see Herodotus, Histories, I.72.
+ # However, for various reasons many users expect to find it under Europe.
+@@ -852,7 +869,7 @@
+
+ # From João Carrascalão, brother of the former governor of East Timor, in
+ # East Timor may be late for its millennium
+-# (1999-12-26/31):
++# (1999-12-26/31):
+ # Portugal tried to change the time forward in 1974 because the sun
+ # rises too early but the suggestion raised a lot of problems with the
+ # Timorese and I still don't think it would work today because it
+@@ -880,7 +897,7 @@
+ # 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/
++# https://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
+@@ -887,14 +904,55 @@
+ # local time in favor of Indian Standard Time.... Journalists called this
+ # dispute the "Battle of the Clocks." It lasted nearly half a century.
+
++# From Paul Eggert (2017-04-20):
++# Good luck trying to nail down old timekeeping records in India.
++# "... in the nineteenth century ... Madras Observatory took its magnetic
++# measurements on Göttingen time, its meteorological measurements on Madras
++# (local) time, dropped its time ball on Greenwich (ocean navigator's) time,
++# and distributed civil (local time)." -- Bartky IR. Selling the true time:
++# 19th-century timekeeping in america. Stanford U Press (2000), 247 note 19.
++# "A more potent cause of resistance to the general adoption of the present
++# standard time lies in the fact that it is Madras time. The citizen of
++# Bombay, proud of being 'primus in Indis' and of Calcutta, equally proud of
++# his city being the Capital of India, and - for a part of the year - the Seat
++# of the Supreme Government, alike look down on Madras, and refuse to change
++# the time they are using, for that of what they regard as a benighted
++# Presidency; while Madras, having for long given the standard time to the
++# rest of India, would resist the adoption of any other Indian standard in its
++# place." -- Oldham RD. On Time in India: a suggestion for its improvement.
++# Proceedings of the Asiatic Society of Bengal (April 1899), 49-55.
++#
++# "In 1870 ... Madras time - 'now used by the telegraph and regulated from the
++# only government observatory' - was suggested as a standard railway time,
++# first to be adopted on the Great Indian Peninsular Railway (GIPR)....
++# Calcutta, Bombay, and Karachi, were to be allowed to continue with their
++# local time for civil purposes." - Prasad R. Tracks of Change: Railways and
++# Everyday Life in Colonial India. Cambridge University Press (2016), 145.
++#
++# Reed S, Low F. The Indian Year Book 1936-37. Bennett, Coleman, pp 27-8.
++# https://archive.org/details/in.ernet.dli.2015.282212
++# This lists +052110 as Madras local time used in railways, and says that on
++# 1906-01-01 railways and telegraphs in India switched to +0530. Some
++# municipalities retained their former time, and the time in Calcutta
++# continued to depend on whether you were at the railway station or at
++# government offices. Government time was at +055320 (according to Shanks) or
++# at +0554 (according to the Indian Year Book). Railway time is more
++# appropriate for our purposes, as it was better documented, it is what we do
++# elsewhere (e.g., Europe/London before 1880), and after 1906 it was
++# consistent in the region now identified by Asia/Kolkata. So, use railway
++# time for 1870-1941. Shanks is our only (and dubious) source for the
++# 1941-1945 data.
++
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Asia/Kolkata 5:53:28 - LMT 1880 # Kolkata
+- 5:53:20 - HMT 1941 Oct # Howrah Mean Time?
+- 6:30 - +0630 1942 May 15
++Zone Asia/Kolkata 5:53:28 - LMT 1854 Jun 28 # Kolkata
++ 5:53:20 - HMT 1870 # Howrah Mean Time?
++ 5:21:10 - MMT 1906 Jan 1 # Madras local time
++ 5:30 - IST 1941 Oct
++ 5:30 1:00 +0630 1942 May 15
+ 5:30 - IST 1942 Sep
+ 5:30 1:00 +0630 1945 Oct 15
+ 5:30 - IST
+-# The following are like Asia/Kolkata:
++# Since 1970 the following are like Asia/Kolkata:
+ # Andaman Is
+ # Lakshadweep (Laccadive, Minicoy and Amindivi Is)
+ # Nicobar Is
+@@ -1036,7 +1094,7 @@
+ # From Reuters (2007-09-16), with a heads-up from Jesper Nørgaard Welen:
+ # ... the Guardian Council ... approved a law on Sunday to re-introduce
+ # daylight saving time ...
+-# http://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
++# https://uk.reuters.com/article/oilRpt/idUKBLA65048420070916
+ #
+ # From Roozbeh Pournader (2007-11-05):
+ # This is quoted from Official Gazette of the Islamic Republic of
+@@ -1135,7 +1193,7 @@
+ # http://www.aswataliraq.info/look/article.tpl?id=2047&IdLanguage=17&IdPublication=4&NrArticle=71743&NrIssue=1&NrSection=10
+ #
+ # We have published a short article in English about the change:
+-# http://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
++# https://www.timeanddate.com/news/time/iraq-dumps-daylight-saving.html
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule Iraq 1982 only - May 1 0:00 1:00 D
+@@ -1443,12 +1501,12 @@
+ # From Yu-Cheng Chuang (2013-07-12):
+ # ...the Meiji Emperor announced Ordinance No. 167 of Meiji Year 28 "The clause
+ # about standard time" ... The adoption began from Jan 1, 1896.
+-# http://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
++# https://ja.wikisource.org/wiki/標準時ニ關スル件_(公布時)
+ #
+ # ...the Showa Emperor announced Ordinance No. 529 of Showa Year 12 ... which
+ # means the whole Japan territory, including later occupations, adopt Japan
+ # Central Time (UTC+9). The adoption began on Oct 1, 1937.
+-# http://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
++# https://ja.wikisource.org/wiki/明治二十八年勅令第百六十七號標準時ニ關スル件中改正ノ件
+
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Asia/Tokyo 9:18:59 - LMT 1887 Dec 31 15:00u
+@@ -1510,7 +1568,7 @@
+ # Official, in Arabic:
+ # http://www.petra.gov.jo/public_news/Nws_NewsDetails.aspx?Menu_ID=&Site_Id=2&lang=1&NewsID=133230&CatID=14
+ # ... Our background/permalink about it
+-# http://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
++# https://www.timeanddate.com/news/time/jordan-reverses-dst-decision.html
+ # ...
+ # http://www.petra.gov.jo/Public_News/Nws_NewsDetails.aspx?lang=2&site_id=1&NewsID=133313&Type=P
+ # ... says midnight for the coming one and 1:00 for the ones in the future
+@@ -1868,9 +1926,9 @@
+ # between 1987 and 1988 ...
+
+ # From Sanghyuk Jung (2014-10-29):
+-# http://mm.icann.org/pipermail/tz/2014-October/021830.html
++# https://mm.icann.org/pipermail/tz/2014-October/021830.html
+ # According to the Korean Wikipedia
+-# http://ko.wikipedia.org/wiki/한국_표준시
++# https://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.
+@@ -2092,7 +2150,7 @@
+ # +08:00 instead. Different sources appear to disagree with the tz
+ # database on this, e.g.:
+ #
+-# http://www.timeanddate.com/worldclock/city.html?n=1026
++# https://www.timeanddate.com/worldclock/city.html?n=1026
+ # http://www.worldtimeserver.com/current_time_in_MN.aspx
+ #
+ # both say GMT+08:00.
+@@ -2222,7 +2280,7 @@
+ # 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.worldtimezone.com/dst_news/dst_news_pakistan01.html
+ # http://www.dailytimes.com.pk/default.asp?page=2008%5C05%5C15%5Cstory_15-5-2008_pg1_4
+
+ # From Arthur David Olson (2008-05-19):
+@@ -2288,7 +2346,7 @@
+ #
+ # We have confirmed this year's end date with both with the Ministry of
+ # Water and Power and the Pakistan Electric Power Company:
+-# http://www.timeanddate.com/news/time/pakistan-ends-dst09.html
++# https://www.timeanddate.com/news/time/pakistan-ends-dst09.html
+
+ # From Christoph Göhre (2009-10-01):
+ # [T]he German Consulate General in Karachi reported me today that Pakistan
+@@ -2470,7 +2528,7 @@
+ #
+ # We are not sure if Gaza will do the same, last year they had a different
+ # end date, we will keep this page updated:
+-# http://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
++# https://www.timeanddate.com/news/time/westbank-gaza-dst-2009.html
+
+ # From Alexander Krivenyshev (2009-09-02):
+ # Seems that Gaza Strip will go back to Winter Time same date as West Bank.
+@@ -2508,7 +2566,7 @@
+ # the clocks were set back one hour at 2010-08-11 00:00:00 local time in
+ # Gaza and the West Bank.
+ # Some more background info:
+-# http://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
++# https://www.timeanddate.com/news/time/westbank-gaza-end-dst-2010.html
+
+ # From Steffen Thorsen (2011-08-26):
+ # Gaza and the West Bank did go back to standard time in the beginning of
+@@ -2518,7 +2576,7 @@
+ #
+ # http://www.maannews.net/eng/ViewDetails.aspx?ID=416217
+ # Additional info:
+-# http://www.timeanddate.com/news/time/palestine-dst-2011.html
++# https://www.timeanddate.com/news/time/palestine-dst-2011.html
+
+ # From Alexander Krivenyshev (2011-08-27):
+ # According to the article in The Jerusalem Post:
+@@ -2528,7 +2586,7 @@
+ # The Hamas government said on Saturday that it won't observe summertime after
+ # the Muslim feast of Id al-Fitr, which begins on Tuesday..."
+ # ...
+-# http://www.jpost.com/MiddleEast/Article.aspx?id=235650
++# https://www.jpost.com/MiddleEast/Article.aspx?id=235650
+ # http://www.worldtimezone.com/dst_news/dst_news_gazastrip05.html
+ # The rules for Egypt are stolen from the 'africa' file.
+
+@@ -2549,7 +2607,7 @@
+ # http://safa.ps/details/news/74352/%D8%A8%D8%AF%D8%A1-%D8%A7%D9%84%D8%AA%D9%88%D9%82%D9%8A%D8%AA-%D8%A7%D9%84%D8%B5%D9%8A%D9%81%D9%8A-%D8%A8%D8%A7%D9%84%D8%B6%D9%81%D8%A9-%D9%88%D8%BA%D8%B2%D8%A9-%D9%84%D9%8A%D9%84%D8%A9-%D8%A7%D9%84%D8%AC%D9%85%D8%B9%D8%A9.html
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
++# https://www.timeanddate.com/news/time/gaza-west-bank-dst-2012.html
+
+ # From Steffen Thorsen (2013-03-26):
+ # The following news sources tells that Palestine will "start daylight saving
+@@ -2569,11 +2627,11 @@
+
+ # 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
++# and https://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
++# https://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):
+@@ -2597,8 +2655,8 @@
+ #
+ # 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
++# https://www.timeanddate.com/time/change/gaza-strip/gaza
++# https://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
+@@ -2661,7 +2719,7 @@
+ # 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
++# https://www.staff.science.uu.nl/~gent0113/idl/idl_philippines.htm
+ # The rest of the data entries are from Shanks & Pottenger.
+
+ # From Jesper Nørgaard Welen (2006-04-26):
+@@ -2925,7 +2983,7 @@
+ # We have not found any sources saying anything about when DST ends this year.
+ #
+ # Our summary
+-# http://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
++# https://www.timeanddate.com/news/time/syria-dst-starts-march-27-2009.html
+
+ # From Steffen Thorsen (2009-10-27):
+ # The Syrian Arab News Network on 2009-09-29 reported that Syria will
+@@ -2952,7 +3010,7 @@
+ # http://www.sana.sy/ara/2/2012/03/26/408215.htm
+ #
+ # Our brief summary:
+-# http://www.timeanddate.com/news/time/syria-dst-2012.html
++# https://www.timeanddate.com/news/time/syria-dst-2012.html
+
+ # From Arthur David Olson (2012-03-27):
+ # Assume last Friday in March going forward XXX.
+@@ -3035,7 +3093,7 @@
+ # 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
++# https://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
+--- contrib/tzdata/australasia.orig
++++ contrib/tzdata/australasia
+@@ -293,7 +293,7 @@
+ # http://www.fiji.gov.fj/index.php?option=com_content&view=article&id=1096:3310-cabinet-approves-change-in-daylight-savings-dates&catid=49:cabinet-releases&Itemid=166
+ #
+ # A bit more background info here:
+-# http://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
++# https://www.timeanddate.com/news/time/fiji-dst-ends-march-2010.html
+
+ # From Alexander Krivenyshev (2010-10-24):
+ # According to Radio Fiji and Fiji Times online, Fiji will end DST 3
+@@ -357,9 +357,12 @@
+ # 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
++# From Paul Eggert (2017-08-21):
++# Dominic Fok writes (2017-08-20) that DST ends 2018-01-14, citing
++# Extraordinary Government of Fiji Gazette Supplement No. 21 (2017-08-27),
++# [Legal Notice No. 41] of an order of the previous day by J Usamate.
++# For now, guess DST from 02:00 the first Sunday in November to 03:00
++# the first Sunday on or after January 14. Although ad hoc, it matches
+ # transitions since late 2014 and seems more likely to match future
+ # practice than guessing no DST.
+
+@@ -373,7 +376,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>=15 3:00 0 -
++Rule Fiji 2015 max - Jan Sun>=14 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Fiji 11:55:44 - LMT 1915 Oct 26 # Suva
+ 12:00 Fiji +12/+13
+@@ -557,7 +560,7 @@
+ # 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
++# https://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
+@@ -579,7 +582,7 @@
+ -8:00 - -08
+
+ # American Samoa
+-Zone Pacific/Pago_Pago 12:37:12 - LMT 1879 Jul 5
++Zone Pacific/Pago_Pago 12:37:12 - LMT 1892 Jul 5
+ -11:22:48 - LMT 1911
+ -11:00 - SST # S=Samoa
+ Link Pacific/Pago_Pago Pacific/Midway # in US minor outlying islands
+@@ -595,7 +598,7 @@
+ # Sunday of April 2011."
+ #
+ # Background info:
+-# http://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
++# https://www.timeanddate.com/news/time/samoa-dst-plan-2009.html
+ #
+ # Samoa's Daylight Saving Time Act 2009 is available here, but does not
+ # contain any dates:
+@@ -659,7 +662,7 @@
+ Rule WS 2012 max - Apr Sun>=1 4:00 0 S
+ Rule WS 2012 max - Sep lastSun 3:00 1 D
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+-Zone Pacific/Apia 12:33:04 - LMT 1879 Jul 5
++Zone Pacific/Apia 12:33:04 - LMT 1892 Jul 5
+ -11:26:56 - LMT 1911
+ -11:30 - -1130 1950
+ -11:00 WS -11/-10 2011 Dec 29 24:00
+@@ -686,7 +689,7 @@
+ # From Paul Eggert (2012-07-25)
+ # A Google Books snippet of Appendix to the Journals of the House of
+ # Representatives of New Zealand, Session 1948,
+-# , page 65, says Tokelau
++# , page 65, says Tokelau
+ # was "11 hours slow on G.M.T." Go with Thorsen and assume Shanks & Pottenger
+ # are off by an hour starting in 1901.
+
+@@ -701,8 +704,8 @@
+ 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 -
++Rule Tonga 2016 only - Nov Sun>=1 2:00 1:00 S
++Rule Tonga 2017 only - Jan Sun>=15 3:00 0 -
+ # Zone NAME GMTOFF RULES FORMAT [UNTIL]
+ Zone Pacific/Tongatapu 12:19:20 - LMT 1901
+ 12:20 - +1220 1941
+@@ -756,7 +759,7 @@
+ # 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
++# https://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".
+@@ -822,7 +825,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # A reliable and entertaining source about time zones is
+ # Derek Howse, Greenwich time and longitude, Philip Wilson Publishers (1997).
+@@ -969,7 +972,7 @@
+ # AEST ACST AWST AEDT ACDT
+ #
+ # Parliamentary Library (2008-11-10)
+-# http://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
++# https://www.aph.gov.au/binaries/library/pubs/rp/2008-09/09rp14.pdf
+ # EST CST WST preferred for standard time; AEST AEDT ACST ACDT also used
+ #
+ # The Transport Safety Bureau has an extensive series of accident reports,
+@@ -1005,13 +1008,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
++# https://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
++# https://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
++# https://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
+@@ -1306,7 +1309,7 @@
+ # 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:
++# Victoria will follow NSW. See:
+ # Vic to extend daylight saving (1999-07-28)
+ # http://abc.net.au/local/news/olympics/1999/07/item19990728112314_1.htm
+ #
+@@ -1409,7 +1412,7 @@
+ # the ACT for all 52 weeks of the year...
+ #
+ # We have a wrap-up here:
+-# http://www.timeanddate.com/news/time/south-australia-extends-dst.html
++# https://www.timeanddate.com/news/time/south-australia-extends-dst.html
+ ###############################################################################
+
+ # New Zealand
+@@ -1463,7 +1466,7 @@
+ # 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
++# https://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
+@@ -1578,7 +1581,7 @@
+ # 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
++# https://www.timeanddate.com/time/australia/norfolk-island.html
+
+ # Pitcairn
+
+@@ -1606,11 +1609,13 @@
+
+ # (Western) Samoa and American Samoa
+
+-# Howse writes (p 153, citing p 10 of the 1883-11-18 New York Herald)
+-# that in 1879 the King of Samoa decided to change
++# Howse writes (p 153) that after the 1879 standardization on Antipodean
++# time by the British governor of Fiji, the King of Samoa decided to change
+ # "the date in his kingdom from the Antipodean to the American system,
+ # ordaining - by a masterpiece of diplomatic flattery - that
+ # the Fourth of July should be celebrated twice in that year."
++# This happened in 1892, according to the Evening News (Sydney) of 1892-07-20.
++# https://www.staff.science.uu.nl/~gent0113/idl/idl.htm
+
+ # Although Shanks & Pottenger says they both switched to UT -11:30
+ # in 1911, and to -11 in 1950. many earlier sources give -11
+@@ -1621,6 +1626,7 @@
+ # day in 2011. Assume also that the Samoas follow the US and New
+ # Zealand's "ST"/"DT" style of daylight-saving abbreviations.
+
++
+ # Tonga
+
+ # From Paul Eggert (1996-01-22):
+@@ -1715,6 +1721,15 @@
+ # 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.
+
++# From David Wade (2017-10-18):
++# In August government was disolved by the King. The current prime minister
++# continued in office in care taker mode. It is easy to see that few
++# decisions will be made until elections 16th November.
++#
++# From Paul Eggert (2017-10-18):
++# For now, guess that DST is discontinued. That's what the IATA is guessing.
++
++
+ # Wake
+
+ # From Vernice Anderson, Personal Secretary to Philip Jessup,
+@@ -1727,7 +1742,7 @@
+ # making calculation of time in Washington difficult if not almost
+ # impossible.
+ #
+-# http://www.trumanlibrary.org/wake/meeting.htm
++# https://www.trumanlibrary.org/oralhist/andrsonv.htm
+
+ # From Paul Eggert (2003-03-23):
+ # We have no other report of DST in Wake Island, so omit this info for now.
+@@ -1755,7 +1770,7 @@
+ # an international standard, there are some places on the high seas where the
+ # correct date is ambiguous.
+
+-# From Wikipedia (2005-08-31):
++# From Wikipedia (2005-08-31):
+ # Before 1920, all ships kept local apparent time on the high seas by setting
+ # their clocks at night or at the morning sight so that, given the ship's
+ # speed and direction, it would be 12 o'clock when the Sun crossed the ship's
+--- contrib/tzdata/backward.orig
++++ contrib/tzdata/backward
+@@ -61,7 +61,9 @@
+ Link America/Manaus Brazil/West
+ Link America/Halifax Canada/Atlantic
+ Link America/Winnipeg Canada/Central
+-Link America/Regina Canada/East-Saskatchewan
++# This line is commented out, as the name exceeded the 14-character limit
++# and was an unused misnomer.
++#Link America/Regina Canada/East-Saskatchewan
+ Link America/Toronto Canada/Eastern
+ Link America/Edmonton Canada/Mountain
+ Link America/St_Johns Canada/Newfoundland
+--- contrib/tzdata/backzone.orig
++++ contrib/tzdata/backzone
+@@ -181,7 +181,7 @@
+ # with the date that it took effect, namely 1912-01-01.
+ #
+ Zone Africa/Luanda 0:52:56 - LMT 1892
+- 0:52:04 - +005204 1912 Jan 1
++ 0:52:04 - LMT 1912 Jan 1 # Luanda Mean Time?
+ 1:00 - WAT
+
+ # Democratic Republic of the Congo (east)
+@@ -540,10 +540,10 @@
+
+ # Guernsey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Town Church, St. Peter Port, 49 degrees 27'17"N 2 degrees 32'10"W
++Zone Europe/Guernsey -0:10:09 - 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
+@@ -555,11 +555,11 @@
+ #
+ # From Lester Caine (2013-09-04):
+ # The Isle of Man legislation is now on-line at
+-# , starting with the original Statutory
++# , 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
++# of the first summer time in 1916 which may have been 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.
+@@ -574,10 +574,10 @@
+
+ # Jersey
+ # Data from Joseph S. Myers
+-# http://mm.icann.org/pipermail/tz/2013-September/019883.html
++# https://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
++# LMT is for Parish Church, St. Helier, 49 degrees 11'0.57"N 2 degrees 6'24.33"W
++Zone Europe/Jersey -0:08:26 - 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
+--- contrib/tzdata/calendars.orig
++++ contrib/tzdata/calendars
+@@ -0,0 +1,173 @@
++----- Calendrical issues -----
++
++As mentioned in Theory.html, although calendrical issues are out of
++scope for tzdb, they indicate the sort of problems that we would run
++into if we extended tzdb further into the past. The following
++information and sources go beyond Theory.html's brief discussion.
++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?
++
++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.
++
++-----
++
++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/checklinks.awk.orig
++++ contrib/tzdata/checklinks.awk
+@@ -9,7 +9,7 @@
+ Zone = "\n"
+ }
+
+-/^Zone/ {
++/^Z/ {
+ if (defined[$2]) {
+ if (defined[$2] == Zone) {
+ printf "%s: Zone has duplicate definition\n", $2
+@@ -21,7 +21,7 @@
+ defined[$2] = Zone
+ }
+
+-/^Link/ {
++/^L/ {
+ if (defined[$3]) {
+ if (defined[$3] == Zone) {
+ printf "%s: Link with same name as Zone\n", $3
+--- contrib/tzdata/europe.orig
++++ contrib/tzdata/europe
+@@ -37,7 +37,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# . He writes:
++# . He writes:
+ # "It is requested that corrections and additions to these tables
+ # may be sent to Mr. John Milne, Royal Geographical Society,
+ # Savile Row, London." Nowadays please email them to tz@iana.org.
+@@ -44,7 +44,7 @@
+ #
+ # 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
++# https://mm.icann.org/pipermail/tz/2014-August/021320.html
+ # The full Russian citation is:
+ # Бялокоз, Евгений Людвигович. Новый счет времени в течении суток
+ # введенный декретом Совета народных комиссаров для всей России с 1-го
+@@ -187,7 +187,7 @@
+ # foundations of civilization throughout the world.
+ # -- "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
++# https://www.winstonchurchill.org/publications/finest-hour/finest-hour-114/a-silent-toast-to-william-willett-by-winston-s-churchill
+
+ # From Paul Eggert (2015-08-08):
+ # The OED Supplement says that the English originally said "Daylight Saving"
+@@ -225,8 +225,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://www.polyomino.org.uk/british-time/bbc-19410418.png
+-# http://www.polyomino.org.uk/british-time/ho-19410421.png
++# https://www.polyomino.org.uk/british-time/bbc-19410418.png
++# https://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
+@@ -243,13 +243,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://www.polyomino.org.uk/british-time/
++# https://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.publications.parliament.uk/pa/ld199798/ldhansrd/vo970611/text/70611-10.htm#70611-10_head0
++# https://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):
+@@ -295,7 +295,7 @@
+ # 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
++# https://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 .
+@@ -348,6 +348,12 @@
+ # Justice (tel +353 1 678 9711) who confirmed to me that the correct name is
+ # "Irish Summer Time", abbreviated to "IST".
+
++# Michael Deckers (2017-06-01) gave the following URLs for Ireland's
++# Summer Time Act, 1925 and Summer Time Orders, 1926 and 1947:
++# http://www.irishstatutebook.ie/eli/1925/act/8/enacted/en/print.html
++# http://www.irishstatutebook.ie/eli/1926/sro/919/made/en/print.html
++# http://www.irishstatutebook.ie/eli/1947/sro/71/made/en/print.html
++
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ # Summer Time Act, 1916
+ Rule GB-Eire 1916 only - May 21 2:00s 1:00 BST
+@@ -472,14 +478,14 @@
+
+ # 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 # Dublin MT
++ -0:25:21 - DMT 1916 May 21 2:00s # Dublin MT
+ -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:00s
++ 0:00 1:00 IST 1946 Oct 6 2:00s
++ 0:00 - GMT 1947 Mar 16 2:00s
++ 0:00 1:00 IST 1947 Nov 2 2:00s
++ 0:00 - GMT 1948 Apr 18 2:00s
+ 0:00 GB-Eire GMT/IST 1968 Oct 27
+ 1:00 - IST 1971 Oct 31 2:00u
+ 0:00 GB-Eire GMT/IST 1996
+@@ -625,7 +631,7 @@
+ # 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/ :
++# title at https://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".
+@@ -656,7 +662,7 @@
+ # http://bmockbe.ru/events/?ID=7583
+ #
+ # Medvedev signed a law on the calculation of the time (in russian):
+-# http://www.regnum.ru/news/polit/1413906.html
++# https://www.regnum.ru/news/polit/1413906.html
+
+ # From Arthur David Olson (2011-06-15):
+ # Take "abolishing daylight saving time" to mean that time is now considered
+@@ -783,7 +789,7 @@
+ # Sources (Russian language):
+ # 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
++# https://news.tut.by/society/250578.html
+ #
+ # From Alexander Bokovoy (2014-10-09):
+ # Belarussian government decided against changing to winter time....
+@@ -1104,7 +1110,7 @@
+ # for their standard and summer times. He says no, they use "suveaeg"
+ # (summer time) and "talveaeg" (winter time).
+
+-# From The Baltic Times (1999-09-09)
++# From The Baltic Times (1999-09-09)
+ # via Steffen Thorsen:
+ # This year will mark the last time Estonia shifts to summer time,
+ # a council of the ruling coalition announced Sept. 6....
+@@ -1156,7 +1162,7 @@
+ # This is documented in Heikki Oja: Aikakirja 2007, published by The Almanac
+ # Office of University of Helsinki, ISBN 952-10-3221-9, available online (in
+ # Finnish) at
+-# http://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
++# https://almanakka.helsinki.fi/aikakirja/Aikakirja2007kokonaan.pdf
+ #
+ # Page 105 (56 in PDF version) has a handy table of all past daylight savings
+ # transitions. It is easy enough to interpret without Finnish skills.
+@@ -1169,7 +1175,7 @@
+
+ # From Konstantin Hyppönen (2014-06-13):
+ # [Heikki Oja's book Aikakirja 2013]
+-# http://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
++# https://almanakka.helsinki.fi/images/aikakirja/Aikakirja2013kokonaan.pdf
+ # pages 104-105, including a scan from a newspaper published on Apr 2 1942
+ # say that ... [o]n Apr 2 1942, 24 o'clock (which means Apr 3 1942,
+ # 00:00), clocks were moved one hour forward. The newspaper
+@@ -1299,7 +1305,7 @@
+
+ # 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/
++# https://www.dhm.de/lemo/html/biografien/BersarinNikolai/
+ # General [Nikolai] Bersarin.
+
+ # From Paul Eggert (2003-03-08):
+@@ -1524,7 +1530,7 @@
+ # 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
++# Model Rome's occupation by 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.
+ #
+@@ -1839,7 +1845,7 @@
+ # Following Moldova and neighboring Ukraine- Transnistria (Pridnestrovie)-
+ # Tiraspol will go back to winter time on October 30, 2011.
+ # News from Moldova (in russian):
+-# http://ru.publika.md/link_317061.html
++# https://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
+@@ -1846,7 +1852,7 @@
+ # 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
++# https://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.
+
+@@ -1918,7 +1924,7 @@
+ # Amsterdam mean time.
+
+ # The data entries before 1945 are taken from
+-# http://www.staff.science.uu.nl/~gent0113/wettijd/wettijd.htm
++# https://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
+@@ -1999,7 +2005,7 @@
+ # so it must have diverged from Oslo time during the war, as Oslo was
+ # keeping Berlin time.
+ #
+-# says that the meteorologists
++# says that the meteorologists
+ # burned down their station in 1940 and left the island, but returned in
+ # 1941 with a small Norwegian garrison and continued operations despite
+ # frequent air attacks from Germans. In 1943 the Americans established a
+@@ -2037,7 +2043,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
++# https://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)
+@@ -2071,7 +2077,7 @@
+ #
+ # 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
++# https://dre.pt/application/dir/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
+@@ -2253,7 +2259,7 @@
+ # 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
++# https://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:
+@@ -2261,7 +2267,7 @@
+ # does not contain any "effective date" information.
+ #
+ # Another source is
+-# http://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
++# https://en.wikipedia.org/wiki/Oymyakonsky_District#cite_note-RuTime-7
+ # 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.
+@@ -2297,7 +2303,7 @@
+ # http://itar-tass.com/obschestvo/1333711
+ # http://www.pravo.gov.ru:8080/page.aspx?111660
+ # http://www.kremlin.ru/acts/46279
+-# From October 26, 2014 the new Russian time zone map will looks like this:
++# From October 26, 2014 the new Russian time zone map will look like this:
+ # http://www.worldtimezone.com/dst_news/dst_news_russia-map-2014-07.html
+
+ # From Paul Eggert (2006-03-22):
+@@ -2344,7 +2350,7 @@
+ # with maintenance only and represent our best guesses as to which regions
+ # are covered by each zone. They are not meant to be taken as an authoritative
+ # listing. The region codes listed come from
+-# http://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
++# https://en.wikipedia.org/w/?title=Federal_subjects_of_Russia&oldid=611810498
+ # and are used for convenience only; no guarantees are made regarding their
+ # future stability. ISO 3166-2:RU codes are also listed for first-level
+ # divisions where available.
+@@ -2509,7 +2515,7 @@
+ # 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
++# https://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.
+ #
+@@ -2581,7 +2587,7 @@
+ 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
++# https://vz.ru/news/2014/3/17/677464.html
+ # From Paul Eggert (2014-03-30):
+ # Simferopol and Sevastopol reportedly changed their central town clocks
+ # late the previous day, but this appears to have been ceremonial
+@@ -2764,7 +2770,7 @@
+ # suggests that Altai Republic transitioned to Moscow+3 on
+ # 1995-05-28.
+ #
+-# http://regnum.ru/news/society/1957270.html
++# https://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
+@@ -3138,8 +3144,8 @@
+ # districts, but have very similar populations. In fact, Wikipedia currently
+ # lists them both as having 3528 people, exactly 1668 males and 1860 females
+ # each! (Yikes!)
+-# http://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
+-# http://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
++# https://en.wikipedia.org/w/?title=Srednekolymsky_District&oldid=603435276
++# https://en.wikipedia.org/w/?title=Verkhnekolymsky_District&oldid=594378493
+ # Assume this is a mistake, albeit an amusing one.
+ #
+ # Looking at censuses, the populations of the two municipalities seem to have
+@@ -3460,7 +3466,7 @@
+ #
+ # From Alois Treindl (2013-09-11):
+ # The Federal regulations say
+-# http://www.admin.ch/opc/de/classified-compilation/20071096/index.html
++# https://www.admin.ch/opc/de/classified-compilation/20071096/index.html
+ # ... the meridian for Bern mean time ... is 7 degrees 26' 22.50".
+ # Expressed in time, it is 0h29m45.5s.
+
+@@ -3537,9 +3543,9 @@
+ # According to the articles linked below, Turkey will change into summer
+ # time zone (GMT+3) on March 28, 2011 at 3:00 a.m. instead of March 27.
+ # This change is due to a nationwide exam on 27th.
+-# http://www.worldbulletin.net/?aType=haber&ArticleID=70872
++# https://www.worldbulletin.net/?aType=haber&ArticleID=70872
+ # Turkish:
+-# http://www.hurriyet.com.tr/ekonomi/17230464.asp?gid=373
++# https://www.hurriyet.com.tr/yaz-saati-uygulamasi-bir-gun-ileri-alindi-17230464
+
+ # From Faruk Pasin (2014-02-14):
+ # The DST for Turkey has been changed for this year because of the
+@@ -3675,7 +3681,7 @@
+ # http://www.segodnya.ua/news/14290482.html
+ #
+ # Deputies cancelled the winter time (in Russian)
+-# http://www.pravda.com.ua/rus/news/2011/09/20/6600616/
++# https://www.pravda.com.ua/rus/news/2011/09/20/6600616/
+ #
+ # From Philip Pizzey (2011-10-18):
+ # Today my Ukrainian colleagues have informed me that the
+--- contrib/tzdata/leap-seconds.list.orig
++++ contrib/tzdata/leap-seconds.list
+@@ -199,10 +199,10 @@
+ # current -- the update time stamp, the data and the name of the file
+ # will not change.
+ #
+-# Updated through IERS Bulletin C53
+-# File expires on: 28 December 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+ #
+-#@ 3723408000
++#@ 3739132800
+ #
+ 2272060800 10 # 1 Jan 1972
+ 2287785600 11 # 1 Jul 1972
+@@ -247,4 +247,4 @@
+ # the hash line is also ignored in the
+ # computation.
+ #
+-#h 62cf8c5d 8bbb6dcc c61e3b56 c308343 869bb80d
++#h 5101445a 69948b51 9153e2b 2086e3d8 d54561a3
+--- contrib/tzdata/leapseconds.orig
++++ contrib/tzdata/leapseconds
+@@ -3,19 +3,18 @@
+ # This file is in the public domain.
+
+ # 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 does not work,
+-# you should be able to pick up leap-seconds.list from a secondary NIST server.
+-# See for a list of secondary servers.
++# leap-seconds.list file, which is copied from:
++# ftp://ftp.nist.gov/pub/time/leap-seconds.list
+ # For more about leap-seconds.list, please see
+ # The NTP Timescale and Leap Seconds
+-# http://www.eecis.udel.edu/~mills/leap.html
++# https://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 .
++# Levine J. Coordinated Universal Time and the leap second.
++# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995
++# http://ieeexplore.ieee.org/document/7909995/
+ # 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.
+@@ -58,5 +57,5 @@
+ Leap 2015 Jun 30 23:59:60 + S
+ Leap 2016 Dec 31 23:59:60 + S
+
+-# Updated through IERS Bulletin C53
+-# File expires on: 28 December 2017
++# Updated through IERS Bulletin C54
++# File expires on: 28 June 2018
+--- contrib/tzdata/leapseconds.awk.orig
++++ contrib/tzdata/leapseconds.awk
+@@ -8,19 +8,18 @@
+ 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 does not work,"
+- print "# you should be able to pick up leap-seconds.list from a secondary NIST server."
+- print "# See for a list of secondary servers."
++ print "# leap-seconds.list file, which is copied from:"
++ print "# ftp://ftp.nist.gov/pub/time/leap-seconds.list"
+ 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 "# https://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 ."
++ print "# Levine J. Coordinated Universal Time and the leap second."
++ print "# URSI Radio Sci Bull. 2016;89(4):30-6. doi:10.23919/URSIRSB.2016.7909995"
++ print "# http://ieeexplore.ieee.org/document/7909995/"
+ 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."
+--- contrib/tzdata/northamerica.orig
++++ contrib/tzdata/northamerica
+@@ -105,10 +105,13 @@
+ # 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
++# https://web.archive.org/web/20000926032210/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.
++#
++# From Paul Eggert (2017-09-23):
++# This was the V-J Day issue of the Clamdigger, a Rowayton, CT newsletter.
+
+ # From Joseph Gallant citing
+ # George H. Douglas, _The Early Days of Radio Broadcasting_ (1987):
+@@ -257,7 +260,7 @@
+ # 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
++# https://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.
+@@ -346,7 +349,7 @@
+ # western Tennessee, most of Texas, Wisconsin
+
+ # From Larry M. Smith (2006-04-26) re Wisconsin:
+-# http://www.legis.state.wi.us/statutes/Stat0175.pdf ...
++# https://docs.legis.wisconsin.gov/statutes/statutes/175.pdf
+ # is currently enforced at the 01:00 time of change. Because the local
+ # "bar time" in the state corresponds to 02:00, a number of citations
+ # are issued for the "sale of class 'B' alcohol after prohibited
+@@ -355,7 +358,7 @@
+ # From Douglas R. Bomberg (2007-03-12):
+ # Wisconsin has enacted (nearly eleventh-hour) legislation to get WI
+ # Statue 175 closer in synch with the US Congress' intent....
+-# http://www.legis.state.wi.us/2007/data/acts/07Act3.pdf
++# https://docs.legis.wisconsin.gov/2007/related/acts/3
+
+ # 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
+@@ -402,7 +405,7 @@
+ # ...it appears that Mercer County, North Dakota, changed from the
+ # mountain time zone to the central time zone at the last transition from
+ # daylight-saving to standard time (on Nov. 7, 2010):
+-# http://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
++# https://www.gpo.gov/fdsys/pkg/FR-2010-09-29/html/2010-24376.htm
+ # http://www.bismarcktribune.com/news/local/article_1eb1b588-c758-11df-b472-001cc4c03286.html
+
+ # From Andy Lipscomb (2011-01-24):
+@@ -453,7 +456,7 @@
+ # 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
++# 1973-11. https://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
+@@ -474,8 +477,8 @@
+ # 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
++# https://repository.uchastings.edu/cgi/viewcontent.cgi?article=1501&context=ca_ballot_props
++# https://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:01 1:00 D
+@@ -492,20 +495,31 @@
+ # Alaska
+ # AK%sT is the modern abbreviation for -09 per USNO.
+ #
+-# From Paul Eggert (2001-05-30):
++# From Paul Eggert (2017-06-15):
+ # Howse writes that Alaska switched from the Julian to the Gregorian calendar,
+ # and from east-of-GMT to west-of-GMT days, when the US bought it from Russia.
+-# This was on 1867-10-18, a Friday; the previous day was 1867-10-06 Julian,
+-# also a Friday. Include only the time zone part of this transition,
+-# ignoring the switch from Julian to Gregorian, since we can't represent
+-# the Julian calendar.
++# On Friday, 1867-10-18 (Gregorian), at precisely 15:30 local time, the
++# Russian forts and fleet at Sitka fired salutes to mark the ceremony of
++# formal transfer. See the Sacramento Daily Union (1867-11-14), p 3, col 2.
++# https://cdnc.ucr.edu/cgi-bin/cdnc?a=d&d=SDU18671114.2.12.1
++# Sitka workers did not change their calendars until Sunday, 1867-10-20,
++# and so celebrated two Sundays that week. See: Ahllund T (tr Hallamaa P).
++# From the memoirs of a Finnish workman. Alaska History. 2006 Fall;21(2):1-25.
++# http://alaskahistoricalsociety.org/wp-content/uploads/2016/12/Ahllund-2006-Memoirs-of-a-Finnish-Workman.pdf
++# Include only the time zone part of this transition, ignoring the switch
++# from Julian to Gregorian, since we can't represent the Julian calendar.
+ #
+-# As far as we know, none of the exact locations mentioned below were
++# As far as we know, of the locations mentioned below only Sitka was
+ # permanently inhabited in 1867 by anyone using either calendar.
+-# (Yakutat was colonized by the Russians in 1799, but the settlement
+-# was destroyed in 1805 by a Yakutat-kon war party.) However, there
+-# were nearby inhabitants in some cases and for our purposes perhaps
+-# it's best to simply use the official transition.
++# (Yakutat was colonized by the Russians in 1799, but the settlement was
++# destroyed in 1805 by a Yakutat-kon war party.) Many of Alaska's inhabitants
++# were unaware of the US acquisition of Alaska, much less of any calendar or
++# time change. However, the Russian-influenced part of Alaska did observe
++# Russian time, and it is more accurate to model this than to ignore it.
++# The database format requires an exact transition time; use the Russian
++# salute as a somewhat-arbitrary time for the formal transfer of control for
++# all of Alaska. Sitka's UTC offset is -9:01:13; adjust its 15:30 to the
++# local times of other Alaskan locations so that they change simultaneously.
+
+ # From Paul Eggert (2014-07-18):
+ # One opinion of the early-1980s turmoil in Alaska over time zones and
+@@ -558,10 +572,10 @@
+ # 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/
++# https://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
++Zone America/Juneau 15:02:19 - LMT 1867 Oct 19 15:33:32
+ -8:57:41 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -571,7 +585,7 @@
+ -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
++Zone America/Sitka 14:58:47 - LMT 1867 Oct 19 15:30
+ -9:01:13 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -579,7 +593,7 @@
+ -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
++Zone America/Metlakatla 15:13:42 - LMT 1867 Oct 19 15:44:55
+ -8:46:18 - LMT 1900 Aug 20 12:00
+ -8:00 - PST 1942
+ -8:00 US P%sT 1946
+@@ -587,7 +601,7 @@
+ -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
++Zone America/Yakutat 14:41:05 - LMT 1867 Oct 19 15:12:18
+ -9:18:55 - LMT 1900 Aug 20 12:00
+ -9:00 - YST 1942
+ -9:00 US Y%sT 1946
+@@ -594,7 +608,7 @@
+ -9:00 - YST 1969
+ -9:00 US Y%sT 1983 Nov 30
+ -9:00 US AK%sT
+-Zone America/Anchorage 14:00:24 - LMT 1867 Oct 18
++Zone America/Anchorage 14:00:24 - LMT 1867 Oct 19 14:31:37
+ -9:59:36 - LMT 1900 Aug 20 12:00
+ -10:00 - AST 1942
+ -10:00 US A%sT 1967 Apr
+@@ -602,7 +616,7 @@
+ -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
++Zone America/Nome 12:58:22 - LMT 1867 Oct 19 13:29:35
+ -11:01:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -611,7 +625,7 @@
+ -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
++Zone America/Adak 12:13:22 - LMT 1867 Oct 19 12:44:35
+ -11:46:38 - LMT 1900 Aug 20 12:00
+ -11:00 - NST 1942
+ -11:00 US N%sT 1946
+@@ -647,7 +661,7 @@
+ # "Hawaiian Time" by Robert C. Schmitt and Doak C. Cox appears on pages 207-225
+ # of volume 26 of The Hawaiian Journal of History (1992). As of 2010-12-09,
+ # the article is available at
+-# http://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
++# https://evols.library.manoa.hawaii.edu/bitstream/10524/239/2/JL26215.pdf
+ # and indicates that standard time was adopted effective noon, January
+ # 13, 1896 (page 218), that in "1933, the Legislature decreed daylight
+ # saving for the period between the last Sunday of each April and the
+@@ -746,7 +760,7 @@
+ # Indiana
+ #
+ # For a map of Indiana's time zone regions, see:
+-# http://en.wikipedia.org/wiki/Time_in_Indiana
++# https://en.wikipedia.org/wiki/Time_in_Indiana
+ #
+ # From Paul Eggert (2007-08-17):
+ # Since 1970, most of Indiana has been like America/Indiana/Indianapolis,
+@@ -973,7 +987,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
++# https://www.gpo.gov/fdsys/pkg/FR-2000-08-17/html/00-20854.htm
+ #
+ Zone America/Kentucky/Monticello -5:39:24 - LMT 1883 Nov 18 12:20:36
+ -6:00 US C%sT 1946
+@@ -999,7 +1013,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
++# https://www.gpo.gov/fdsys/pkg/FR-1999-10-21/html/99-27240.htm
+ # 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.
+@@ -1029,12 +1043,23 @@
+ # one hour in 1914." This change is not in Shanks. We have no more
+ # info, so omit this for now.
+ #
++# From Paul Eggert (2017-07-26):
++# Although Shanks says Detroit observed DST in 1967 from 06-14 00:01
++# until 10-29 00:01, I now see multiple reports that this is incorrect.
++# For example, according to a 50-year anniversary report about the 1967
++# Detroit riots and a major-league doubleheader on 1967-07-23, "By the time
++# the last fly ball of the doubleheader settled into the glove of leftfielder
++# Lenny Green, it was after 7 p.m. Detroit did not observe daylight saving
++# time, so light was already starting to fail. Twilight was made even deeper
++# by billowing columns of smoke that ascended in an unbroken wall north of the
++# ballpark." See: Dow B. Detroit '67: As violence unfolded, Tigers played two
++# at home vs. Yankees. Detroit Free Press 2017-07-23.
++# https://www.freep.com/story/sports/mlb/tigers/2017/07/23/detroit-tigers-1967-riot-new-york-yankees/499951001/
++#
+ # Most of Michigan observed DST from 1973 on, but was a bit late in 1975.
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER
+ Rule Detroit 1948 only - Apr lastSun 2:00 1:00 D
+ Rule Detroit 1948 only - Sep lastSun 2:00 0 S
+-Rule Detroit 1967 only - Jun 14 2:00 1:00 D
+-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
+@@ -1098,7 +1123,7 @@
+ # [PDF] (1914-03)
+ #
+ # Milne J. Civil time. Geogr J. 1899 Feb;13(2):173-94
+-# .
++# .
+ #
+ # See the 'europe' file for Greenland.
+
+@@ -1144,19 +1169,19 @@
+ # The British Columbia government announced yesterday that it will
+ # adjust daylight savings next year to align with changes in the
+ # U.S. and the rest of Canada....
+-# http://www2.news.gov.bc.ca/news_releases_2005-2009/2006AG0014-000330.htm
++# https://archive.news.gov.bc.ca/releases/news_releases_2005-2009/2006AG0014-000330.htm
+ # ...
+ # Nova Scotia
+ # Daylight saving time will be extended by four weeks starting in 2007....
+-# http://www.gov.ns.ca/just/regulations/rg2/2006/ma1206.pdf
++# https://www.novascotia.ca/just/regulations/rg2/2006/ma1206.pdf
+ #
+ # [For New Brunswick] the new legislation dictates that the time change is to
+ # be done at 02:00 instead of 00:01.
+-# http://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
++# https://www.gnb.ca/0062/acts/BBA-2006/Chap-19.pdf
+ # ...
+ # Manitoba has traditionally changed the clock every fall at 03:00.
+ # As of 2006, the transition is to take place one hour earlier at 02:00.
+-# http://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
++# https://web2.gov.mb.ca/laws/statutes/ccsm/o030e.php
+ # ...
+ # [Alberta, Ontario, Quebec] will follow US rules.
+ # http://www.qp.gov.ab.ca/documents/spring/CH03_06.CFM
+@@ -1170,7 +1195,7 @@
+ # http://www.hoa.gov.nl.ca/hoa/bills/Bill0634.htm
+ # ...
+ # Yukon
+-# http://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
++# https://www.gov.yk.ca/legislation/regs/oic2006_127.pdf
+ # ...
+ # N.W.T. will follow US rules. Whoever maintains the government web site
+ # does not seem to believe in bookmarks. To see the news release, click the
+@@ -1191,8 +1216,8 @@
+ # time and daylight saving time arrangements in Canada circa 1998.
+ #
+ # 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
++# https://www.nrc-cnrc.gc.ca/eng/services/time/time_zones.html
++# https://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):
+@@ -1229,11 +1254,13 @@
+
+ # Newfoundland and Labrador
+
+-# From Paul Eggert (2000-10-02):
+-# Matthews and Vincent (1998) write that Labrador should use NST/NDT,
+-# but the only part of Labrador that follows the rules is the
+-# southeast corner, including Port Hope Simpson and Mary's Harbour,
+-# but excluding, say, Black Tickle.
++# From Paul Eggert (2017-10-14):
++# Legally Labrador should observe Newfoundland time; see:
++# McLeod J. Labrador time - legal or not? St. John's Telegram, 2017-10-07
++# http://www.thetelegram.com/news/local/labrador-time--legal-or-not-154860/
++# Matthews and Vincent (1998) write that the only part of Labrador
++# that follows the rules is the southeast corner, including Port Hope
++# Simpson and Mary's Harbour, but excluding, say, Black Tickle.
+
+ # Rule NAME FROM TO TYPE IN ON AT SAVE LETTER/S
+ Rule StJohns 1917 only - Apr 8 2:00 1:00 D
+@@ -1433,7 +1460,7 @@
+ # http://www.justice.gouv.qc.ca/english/publications/generale/temps-minganie-a.htm
+ # that the coastal strip from just east of Natashquan to Blanc-Sablon
+ # observes Atlantic standard time all year round.
+-# http://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
++# https://www.assnat.qc.ca/Media/Process.aspx?MediaId=ANQ.Vigie.Bll.DocumentGenerique_8845en
+ # says this common practice was codified into law as of 2007.
+ # For lack of better info, guess this practice began around 1970, contra to
+ # Shanks & Pottenger who have this region observing AST/ADT.
+@@ -1465,6 +1492,11 @@
+ # earlier in June).
+ #
+ # Kenora, Ontario, was to abandon DST on 1914-06-01 (-05-21).
++#
++# From Paul Eggert (2017-07-08):
++# For more on Orillia, see: Daubs K. Bold attempt at daylight saving
++# time became a comic failure in Orillia. Toronto Star 2017-07-08.
++# https://www.thestar.com/news/insight/2017/07/08/bold-attempt-at-daylight-saving-time-became-a-comic-failure-in-orillia.html
+
+ # From Paul Eggert (1997-10-17):
+ # Mark Brader writes that an article in the 1997-10-14 Toronto Star
+@@ -1956,7 +1988,7 @@
+ # * 1967. Paragraph 28(34)(g) of the Interpretation Act, S.C. 1967-68,
+ # 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]
++# [https://www.canlii.org/en/ca/laws/stat/rsc-1985-c-i-21/latest/rsc-1985-c-i-21.html]
+ # * 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.
+@@ -2021,7 +2053,7 @@
+ # 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
++# https://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
+@@ -2036,7 +2068,7 @@
+ # 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
++# https://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
+@@ -2048,7 +2080,7 @@
+ # 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
++# https://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
+@@ -2062,7 +2094,7 @@
+ # 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
++# https://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.
+@@ -2105,7 +2137,7 @@
+
+ # From Michaela Rodrigue, writing in the
+ # Nunatsiaq News (1999-11-19):
+-# http://www.nunatsiaq.com/archives/nunavut991130/nvt91119_17.html
++# http://www.nunatsiaqonline.ca/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]
+@@ -2123,7 +2155,7 @@
+ # Central Time and Southampton Island [in the Central zone] is not
+ # required to use daylight savings.
+
+-# From
++# From
+ # Nunavut now has two time zones (2000-11-10):
+ # The Nunavut government would allow its employees in Kugluktuk and
+ # Cambridge Bay to operate on central time year-round, putting them
+@@ -2454,7 +2486,7 @@
+ # http://gaceta.diputados.gob.mx/Gaceta/61/2009/dic/V2-101209.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/north-mexico-dst-change.html
++# https://www.timeanddate.com/news/time/north-mexico-dst-change.html
+
+ # From Arthur David Olson (2010-01-20):
+ # The page
+@@ -2873,7 +2905,7 @@
+ # http://www.nnc.cubaweb.cu/marzo-2008/cien-1-11-3-08.htm
+ #
+ # Some more background information is posted here:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-march-16.html
+ #
+ # The article also says that Cuba has been observing DST since 1963,
+ # while Shanks (and tzdata) has 1965 as the first date (except in the
+@@ -2920,7 +2952,7 @@
+ # http://granma.co.cu/2011/03/08/nacional/artic01.html
+ #
+ # Our info:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2011.html
+ #
+ # From Steffen Thorsen (2011-10-30)
+ # Cuba will end DST two weeks later this year. Instead of going back
+@@ -2930,7 +2962,7 @@
+ # http://www.radioangulo.cu/noticias/cuba/17105-cuba-restablecera-el-horario-del-meridiano-de-greenwich.html
+ #
+ # Our page:
+-# http://www.timeanddate.com/news/time/cuba-time-changes-2011.html
++# https://www.timeanddate.com/news/time/cuba-time-changes-2011.html
+ #
+ # From Steffen Thorsen (2012-03-01)
+ # According to Radio Reloj, Cuba will start DST on Midnight between March
+@@ -2940,7 +2972,7 @@
+ # http://www.radioreloj.cu/index.php/noticias-radio-reloj/71-miscelaneas/7529-cuba-aplicara-el-horario-de-verano-desde-el-1-de-abril
+ #
+ # Our info on it:
+-# http://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
++# https://www.timeanddate.com/news/time/cuba-starts-dst-2012.html
+
+ # From Steffen Thorsen (2012-11-03):
+ # Radio Reloj and many other sources report that Cuba is changing back
+@@ -3135,8 +3167,8 @@
+ # 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/
++# https://www.radiotelevisioncaraibes.com/presse/heure_d_t_pas_de_changement_d_heure_pr_vu_pour_cet_ann_e.html
++# https://www.vantbefinfo.com/changement-dheure-pas-pour-haiti/
+ # http://news.anmwe.com/haiti-lheure-nationale-ne-sera-ni-avancee-ni-reculee-cette-annee/
+
+ # From Steffen Thorsen (2017-03-12):
+@@ -3335,7 +3367,7 @@
+ # Turks and Caicos
+ #
+ # From Chris Dunn in
+-# http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=415007
++# https://bugs.debian.org/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.
+@@ -3357,12 +3389,25 @@
+ # "permanent daylight saving time" by one year....
+ # http://tcweeklynews.com/time-change-to-go-ahead-this-november-p5437-127.htm
+ #
++# From the Turks & Caicos Cabinet (2017-07-20), heads-up from Steffen Thorsen:
++# ... agreed to the reintroduction in TCI of Daylight Saving Time (DST)
++# during the summer months and Standard Time, also known as Local
++# Time, during the winter months with effect from April 2018 ...
++# https://www.gov.uk/government/news/turks-and-caicos-post-cabinet-meeting-statement--3
++#
++# From Paul Eggert (2017-08-26):
++# The date of effect of the spring 2018 change appears to be March 11,
++# which makes more sense. See: Hamilton D. Time change back
++# by March 2018 for TCI. Magnetic Media. 2017-08-25.
++# http://magneticmediatv.com/2017/08/time-change-back-by-march-2018-for-tci/
++#
+ # 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 - EST 1979
+ -5:00 US E%sT 2015 Nov Sun>=1 2:00
+- -4:00 - AST
++ -4:00 - AST 2018 Mar 11 3:00
++ -5:00 US E%sT
+
+ # British Virgin Is
+ # Virgin Is
+--- contrib/tzdata/southamerica.orig
++++ contrib/tzdata/southamerica
+@@ -22,7 +22,7 @@
+ #
+ # 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
++# https://www.jstor.org/stable/1774359
+ #
+ # These tables use numeric abbreviations like -03 and -0330 for
+ # integer hour and minute UTC offsets. Although earlier editions used
+@@ -265,8 +265,8 @@
+ #
+ # Es inminente que en San Luis atrasen una hora los relojes
+ # (It is imminent in San Luis clocks one hour delay)
+-# http://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
+-# http://www.worldtimezone.net/dst_news/dst_news_argentina02.html
++# https://www.lagaceta.com.ar/nota/253414/Economia/Es-inminente-que-en-San-Luis-atrasen-una-hora-los-relojes.html
++# http://www.worldtimezone.com/dst_news/dst_news_argentina02.html
+
+ # From Jesper Nørgaard Welen (2008-01-18):
+ # The page of the San Luis provincial government
+@@ -385,7 +385,7 @@
+ # 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 -03; see, for example,
+-# http://es.wikipedia.org/wiki/Hora_oficial_argentina
++# https://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
+@@ -716,7 +716,7 @@
+ # (Portuguese)
+ #
+ # We have a written a short article about it as well:
+-# http://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
++# https://www.timeanddate.com/news/time/brazil-dst-2008-2009.html
+ #
+ # From Alexander Krivenyshev (2011-10-04):
+ # State Bahia will return to Daylight savings time this year after 8 years off.
+@@ -725,7 +725,7 @@
+
+ # In Portuguese:
+ # http://g1.globo.com/bahia/noticia/2011/10/governador-jaques-wagner-confirma-horario-de-verao-na-bahia.html
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI5390887-EI8139,00-Bahia+volta+a+ter+horario+de+verao+apos+oito+anos.html
+
+ # From Guilherme Bernardes Rodrigues (2011-10-07):
+ # There is news in the media, however there is still no decree about it.
+@@ -751,16 +751,16 @@
+
+ # From Rodrigo Severo (2012-10-16):
+ # Tocantins state will have DST.
+-# http://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
++# https://noticias.terra.com.br/brasil/noticias/0,,OI6232536-EI306.html
+
+ # From Steffen Thorsen (2013-09-20):
+ # Tocantins in Brazil is very likely not to observe DST from October....
+ # http://conexaoto.com.br/2013/09/18/ministerio-confirma-que-tocantins-esta-fora-do-horario-de-verao-em-2013-mas-falta-publicacao-de-decreto
+ # We will keep this article updated when this is confirmed:
+-# http://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
++# https://www.timeanddate.com/news/time/brazil-starts-dst-2013.html
+
+ # From Steffen Thorsen (2013-10-17):
+-# http://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
++# https://www.timeanddate.com/news/time/acre-amazonas-change-time-zone.html
+ # Senator Jorge Viana announced that Acre will change time zone on November 10.
+ # He did not specify the time of the change, nor if western parts of Amazonas
+ # will change as well.
+@@ -1076,18 +1076,18 @@
+ # 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:
++# This contains a copy of 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
++# https://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
++# https://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
++# https://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:
+@@ -1363,10 +1363,10 @@
+ # Milne says the Central and South American Telegraph Company used -5:24:15.
+ #
+ # From Alois Treindl (2016-12-15):
+-# http://www.elcomercio.com/actualidad/hora-sixto-1993.html
++# https://www.elcomercio.com/actualidad/hora-sixto-1993.html
+ # ... Whether the law applied also to Galápagos, I do not know.
+ # From Paul Eggert (2016-12-15):
+-# http://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
++# https://www.elcomercio.com/afull/modificacion-husohorario-ecuador-presidentes-decreto.html
+ # This says President Sixto Durán Ballén signed decree No. 285, which
+ # established DST from 1992-11-28 to 1993-02-05; it does not give transition
+ # times. The people called it "hora de Sixto" ("Sixto hour"). The change did
+@@ -1778,7 +1778,7 @@
+ # 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
++# https://www.reuters.com/article/us-venezuela-timezone-idUSKCN0XC2BE
+ #
+ # From Matt Johnson (2016-04-20):
+ # ... published in the official Gazette [2016-04-18], here:
+--- contrib/tzdata/theory.html.orig
++++ contrib/tzdata/theory.html
+@@ -0,0 +1,1034 @@
++
++
++
++ Theory and pragmatics of the tz code and data
++
++
++
++
++
++
++
Theory and pragmatics of the tz code and data
++
Outline
++
++
++
++
++
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 timestamps 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 timestamps 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-2008, 2016 Edition.
++
++
++
++
++
++
++
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 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' and 'GMT+0', 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.
++
++
++ Use current abbreviations for older timestamps to avoid confusion.
++ For example, in 1910 a common English abbreviation for UT +01
++ in central Europe was 'MEZ' (short for both "Middle European
++ Zone" and for "Mitteleuropäische Zeit" in German). Nowadays
++ 'CET' ("Central European Time") is more common in English, and
++ the database uses 'CET' even for circa-1910 timestamps as this
++ is less confusing for modern users and avoids the need for
++ determining when 'CET' supplanted 'MEZ' in common usage.
++
++
++ Use a consistent style in a zone's history. For example, if a zone's
++ history tends to use numeric abbreviations and a particular
++ entry could go either way, use a numeric abbreviation.
++
++
++ [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. 'CHAST' for CHAtham 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 timestamps, 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.
++
++
++ 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
++ "History of
++ legal time in Britain".
++ 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
++ clock error.
++
++
++ The tz database assumes Universal Time (UT) as an origin, even
++ though UT is not standardized for older timestamps. In the tz
++ database commentary, UT denotes a family of time standards that
++ includes Coordinated Universal Time (UTC) along with other variants
++ such as UT1 and GMT, with days starting at midnight. Although UT
++ equals UTC for modern timestamps, UTC was not defined until 1960,
++ so commentary uses the more-general abbreviation UT for timestamps
++ that might predate 1960. Since UT, UT1, etc. disagree slightly,
++ and since pre-1972 UTC seconds varied in length, interpretation of
++ older timestamps can be problematic when subsecond accuracy is
++ needed.
++
++
++ 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: Stephenson FR, Morrison LV, Hohenkerk CY.
++ Measurement
++ of the Earth's rotation: 720 BC to AD 2015.
++ Proc Royal Soc A. 2016 Dec 7;472:20160404.
++ Also see: Espenak F. Uncertainty
++ in Delta T (ΔT).
++
++
++ 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
++timestamps 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:
++
++ 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 New Zealand after 2007.
++ It says that standard time (NZST) is 12 hours ahead of UTC,
++ and that daylight saving time (NZDT) is observed from September's
++ last Sunday at 02:00 until April's first Sunday at 03:00:
++
++
TZ='NZST-12NZDT,M9.5.0,M4.1.0/3'
++
++ This POSIX TZ string is hard to remember, and mishandles some
++ timestamps before 2008. With this package you can use this
++ instead:
++
++
TZ='Pacific/Auckland'
++
++
++ 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 timestamps,
++ 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
++ localtime(&clock)->tm_zone
++ (if TM_ZONE is defined) or
++ tzname[localtime(&clock)->tm_isdst]
++ (if HAVE_TZNAME is defined)
++ to learn the correct time zone abbreviation to use.
++
++
++ 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:
++
++ 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.
++
++
++ The version number of the code and data, as the first line of
++ the text file 'version' in each release.
++
++
++
++Interface changes in a release attempt to preserve compatibility with
++recent releases. 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. Sources for time zone and daylight
++saving time data describes how
++releases are tagged and distributed.
++
++
++
++Interfaces not listed above are less stable. For example, users
++should not rely on particular UT offsets or abbreviations for
++timestamps, 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).
++Other information and sources are given in the file 'calendars'
++in the tz distribution. They sometimes disagree.
++
++
++
++
++
++
Time and time zones on other planets
++
++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.
++
++
++
++In our solar system, Mars is the planet with time and calendar most
++like Earth's. On other planets, Sun-based time and calendars would
++work quite differently. For example, although Mercury's sidereal
++rotation period is 58.646 Earth days, Mercury revolves around the Sun
++so rapidly that an observer on Mercury's equator would see a sunrise
++only every 175.97 Earth days, i.e., a Mercury year is 0.5 of a Mercury
++day. Venus is more complicated, partly because its rotation is
++slightly retrograde: its year is 1.92 of its days. Gas giants like
++Jupiter are trickier still, as their polar and equatorial regions
++rotate at different rates, so that the length of a day depends on
++latitude. This effect is most pronounced on Neptune, where the day is
++about 12 hours at the poles and 18 hours at the equator.
++
++
++
++Although the tz database does not support time on other planets, it is
++documented here in the hopes that support will be added eventually.
++
++
++
++
++
++
+--- contrib/tzdata/version.orig
++++ contrib/tzdata/version
+@@ -1 +1 @@
+-2017b
++2017c
+--- contrib/tzdata/zishrink.awk.orig
++++ contrib/tzdata/zishrink.awk
+@@ -0,0 +1,156 @@
++# Convert tzdata source into a smaller version of itself.
++
++# Contributed by Paul Eggert. This file is in the public domain.
++
++# This is not a general-purpose converter; it is designed for current tzdata.
++# 'zic' should treat this script's output as if it were identical to
++# this script's input.
++
++
++# Return a new rule name.
++# N_RULE_NAMES keeps track of how many rule names have been generated.
++
++function gen_rule_name(alphabet, base, rule_name, n, digit)
++{
++ alphabet = ""
++ alphabet = alphabet "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
++ alphabet = alphabet "abcdefghijklmnopqrstuvwxyz"
++ alphabet = alphabet "!$%&'()*+,./:;<=>?@[\\]^_`{|}~"
++ base = length(alphabet)
++ rule_name = ""
++ n = n_rule_names++
++
++ do {
++ n -= rule_name && n <= base
++ digit = n % base
++ rule_name = substr(alphabet, digit + 1, 1) rule_name
++ n = (n - digit) / base
++ } while (n);
++
++ return rule_name
++}
++
++# Process an input line and save it for later output.
++
++function process_input_line(line, field, end, i, n, startdef)
++{
++ # Remove comments, normalize spaces, and append a space to each line.
++ sub(/#.*/, "", line)
++ line = line " "
++ gsub(/[[:space:]]+/, " ", line)
++
++ # Abbreviate keywords. Do not abbreviate "Link" to just "L",
++ # as pre-2017c zic erroneously diagnoses "Li" as ambiguous.
++ sub(/^Link /, "Li ", line)
++ sub(/^Rule /, "R ", line)
++ sub(/^Zone /, "Z ", line)
++
++ # SystemV rules are not needed.
++ if (line ~ /^R SystemV /) return
++
++ # Replace FooAsia rules with the same rules without "Asia", as they
++ # are duplicates.
++ if (match(line, /[^ ]Asia /)) {
++ if (line ~ /^R /) return
++ line = substr(line, 1, RSTART) substr(line, RSTART + 5)
++ }
++
++ # Abbreviate times.
++ while (match(line, /[: ]0+[0-9]/))
++ line = substr(line, 1, RSTART) substr(line, RSTART + RLENGTH - 1)
++ while (match(line, /:0[^:]/))
++ line = substr(line, 1, RSTART - 1) substr(line, RSTART + 2)
++
++ # Abbreviate weekday names. Do not abbreviate "Sun" and "Sat", as
++ # pre-2017c zic erroneously diagnoses "Su" and "Sa" as ambiguous.
++ while (match(line, / (last)?(Mon|Wed|Fri)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 4) substr(line, end - 1)
++ }
++ while (match(line, / (last)?(Tue|Thu)[ <>]/)) {
++ end = RSTART + RLENGTH
++ line = substr(line, 1, end - 3) substr(line, end - 1)
++ }
++
++ # Abbreviate "max", "only" and month names.
++ # Do not abbreviate "min", as pre-2017c zic erroneously diagnoses "mi"
++ # as ambiguous.
++ gsub(/ max /, " ma ", line)
++ gsub(/ only /, " o ", line)
++ gsub(/ Jan /, " Ja ", line)
++ gsub(/ Feb /, " F ", line)
++ gsub(/ Apr /, " Ap ", line)
++ gsub(/ Aug /, " Au ", line)
++ gsub(/ Sep /, " S ", line)
++ gsub(/ Oct /, " O ", line)
++ gsub(/ Nov /, " N ", line)
++ gsub(/ Dec /, " D ", line)
++
++ # Strip leading and trailing space.
++ sub(/^ /, "", line)
++ sub(/ $/, "", line)
++
++ # Remove unnecessary trailing zero fields.
++ sub(/ 0+$/, "", line)
++
++ # Remove unnecessary trailing days-of-month "1".
++ if (match(line, /[[:alpha:]] 1$/))
++ line = substr(line, 1, RSTART)
++
++ # Remove unnecessary trailing " Ja" (for January).
++ sub(/ Ja$/, "", line)
++
++ n = split(line, field)
++
++ # Abbreviate rule names.
++ i = field[1] == "Z" ? 4 : field[1] == "Li" ? 0 : 2
++ if (i && field[i] ~ /^[^-+0-9]/) {
++ if (!rule[field[i]])
++ rule[field[i]] = gen_rule_name()
++ field[i] = rule[field[i]]
++ }
++
++ # If this zone supersedes an earlier one, delete the earlier one
++ # from the saved output lines.
++ startdef = ""
++ if (field[1] == "Z")
++ zonename = startdef = field[2]
++ else if (field[1] == "Li")
++ zonename = startdef = field[3]
++ else if (field[1] == "R")
++ zonename = ""
++ if (startdef) {
++ i = zonedef[startdef]
++ if (i) {
++ do
++ output_line[i - 1] = ""
++ while (output_line[i++] ~ /^[-+0-9]/);
++ }
++ }
++ zonedef[zonename] = nout + 1
++
++ # Save the line for later output.
++ line = field[1]
++ for (i = 2; i <= n; i++)
++ line = line " " field[i]
++ output_line[nout++] = line
++}
++
++function output_saved_lines(i)
++{
++ for (i = 0; i < nout; i++)
++ if (output_line[i])
++ print output_line[i]
++}
++
++BEGIN {
++ print "# This zic input file is in the public domain."
++}
++
++/^[[:space:]]*[^#[:space:]]/ {
++ process_input_line($0)
++}
++
++END {
++ output_saved_lines()
++}
+--- contrib/tzdata/zone.tab.orig
++++ contrib/tzdata/zone.tab
+@@ -186,7 +186,7 @@
+ GD +1203-06145 America/Grenada
+ GE +4143+04449 Asia/Tbilisi
+ GF +0456-05220 America/Cayenne
+-GG +4927-00232 Europe/Guernsey
++GG +492717-0023210 Europe/Guernsey
+ GH +0533-00013 Africa/Accra
+ GI +3608-00521 Europe/Gibraltar
+ GL +6411-05144 America/Godthab Greenland (most areas)
+@@ -221,7 +221,7 @@
+ IR +3540+05126 Asia/Tehran
+ IS +6409-02151 Atlantic/Reykjavik
+ IT +4154+01229 Europe/Rome
+-JE +4912-00207 Europe/Jersey
++JE +491101-0020624 Europe/Jersey
+ JM +175805-0764736 America/Jamaica
+ JO +3157+03556 Asia/Amman
+ JP +353916+1394441 Asia/Tokyo
+--- contrib/tzdata/zone1970.tab.orig
++++ contrib/tzdata/zone1970.tab
+@@ -2,7 +2,7 @@
+ #
+ # This file is in the public domain.
+ #
+-# From Paul Eggert (2014-07-31):
++# From Paul Eggert (2017-10-01):
+ # This file contains a table where each row stands for a zone where
+ # civil time stamps have agreed since 1970. Columns are separated by
+ # a single tab. Lines beginning with '#' are comments. All text uses
+@@ -16,7 +16,7 @@
+ # either +-DDMM+-DDDMM or +-DDMMSS+-DDDMMSS,
+ # first latitude (+ is north), then longitude (+ is east).
+ # 3. Zone name used in value of TZ environment variable.
+-# Please see the 'Theory' file for how zone names are chosen.
++# Please see the theory.html file for how zone names are chosen.
+ # If multiple zones overlap a country, each has a row in the
+ # table, with each column 1 containing the country code.
+ # 4. Comments; present if and only if a country has multiple zones.
+@@ -317,10 +317,11 @@
+ SA,KW,YE +2438+04643 Asia/Riyadh
+ SB -0932+16012 Pacific/Guadalcanal
+ SC -0440+05528 Indian/Mahe
+-SD,SS +1536+03232 Africa/Khartoum
++SD +1536+03232 Africa/Khartoum
+ SE +5920+01803 Europe/Stockholm
+ SG +0117+10351 Asia/Singapore
+ SR +0550-05510 America/Paramaribo
++SS +0451+03137 Africa/Juba
+ SV +1342-08912 America/El_Salvador
+ SY +3330+03618 Asia/Damascus
+ TC +2128-07108 America/Grand_Turk
diff --git a/share/security/patches/EN-17:09/tzdata-11.1.patch.asc b/share/security/patches/EN-17:09/tzdata-11.1.patch.asc
new file mode 100644
index 0000000000..862b43a912
--- /dev/null
+++ b/share/security/patches/EN-17:09/tzdata-11.1.patch.asc
@@ -0,0 +1,18 @@
+-----BEGIN PGP SIGNATURE-----
+
+iQKTBAABCgB9FiEEHPf/b631yp++G4yy7Wfs1l3PaucFAln7PXNfFIAAAAAALgAo
+aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDFD
+RjdGRjZGQURGNUNBOUZCRTFCOENCMkVENjdFQ0Q2NURDRjZBRTcACgkQ7Wfs1l3P
+aucjGw/+NiOz552mus6PkvE+Bec2QycZuDvhLkZ3lPHJTh/hVzTKQ+48wX3sboeI
+VsBf6l5Ay5RQz+sz6QAvyKEQvlD0XHKWTg3gPtnp57KcskQGvRK3p96Hp5Iw3nVb
+JS5bSs0WgCAIk/J/8Q4a1YCNfhjdJ/QDoufIavAa0BlwLeO4vr45BLDXAhPCfdNF
+nt7Vk63JjtlOw7zvGj+JJHWIarY2NGE7sbAFalfdywBdiJNzVpeoZowNBuhI5hmR
+Y0FXFVHLVkXUrNJ3BL2wZQPowCSGfdf9UAgOkNMWQyiqvSI6ahcqg/ASs+EZt0Yg
+67/PavXCpq5xjFvx8exNp9/eI8NifgEnXV4ZEl1O9eRDuwVfTKP/wou5/23OAcgK
+VUzRx4UUBzMUWhxlKOWLYcxkh0a7RuZf0ZoGSZjyTS0c3132xbjkej4wdOsZLJXB
+xWSczhEFcthn8CaOjfbPiHqElrcYf2WlF/LiUQmLkEVDHj6/DX6Wtm/WRvkLgSYJ
+ZPfbuDEUP1zG8GIu6i7MCNeKX2NMKxoMIMolNjSrowSNLr+PTqialKDcsuj2LCNv
+aaVRR00zwGvVGwDSDffE9VM7VrNm3Kh3iJk7mpkk/z9ywUrHW6642L5Ab/BmGq3N
+3Mzqb9pvJQgwdSv9J7er2P4jon8haeCHupTzyvpFyMB02d4EJXI=
+=g5SZ
+-----END PGP SIGNATURE-----
diff --git a/share/xml/notices.xml b/share/xml/notices.xml
index 2618289894..6ce38192ec 100644
--- a/share/xml/notices.xml
+++ b/share/xml/notices.xml
@@ -7,6 +7,18 @@
2017
+
+ 11
+
+
+ 2
+
+
+ FreeBSD-EN-17:09.tzdata
+
+
+
+
8