1 ## downloaded 2012-02-09 from ftp://time.nist.gov/pub/leap-seconds.list by weasel
3 # In the following text, the symbol '#' introduces
4 # a comment, which continues from that symbol until
5 # the end of the line. A plain comment line has a
6 # whitespace character following the comment indicator.
7 # There are also special comment lines defined below.
8 # A special comment will always have a non-whitespace
9 # character in column 2.
11 # A blank line should be ignored.
13 # The following table shows the corrections that must
14 # be applied to compute International Atomic Time (TAI)
15 # from the Coordinated Universal Time (UTC) values that
16 # are transmitted by almost all time services.
18 # The first column shows an epoch as a number of seconds
19 # since 1900.0 and the second column shows the number of
20 # seconds that must be added to UTC to compute TAI for
21 # any timestamp at or after that epoch. The value on
22 # each line is valid from the indicated initial instant
23 # until the epoch given on the next one or indefinitely
24 # into the future if there is no next line.
25 # (The comment on each line shows the representation of
26 # the corresponding initial epoch in the usual
27 # day-month-year format. The epoch always begins at
28 # 00:00:00 UTC on the indicated day. See Note 5 below.)
32 # 1. Coordinated Universal Time (UTC) is often referred to
33 # as Greenwich Mean Time (GMT). The GMT time scale is no
34 # longer used, and the use of GMT to designate UTC is
37 # 2. The UTC time scale is realized by many national
38 # laboratories and timing centers. Each laboratory
39 # identifies its realization with its name: Thus
40 # UTC(NIST), UTC(USNO), etc. The differences among
41 # these different realizations are typically on the
42 # order of a few nanoseconds (i.e., 0.000 000 00x s)
43 # and can be ignored for many purposes. These differences
44 # are tabulated in Circular T, which is published monthly
45 # by the International Bureau of Weights and Measures
46 # (BIPM). See www.bipm.fr for more information.
48 # 3. The current defintion of the relationship between UTC
49 # and TAI dates from 1 January 1972. A number of different
50 # time scales were in use before than epoch, and it can be
51 # quite difficult to compute precise timestamps and time
52 # intervals in those "prehistoric" days. For more information,
55 # The Explanatory Supplement to the Astronomical
58 # Terry Quinn, "The BIPM and the Accurate Measurement
59 # of Time," Proc. of the IEEE, Vol. 79, pp. 894-905,
62 # 4. The insertion of leap seconds into UTC is currently the
63 # responsibility of the International Earth Rotation Service,
64 # which is located at the Paris Observatory:
66 # Central Bureau of IERS
67 # 61, Avenue de l'Observatoire
68 # 75014 Paris, France.
70 # Leap seconds are announced by the IERS in its Bulletin C
72 # See hpiers.obspm.fr or www.iers.org for more details.
74 # All national laboratories and timing centers use the
75 # data from the BIPM and the IERS to construct their
76 # local realizations of UTC.
78 # Although the definition also includes the possibility
79 # of dropping seconds ("negative" leap seconds), this has
80 # never been done and is unlikely to be necessary in the
83 # 5. If your system keeps time as the number of seconds since
84 # some epoch (e.g., NTP timestamps), then the algorithm for
85 # assigning a UTC time stamp to an event that happens during a positive
86 # leap second is not well defined. The official name of that leap
87 # second is 23:59:60, but there is no way of representing that time
89 # Many systems of this type effectively stop the system clock for
90 # one second during the leap second and use a time that is equivalent
91 # to 23:59:59 UTC twice. For these systems, the corresponding TAI
92 # timestamp would be obtained by advancing to the next entry in the
93 # following table when the time equivalent to 23:59:59 UTC
94 # is used for the second time. Thus the leap second which
95 # occurred on 30 June 1972 at 23:59:59 UTC would have TAI
96 # timestamps computed as follows:
99 # 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds
100 # 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds
101 # 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds
104 # If your system realizes the leap second by repeating 00:00:00 UTC twice
105 # (this is possible but not usual), then the advance to the next entry
106 # in the table must occur the second time that a time equivlent to
107 # 00:00:00 UTC is used. Thus, using the same example as above:
110 # 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds
111 # 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds
112 # 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds
115 # in both cases the use of timestamps based on TAI produces a smooth
116 # time scale with no discontinuity in the time interval.
118 # This complexity would not be needed for negative leap seconds (if they
119 # are ever used). The UTC time would skip 23:59:59 and advance from
120 # 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by
121 # 1 second at the same instant. This is a much easier situation to deal
122 # with, since the difficulty of unambiguously representing the epoch
123 # during the leap second does not arise.
125 # Questions or comments to:
127 # Time and Frequency Division
130 # jlevine@boulder.nist.gov
132 # Last Update of leap second values: 11 January 2012
134 # The following line shows this last update date in NTP timestamp
135 # format. This is the date on which the most recent change to
136 # the leap second data was added to the file. This line can
137 # be identified by the unique pair of characters in the first two
138 # columns as shown below.
142 # The NTP timestamps are in units of seconds since the NTP epoch,
143 # which is 1900.0. The Modified Julian Day number corresponding
144 # to the NTP time stamp, X, can be computed as
148 # where the first term converts seconds to days and the second
149 # term adds the MJD corresponding to 1900.0. The integer portion
150 # of the result is the integer MJD for that day, and any remainder
151 # is the time of day, expressed as the fraction of the day since 0
152 # hours UTC. The conversion from day fraction to seconds or to
153 # hours, minutes, and seconds may involve rounding or truncation,
154 # depending on the method used in the computation.
156 # The data in this file will be updated periodically as new leap
157 # seconds are announced. In addition to being entered on the line
158 # above, the update time (in NTP format) will be added to the basic
159 # file name leap-seconds to form the name leap-seconds.<NTP TIME>.
160 # In addition, the generic name leap-seconds.list will always point to
161 # the most recent version of the file.
163 # This update procedure will be performed only when a new leap second
166 # The following entry specifies the expiration date of the data
167 # in this file in units of seconds since 1900.0. This expiration date
168 # will be changed at least twice per year whether or not a new leap
169 # second is announced. These semi-annual changes will be made no
170 # later than 1 June and 1 December of each year to indicate what
171 # action (if any) is to be taken on 30 June and 31 December,
172 # respectively. (These are the customary effective dates for new
173 # leap seconds.) This expiration date will be identified by a
174 # unique pair of characters in columns 1 and 2 as shown below.
175 # In the unlikely event that a leap second is announced with an
176 # effective date other than 30 June or 31 December, then this
177 # file will be edited to include that leap second as soon as it is
178 # announced or at least one month before the effective date
179 # (whichever is later).
180 # If an announcement by the IERS specifies that no leap second is
181 # scheduled, then only the expiration date of the file will
182 # be advanced to show that the information in the file is still
183 # current -- the update time stamp, the data and the name of the file
186 # Updated through IERS Bulletin C43
187 # File expires on: 28 Dec 2012
191 2272060800 10 # 1 Jan 1972
192 2287785600 11 # 1 Jul 1972
193 2303683200 12 # 1 Jan 1973
194 2335219200 13 # 1 Jan 1974
195 2366755200 14 # 1 Jan 1975
196 2398291200 15 # 1 Jan 1976
197 2429913600 16 # 1 Jan 1977
198 2461449600 17 # 1 Jan 1978
199 2492985600 18 # 1 Jan 1979
200 2524521600 19 # 1 Jan 1980
201 2571782400 20 # 1 Jul 1981
202 2603318400 21 # 1 Jul 1982
203 2634854400 22 # 1 Jul 1983
204 2698012800 23 # 1 Jul 1985
205 2776982400 24 # 1 Jan 1988
206 2840140800 25 # 1 Jan 1990
207 2871676800 26 # 1 Jan 1991
208 2918937600 27 # 1 Jul 1992
209 2950473600 28 # 1 Jul 1993
210 2982009600 29 # 1 Jul 1994
211 3029443200 30 # 1 Jan 1996
212 3076704000 31 # 1 Jul 1997
213 3124137600 32 # 1 Jan 1999
214 3345062400 33 # 1 Jan 2006
215 3439756800 34 # 1 Jan 2009
216 3550089600 35 # 1 Jul 2012
218 # the following special comment contains the
219 # hash value of the data in this file computed
220 # use the secure hash algorithm as specified
221 # by FIPS 180-1. See the files in ~/pub/sha for
222 # the details of how this hash value is
223 # computed. Note that the hash computation
224 # ignores comments and whitespace characters
225 # in data lines. It includes the NTP values
226 # of both the last modification time and the
227 # expiration time of the file, but not the
228 # white space on those lines.
229 # the hash line is also ignored in the
232 #h 914ea332 e06ddca8 7c65c64f ff579ff8 68b07a49