1289421Scy#
2289421Scy# $FreeBSD: releng/11.0/etc/ntp/leap-seconds 303407 2016-07-27 19:39:25Z cy $
3289421Scy#
4293037Scy#	In the following text, the symbol '#' introduces
5293037Scy#	a comment, which continues from that symbol until 
6293037Scy#	the end of the line. A plain comment line has a
7293037Scy#	whitespace character following the comment indicator.
8293037Scy#	There are also special comment lines defined below. 
9293037Scy#	A special comment will always have a non-whitespace 
10293037Scy#	character in column 2.
11289421Scy#
12293037Scy#	A blank line should be ignored.
13289421Scy#
14293037Scy#	The following table shows the corrections that must
15293037Scy#	be applied to compute International Atomic Time (TAI)
16293037Scy#	from the Coordinated Universal Time (UTC) values that
17293037Scy#	are transmitted by almost all time services.
18289421Scy#
19293037Scy#	The first column shows an epoch as a number of seconds
20293037Scy#	since 1900.0 and the second column shows the number of
21293037Scy#	seconds that must be added to UTC to compute TAI for
22293037Scy#	any timestamp at or after that epoch. The value on 
23293037Scy#	each line is valid from the indicated initial instant
24293037Scy#	until the epoch given on the next one or indefinitely 
25293037Scy#	into the future if there is no next line.
26293037Scy#	(The comment on each line shows the representation of
27293037Scy#	the corresponding initial epoch in the usual 
28293037Scy#	day-month-year format. The epoch always begins at
29293037Scy#	00:00:00 UTC on the indicated day. See Note 5 below.)
30293037Scy#	
31293037Scy#	Important notes:
32289421Scy#
33293037Scy#	1. Coordinated Universal Time (UTC) is often referred to
34293037Scy#	as Greenwich Mean Time (GMT). The GMT time scale is no
35293037Scy#	longer used, and the use of GMT to designate UTC is
36293037Scy#	discouraged.
37289421Scy#
38293037Scy#	2. The UTC time scale is realized by many national 
39293037Scy#	laboratories and timing centers. Each laboratory
40293037Scy#	identifies its realization with its name: Thus
41293037Scy#	UTC(NIST), UTC(USNO), etc. The differences among
42293037Scy#	these different realizations are typically on the
43293037Scy#	order of a few nanoseconds (i.e., 0.000 000 00x s)
44293037Scy#	and can be ignored for many purposes. These differences
45293037Scy#	are tabulated in Circular T, which is published monthly
46293037Scy#	by the International Bureau of Weights and Measures
47293037Scy#	(BIPM). See www.bipm.fr for more information.
48289421Scy#
49298887Spfg#	3. The current definition of the relationship between UTC 
50293037Scy#	and TAI dates from 1 January 1972. A number of different 
51293037Scy#	time scales were in use before than epoch, and it can be 
52293037Scy#	quite difficult to compute precise timestamps and time 
53293037Scy#	intervals in those "prehistoric" days. For more information,
54293037Scy#	consult:
55289421Scy#
56293037Scy#		The Explanatory Supplement to the Astronomical
57293037Scy#		Ephemeris.
58293037Scy#	or
59293037Scy#		Terry Quinn, "The BIPM and the Accurate Measurement
60293037Scy#		of Time," Proc. of the IEEE, Vol. 79, pp. 894-905,
61293037Scy#		July, 1991.
62289421Scy#
63293037Scy#	4.  The insertion of leap seconds into UTC is currently the
64293037Scy#	responsibility of the International Earth Rotation Service,
65293037Scy#	which is located at the Paris Observatory: 
66289421Scy#
67293037Scy#	Central Bureau of IERS
68293037Scy#	61, Avenue de l'Observatoire
69293037Scy#	75014 Paris, France.
70289421Scy#
71293037Scy#	Leap seconds are announced by the IERS in its Bulletin C
72289421Scy#
73293037Scy#	See hpiers.obspm.fr or www.iers.org for more details.
74289421Scy#
75293037Scy#	All national laboratories and timing centers use the
76293037Scy#	data from the BIPM and the IERS to construct their
77293037Scy#	local realizations of UTC.
78289421Scy#
79293037Scy#	Although the definition also includes the possibility
80293037Scy#	of dropping seconds ("negative" leap seconds), this has 
81293037Scy#	never been done and is unlikely to be necessary in the 
82293037Scy#	foreseeable future.
83289421Scy#
84293037Scy#	5. If your system keeps time as the number of seconds since
85293037Scy#	some epoch (e.g., NTP timestamps), then the algorithm for
86293037Scy#	assigning a UTC time stamp to an event that happens during a positive
87293037Scy#	leap second is not well defined. The official name of that leap 
88293037Scy#	second is 23:59:60, but there is no way of representing that time 
89293037Scy#	in these systems. 
90293037Scy#	Many systems of this type effectively stop the system clock for 
91293037Scy#	one second during the leap second and use a time that is equivalent 
92293037Scy#	to 23:59:59 UTC twice. For these systems, the corresponding TAI 
93293037Scy#	timestamp would be obtained by advancing to the next entry in the
94293037Scy#	following table when the time equivalent to 23:59:59 UTC
95293037Scy#	is used for the second time. Thus the leap second which
96293037Scy#	occurred on 30 June 1972 at 23:59:59 UTC would have TAI
97293037Scy#	timestamps computed as follows:
98289421Scy#
99293037Scy#	...
100293037Scy#	30 June 1972 23:59:59 (2287785599, first time):	TAI= UTC + 10 seconds
101293037Scy#	30 June 1972 23:59:60 (2287785599,second time):	TAI= UTC + 11 seconds
102293037Scy#	1  July 1972 00:00:00 (2287785600)		TAI= UTC + 11 seconds
103293037Scy#	...
104289421Scy#
105293037Scy#	If your system realizes the leap second by repeating 00:00:00 UTC twice
106293037Scy#	(this is possible but not usual), then the advance to the next entry
107293037Scy#	in the table must occur the second time that a time equivlent to 
108293037Scy#	00:00:00 UTC is used. Thus, using the same example as above:
109289421Scy#
110293037Scy#	...
111293037Scy#       30 June 1972 23:59:59 (2287785599):		TAI= UTC + 10 seconds
112293037Scy#       30 June 1972 23:59:60 (2287785600, first time):	TAI= UTC + 10 seconds
113293037Scy#       1  July 1972 00:00:00 (2287785600,second time):	TAI= UTC + 11 seconds
114293037Scy#	...
115289421Scy#
116293037Scy#	in both cases the use of timestamps based on TAI produces a smooth
117293037Scy#	time scale with no discontinuity in the time interval.
118289421Scy#
119293037Scy#	This complexity would not be needed for negative leap seconds (if they 
120293037Scy#	are ever used). The UTC time would skip 23:59:59 and advance from 
121293037Scy#	23:59:58 to 00:00:00 in that case.  The TAI offset would decrease by 
122293037Scy#	1 second at the same instant.  This is a much easier situation to deal 
123293037Scy#	with, since the difficulty of unambiguously representing the epoch 
124293037Scy#	during the leap second does not arise.
125289421Scy#
126293037Scy#	Questions or comments to:
127293037Scy#		Jeff Prillaman
128293037Scy#		Time Service Department
129293037Scy#		US Naval Observatory
130293037Scy#		Washington, DC
131293037Scy#		jeffrey.prillaman@usno.navy.mil
132289421Scy#
133303407Scy#	Last Update of leap second values:   6 Jul 2016
134289421Scy#
135293037Scy#	The following line shows this last update date in NTP timestamp 
136293037Scy#	format. This is the date on which the most recent change to
137293037Scy#	the leap second data was added to the file. This line can
138293037Scy#	be identified by the unique pair of characters in the first two 
139293037Scy#	columns as shown below.
140289421Scy#
141303407Scy#$	 3676752000
142289421Scy#
143293037Scy#	The data in this file will be updated periodically as new leap 
144293037Scy#	seconds are announced. In addition to being entered on the line
145293037Scy#	above, the update time (in NTP format) will be added to the basic 
146293037Scy#	file name leap-seconds to form the name leap-seconds.<NTP TIME>.
147293037Scy#	In addition, the generic name leap-seconds.list will always point to 
148293037Scy#	the most recent version of the file.
149289421Scy#
150293037Scy#	This update procedure will be performed only when a new leap second
151293037Scy#	is announced. 
152289421Scy#
153293037Scy#	The following entry specifies the expiration date of the data
154293037Scy#	in this file in units of seconds since 1900.0.  This expiration date 
155293037Scy#	will be changed at least twice per year whether or not a new leap 
156293037Scy#	second is announced. These semi-annual changes will be made no
157293037Scy#	later than 1 June and 1 December of each year to indicate what
158293037Scy#	action (if any) is to be taken on 30 June and 31 December, 
159293037Scy#	respectively. (These are the customary effective dates for new
160293037Scy#	leap seconds.) This expiration date will be identified by a
161293037Scy#	unique pair of characters in columns 1 and 2 as shown below.
162293037Scy#	In the unlikely event that a leap second is announced with an 
163293037Scy#	effective date other than 30 June or 31 December, then this
164293037Scy#	file will be edited to include that leap second as soon as it is
165293037Scy#	announced or at least one month before the effective date
166293037Scy#	(whichever is later). 
167293037Scy#	If an announcement by the IERS specifies that no leap second is 
168293037Scy#	scheduled, then only the expiration date of the file will 
169293037Scy#	be advanced to show that the information in the file is still
170293037Scy#	current -- the update time stamp, the data and the name of the file 
171293037Scy#	will not change.
172289421Scy#
173303407Scy#	Updated through IERS Bulletin C 52
174303407Scy#	File expires on:  1 Jun 2017
175293037Scy#
176303407Scy#@	3705264000
177293037Scy#
178293037Scy2272060800	10	# 1 Jan 1972
179293037Scy2287785600	11	# 1 Jul 1972
180293037Scy2303683200	12	# 1 Jan 1973
181293037Scy2335219200	13	# 1 Jan 1974
182293037Scy2366755200	14	# 1 Jan 1975
183293037Scy2398291200	15	# 1 Jan 1976
184293037Scy2429913600	16	# 1 Jan 1977
185293037Scy2461449600	17	# 1 Jan 1978
186293037Scy2492985600	18	# 1 Jan 1979
187293037Scy2524521600	19	# 1 Jan 1980
188293037Scy2571782400	20	# 1 Jul 1981
189293037Scy2603318400	21	# 1 Jul 1982
190293037Scy2634854400	22	# 1 Jul 1983
191293037Scy2698012800	23	# 1 Jul 1985
192293037Scy2776982400	24	# 1 Jan 1988
193293037Scy2840140800	25	# 1 Jan 1990
194293037Scy2871676800	26	# 1 Jan 1991
195293037Scy2918937600	27	# 1 Jul 1992
196293037Scy2950473600	28	# 1 Jul 1993
197293037Scy2982009600	29	# 1 Jul 1994
198293037Scy3029443200	30	# 1 Jan 1996
199293037Scy3076704000	31	# 1 Jul 1997
200293037Scy3124137600	32	# 1 Jan 1999
201293037Scy3345062400	33	# 1 Jan 2006
202293037Scy3439756800	34	# 1 Jan 2009
203293037Scy3550089600	35	# 1 Jul 2012
204293037Scy3644697600	36	# 1 Jul 2015
205303407Scy3692217600	37	# 1 Jan 2017
206293037Scy#
207293037Scy#	the following special comment contains the
208293037Scy#	hash value of the data in this file computed
209293037Scy#	use the secure hash algorithm as specified
210293037Scy#	by FIPS 180-1. See the files in ~/sha for
211293037Scy#	the details of how this hash value is
212293037Scy#	computed. Note that the hash computation
213293037Scy#	ignores comments and whitespace characters
214293037Scy#	in data lines. It includes the NTP values
215293037Scy#	of both the last modification time and the 
216293037Scy#	expiration time of the file, but not the
217293037Scy#	white space on those lines.
218293037Scy#	the hash line is also ignored in the
219293037Scy#	computation.
220293037Scy#
221303407Scy#h	63f8fea8 587c099d abcf130a ad525eae 3e105052
222293037Scy#
223