1289421Scy#
2295461Scy#	In the following text, the symbol '#' introduces
3320350Scy#	a comment, which continues from that symbol until
4295461Scy#	the end of the line. A plain comment line has a
5295461Scy#	whitespace character following the comment indicator.
6320350Scy#	There are also special comment lines defined below.
7320350Scy#	A special comment will always have a non-whitespace
8295461Scy#	character in column 2.
9289421Scy#
10295461Scy#	A blank line should be ignored.
11289421Scy#
12295461Scy#	The following table shows the corrections that must
13295461Scy#	be applied to compute International Atomic Time (TAI)
14295461Scy#	from the Coordinated Universal Time (UTC) values that
15295461Scy#	are transmitted by almost all time services.
16289421Scy#
17295461Scy#	The first column shows an epoch as a number of seconds
18320350Scy#	since 1 January 1900, 00:00:00 (1900.0 is also used to
19320350Scy#	indicate the same epoch.) Both of these time stamp formats
20320350Scy#	ignore the complexities of the time scales that were
21320350Scy#	used before the current definition of UTC at the start
22320350Scy#	of 1972. (See note 3 below.)
23320350Scy#	The second column shows the number of seconds that
24320350Scy#	must be added to UTC to compute TAI for any timestamp
25320350Scy#	at or after that epoch. The value on each line is
26320350Scy#	valid from the indicated initial instant until the
27320350Scy#	epoch given on the next one or indefinitely into the
28320350Scy#	future if there is no next line.
29295461Scy#	(The comment on each line shows the representation of
30320350Scy#	the corresponding initial epoch in the usual
31295461Scy#	day-month-year format. The epoch always begins at
32295461Scy#	00:00:00 UTC on the indicated day. See Note 5 below.)
33320350Scy#
34295461Scy#	Important notes:
35289421Scy#
36295461Scy#	1. Coordinated Universal Time (UTC) is often referred to
37295461Scy#	as Greenwich Mean Time (GMT). The GMT time scale is no
38295461Scy#	longer used, and the use of GMT to designate UTC is
39295461Scy#	discouraged.
40289421Scy#
41320350Scy#	2. The UTC time scale is realized by many national
42295461Scy#	laboratories and timing centers. Each laboratory
43295461Scy#	identifies its realization with its name: Thus
44295461Scy#	UTC(NIST), UTC(USNO), etc. The differences among
45295461Scy#	these different realizations are typically on the
46295461Scy#	order of a few nanoseconds (i.e., 0.000 000 00x s)
47295461Scy#	and can be ignored for many purposes. These differences
48295461Scy#	are tabulated in Circular T, which is published monthly
49295461Scy#	by the International Bureau of Weights and Measures
50320350Scy#	(BIPM). See www.bipm.org for more information.
51289421Scy#
52320350Scy#	3. The current definition of the relationship between UTC
53320350Scy#	and TAI dates from 1 January 1972. A number of different
54320350Scy#	time scales were in use before that epoch, and it can be
55320350Scy#	quite difficult to compute precise timestamps and time
56295461Scy#	intervals in those "prehistoric" days. For more information,
57295461Scy#	consult:
58289421Scy#
59295461Scy#		The Explanatory Supplement to the Astronomical
60295461Scy#		Ephemeris.
61295461Scy#	or
62295461Scy#		Terry Quinn, "The BIPM and the Accurate Measurement
63295461Scy#		of Time," Proc. of the IEEE, Vol. 79, pp. 894-905,
64295461Scy#		July, 1991.
65289421Scy#
66320350Scy#	4. The decision to insert a leap second into UTC is currently
67320350Scy#	the responsibility of the International Earth Rotation and
68320350Scy#	Reference Systems Service. (The name was changed from the
69320350Scy#	International Earth Rotation Service, but the acronym IERS
70320350Scy#	is still used.)
71289421Scy#
72320350Scy#	Leap seconds are announced by the IERS in its Bulletin C.
73289421Scy#
74320350Scy#	See www.iers.org for more details.
75289421Scy#
76320350Scy#	Every national laboratory and timing center uses the
77320350Scy#	data from the BIPM and the IERS to construct UTC(lab),
78320350Scy#	their local realization of UTC.
79289421Scy#
80295461Scy#	Although the definition also includes the possibility
81320350Scy#	of dropping seconds ("negative" leap seconds), this has
82320350Scy#	never been done and is unlikely to be necessary in the
83295461Scy#	foreseeable future.
84289421Scy#
85295461Scy#	5. If your system keeps time as the number of seconds since
86295461Scy#	some epoch (e.g., NTP timestamps), then the algorithm for
87295461Scy#	assigning a UTC time stamp to an event that happens during a positive
88320350Scy#	leap second is not well defined. The official name of that leap
89320350Scy#	second is 23:59:60, but there is no way of representing that time
90320350Scy#	in these systems.
91320350Scy#	Many systems of this type effectively stop the system clock for
92320350Scy#	one second during the leap second and use a time that is equivalent
93320350Scy#	to 23:59:59 UTC twice. For these systems, the corresponding TAI
94295461Scy#	timestamp would be obtained by advancing to the next entry in the
95295461Scy#	following table when the time equivalent to 23:59:59 UTC
96295461Scy#	is used for the second time. Thus the leap second which
97295461Scy#	occurred on 30 June 1972 at 23:59:59 UTC would have TAI
98295461Scy#	timestamps computed as follows:
99289421Scy#
100295461Scy#	...
101295461Scy#	30 June 1972 23:59:59 (2287785599, first time):	TAI= UTC + 10 seconds
102295461Scy#	30 June 1972 23:59:60 (2287785599,second time):	TAI= UTC + 11 seconds
103295461Scy#	1  July 1972 00:00:00 (2287785600)		TAI= UTC + 11 seconds
104295461Scy#	...
105289421Scy#
106295461Scy#	If your system realizes the leap second by repeating 00:00:00 UTC twice
107295461Scy#	(this is possible but not usual), then the advance to the next entry
108320350Scy#	in the table must occur the second time that a time equivalent to
109295461Scy#	00:00:00 UTC is used. Thus, using the same example as above:
110289421Scy#
111295461Scy#	...
112295461Scy#       30 June 1972 23:59:59 (2287785599):		TAI= UTC + 10 seconds
113295461Scy#       30 June 1972 23:59:60 (2287785600, first time):	TAI= UTC + 10 seconds
114295461Scy#       1  July 1972 00:00:00 (2287785600,second time):	TAI= UTC + 11 seconds
115295461Scy#	...
116289421Scy#
117295461Scy#	in both cases the use of timestamps based on TAI produces a smooth
118320350Scy#	time scale with no discontinuity in the time interval. However,
119320350Scy#	although the long-term behavior of the time scale is correct in both
120320350Scy#	methods, the second method is technically not correct because it adds
121320350Scy#	the extra second to the wrong day.
122289421Scy#
123320350Scy#	This complexity would not be needed for negative leap seconds (if they
124320350Scy#	are ever used). The UTC time would skip 23:59:59 and advance from
125320350Scy#	23:59:58 to 00:00:00 in that case. The TAI offset would decrease by
126320350Scy#	1 second at the same instant. This is a much easier situation to deal
127320350Scy#	with, since the difficulty of unambiguously representing the epoch
128295461Scy#	during the leap second does not arise.
129289421Scy#
130320350Scy#	Some systems implement leap seconds by amortizing the leap second
131320350Scy#	over the last few minutes of the day. The frequency of the local
132320350Scy#	clock is decreased (or increased) to realize the positive (or
133320350Scy#	negative) leap second. This method removes the time step described
134320350Scy#	above. Although the long-term behavior of the time scale is correct
135320350Scy#	in this case, this method introduces an error during the adjustment
136320350Scy#	period both in time and in frequency with respect to the official
137320350Scy#	definition of UTC.
138320350Scy#
139295461Scy#	Questions or comments to:
140320350Scy#		Judah Levine
141320350Scy#		Time and Frequency Division
142320350Scy#		NIST
143320350Scy#		Boulder, Colorado
144320350Scy#		Judah.Levine@nist.gov
145289421Scy#
146320350Scy#	Last Update of leap second values:   8 July 2016
147289421Scy#
148320350Scy#	The following line shows this last update date in NTP timestamp
149295461Scy#	format. This is the date on which the most recent change to
150295461Scy#	the leap second data was added to the file. This line can
151320350Scy#	be identified by the unique pair of characters in the first two
152295461Scy#	columns as shown below.
153289421Scy#
154320350Scy#$	 3676924800
155289421Scy#
156320350Scy#	The NTP timestamps are in units of seconds since the NTP epoch,
157320350Scy#	which is 1 January 1900, 00:00:00. The Modified Julian Day number
158320350Scy#	corresponding to the NTP time stamp, X, can be computed as
159320350Scy#
160320350Scy#	X/86400 + 15020
161320350Scy#
162320350Scy#	where the first term converts seconds to days and the second
163320350Scy#	term adds the MJD corresponding to the time origin defined above.
164320350Scy#	The integer portion of the result is the integer MJD for that
165320350Scy#	day, and any remainder is the time of day, expressed as the
166320350Scy#	fraction of the day since 0 hours UTC. The conversion from day
167320350Scy#	fraction to seconds or to hours, minutes, and seconds may involve
168320350Scy#	rounding or truncation, depending on the method used in the
169320350Scy#	computation.
170320350Scy#
171320350Scy#	The data in this file will be updated periodically as new leap
172295461Scy#	seconds are announced. In addition to being entered on the line
173320350Scy#	above, the update time (in NTP format) will be added to the basic
174295461Scy#	file name leap-seconds to form the name leap-seconds.<NTP TIME>.
175320350Scy#	In addition, the generic name leap-seconds.list will always point to
176295461Scy#	the most recent version of the file.
177289421Scy#
178295461Scy#	This update procedure will be performed only when a new leap second
179320350Scy#	is announced.
180289421Scy#
181295461Scy#	The following entry specifies the expiration date of the data
182320350Scy#	in this file in units of seconds since the origin at the instant
183320350Scy#	1 January 1900, 00:00:00. This expiration date will be changed
184320350Scy#	at least twice per year whether or not a new leap second is
185320350Scy#	announced. These semi-annual changes will be made no later
186320350Scy#	than 1 June and 1 December of each year to indicate what
187320350Scy#	action (if any) is to be taken on 30 June and 31 December,
188295461Scy#	respectively. (These are the customary effective dates for new
189295461Scy#	leap seconds.) This expiration date will be identified by a
190295461Scy#	unique pair of characters in columns 1 and 2 as shown below.
191320350Scy#	In the unlikely event that a leap second is announced with an
192295461Scy#	effective date other than 30 June or 31 December, then this
193295461Scy#	file will be edited to include that leap second as soon as it is
194295461Scy#	announced or at least one month before the effective date
195320350Scy#	(whichever is later).
196320350Scy#	If an announcement by the IERS specifies that no leap second is
197320350Scy#	scheduled, then only the expiration date of the file will
198295461Scy#	be advanced to show that the information in the file is still
199320350Scy#	current -- the update time stamp, the data and the name of the file
200295461Scy#	will not change.
201289421Scy#
202320350Scy#	Updated through IERS Bulletin C53
203320350Scy#	File expires on:  28 December 2017
204295461Scy#
205320350Scy#@	3723408000
206295461Scy#
207295461Scy2272060800	10	# 1 Jan 1972
208295461Scy2287785600	11	# 1 Jul 1972
209295461Scy2303683200	12	# 1 Jan 1973
210295461Scy2335219200	13	# 1 Jan 1974
211295461Scy2366755200	14	# 1 Jan 1975
212295461Scy2398291200	15	# 1 Jan 1976
213295461Scy2429913600	16	# 1 Jan 1977
214295461Scy2461449600	17	# 1 Jan 1978
215295461Scy2492985600	18	# 1 Jan 1979
216295461Scy2524521600	19	# 1 Jan 1980
217295461Scy2571782400	20	# 1 Jul 1981
218295461Scy2603318400	21	# 1 Jul 1982
219295461Scy2634854400	22	# 1 Jul 1983
220295461Scy2698012800	23	# 1 Jul 1985
221295461Scy2776982400	24	# 1 Jan 1988
222295461Scy2840140800	25	# 1 Jan 1990
223295461Scy2871676800	26	# 1 Jan 1991
224295461Scy2918937600	27	# 1 Jul 1992
225295461Scy2950473600	28	# 1 Jul 1993
226295461Scy2982009600	29	# 1 Jul 1994
227295461Scy3029443200	30	# 1 Jan 1996
228295461Scy3076704000	31	# 1 Jul 1997
229295461Scy3124137600	32	# 1 Jan 1999
230295461Scy3345062400	33	# 1 Jan 2006
231295461Scy3439756800	34	# 1 Jan 2009
232295461Scy3550089600	35	# 1 Jul 2012
233295461Scy3644697600	36	# 1 Jul 2015
234303408Scy3692217600	37	# 1 Jan 2017
235295461Scy#
236295461Scy#	the following special comment contains the
237295461Scy#	hash value of the data in this file computed
238295461Scy#	use the secure hash algorithm as specified
239320350Scy#	by FIPS 180-1. See the files in ~/pub/sha for
240295461Scy#	the details of how this hash value is
241295461Scy#	computed. Note that the hash computation
242295461Scy#	ignores comments and whitespace characters
243295461Scy#	in data lines. It includes the NTP values
244320350Scy#	of both the last modification time and the
245295461Scy#	expiration time of the file, but not the
246295461Scy#	white space on those lines.
247295461Scy#	the hash line is also ignored in the
248295461Scy#	computation.
249295461Scy#
250320350Scy#h	62cf8c5d 8bbb6dcc c61e3b56 c308343 869bb80d
251