1# 2# In the following text, the symbol '#' introduces 3# a comment, which continues from that symbol until 4# the end of the line. A plain comment line has a 5# whitespace character following the comment indicator. 6# There are also special comment lines defined below. 7# A special comment will always have a non-whitespace 8# character in column 2. 9# 10# A blank line should be ignored. 11# 12# The following table shows the corrections that must 13# be applied to compute International Atomic Time (TAI) 14# from the Coordinated Universal Time (UTC) values that 15# are transmitted by almost all time services. 16# 17# The first column shows an epoch as a number of seconds 18# since 1 January 1900, 00:00:00 (1900.0 is also used to 19# indicate the same epoch.) Both of these time stamp formats 20# ignore the complexities of the time scales that were 21# used before the current definition of UTC at the start 22# of 1972. (See note 3 below.) 23# The second column shows the number of seconds that 24# must be added to UTC to compute TAI for any timestamp 25# at or after that epoch. The value on each line is 26# valid from the indicated initial instant until the 27# epoch given on the next one or indefinitely into the 28# future if there is no next line. 29# (The comment on each line shows the representation of 30# the corresponding initial epoch in the usual 31# day-month-year format. The epoch always begins at 32# 00:00:00 UTC on the indicated day. See Note 5 below.) 33# 34# Important notes: 35# 36# 1. Coordinated Universal Time (UTC) is often referred to 37# as Greenwich Mean Time (GMT). The GMT time scale is no 38# longer used, and the use of GMT to designate UTC is 39# discouraged. 40# 41# 2. The UTC time scale is realized by many national 42# laboratories and timing centers. Each laboratory 43# identifies its realization with its name: Thus 44# UTC(NIST), UTC(USNO), etc. The differences among 45# these different realizations are typically on the 46# order of a few nanoseconds (i.e., 0.000 000 00x s) 47# and can be ignored for many purposes. These differences 48# are tabulated in Circular T, which is published monthly 49# by the International Bureau of Weights and Measures 50# (BIPM). See www.bipm.fr for more information. 51# 52# 3. The current definition of the relationship between UTC 53# and TAI dates from 1 January 1972. A number of different 54# time scales were in use before that epoch, and it can be 55# quite difficult to compute precise timestamps and time 56# intervals in those "prehistoric" days. For more information, 57# consult: 58# 59# The Explanatory Supplement to the Astronomical 60# Ephemeris. 61# or 62# Terry Quinn, "The BIPM and the Accurate Measurement 63# of Time," Proc. of the IEEE, Vol. 79, pp. 894-905, 64# July, 1991. 65# 66# 4. The decision to insert a leap second into UTC is currently 67# the responsibility of the International Earth Rotation and 68# Reference Systems Service. (The name was changed from the 69# International Earth Rotation Service, but the acronym IERS 70# is still used.) 71# 72# Leap seconds are announced by the IERS in its Bulletin C. 73# 74# See www.iers.org for more details. 75# 76# Every national laboratory and timing center uses the 77# data from the BIPM and the IERS to construct UTC(lab), 78# their local realization of UTC. 79# 80# Although the definition also includes the possibility 81# of dropping seconds ("negative" leap seconds), this has 82# never been done and is unlikely to be necessary in the 83# foreseeable future. 84# 85# 5. If your system keeps time as the number of seconds since 86# some epoch (e.g., NTP timestamps), then the algorithm for 87# assigning a UTC time stamp to an event that happens during a positive 88# leap second is not well defined. The official name of that leap 89# second is 23:59:60, but there is no way of representing that time 90# in these systems. 91# Many systems of this type effectively stop the system clock for 92# one second during the leap second and use a time that is equivalent 93# to 23:59:59 UTC twice. For these systems, the corresponding TAI 94# timestamp would be obtained by advancing to the next entry in the 95# following table when the time equivalent to 23:59:59 UTC 96# is used for the second time. Thus the leap second which 97# occurred on 30 June 1972 at 23:59:59 UTC would have TAI 98# timestamps computed as follows: 99# 100# ... 101# 30 June 1972 23:59:59 (2287785599, first time): TAI= UTC + 10 seconds 102# 30 June 1972 23:59:60 (2287785599,second time): TAI= UTC + 11 seconds 103# 1 July 1972 00:00:00 (2287785600) TAI= UTC + 11 seconds 104# ... 105# 106# If your system realizes the leap second by repeating 00:00:00 UTC twice 107# (this is possible but not usual), then the advance to the next entry 108# in the table must occur the second time that a time equivalent to 109# 00:00:00 UTC is used. Thus, using the same example as above: 110# 111# ... 112# 30 June 1972 23:59:59 (2287785599): TAI= UTC + 10 seconds 113# 30 June 1972 23:59:60 (2287785600, first time): TAI= UTC + 10 seconds 114# 1 July 1972 00:00:00 (2287785600,second time): TAI= UTC + 11 seconds 115# ... 116# 117# in both cases the use of timestamps based on TAI produces a smooth 118# time scale with no discontinuity in the time interval. However, 119# although the long-term behavior of the time scale is correct in both 120# methods, the second method is technically not correct because it adds 121# the extra second to the wrong day. 122# 123# This complexity would not be needed for negative leap seconds (if they 124# are ever used). The UTC time would skip 23:59:59 and advance from 125# 23:59:58 to 00:00:00 in that case. The TAI offset would decrease by 126# 1 second at the same instant. This is a much easier situation to deal 127# with, since the difficulty of unambiguously representing the epoch 128# during the leap second does not arise. 129# 130# Questions or comments to: 131# Judah Levine 132# Time and Frequency Division 133# NIST 134# Boulder, Colorado 135# Judah.Levine@nist.gov 136# 137# Last Update of leap second values: 11 January 2012 138# 139# The following line shows this last update date in NTP timestamp 140# format. This is the date on which the most recent change to 141# the leap second data was added to the file. This line can 142# be identified by the unique pair of characters in the first two 143# columns as shown below. 144# 145#$ 3535228800 146# 147# The NTP timestamps are in units of seconds since the NTP epoch, 148# which is 1 January 1900, 00:00:00. The Modified Julian Day number 149# corresponding to the NTP time stamp, X, can be computed as 150# 151# X/86400 + 15020 152# 153# where the first term converts seconds to days and the second 154# term adds the MJD corresponding to the time origin defined above. 155# The integer portion of the result is the integer MJD for that 156# day, and any remainder is the time of day, expressed as the 157# fraction of the day since 0 hours UTC. The conversion from day 158# fraction to seconds or to hours, minutes, and seconds may involve 159# rounding or truncation, depending on the method used in the 160# computation. 161# 162# The data in this file will be updated periodically as new leap 163# seconds are announced. In addition to being entered on the line 164# above, the update time (in NTP format) will be added to the basic 165# file name leap-seconds to form the name leap-seconds.<NTP TIME>. 166# In addition, the generic name leap-seconds.list will always point to 167# the most recent version of the file. 168# 169# This update procedure will be performed only when a new leap second 170# is announced. 171# 172# The following entry specifies the expiration date of the data 173# in this file in units of seconds since the origin at the instant 174# 1 January 1900, 00:00:00. This expiration date will be changed 175# at least twice per year whether or not a new leap second is 176# announced. These semi-annual changes will be made no later 177# than 1 June and 1 December of each year to indicate what 178# action (if any) is to be taken on 30 June and 31 December, 179# respectively. (These are the customary effective dates for new 180# leap seconds.) This expiration date will be identified by a 181# unique pair of characters in columns 1 and 2 as shown below. 182# In the unlikely event that a leap second is announced with an 183# effective date other than 30 June or 31 December, then this 184# file will be edited to include that leap second as soon as it is 185# announced or at least one month before the effective date 186# (whichever is later). 187# If an announcement by the IERS specifies that no leap second is 188# scheduled, then only the expiration date of the file will 189# be advanced to show that the information in the file is still 190# current -- the update time stamp, the data and the name of the file 191# will not change. 192# 193# Updated through IERS Bulletin C48 194# File expires on: 28 June 2015 195# 196#@ 3644438400 197# 1982272060800 10 # 1 Jan 1972 1992287785600 11 # 1 Jul 1972 2002303683200 12 # 1 Jan 1973 2012335219200 13 # 1 Jan 1974 2022366755200 14 # 1 Jan 1975 2032398291200 15 # 1 Jan 1976 2042429913600 16 # 1 Jan 1977 2052461449600 17 # 1 Jan 1978 2062492985600 18 # 1 Jan 1979 2072524521600 19 # 1 Jan 1980 2082571782400 20 # 1 Jul 1981 2092603318400 21 # 1 Jul 1982 2102634854400 22 # 1 Jul 1983 2112698012800 23 # 1 Jul 1985 2122776982400 24 # 1 Jan 1988 2132840140800 25 # 1 Jan 1990 2142871676800 26 # 1 Jan 1991 2152918937600 27 # 1 Jul 1992 2162950473600 28 # 1 Jul 1993 2172982009600 29 # 1 Jul 1994 2183029443200 30 # 1 Jan 1996 2193076704000 31 # 1 Jul 1997 2203124137600 32 # 1 Jan 1999 2213345062400 33 # 1 Jan 2006 2223439756800 34 # 1 Jan 2009 2233550089600 35 # 1 Jul 2012 224# 225# the following special comment contains the 226# hash value of the data in this file computed 227# use the secure hash algorithm as specified 228# by FIPS 180-1. See the files in ~/pub/sha for 229# the details of how this hash value is 230# computed. Note that the hash computation 231# ignores comments and whitespace characters 232# in data lines. It includes the NTP values 233# of both the last modification time and the 234# expiration time of the file, but not the 235# white space on those lines. 236# the hash line is also ignored in the 237# computation. 238# 239#h a4862ccd c6f43c6 964f3604 85944a26 b5cfad4e 240