leap-seconds.list revision 285830
1178476Sjb# 2178476Sjb# In the following text, the symbol '#' introduces 3178476Sjb# a comment, which continues from that symbol until 4178476Sjb# the end of the line. A plain comment line has a 5178476Sjb# whitespace character following the comment indicator. 6178476Sjb# There are also special comment lines defined below. 7178476Sjb# A special comment will always have a non-whitespace 8178476Sjb# character in column 2. 9178476Sjb# 10178476Sjb# A blank line should be ignored. 11178476Sjb# 12178476Sjb# The following table shows the corrections that must 13178476Sjb# be applied to compute International Atomic Time (TAI) 14178476Sjb# from the Coordinated Universal Time (UTC) values that 15178476Sjb# are transmitted by almost all time services. 16178476Sjb# 17178476Sjb# The first column shows an epoch as a number of seconds 18178476Sjb# since 1 January 1900, 00:00:00 (1900.0 is also used to 19178476Sjb# indicate the same epoch.) Both of these time stamp formats 20178476Sjb# ignore the complexities of the time scales that were 21178476Sjb# used before the current definition of UTC at the start 22178476Sjb# of 1972. (See note 3 below.) 23178476Sjb# The second column shows the number of seconds that 24178476Sjb# must be added to UTC to compute TAI for any timestamp 25178476Sjb# at or after that epoch. The value on each line is 26178476Sjb# valid from the indicated initial instant until the 27178476Sjb# epoch given on the next one or indefinitely into the 28178476Sjb# future if there is no next line. 29178476Sjb# (The comment on each line shows the representation of 30178476Sjb# the corresponding initial epoch in the usual 31178476Sjb# day-month-year format. The epoch always begins at 32178476Sjb# 00:00:00 UTC on the indicated day. See Note 5 below.) 33178476Sjb# 34178476Sjb# Important notes: 35178476Sjb# 36178476Sjb# 1. Coordinated Universal Time (UTC) is often referred to 37178476Sjb# as Greenwich Mean Time (GMT). The GMT time scale is no 38178476Sjb# longer used, and the use of GMT to designate UTC is 39178476Sjb# discouraged. 40178476Sjb# 41178476Sjb# 2. The UTC time scale is realized by many national 42178476Sjb# laboratories and timing centers. Each laboratory 43178476Sjb# identifies its realization with its name: Thus 44178476Sjb# UTC(NIST), UTC(USNO), etc. The differences among 45178476Sjb# these different realizations are typically on the 46178476Sjb# order of a few nanoseconds (i.e., 0.000 000 00x s) 47178476Sjb# and can be ignored for many purposes. These differences 48178476Sjb# are tabulated in Circular T, which is published monthly 49178476Sjb# by the International Bureau of Weights and Measures 50178476Sjb# (BIPM). See www.bipm.org for more information. 51178476Sjb# 52178476Sjb# 3. The current definition of the relationship between UTC 53178476Sjb# and TAI dates from 1 January 1972. A number of different 54178476Sjb# time scales were in use before that epoch, and it can be 55178476Sjb# quite difficult to compute precise timestamps and time 56178476Sjb# intervals in those "prehistoric" days. For more information, 57178476Sjb# consult: 58178476Sjb# 59178476Sjb# The Explanatory Supplement to the Astronomical 60178476Sjb# Ephemeris. 61178476Sjb# or 62178476Sjb# Terry Quinn, "The BIPM and the Accurate Measurement 63178476Sjb# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 64178476Sjb# July, 1991. 65178476Sjb# 66178476Sjb# 4. The decision to insert a leap second into UTC is currently 67178476Sjb# the responsibility of the International Earth Rotation and 68178476Sjb# Reference Systems Service. (The name was changed from the 69178476Sjb# International Earth Rotation Service, but the acronym IERS 70178476Sjb# is still used.) 71178476Sjb# 72178476Sjb# Leap seconds are announced by the IERS in its Bulletin C. 73178476Sjb# 74178476Sjb# See www.iers.org for more details. 75178476Sjb# 76178476Sjb# Every national laboratory and timing center uses the 77178476Sjb# data from the BIPM and the IERS to construct UTC(lab), 78178476Sjb# their local realization of UTC. 79178476Sjb# 80178476Sjb# Although the definition also includes the possibility 81178476Sjb# of dropping seconds ("negative" leap seconds), this has 82178476Sjb# never been done and is unlikely to be necessary in the 83178476Sjb# foreseeable future. 84178476Sjb# 85178476Sjb# 5. If your system keeps time as the number of seconds since 86178476Sjb# some epoch (e.g., NTP timestamps), then the algorithm for 87178476Sjb# assigning a UTC time stamp to an event that happens during a positive 88178476Sjb# leap second is not well defined. The official name of that leap 89178476Sjb# second is 23:59:60, but there is no way of representing that time 90178476Sjb# in these systems. 91178476Sjb# Many systems of this type effectively stop the system clock for 92178476Sjb# one second during the leap second and use a time that is equivalent 93178476Sjb# to 23:59:59 UTC twice. For these systems, the corresponding TAI 94178476Sjb# timestamp would be obtained by advancing to the next entry in the 95178476Sjb# following table when the time equivalent to 23:59:59 UTC 96178476Sjb# is used for the second time. Thus the leap second which 97178476Sjb# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 98178476Sjb# timestamps computed as follows: 99178476Sjb# 100178476Sjb# ... 101178476Sjb# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 102178476Sjb# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 103178476Sjb# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 104178476Sjb# ... 105178476Sjb# 106178476Sjb# If your system realizes the leap second by repeating 00:00:00 UTC twice 107178476Sjb# (this is possible but not usual), then the advance to the next entry 108178476Sjb# in the table must occur the second time that a time equivalent to 109178476Sjb# 00:00:00 UTC is used. Thus, using the same example as above: 110178476Sjb# 111178476Sjb# ... 112178476Sjb# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 113178476Sjb# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 114178476Sjb# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 115178476Sjb# ... 116178476Sjb# 117178476Sjb# in both cases the use of timestamps based on TAI produces a smooth 118178476Sjb# time scale with no discontinuity in the time interval. However, 119178476Sjb# although the long-term behavior of the time scale is correct in both 120178476Sjb# methods, the second method is technically not correct because it adds 121178476Sjb# the extra second to the wrong day. 122178476Sjb# 123178476Sjb# This complexity would not be needed for negative leap seconds (if they 124178476Sjb# are ever used). The UTC time would skip 23:59:59 and advance from 125178476Sjb# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 126178476Sjb# 1 second at the same instant. This is a much easier situation to deal 127178476Sjb# with, since the difficulty of unambiguously representing the epoch 128178476Sjb# during the leap second does not arise. 129178476Sjb# 130178476Sjb# Some systems implement leap seconds by amortizing the leap second 131178476Sjb# over the last few minutes of the day. The frequency of the local 132178476Sjb# clock is decreased (or increased) to realize the positive (or 133178476Sjb# negative) leap second. This method removes the time step described 134178476Sjb# above. Although the long-term behavior of the time scale is correct 135178476Sjb# in this case, this method introduces an error during the adjustment 136178476Sjb# period both in time and in frequency with respect to the official 137178476Sjb# definition of UTC. 138178476Sjb# 139178476Sjb# Questions or comments to: 140178476Sjb# Judah Levine 141178476Sjb# Time and Frequency Division 142178476Sjb# NIST 143178476Sjb# Boulder, Colorado 144178476Sjb# Judah.Levine@nist.gov 145178476Sjb# 146178476Sjb# Last Update of leap second values: 5 January 2015 147178476Sjb# 148178476Sjb# The following line shows this last update date in NTP timestamp 149178476Sjb# format. This is the date on which the most recent change to 150178476Sjb# the leap second data was added to the file. This line can 151178476Sjb# be identified by the unique pair of characters in the first two 152178476Sjb# columns as shown below. 153178476Sjb# 154178476Sjb#$ 3629404800 155178476Sjb# 156178476Sjb# The NTP timestamps are in units of seconds since the NTP epoch, 157178476Sjb# which is 1 January 1900, 00:00:00. The Modified Julian Day number 158178476Sjb# corresponding to the NTP time stamp, X, can be computed as 159178476Sjb# 160178476Sjb# X/86400 + 15020 161178476Sjb# 162178476Sjb# where the first term converts seconds to days and the second 163178476Sjb# term adds the MJD corresponding to the time origin defined above. 164178476Sjb# The integer portion of the result is the integer MJD for that 165178476Sjb# day, and any remainder is the time of day, expressed as the 166178476Sjb# fraction of the day since 0 hours UTC. The conversion from day 167178476Sjb# fraction to seconds or to hours, minutes, and seconds may involve 168178476Sjb# rounding or truncation, depending on the method used in the 169178476Sjb# computation. 170178476Sjb# 171178476Sjb# The data in this file will be updated periodically as new leap 172178476Sjb# seconds are announced. In addition to being entered on the line 173178476Sjb# above, the update time (in NTP format) will be added to the basic 174178476Sjb# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 175178476Sjb# In addition, the generic name leap-seconds.list will always point to 176178476Sjb# the most recent version of the file. 177178476Sjb# 178178476Sjb# This update procedure will be performed only when a new leap second 179178476Sjb# is announced. 180178476Sjb# 181178476Sjb# The following entry specifies the expiration date of the data 182178476Sjb# in this file in units of seconds since the origin at the instant 183178476Sjb# 1 January 1900, 00:00:00. This expiration date will be changed 184178476Sjb# at least twice per year whether or not a new leap second is 185178476Sjb# announced. These semi-annual changes will be made no later 186178476Sjb# than 1 June and 1 December of each year to indicate what 187178476Sjb# action (if any) is to be taken on 30 June and 31 December, 188178476Sjb# respectively. (These are the customary effective dates for new 189178476Sjb# leap seconds.) This expiration date will be identified by a 190178476Sjb# unique pair of characters in columns 1 and 2 as shown below. 191178476Sjb# In the unlikely event that a leap second is announced with an 192178476Sjb# effective date other than 30 June or 31 December, then this 193178476Sjb# file will be edited to include that leap second as soon as it is 194178476Sjb# announced or at least one month before the effective date 195178476Sjb# (whichever is later). 196178476Sjb# If an announcement by the IERS specifies that no leap second is 197178476Sjb# scheduled, then only the expiration date of the file will 198178476Sjb# be advanced to show that the information in the file is still 199178476Sjb# current -- the update time stamp, the data and the name of the file 200178476Sjb# will not change. 201178476Sjb# 202178476Sjb# Updated through IERS Bulletin C49 203178476Sjb# File expires on: 28 December 2015 204178476Sjb# 205178476Sjb#@ 3660249600 206178476Sjb# 207178476Sjb2272060800 10 # 1 Jan 1972 208178476Sjb2287785600 11 # 1 Jul 1972 209178476Sjb2303683200 12 # 1 Jan 1973 210178476Sjb2335219200 13 # 1 Jan 1974 211178476Sjb2366755200 14 # 1 Jan 1975 212178476Sjb2398291200 15 # 1 Jan 1976 213178476Sjb2429913600 16 # 1 Jan 1977 214178476Sjb2461449600 17 # 1 Jan 1978 215178476Sjb2492985600 18 # 1 Jan 1979 216178476Sjb2524521600 19 # 1 Jan 1980 217178476Sjb2571782400 20 # 1 Jul 1981 218178476Sjb2603318400 21 # 1 Jul 1982 219178476Sjb2634854400 22 # 1 Jul 1983 220178476Sjb2698012800 23 # 1 Jul 1985 221178476Sjb2776982400 24 # 1 Jan 1988 222178476Sjb2840140800 25 # 1 Jan 1990 223178476Sjb2871676800 26 # 1 Jan 1991 224178476Sjb2918937600 27 # 1 Jul 1992 225178476Sjb2950473600 28 # 1 Jul 1993 226178476Sjb2982009600 29 # 1 Jul 1994 227178476Sjb3029443200 30 # 1 Jan 1996 228178476Sjb3076704000 31 # 1 Jul 1997 229178476Sjb3124137600 32 # 1 Jan 1999 230178476Sjb3345062400 33 # 1 Jan 2006 231178476Sjb3439756800 34 # 1 Jan 2009 232178476Sjb3550089600 35 # 1 Jul 2012 233178476Sjb3644697600 36 # 1 Jul 2015 234178476Sjb# 235178476Sjb# the following special comment contains the 236178476Sjb# hash value of the data in this file computed 237178476Sjb# use the secure hash algorithm as specified 238178476Sjb# by FIPS 180-1. See the files in ~/pub/sha for 239178476Sjb# the details of how this hash value is 240178476Sjb# computed. Note that the hash computation 241178476Sjb# ignores comments and whitespace characters 242178476Sjb# in data lines. It includes the NTP values 243178476Sjb# of both the last modification time and the 244178476Sjb# expiration time of the file, but not the 245178476Sjb# white space on those lines. 246178476Sjb# the hash line is also ignored in the 247178476Sjb# computation. 248178476Sjb# 249178476Sjb#h 45e70fa7 a9df2033 f4a49ab0 ec648273 7b6c22c 250178476Sjb