150826Smdodd# 250826Smdodd# In the following text, the symbol '#' introduces 350826Smdodd# a comment, which continues from that symbol until 450826Smdodd# the end of the line. A plain comment line has a 550826Smdodd# whitespace character following the comment indicator. 650826Smdodd# There are also special comment lines defined below. 750826Smdodd# A special comment will always have a non-whitespace 850826Smdodd# character in column 2. 950826Smdodd# 1050826Smdodd# A blank line should be ignored. 1150826Smdodd# 1250826Smdodd# The following table shows the corrections that must 1350826Smdodd# be applied to compute International Atomic Time (TAI) 1450826Smdodd# from the Coordinated Universal Time (UTC) values that 1550826Smdodd# are transmitted by almost all time services. 1650826Smdodd# 1750826Smdodd# The first column shows an epoch as a number of seconds 1850826Smdodd# since 1 January 1900, 00:00:00 (1900.0 is also used to 1950826Smdodd# indicate the same epoch.) Both of these time stamp formats 2050826Smdodd# ignore the complexities of the time scales that were 2150826Smdodd# used before the current definition of UTC at the start 2250826Smdodd# of 1972. (See note 3 below.) 2350826Smdodd# The second column shows the number of seconds that 2450826Smdodd# must be added to UTC to compute TAI for any timestamp 2550826Smdodd# at or after that epoch. The value on each line is 2650826Smdodd# valid from the indicated initial instant until the 2750826Smdodd# epoch given on the next one or indefinitely into the 28119418Sobrien# future if there is no next line. 29119418Sobrien# (The comment on each line shows the representation of 30119418Sobrien# the corresponding initial epoch in the usual 3150826Smdodd# day-month-year format. The epoch always begins at 3250826Smdodd# 00:00:00 UTC on the indicated day. See Note 5 below.) 3350826Smdodd# 3450826Smdodd# Important notes: 3550826Smdodd# 3650826Smdodd# 1. Coordinated Universal Time (UTC) is often referred to 3750826Smdodd# as Greenwich Mean Time (GMT). The GMT time scale is no 3850826Smdodd# longer used, and the use of GMT to designate UTC is 3950826Smdodd# discouraged. 4050826Smdodd# 4150826Smdodd# 2. The UTC time scale is realized by many national 42117126Sscottl# laboratories and timing centers. Each laboratory 43117126Sscottl# identifies its realization with its name: Thus 4450826Smdodd# UTC(NIST), UTC(USNO), etc. The differences among 4550826Smdodd# these different realizations are typically on the 4650826Smdodd# order of a few nanoseconds (i.e., 0.000 000 00x s) 4750826Smdodd# and can be ignored for many purposes. These differences 4850826Smdodd# are tabulated in Circular T, which is published monthly 4950826Smdodd# by the International Bureau of Weights and Measures 5050826Smdodd# (BIPM). See www.bipm.org for more information. 5150826Smdodd# 5250826Smdodd# 3. The current definition of the relationship between UTC 5350826Smdodd# and TAI dates from 1 January 1972. A number of different 5450826Smdodd# time scales were in use before that epoch, and it can be 5550826Smdodd# quite difficult to compute precise timestamps and time 5650826Smdodd# intervals in those "prehistoric" days. For more information, 5750826Smdodd# consult: 58135260Sphk# 5950826Smdodd# The Explanatory Supplement to the Astronomical 6050826Smdodd# Ephemeris. 6150826Smdodd# or 6250826Smdodd# Terry Quinn, "The BIPM and the Accurate Measurement 6350826Smdodd# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 6450826Smdodd# July, 1991. 6550826Smdodd# 6650826Smdodd# 4. The decision to insert a leap second into UTC is currently 6750826Smdodd# the responsibility of the International Earth Rotation and 6850826Smdodd# Reference Systems Service. (The name was changed from the 6950826Smdodd# International Earth Rotation Service, but the acronym IERS 7050826Smdodd# is still used.) 7150826Smdodd# 7250826Smdodd# Leap seconds are announced by the IERS in its Bulletin C. 7350826Smdodd# 7450826Smdodd# See www.iers.org for more details. 7550826Smdodd# 7650826Smdodd# Every national laboratory and timing center uses the 7750826Smdodd# data from the BIPM and the IERS to construct UTC(lab), 7850826Smdodd# their local realization of UTC. 7950826Smdodd# 8050826Smdodd# Although the definition also includes the possibility 8150826Smdodd# of dropping seconds ("negative" leap seconds), this has 8250826Smdodd# never been done and is unlikely to be necessary in the 8350826Smdodd# foreseeable future. 8450826Smdodd# 8550826Smdodd# 5. If your system keeps time as the number of seconds since 8650826Smdodd# some epoch (e.g., NTP timestamps), then the algorithm for 8750826Smdodd# assigning a UTC time stamp to an event that happens during a positive 8850826Smdodd# leap second is not well defined. The official name of that leap 8950826Smdodd# second is 23:59:60, but there is no way of representing that time 9050826Smdodd# in these systems. 9150826Smdodd# Many systems of this type effectively stop the system clock for 9250826Smdodd# one second during the leap second and use a time that is equivalent 9350826Smdodd# to 23:59:59 UTC twice. For these systems, the corresponding TAI 9450826Smdodd# timestamp would be obtained by advancing to the next entry in the 9550826Smdodd# following table when the time equivalent to 23:59:59 UTC 9650826Smdodd# is used for the second time. Thus the leap second which 9750826Smdodd# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 9850826Smdodd# timestamps computed as follows: 9950826Smdodd# 10050826Smdodd# ... 10150826Smdodd# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 10250826Smdodd# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 10350826Smdodd# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 10450826Smdodd# ... 10550826Smdodd# 10650826Smdodd# If your system realizes the leap second by repeating 00:00:00 UTC twice 10750826Smdodd# (this is possible but not usual), then the advance to the next entry 10850826Smdodd# in the table must occur the second time that a time equivalent to 10950826Smdodd# 00:00:00 UTC is used. Thus, using the same example as above: 11050826Smdodd# 11150826Smdodd# ... 11250826Smdodd# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 11352050Smdodd# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 11452050Smdodd# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 11552050Smdodd# ... 11650826Smdodd# 11752050Smdodd# in both cases the use of timestamps based on TAI produces a smooth 11850826Smdodd# time scale with no discontinuity in the time interval. However, 11950826Smdodd# although the long-term behavior of the time scale is correct in both 12050826Smdodd# methods, the second method is technically not correct because it adds 12150826Smdodd# the extra second to the wrong day. 12250826Smdodd# 12350826Smdodd# This complexity would not be needed for negative leap seconds (if they 12450826Smdodd# are ever used). The UTC time would skip 23:59:59 and advance from 125127135Snjl# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 12652050Smdodd# 1 second at the same instant. This is a much easier situation to deal 12752050Smdodd# with, since the difficulty of unambiguously representing the epoch 12850826Smdodd# during the leap second does not arise. 12952050Smdodd# 13050826Smdodd# Some systems implement leap seconds by amortizing the leap second 13152050Smdodd# over the last few minutes of the day. The frequency of the local 13250826Smdodd# clock is decreased (or increased) to realize the positive (or 13352050Smdodd# negative) leap second. This method removes the time step described 134127135Snjl# above. Although the long-term behavior of the time scale is correct 13552050Smdodd# in this case, this method introduces an error during the adjustment 13652050Smdodd# period both in time and in frequency with respect to the official 13752050Smdodd# definition of UTC. 13852050Smdodd# 13952050Smdodd# Questions or comments to: 14052050Smdodd# Judah Levine 141127135Snjl# Time and Frequency Division 14252050Smdodd# NIST 14352050Smdodd# Boulder, Colorado 14452050Smdodd# Judah.Levine@nist.gov 14552050Smdodd# 14652050Smdodd# Last Update of leap second values: 8 July 2016 14752050Smdodd# 14850826Smdodd# The following line shows this last update date in NTP timestamp 14950826Smdodd# format. This is the date on which the most recent change to 15050826Smdodd# the leap second data was added to the file. This line can 15150826Smdodd# be identified by the unique pair of characters in the first two 15250826Smdodd# columns as shown below. 15350826Smdodd# 15450826Smdodd#$ 3676924800 15550826Smdodd# 15650826Smdodd# The NTP timestamps are in units of seconds since the NTP epoch, 15750826Smdodd# which is 1 January 1900, 00:00:00. The Modified Julian Day number 15850826Smdodd# corresponding to the NTP time stamp, X, can be computed as 15950826Smdodd# 16050826Smdodd# X/86400 + 15020 16150826Smdodd# 16250826Smdodd# where the first term converts seconds to days and the second 16350826Smdodd# term adds the MJD corresponding to the time origin defined above. 16450826Smdodd# The integer portion of the result is the integer MJD for that 16550826Smdodd# day, and any remainder is the time of day, expressed as the 16650826Smdodd# fraction of the day since 0 hours UTC. The conversion from day 16750826Smdodd# fraction to seconds or to hours, minutes, and seconds may involve 16850826Smdodd# rounding or truncation, depending on the method used in the 16950826Smdodd# computation. 17050826Smdodd# 17150826Smdodd# The data in this file will be updated periodically as new leap 17250826Smdodd# seconds are announced. In addition to being entered on the line 17350826Smdodd# above, the update time (in NTP format) will be added to the basic 17450826Smdodd# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 17550826Smdodd# In addition, the generic name leap-seconds.list will always point to 17650826Smdodd# the most recent version of the file. 17750826Smdodd# 17850826Smdodd# This update procedure will be performed only when a new leap second 17950826Smdodd# is announced. 18050826Smdodd# 18150826Smdodd# The following entry specifies the expiration date of the data 18250826Smdodd# in this file in units of seconds since the origin at the instant 18350826Smdodd# 1 January 1900, 00:00:00. This expiration date will be changed 18450826Smdodd# at least twice per year whether or not a new leap second is 18550826Smdodd# announced. These semi-annual changes will be made no later 18650826Smdodd# than 1 June and 1 December of each year to indicate what 18751675Smdodd# action (if any) is to be taken on 30 June and 31 December, 18850826Smdodd# respectively. (These are the customary effective dates for new 18950826Smdodd# leap seconds.) This expiration date will be identified by a 19052050Smdodd# unique pair of characters in columns 1 and 2 as shown below. 19150826Smdodd# In the unlikely event that a leap second is announced with an 19250826Smdodd# effective date other than 30 June or 31 December, then this 19350826Smdodd# file will be edited to include that leap second as soon as it is 19450826Smdodd# announced or at least one month before the effective date 19550826Smdodd# (whichever is later). 19650826Smdodd# If an announcement by the IERS specifies that no leap second is 19750826Smdodd# scheduled, then only the expiration date of the file will 19850826Smdodd# be advanced to show that the information in the file is still 199241592Sjhb# current -- the update time stamp, the data and the name of the file 20050826Smdodd# will not change. 20150826Smdodd# 20250826Smdodd# Updated through IERS Bulletin C52 20350826Smdodd# File expires on: 28 June 2017 20450826Smdodd# 20550826Smdodd#@ 3707596800 20650826Smdodd# 20750826Smdodd2272060800 10 # 1 Jan 1972 20850826Smdodd2287785600 11 # 1 Jul 1972 20950826Smdodd2303683200 12 # 1 Jan 1973 21050826Smdodd2335219200 13 # 1 Jan 1974 21150826Smdodd2366755200 14 # 1 Jan 1975 21250826Smdodd2398291200 15 # 1 Jan 1976 21352050Smdodd2429913600 16 # 1 Jan 1977 21450826Smdodd2461449600 17 # 1 Jan 1978 21550826Smdodd2492985600 18 # 1 Jan 1979 21650826Smdodd2524521600 19 # 1 Jan 1980 21750826Smdodd2571782400 20 # 1 Jul 1981 21850826Smdodd2603318400 21 # 1 Jul 1982 21950826Smdodd2634854400 22 # 1 Jul 1983 22050826Smdodd2698012800 23 # 1 Jul 1985 221112782Smdodd2776982400 24 # 1 Jan 1988 222112782Smdodd2840140800 25 # 1 Jan 1990 223112782Smdodd2871676800 26 # 1 Jan 1991 224112782Smdodd2918937600 27 # 1 Jul 1992 225112782Smdodd2950473600 28 # 1 Jul 1993 226112782Smdodd2982009600 29 # 1 Jul 1994 227112782Smdodd3029443200 30 # 1 Jan 1996 228112782Smdodd3076704000 31 # 1 Jul 1997 229112782Smdodd3124137600 32 # 1 Jan 1999 230112782Smdodd3345062400 33 # 1 Jan 2006 231112782Smdodd3439756800 34 # 1 Jan 2009 232241592Sjhb3550089600 35 # 1 Jul 2012 233241592Sjhb3644697600 36 # 1 Jul 2015 234112782Smdodd3692217600 37 # 1 Jan 2017 23550826Smdodd# 23650826Smdodd# the following special comment contains the 23750826Smdodd# hash value of the data in this file computed 23850826Smdodd# use the secure hash algorithm as specified 23950826Smdodd# by FIPS 180-1. See the files in ~/pub/sha for 24050826Smdodd# the details of how this hash value is 24150826Smdodd# computed. Note that the hash computation 24250826Smdodd# ignores comments and whitespace characters 24350826Smdodd# in data lines. It includes the NTP values 24450826Smdodd# of both the last modification time and the 245112782Smdodd# expiration time of the file, but not the 246112782Smdodd# white space on those lines. 247112782Smdodd# the hash line is also ignored in the 248112782Smdodd# computation. 249112782Smdodd# 250112782Smdodd#h dacf2c42 2c4765d6 3c797af8 2cf630eb 699c8c67 251112782Smdodd