1289421Scy# 2295461Scy# In the following text, the symbol '#' introduces 3320350Scy# a comment, which continues from that symbol until 4295461Scy# the end of the line. A plain comment line has a 5295461Scy# whitespace character following the comment indicator. 6320350Scy# There are also special comment lines defined below. 7320350Scy# A special comment will always have a non-whitespace 8295461Scy# character in column 2. 9289421Scy# 10295461Scy# A blank line should be ignored. 11289421Scy# 12295461Scy# The following table shows the corrections that must 13295461Scy# be applied to compute International Atomic Time (TAI) 14295461Scy# from the Coordinated Universal Time (UTC) values that 15295461Scy# are transmitted by almost all time services. 16289421Scy# 17295461Scy# The first column shows an epoch as a number of seconds 18320350Scy# since 1 January 1900, 00:00:00 (1900.0 is also used to 19320350Scy# indicate the same epoch.) Both of these time stamp formats 20320350Scy# ignore the complexities of the time scales that were 21320350Scy# used before the current definition of UTC at the start 22320350Scy# of 1972. (See note 3 below.) 23320350Scy# The second column shows the number of seconds that 24320350Scy# must be added to UTC to compute TAI for any timestamp 25320350Scy# at or after that epoch. The value on each line is 26320350Scy# valid from the indicated initial instant until the 27320350Scy# epoch given on the next one or indefinitely into the 28320350Scy# future if there is no next line. 29295461Scy# (The comment on each line shows the representation of 30320350Scy# the corresponding initial epoch in the usual 31295461Scy# day-month-year format. The epoch always begins at 32295461Scy# 00:00:00 UTC on the indicated day. See Note 5 below.) 33320350Scy# 34295461Scy# Important notes: 35289421Scy# 36295461Scy# 1. Coordinated Universal Time (UTC) is often referred to 37295461Scy# as Greenwich Mean Time (GMT). The GMT time scale is no 38295461Scy# longer used, and the use of GMT to designate UTC is 39295461Scy# discouraged. 40289421Scy# 41320350Scy# 2. The UTC time scale is realized by many national 42295461Scy# laboratories and timing centers. Each laboratory 43295461Scy# identifies its realization with its name: Thus 44295461Scy# UTC(NIST), UTC(USNO), etc. The differences among 45295461Scy# these different realizations are typically on the 46295461Scy# order of a few nanoseconds (i.e., 0.000 000 00x s) 47295461Scy# and can be ignored for many purposes. These differences 48295461Scy# are tabulated in Circular T, which is published monthly 49295461Scy# by the International Bureau of Weights and Measures 50320350Scy# (BIPM). See www.bipm.org for more information. 51289421Scy# 52320350Scy# 3. The current definition of the relationship between UTC 53320350Scy# and TAI dates from 1 January 1972. A number of different 54320350Scy# time scales were in use before that epoch, and it can be 55320350Scy# quite difficult to compute precise timestamps and time 56295461Scy# intervals in those "prehistoric" days. For more information, 57295461Scy# consult: 58289421Scy# 59295461Scy# The Explanatory Supplement to the Astronomical 60295461Scy# Ephemeris. 61295461Scy# or 62295461Scy# Terry Quinn, "The BIPM and the Accurate Measurement 63295461Scy# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 64295461Scy# July, 1991. 65289421Scy# 66320350Scy# 4. The decision to insert a leap second into UTC is currently 67320350Scy# the responsibility of the International Earth Rotation and 68320350Scy# Reference Systems Service. (The name was changed from the 69320350Scy# International Earth Rotation Service, but the acronym IERS 70320350Scy# is still used.) 71289421Scy# 72320350Scy# Leap seconds are announced by the IERS in its Bulletin C. 73289421Scy# 74320350Scy# See www.iers.org for more details. 75289421Scy# 76320350Scy# Every national laboratory and timing center uses the 77320350Scy# data from the BIPM and the IERS to construct UTC(lab), 78320350Scy# their local realization of UTC. 79289421Scy# 80295461Scy# Although the definition also includes the possibility 81320350Scy# of dropping seconds ("negative" leap seconds), this has 82320350Scy# never been done and is unlikely to be necessary in the 83295461Scy# foreseeable future. 84289421Scy# 85295461Scy# 5. If your system keeps time as the number of seconds since 86295461Scy# some epoch (e.g., NTP timestamps), then the algorithm for 87295461Scy# assigning a UTC time stamp to an event that happens during a positive 88320350Scy# leap second is not well defined. The official name of that leap 89320350Scy# second is 23:59:60, but there is no way of representing that time 90320350Scy# in these systems. 91320350Scy# Many systems of this type effectively stop the system clock for 92320350Scy# one second during the leap second and use a time that is equivalent 93320350Scy# to 23:59:59 UTC twice. For these systems, the corresponding TAI 94295461Scy# timestamp would be obtained by advancing to the next entry in the 95295461Scy# following table when the time equivalent to 23:59:59 UTC 96295461Scy# is used for the second time. Thus the leap second which 97295461Scy# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 98295461Scy# timestamps computed as follows: 99289421Scy# 100295461Scy# ... 101295461Scy# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 102295461Scy# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 103295461Scy# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 104295461Scy# ... 105289421Scy# 106295461Scy# If your system realizes the leap second by repeating 00:00:00 UTC twice 107295461Scy# (this is possible but not usual), then the advance to the next entry 108320350Scy# in the table must occur the second time that a time equivalent to 109295461Scy# 00:00:00 UTC is used. Thus, using the same example as above: 110289421Scy# 111295461Scy# ... 112295461Scy# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 113295461Scy# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 114295461Scy# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 115295461Scy# ... 116289421Scy# 117295461Scy# in both cases the use of timestamps based on TAI produces a smooth 118320350Scy# time scale with no discontinuity in the time interval. However, 119320350Scy# although the long-term behavior of the time scale is correct in both 120320350Scy# methods, the second method is technically not correct because it adds 121320350Scy# the extra second to the wrong day. 122289421Scy# 123320350Scy# This complexity would not be needed for negative leap seconds (if they 124320350Scy# are ever used). The UTC time would skip 23:59:59 and advance from 125320350Scy# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 126320350Scy# 1 second at the same instant. This is a much easier situation to deal 127320350Scy# with, since the difficulty of unambiguously representing the epoch 128295461Scy# during the leap second does not arise. 129289421Scy# 130320350Scy# Some systems implement leap seconds by amortizing the leap second 131320350Scy# over the last few minutes of the day. The frequency of the local 132320350Scy# clock is decreased (or increased) to realize the positive (or 133320350Scy# negative) leap second. This method removes the time step described 134320350Scy# above. Although the long-term behavior of the time scale is correct 135320350Scy# in this case, this method introduces an error during the adjustment 136320350Scy# period both in time and in frequency with respect to the official 137320350Scy# definition of UTC. 138320350Scy# 139295461Scy# Questions or comments to: 140320350Scy# Judah Levine 141320350Scy# Time and Frequency Division 142320350Scy# NIST 143320350Scy# Boulder, Colorado 144320350Scy# Judah.Levine@nist.gov 145289421Scy# 146320350Scy# Last Update of leap second values: 8 July 2016 147289421Scy# 148320350Scy# The following line shows this last update date in NTP timestamp 149295461Scy# format. This is the date on which the most recent change to 150295461Scy# the leap second data was added to the file. This line can 151320350Scy# be identified by the unique pair of characters in the first two 152295461Scy# columns as shown below. 153289421Scy# 154320350Scy#$ 3676924800 155289421Scy# 156320350Scy# The NTP timestamps are in units of seconds since the NTP epoch, 157320350Scy# which is 1 January 1900, 00:00:00. The Modified Julian Day number 158320350Scy# corresponding to the NTP time stamp, X, can be computed as 159320350Scy# 160320350Scy# X/86400 + 15020 161320350Scy# 162320350Scy# where the first term converts seconds to days and the second 163320350Scy# term adds the MJD corresponding to the time origin defined above. 164320350Scy# The integer portion of the result is the integer MJD for that 165320350Scy# day, and any remainder is the time of day, expressed as the 166320350Scy# fraction of the day since 0 hours UTC. The conversion from day 167320350Scy# fraction to seconds or to hours, minutes, and seconds may involve 168320350Scy# rounding or truncation, depending on the method used in the 169320350Scy# computation. 170320350Scy# 171320350Scy# The data in this file will be updated periodically as new leap 172295461Scy# seconds are announced. In addition to being entered on the line 173320350Scy# above, the update time (in NTP format) will be added to the basic 174295461Scy# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 175320350Scy# In addition, the generic name leap-seconds.list will always point to 176295461Scy# the most recent version of the file. 177289421Scy# 178295461Scy# This update procedure will be performed only when a new leap second 179320350Scy# is announced. 180289421Scy# 181295461Scy# The following entry specifies the expiration date of the data 182320350Scy# in this file in units of seconds since the origin at the instant 183320350Scy# 1 January 1900, 00:00:00. This expiration date will be changed 184320350Scy# at least twice per year whether or not a new leap second is 185320350Scy# announced. These semi-annual changes will be made no later 186320350Scy# than 1 June and 1 December of each year to indicate what 187320350Scy# action (if any) is to be taken on 30 June and 31 December, 188295461Scy# respectively. (These are the customary effective dates for new 189295461Scy# leap seconds.) This expiration date will be identified by a 190295461Scy# unique pair of characters in columns 1 and 2 as shown below. 191320350Scy# In the unlikely event that a leap second is announced with an 192295461Scy# effective date other than 30 June or 31 December, then this 193295461Scy# file will be edited to include that leap second as soon as it is 194295461Scy# announced or at least one month before the effective date 195320350Scy# (whichever is later). 196320350Scy# If an announcement by the IERS specifies that no leap second is 197320350Scy# scheduled, then only the expiration date of the file will 198295461Scy# be advanced to show that the information in the file is still 199320350Scy# current -- the update time stamp, the data and the name of the file 200295461Scy# will not change. 201289421Scy# 202320350Scy# Updated through IERS Bulletin C53 203320350Scy# File expires on: 28 December 2017 204295461Scy# 205320350Scy#@ 3723408000 206295461Scy# 207295461Scy2272060800 10 # 1 Jan 1972 208295461Scy2287785600 11 # 1 Jul 1972 209295461Scy2303683200 12 # 1 Jan 1973 210295461Scy2335219200 13 # 1 Jan 1974 211295461Scy2366755200 14 # 1 Jan 1975 212295461Scy2398291200 15 # 1 Jan 1976 213295461Scy2429913600 16 # 1 Jan 1977 214295461Scy2461449600 17 # 1 Jan 1978 215295461Scy2492985600 18 # 1 Jan 1979 216295461Scy2524521600 19 # 1 Jan 1980 217295461Scy2571782400 20 # 1 Jul 1981 218295461Scy2603318400 21 # 1 Jul 1982 219295461Scy2634854400 22 # 1 Jul 1983 220295461Scy2698012800 23 # 1 Jul 1985 221295461Scy2776982400 24 # 1 Jan 1988 222295461Scy2840140800 25 # 1 Jan 1990 223295461Scy2871676800 26 # 1 Jan 1991 224295461Scy2918937600 27 # 1 Jul 1992 225295461Scy2950473600 28 # 1 Jul 1993 226295461Scy2982009600 29 # 1 Jul 1994 227295461Scy3029443200 30 # 1 Jan 1996 228295461Scy3076704000 31 # 1 Jul 1997 229295461Scy3124137600 32 # 1 Jan 1999 230295461Scy3345062400 33 # 1 Jan 2006 231295461Scy3439756800 34 # 1 Jan 2009 232295461Scy3550089600 35 # 1 Jul 2012 233295461Scy3644697600 36 # 1 Jul 2015 234303408Scy3692217600 37 # 1 Jan 2017 235295461Scy# 236295461Scy# the following special comment contains the 237295461Scy# hash value of the data in this file computed 238295461Scy# use the secure hash algorithm as specified 239320350Scy# by FIPS 180-1. See the files in ~/pub/sha for 240295461Scy# the details of how this hash value is 241295461Scy# computed. Note that the hash computation 242295461Scy# ignores comments and whitespace characters 243295461Scy# in data lines. It includes the NTP values 244320350Scy# of both the last modification time and the 245295461Scy# expiration time of the file, but not the 246295461Scy# white space on those lines. 247295461Scy# the hash line is also ignored in the 248295461Scy# computation. 249295461Scy# 250320350Scy#h 62cf8c5d 8bbb6dcc c61e3b56 c308343 869bb80d 251