1255902Sedwin# 2255902Sedwin# In the following text, the symbol '#' introduces 3270817Spluknet# a comment, which continues from that symbol until 4255902Sedwin# the end of the line. A plain comment line has a 5255902Sedwin# whitespace character following the comment indicator. 6270817Spluknet# There are also special comment lines defined below. 7270817Spluknet# A special comment will always have a non-whitespace 8255902Sedwin# character in column 2. 9255902Sedwin# 10255902Sedwin# A blank line should be ignored. 11255902Sedwin# 12255902Sedwin# The following table shows the corrections that must 13255902Sedwin# be applied to compute International Atomic Time (TAI) 14255902Sedwin# from the Coordinated Universal Time (UTC) values that 15255902Sedwin# are transmitted by almost all time services. 16255902Sedwin# 17255902Sedwin# The first column shows an epoch as a number of seconds 18270817Spluknet# since 1 January 1900, 00:00:00 (1900.0 is also used to 19270817Spluknet# indicate the same epoch.) Both of these time stamp formats 20270817Spluknet# ignore the complexities of the time scales that were 21270817Spluknet# used before the current definition of UTC at the start 22270817Spluknet# of 1972. (See note 3 below.) 23270817Spluknet# The second column shows the number of seconds that 24270817Spluknet# must be added to UTC to compute TAI for any timestamp 25270817Spluknet# at or after that epoch. The value on each line is 26270817Spluknet# valid from the indicated initial instant until the 27270817Spluknet# epoch given on the next one or indefinitely into the 28270817Spluknet# future if there is no next line. 29255902Sedwin# (The comment on each line shows the representation of 30270817Spluknet# the corresponding initial epoch in the usual 31255902Sedwin# day-month-year format. The epoch always begins at 32255902Sedwin# 00:00:00 UTC on the indicated day. See Note 5 below.) 33270817Spluknet# 34255902Sedwin# Important notes: 35255902Sedwin# 36255902Sedwin# 1. Coordinated Universal Time (UTC) is often referred to 37255902Sedwin# as Greenwich Mean Time (GMT). The GMT time scale is no 38255902Sedwin# longer used, and the use of GMT to designate UTC is 39255902Sedwin# discouraged. 40255902Sedwin# 41270817Spluknet# 2. The UTC time scale is realized by many national 42255902Sedwin# laboratories and timing centers. Each laboratory 43255902Sedwin# identifies its realization with its name: Thus 44255902Sedwin# UTC(NIST), UTC(USNO), etc. The differences among 45255902Sedwin# these different realizations are typically on the 46255902Sedwin# order of a few nanoseconds (i.e., 0.000 000 00x s) 47255902Sedwin# and can be ignored for many purposes. These differences 48255902Sedwin# are tabulated in Circular T, which is published monthly 49255902Sedwin# by the International Bureau of Weights and Measures 50279707Sedwin# (BIPM). See www.bipm.org for more information. 51255902Sedwin# 52270817Spluknet# 3. The current definition of the relationship between UTC 53270817Spluknet# and TAI dates from 1 January 1972. A number of different 54270817Spluknet# time scales were in use before that epoch, and it can be 55270817Spluknet# quite difficult to compute precise timestamps and time 56255902Sedwin# intervals in those "prehistoric" days. For more information, 57255902Sedwin# consult: 58255902Sedwin# 59255902Sedwin# The Explanatory Supplement to the Astronomical 60255902Sedwin# Ephemeris. 61255902Sedwin# or 62255902Sedwin# Terry Quinn, "The BIPM and the Accurate Measurement 63255902Sedwin# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 64255902Sedwin# July, 1991. 65255902Sedwin# 66270817Spluknet# 4. The decision to insert a leap second into UTC is currently 67270817Spluknet# the responsibility of the International Earth Rotation and 68270817Spluknet# Reference Systems Service. (The name was changed from the 69270817Spluknet# International Earth Rotation Service, but the acronym IERS 70270817Spluknet# is still used.) 71255902Sedwin# 72270817Spluknet# Leap seconds are announced by the IERS in its Bulletin C. 73255902Sedwin# 74270817Spluknet# See www.iers.org for more details. 75255902Sedwin# 76270817Spluknet# Every national laboratory and timing center uses the 77270817Spluknet# data from the BIPM and the IERS to construct UTC(lab), 78270817Spluknet# their local realization of UTC. 79255902Sedwin# 80255902Sedwin# Although the definition also includes the possibility 81270817Spluknet# of dropping seconds ("negative" leap seconds), this has 82270817Spluknet# never been done and is unlikely to be necessary in the 83255902Sedwin# foreseeable future. 84255902Sedwin# 85255902Sedwin# 5. If your system keeps time as the number of seconds since 86255902Sedwin# some epoch (e.g., NTP timestamps), then the algorithm for 87255902Sedwin# assigning a UTC time stamp to an event that happens during a positive 88270817Spluknet# leap second is not well defined. The official name of that leap 89270817Spluknet# second is 23:59:60, but there is no way of representing that time 90270817Spluknet# in these systems. 91270817Spluknet# Many systems of this type effectively stop the system clock for 92270817Spluknet# one second during the leap second and use a time that is equivalent 93270817Spluknet# to 23:59:59 UTC twice. For these systems, the corresponding TAI 94255902Sedwin# timestamp would be obtained by advancing to the next entry in the 95255902Sedwin# following table when the time equivalent to 23:59:59 UTC 96255902Sedwin# is used for the second time. Thus the leap second which 97255902Sedwin# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 98255902Sedwin# timestamps computed as follows: 99255902Sedwin# 100255902Sedwin# ... 101255902Sedwin# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 102255902Sedwin# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 103255902Sedwin# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 104255902Sedwin# ... 105255902Sedwin# 106255902Sedwin# If your system realizes the leap second by repeating 00:00:00 UTC twice 107255902Sedwin# (this is possible but not usual), then the advance to the next entry 108270817Spluknet# in the table must occur the second time that a time equivalent to 109255902Sedwin# 00:00:00 UTC is used. Thus, using the same example as above: 110255902Sedwin# 111255902Sedwin# ... 112255902Sedwin# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 113255902Sedwin# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 114255902Sedwin# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 115255902Sedwin# ... 116255902Sedwin# 117255902Sedwin# in both cases the use of timestamps based on TAI produces a smooth 118270817Spluknet# time scale with no discontinuity in the time interval. However, 119270817Spluknet# although the long-term behavior of the time scale is correct in both 120270817Spluknet# methods, the second method is technically not correct because it adds 121270817Spluknet# the extra second to the wrong day. 122255902Sedwin# 123270817Spluknet# This complexity would not be needed for negative leap seconds (if they 124270817Spluknet# are ever used). The UTC time would skip 23:59:59 and advance from 125270817Spluknet# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 126270817Spluknet# 1 second at the same instant. This is a much easier situation to deal 127270817Spluknet# with, since the difficulty of unambiguously representing the epoch 128255902Sedwin# during the leap second does not arise. 129255902Sedwin# 130279707Sedwin# Some systems implement leap seconds by amortizing the leap second 131279707Sedwin# over the last few minutes of the day. The frequency of the local 132279707Sedwin# clock is decreased (or increased) to realize the positive (or 133279707Sedwin# negative) leap second. This method removes the time step described 134280414Sedwin# above. Although the long-term behavior of the time scale is correct 135280414Sedwin# in this case, this method introduces an error during the adjustment 136280414Sedwin# period both in time and in frequency with respect to the official 137280414Sedwin# definition of UTC. 138279707Sedwin# 139255902Sedwin# Questions or comments to: 140255902Sedwin# Judah Levine 141255902Sedwin# Time and Frequency Division 142255902Sedwin# NIST 143255902Sedwin# Boulder, Colorado 144270817Spluknet# Judah.Levine@nist.gov 145255902Sedwin# 146309576Sglebius# Last Update of leap second values: 8 July 2016 147255902Sedwin# 148270817Spluknet# The following line shows this last update date in NTP timestamp 149255902Sedwin# format. This is the date on which the most recent change to 150255902Sedwin# the leap second data was added to the file. This line can 151270817Spluknet# be identified by the unique pair of characters in the first two 152255902Sedwin# columns as shown below. 153255902Sedwin# 154309576Sglebius#$ 3676924800 155255902Sedwin# 156255902Sedwin# The NTP timestamps are in units of seconds since the NTP epoch, 157270817Spluknet# which is 1 January 1900, 00:00:00. The Modified Julian Day number 158270817Spluknet# corresponding to the NTP time stamp, X, can be computed as 159255902Sedwin# 160255902Sedwin# X/86400 + 15020 161255902Sedwin# 162270817Spluknet# where the first term converts seconds to days and the second 163270817Spluknet# term adds the MJD corresponding to the time origin defined above. 164270817Spluknet# The integer portion of the result is the integer MJD for that 165270817Spluknet# day, and any remainder is the time of day, expressed as the 166270817Spluknet# fraction of the day since 0 hours UTC. The conversion from day 167270817Spluknet# fraction to seconds or to hours, minutes, and seconds may involve 168270817Spluknet# rounding or truncation, depending on the method used in the 169270817Spluknet# computation. 170255902Sedwin# 171270817Spluknet# The data in this file will be updated periodically as new leap 172255902Sedwin# seconds are announced. In addition to being entered on the line 173270817Spluknet# above, the update time (in NTP format) will be added to the basic 174255902Sedwin# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 175270817Spluknet# In addition, the generic name leap-seconds.list will always point to 176255902Sedwin# the most recent version of the file. 177255902Sedwin# 178255902Sedwin# This update procedure will be performed only when a new leap second 179270817Spluknet# is announced. 180255902Sedwin# 181255902Sedwin# The following entry specifies the expiration date of the data 182270817Spluknet# in this file in units of seconds since the origin at the instant 183270817Spluknet# 1 January 1900, 00:00:00. This expiration date will be changed 184270817Spluknet# at least twice per year whether or not a new leap second is 185270817Spluknet# announced. These semi-annual changes will be made no later 186270817Spluknet# than 1 June and 1 December of each year to indicate what 187270817Spluknet# action (if any) is to be taken on 30 June and 31 December, 188255902Sedwin# respectively. (These are the customary effective dates for new 189255902Sedwin# leap seconds.) This expiration date will be identified by a 190255902Sedwin# unique pair of characters in columns 1 and 2 as shown below. 191270817Spluknet# In the unlikely event that a leap second is announced with an 192255902Sedwin# effective date other than 30 June or 31 December, then this 193255902Sedwin# file will be edited to include that leap second as soon as it is 194255902Sedwin# announced or at least one month before the effective date 195270817Spluknet# (whichever is later). 196270817Spluknet# If an announcement by the IERS specifies that no leap second is 197270817Spluknet# scheduled, then only the expiration date of the file will 198255902Sedwin# be advanced to show that the information in the file is still 199270817Spluknet# current -- the update time stamp, the data and the name of the file 200255902Sedwin# will not change. 201255902Sedwin# 202309576Sglebius# Updated through IERS Bulletin C52 203309576Sglebius# File expires on: 28 June 2017 204255902Sedwin# 205309576Sglebius#@ 3707596800 206255902Sedwin# 207255902Sedwin2272060800 10 # 1 Jan 1972 208255902Sedwin2287785600 11 # 1 Jul 1972 209255902Sedwin2303683200 12 # 1 Jan 1973 210255902Sedwin2335219200 13 # 1 Jan 1974 211255902Sedwin2366755200 14 # 1 Jan 1975 212255902Sedwin2398291200 15 # 1 Jan 1976 213255902Sedwin2429913600 16 # 1 Jan 1977 214255902Sedwin2461449600 17 # 1 Jan 1978 215255902Sedwin2492985600 18 # 1 Jan 1979 216255902Sedwin2524521600 19 # 1 Jan 1980 217255902Sedwin2571782400 20 # 1 Jul 1981 218255902Sedwin2603318400 21 # 1 Jul 1982 219255902Sedwin2634854400 22 # 1 Jul 1983 220255902Sedwin2698012800 23 # 1 Jul 1985 221255902Sedwin2776982400 24 # 1 Jan 1988 222255902Sedwin2840140800 25 # 1 Jan 1990 223255902Sedwin2871676800 26 # 1 Jan 1991 224255902Sedwin2918937600 27 # 1 Jul 1992 225255902Sedwin2950473600 28 # 1 Jul 1993 226255902Sedwin2982009600 29 # 1 Jul 1994 227255902Sedwin3029443200 30 # 1 Jan 1996 228255902Sedwin3076704000 31 # 1 Jul 1997 229255902Sedwin3124137600 32 # 1 Jan 1999 230255902Sedwin3345062400 33 # 1 Jan 2006 231255902Sedwin3439756800 34 # 1 Jan 2009 232255902Sedwin3550089600 35 # 1 Jul 2012 233279707Sedwin3644697600 36 # 1 Jul 2015 234309576Sglebius3692217600 37 # 1 Jan 2017 235255902Sedwin# 236255902Sedwin# the following special comment contains the 237255902Sedwin# hash value of the data in this file computed 238255902Sedwin# use the secure hash algorithm as specified 239255902Sedwin# by FIPS 180-1. See the files in ~/pub/sha for 240255902Sedwin# the details of how this hash value is 241255902Sedwin# computed. Note that the hash computation 242255902Sedwin# ignores comments and whitespace characters 243255902Sedwin# in data lines. It includes the NTP values 244270817Spluknet# of both the last modification time and the 245255902Sedwin# expiration time of the file, but not the 246255902Sedwin# white space on those lines. 247255902Sedwin# the hash line is also ignored in the 248255902Sedwin# computation. 249255902Sedwin# 250309576Sglebius#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67 251