C/C++ Time-zone Code


Download:

get_tz_transitions.tar.gz


About:

While I was working on my stock program, I needed to know when local time-zones were going to change. For example, if the program is handling data for the New York Stock Exchange, it must know that on Sunday, March 13, 2011 at 2AM (localtime) the time changes from UTC-5 to UTC-4.

Unfortunately, obtaining a list of time changes is more complicated than it seems. Time-zones are frequently changed by regional legislation. The most accepted method of obtaining transition times is to use the Olson database.

The Olson database is a maintained list of all time-zone transitions. The data is stored in a compressed format. The format is described in the tzfile man-page.

My program was written to work on Ubuntu 9.04, and it accesses a local copy of the database files at /usr/share/zoneinfo/. If your system does not have these files, you can modify the following line in the program:
file_loc = (char *)"/usr/share/zoneinfo/";


Usage:

Download get_tz_transitions.tar.gz

Run the command tar -xvfz get_tz_transitions.tar.gz to extract the contents.

Type make to compile.

The program is written in C, but can be compiled to work with C++.

The program takes two arguments. The first argument is the name of a time-zone. Valid values for this parameter are listed in this file. The second argument is a UTC timestamp we will call 'ts-start'. The current time is used if 'ts-start' is the value "now".

The program returns all transition times occuring after 'ts-start'. The program returns an array of tz_transition structs. The struct has two properties: 'ts' and 'offset'. 'ts' is the transition time's unix timestamp (UTC), and 'offset' is the new time offset from UTC (+- seconds). The first tz_transition struct in the returned array contains the location's 'offset' at UTC time 'ts-start'. The 'ts' value is the time at which the transition occured (or -1 if it was the first known transition). The remaining tz_transition structs in the array are sorted in ascending order by 'ts'.

Example usage:
tz_transitions 'timezone' 'ts-start'
or
tz_transitions 'timezone' "now"


Examples:

./tz_transitions America/New_York now
This command was executed on June 12,2011.


The starting timezone is GMT-4

Transition time in file:1320559200
Add previous offset to get local transition time: November 06, 2011 02:00:00
New timezone is GMT-5

Transition time in file:1331449200
Add previous offset to get local transition time: March 11, 2012 02:00:00
New timezone is GMT-4

Transition time in file:1352008800
Add previous offset to get local transition time: November 04, 2012 02:00:00
New timezone is GMT-5

Transition time in file:1362898800
Add previous offset to get local transition time: March 10, 2013 02:00:00
New timezone is GMT-4

Transition time in file:1383458400
Add previous offset to get local transition time: November 03, 2013 02:00:00
New timezone is GMT-5

Transition time in file:1394348400
Add previous offset to get local transition time: March 09, 2014 02:00:00
New timezone is GMT-4

Transition time in file:1414908000
Add previous offset to get local transition time: November 02, 2014 02:00:00
New timezone is GMT-5

Transition time in file:1425798000
Add previous offset to get local transition time: March 08, 2015 02:00:00
New timezone is GMT-4

Transition time in file:1446357600
Add previous offset to get local transition time: November 01, 2015 02:00:00
New timezone is GMT-5

Transition time in file:1457852400
Add previous offset to get local transition time: March 13, 2016 02:00:00
New timezone is GMT-4

Transition time in file:1478412000
Add previous offset to get local transition time: November 06, 2016 02:00:00
New timezone is GMT-5

Transition time in file:1489302000
Add previous offset to get local transition time: March 12, 2017 02:00:00
New timezone is GMT-4

Transition time in file:1509861600
Add previous offset to get local transition time: November 05, 2017 02:00:00
New timezone is GMT-5

Transition time in file:1520751600
Add previous offset to get local transition time: March 11, 2018 02:00:00
New timezone is GMT-4

Transition time in file:1541311200
Add previous offset to get local transition time: November 04, 2018 02:00:00
New timezone is GMT-5

Transition time in file:1552201200
Add previous offset to get local transition time: March 10, 2019 02:00:00
New timezone is GMT-4

Transition time in file:1572760800
Add previous offset to get local transition time: November 03, 2019 02:00:00
New timezone is GMT-5

Transition time in file:1583650800
Add previous offset to get local transition time: March 08, 2020 02:00:00
New timezone is GMT-4

Transition time in file:1604210400
Add previous offset to get local transition time: November 01, 2020 02:00:00
New timezone is GMT-5

Transition time in file:1615705200
Add previous offset to get local transition time: March 14, 2021 02:00:00
New timezone is GMT-4

Transition time in file:1636264800
Add previous offset to get local transition time: November 07, 2021 02:00:00
New timezone is GMT-5

Transition time in file:1647154800
Add previous offset to get local transition time: March 13, 2022 02:00:00
New timezone is GMT-4

Transition time in file:1667714400
Add previous offset to get local transition time: November 06, 2022 02:00:00
New timezone is GMT-5

Transition time in file:1678604400
Add previous offset to get local transition time: March 12, 2023 02:00:00
New timezone is GMT-4

Transition time in file:1699164000
Add previous offset to get local transition time: November 05, 2023 02:00:00
New timezone is GMT-5

Transition time in file:1710054000
Add previous offset to get local transition time: March 10, 2024 02:00:00
New timezone is GMT-4

Transition time in file:1730613600
Add previous offset to get local transition time: November 03, 2024 02:00:00
New timezone is GMT-5

Transition time in file:1741503600
Add previous offset to get local transition time: March 09, 2025 02:00:00
New timezone is GMT-4

Transition time in file:1762063200
Add previous offset to get local transition time: November 02, 2025 02:00:00
New timezone is GMT-5

Transition time in file:1772953200
Add previous offset to get local transition time: March 08, 2026 02:00:00
New timezone is GMT-4

Transition time in file:1793512800
Add previous offset to get local transition time: November 01, 2026 02:00:00
New timezone is GMT-5

Transition time in file:1805007600
Add previous offset to get local transition time: March 14, 2027 02:00:00
New timezone is GMT-4

Transition time in file:1825567200
Add previous offset to get local transition time: November 07, 2027 02:00:00
New timezone is GMT-5

Transition time in file:1836457200
Add previous offset to get local transition time: March 12, 2028 02:00:00
New timezone is GMT-4

Transition time in file:1857016800
Add previous offset to get local transition time: November 05, 2028 02:00:00
New timezone is GMT-5

Transition time in file:1867906800
Add previous offset to get local transition time: March 11, 2029 02:00:00
New timezone is GMT-4

Transition time in file:1888466400
Add previous offset to get local transition time: November 04, 2029 02:00:00
New timezone is GMT-5

Transition time in file:1899356400
Add previous offset to get local transition time: March 10, 2030 02:00:00
New timezone is GMT-4

Transition time in file:1919916000
Add previous offset to get local transition time: November 03, 2030 02:00:00
New timezone is GMT-5

Transition time in file:1930806000
Add previous offset to get local transition time: March 09, 2031 02:00:00
New timezone is GMT-4

Transition time in file:1951365600
Add previous offset to get local transition time: November 02, 2031 02:00:00
New timezone is GMT-5

Transition time in file:1962860400
Add previous offset to get local transition time: March 14, 2032 02:00:00
New timezone is GMT-4

Transition time in file:1983420000
Add previous offset to get local transition time: November 07, 2032 02:00:00
New timezone is GMT-5

Transition time in file:1994310000
Add previous offset to get local transition time: March 13, 2033 02:00:00
New timezone is GMT-4

Transition time in file:2014869600
Add previous offset to get local transition time: November 06, 2033 02:00:00
New timezone is GMT-5

Transition time in file:2025759600
Add previous offset to get local transition time: March 12, 2034 02:00:00
New timezone is GMT-4

Transition time in file:2046319200
Add previous offset to get local transition time: November 05, 2034 02:00:00
New timezone is GMT-5

Transition time in file:2057209200
Add previous offset to get local transition time: March 11, 2035 02:00:00
New timezone is GMT-4

Transition time in file:2077768800
Add previous offset to get local transition time: November 04, 2035 02:00:00
New timezone is GMT-5

Transition time in file:2088658800
Add previous offset to get local transition time: March 09, 2036 02:00:00
New timezone is GMT-4

Transition time in file:2109218400
Add previous offset to get local transition time: November 02, 2036 02:00:00
New timezone is GMT-5

Transition time in file:2120108400
Add previous offset to get local transition time: March 08, 2037 02:00:00
New timezone is GMT-4

Transition time in file:2140668000
Add previous offset to get local transition time: November 01, 2037 02:00:00
New timezone is GMT-5


./tz_transitions America/New_York 2077768800
When the 'ts-start' parameter equals a transition time, the returned data appears as if the transition just occured.


The starting timezone is GMT-5

Transition time in file:2088658800
Add previous offset to get local transition time: March 09, 2036 02:00:00
New timezone is GMT-4

Transition time in file:2109218400
Add previous offset to get local transition time: November 02, 2036 02:00:00
New timezone is GMT-5

Transition time in file:2120108400
Add previous offset to get local transition time: March 08, 2037 02:00:00
New timezone is GMT-4

Transition time in file:2140668000
Add previous offset to get local transition time: November 01, 2037 02:00:00
New timezone is GMT-5


./tz_transitions Europe/Rome -1900000000
Note: Passing a large negative value for the 'ts-start' parameter will return all known transitions.


The starting timezone is GMT+1

Transition time in file:-1690851600
Add previous offset to get local transition time: June 03, 1916 00:00:00
New timezone is GMT+2

Transition time in file:-1680483600
Add previous offset to get local transition time: October 01, 1916 01:00:00
New timezone is GMT+1

Transition time in file:-1664758800
Add previous offset to get local transition time: April 01, 1917 00:00:00
New timezone is GMT+2

Transition time in file:-1649034000
Add previous offset to get local transition time: September 30, 1917 01:00:00
New timezone is GMT+1

Transition time in file:-1635123600
Add previous offset to get local transition time: March 10, 1918 00:00:00
New timezone is GMT+2

Transition time in file:-1616979600
Add previous offset to get local transition time: October 06, 1918 01:00:00
New timezone is GMT+1

Transition time in file:-1604278800
Add previous offset to get local transition time: March 02, 1919 00:00:00
New timezone is GMT+2

Transition time in file:-1585530000
Add previous offset to get local transition time: October 05, 1919 01:00:00
New timezone is GMT+1

Transition time in file:-1571014800
Add previous offset to get local transition time: March 21, 1920 00:00:00
New timezone is GMT+2

Transition time in file:-1555290000
Add previous offset to get local transition time: September 19, 1920 01:00:00
New timezone is GMT+1

Transition time in file:-932432400
Add previous offset to get local transition time: June 15, 1940 00:00:00
New timezone is GMT+2

Transition time in file:-857257200
Add previous offset to get local transition time: November 02, 1942 03:00:00
New timezone is GMT+1

Transition time in file:-844556400
Add previous offset to get local transition time: March 29, 1943 02:00:00
New timezone is GMT+2

Transition time in file:-828226800
Add previous offset to get local transition time: October 04, 1943 03:00:00
New timezone is GMT+1

Transition time in file:-812502000
Add previous offset to get local transition time: April 03, 1944 02:00:00
New timezone is GMT+2

Transition time in file:-798080400
Add previous offset to get local transition time: September 17, 1944 01:00:00
New timezone is GMT+1

Transition time in file:-781052400
Add previous offset to get local transition time: April 02, 1945 02:00:00
New timezone is GMT+2

Transition time in file:-766717200
Add previous offset to get local transition time: September 15, 1945 01:00:00
New timezone is GMT+1

Transition time in file:-750898800
Add previous offset to get local transition time: March 17, 1946 02:00:00
New timezone is GMT+2

Transition time in file:-733359600
Add previous offset to get local transition time: October 06, 1946 03:00:00
New timezone is GMT+1

Transition time in file:-719456400
Add previous offset to get local transition time: March 16, 1947 00:00:00
New timezone is GMT+2

Transition time in file:-701917200
Add previous offset to get local transition time: October 05, 1947 01:00:00
New timezone is GMT+1

Transition time in file:-689209200
Add previous offset to get local transition time: February 29, 1948 02:00:00
New timezone is GMT+2

Transition time in file:-670460400
Add previous offset to get local transition time: October 03, 1948 03:00:00
New timezone is GMT+1

Transition time in file:-114051600
Add previous offset to get local transition time: May 22, 1966 00:00:00
New timezone is GMT+2

Transition time in file:-103168800
Add previous offset to get local transition time: September 25, 1966 00:00:00
New timezone is GMT+1

Transition time in file:-81997200
Add previous offset to get local transition time: May 28, 1967 00:00:00
New timezone is GMT+2

Transition time in file:-71719200
Add previous offset to get local transition time: September 24, 1967 00:00:00
New timezone is GMT+1

Transition time in file:-50547600
Add previous offset to get local transition time: May 26, 1968 00:00:00
New timezone is GMT+2

Transition time in file:-40269600
Add previous offset to get local transition time: September 22, 1968 00:00:00
New timezone is GMT+1

Transition time in file:-18493200
Add previous offset to get local transition time: June 01, 1969 00:00:00
New timezone is GMT+2

Transition time in file:-8215200
Add previous offset to get local transition time: September 28, 1969 00:00:00
New timezone is GMT+1

Transition time in file:12956400
Add previous offset to get local transition time: May 31, 1970 00:00:00
New timezone is GMT+2

Transition time in file:23234400
Add previous offset to get local transition time: September 27, 1970 00:00:00
New timezone is GMT+1

Transition time in file:43801200
Add previous offset to get local transition time: May 23, 1971 00:00:00
New timezone is GMT+2

Transition time in file:54687600
Add previous offset to get local transition time: September 26, 1971 01:00:00
New timezone is GMT+1

Transition time in file:75855600
Add previous offset to get local transition time: May 28, 1972 00:00:00
New timezone is GMT+2

Transition time in file:86738400
Add previous offset to get local transition time: October 01, 1972 00:00:00
New timezone is GMT+1

Transition time in file:107910000
Add previous offset to get local transition time: June 03, 1973 00:00:00
New timezone is GMT+2

Transition time in file:118188000
Add previous offset to get local transition time: September 30, 1973 00:00:00
New timezone is GMT+1

Transition time in file:138754800
Add previous offset to get local transition time: May 26, 1974 00:00:00
New timezone is GMT+2

Transition time in file:149637600
Add previous offset to get local transition time: September 29, 1974 00:00:00
New timezone is GMT+1

Transition time in file:170809200
Add previous offset to get local transition time: June 01, 1975 00:00:00
New timezone is GMT+2

Transition time in file:181090800
Add previous offset to get local transition time: September 28, 1975 01:00:00
New timezone is GMT+1

Transition time in file:202258800
Add previous offset to get local transition time: May 30, 1976 00:00:00
New timezone is GMT+2

Transition time in file:212540400
Add previous offset to get local transition time: September 26, 1976 01:00:00
New timezone is GMT+1

Transition time in file:233103600
Add previous offset to get local transition time: May 22, 1977 00:00:00
New timezone is GMT+2

Transition time in file:243990000
Add previous offset to get local transition time: September 25, 1977 01:00:00
New timezone is GMT+1

Transition time in file:265158000
Add previous offset to get local transition time: May 28, 1978 00:00:00
New timezone is GMT+2

Transition time in file:276044400
Add previous offset to get local transition time: October 01, 1978 01:00:00
New timezone is GMT+1

Transition time in file:296607600
Add previous offset to get local transition time: May 27, 1979 00:00:00
New timezone is GMT+2

Transition time in file:307494000
Add previous offset to get local transition time: September 30, 1979 01:00:00
New timezone is GMT+1

Transition time in file:323830800
Add previous offset to get local transition time: April 06, 1980 02:00:00
New timezone is GMT+2

Transition time in file:338950800
Add previous offset to get local transition time: September 28, 1980 03:00:00
New timezone is GMT+1

Transition time in file:354675600
Add previous offset to get local transition time: March 29, 1981 02:00:00
New timezone is GMT+2

Transition time in file:370400400
Add previous offset to get local transition time: September 27, 1981 03:00:00
New timezone is GMT+1

Transition time in file:386125200
Add previous offset to get local transition time: March 28, 1982 02:00:00
New timezone is GMT+2

Transition time in file:401850000
Add previous offset to get local transition time: September 26, 1982 03:00:00
New timezone is GMT+1

Transition time in file:417574800
Add previous offset to get local transition time: March 27, 1983 02:00:00
New timezone is GMT+2

Transition time in file:433299600
Add previous offset to get local transition time: September 25, 1983 03:00:00
New timezone is GMT+1

Transition time in file:449024400
Add previous offset to get local transition time: March 25, 1984 02:00:00
New timezone is GMT+2

Transition time in file:465354000
Add previous offset to get local transition time: September 30, 1984 03:00:00
New timezone is GMT+1

Transition time in file:481078800
Add previous offset to get local transition time: March 31, 1985 02:00:00
New timezone is GMT+2

Transition time in file:496803600
Add previous offset to get local transition time: September 29, 1985 03:00:00
New timezone is GMT+1

Transition time in file:512528400
Add previous offset to get local transition time: March 30, 1986 02:00:00
New timezone is GMT+2

Transition time in file:528253200
Add previous offset to get local transition time: September 28, 1986 03:00:00
New timezone is GMT+1

Transition time in file:543978000
Add previous offset to get local transition time: March 29, 1987 02:00:00
New timezone is GMT+2

Transition time in file:559702800
Add previous offset to get local transition time: September 27, 1987 03:00:00
New timezone is GMT+1

Transition time in file:575427600
Add previous offset to get local transition time: March 27, 1988 02:00:00
New timezone is GMT+2

Transition time in file:591152400
Add previous offset to get local transition time: September 25, 1988 03:00:00
New timezone is GMT+1

Transition time in file:606877200
Add previous offset to get local transition time: March 26, 1989 02:00:00
New timezone is GMT+2

Transition time in file:622602000
Add previous offset to get local transition time: September 24, 1989 03:00:00
New timezone is GMT+1

Transition time in file:638326800
Add previous offset to get local transition time: March 25, 1990 02:00:00
New timezone is GMT+2

Transition time in file:654656400
Add previous offset to get local transition time: September 30, 1990 03:00:00
New timezone is GMT+1

Transition time in file:670381200
Add previous offset to get local transition time: March 31, 1991 02:00:00
New timezone is GMT+2

Transition time in file:686106000
Add previous offset to get local transition time: September 29, 1991 03:00:00
New timezone is GMT+1

Transition time in file:701830800
Add previous offset to get local transition time: March 29, 1992 02:00:00
New timezone is GMT+2

Transition time in file:717555600
Add previous offset to get local transition time: September 27, 1992 03:00:00
New timezone is GMT+1

Transition time in file:733280400
Add previous offset to get local transition time: March 28, 1993 02:00:00
New timezone is GMT+2

Transition time in file:749005200
Add previous offset to get local transition time: September 26, 1993 03:00:00
New timezone is GMT+1

Transition time in file:764730000
Add previous offset to get local transition time: March 27, 1994 02:00:00
New timezone is GMT+2

Transition time in file:780454800
Add previous offset to get local transition time: September 25, 1994 03:00:00
New timezone is GMT+1

Transition time in file:796179600
Add previous offset to get local transition time: March 26, 1995 02:00:00
New timezone is GMT+2

Transition time in file:811904400
Add previous offset to get local transition time: September 24, 1995 03:00:00
New timezone is GMT+1

Transition time in file:828234000
Add previous offset to get local transition time: March 31, 1996 02:00:00
New timezone is GMT+2

Transition time in file:846378000
Add previous offset to get local transition time: October 27, 1996 03:00:00
New timezone is GMT+1

Transition time in file:859683600
Add previous offset to get local transition time: March 30, 1997 02:00:00
New timezone is GMT+2

Transition time in file:877827600
Add previous offset to get local transition time: October 26, 1997 03:00:00
New timezone is GMT+1

Transition time in file:891133200
Add previous offset to get local transition time: March 29, 1998 02:00:00
New timezone is GMT+2

Transition time in file:909277200
Add previous offset to get local transition time: October 25, 1998 03:00:00
New timezone is GMT+1

Transition time in file:922582800
Add previous offset to get local transition time: March 28, 1999 02:00:00
New timezone is GMT+2

Transition time in file:941331600
Add previous offset to get local transition time: October 31, 1999 03:00:00
New timezone is GMT+1

Transition time in file:954032400
Add previous offset to get local transition time: March 26, 2000 02:00:00
New timezone is GMT+2

Transition time in file:972781200
Add previous offset to get local transition time: October 29, 2000 03:00:00
New timezone is GMT+1

Transition time in file:985482000
Add previous offset to get local transition time: March 25, 2001 02:00:00
New timezone is GMT+2

Transition time in file:1004230800
Add previous offset to get local transition time: October 28, 2001 03:00:00
New timezone is GMT+1

Transition time in file:1017536400
Add previous offset to get local transition time: March 31, 2002 02:00:00
New timezone is GMT+2

Transition time in file:1035680400
Add previous offset to get local transition time: October 27, 2002 03:00:00
New timezone is GMT+1

Transition time in file:1048986000
Add previous offset to get local transition time: March 30, 2003 02:00:00
New timezone is GMT+2

Transition time in file:1067130000
Add previous offset to get local transition time: October 26, 2003 03:00:00
New timezone is GMT+1

Transition time in file:1080435600
Add previous offset to get local transition time: March 28, 2004 02:00:00
New timezone is GMT+2

Transition time in file:1099184400
Add previous offset to get local transition time: October 31, 2004 03:00:00
New timezone is GMT+1

Transition time in file:1111885200
Add previous offset to get local transition time: March 27, 2005 02:00:00
New timezone is GMT+2

Transition time in file:1130634000
Add previous offset to get local transition time: October 30, 2005 03:00:00
New timezone is GMT+1

Transition time in file:1143334800
Add previous offset to get local transition time: March 26, 2006 02:00:00
New timezone is GMT+2

Transition time in file:1162083600
Add previous offset to get local transition time: October 29, 2006 03:00:00
New timezone is GMT+1

Transition time in file:1174784400
Add previous offset to get local transition time: March 25, 2007 02:00:00
New timezone is GMT+2

Transition time in file:1193533200
Add previous offset to get local transition time: October 28, 2007 03:00:00
New timezone is GMT+1

Transition time in file:1206838800
Add previous offset to get local transition time: March 30, 2008 02:00:00
New timezone is GMT+2

Transition time in file:1224982800
Add previous offset to get local transition time: October 26, 2008 03:00:00
New timezone is GMT+1

Transition time in file:1238288400
Add previous offset to get local transition time: March 29, 2009 02:00:00
New timezone is GMT+2

Transition time in file:1256432400
Add previous offset to get local transition time: October 25, 2009 03:00:00
New timezone is GMT+1

Transition time in file:1269738000
Add previous offset to get local transition time: March 28, 2010 02:00:00
New timezone is GMT+2

Transition time in file:1288486800
Add previous offset to get local transition time: October 31, 2010 03:00:00
New timezone is GMT+1

Transition time in file:1301187600
Add previous offset to get local transition time: March 27, 2011 02:00:00
New timezone is GMT+2

Transition time in file:1319936400
Add previous offset to get local transition time: October 30, 2011 03:00:00
New timezone is GMT+1

Transition time in file:1332637200
Add previous offset to get local transition time: March 25, 2012 02:00:00
New timezone is GMT+2

Transition time in file:1351386000
Add previous offset to get local transition time: October 28, 2012 03:00:00
New timezone is GMT+1

Transition time in file:1364691600
Add previous offset to get local transition time: March 31, 2013 02:00:00
New timezone is GMT+2

Transition time in file:1382835600
Add previous offset to get local transition time: October 27, 2013 03:00:00
New timezone is GMT+1

Transition time in file:1396141200
Add previous offset to get local transition time: March 30, 2014 02:00:00
New timezone is GMT+2

Transition time in file:1414285200
Add previous offset to get local transition time: October 26, 2014 03:00:00
New timezone is GMT+1

Transition time in file:1427590800
Add previous offset to get local transition time: March 29, 2015 02:00:00
New timezone is GMT+2

Transition time in file:1445734800
Add previous offset to get local transition time: October 25, 2015 03:00:00
New timezone is GMT+1

Transition time in file:1459040400
Add previous offset to get local transition time: March 27, 2016 02:00:00
New timezone is GMT+2

Transition time in file:1477789200
Add previous offset to get local transition time: October 30, 2016 03:00:00
New timezone is GMT+1

Transition time in file:1490490000
Add previous offset to get local transition time: March 26, 2017 02:00:00
New timezone is GMT+2

Transition time in file:1509238800
Add previous offset to get local transition time: October 29, 2017 03:00:00
New timezone is GMT+1

Transition time in file:1521939600
Add previous offset to get local transition time: March 25, 2018 02:00:00
New timezone is GMT+2

Transition time in file:1540688400
Add previous offset to get local transition time: October 28, 2018 03:00:00
New timezone is GMT+1

Transition time in file:1553994000
Add previous offset to get local transition time: March 31, 2019 02:00:00
New timezone is GMT+2

Transition time in file:1572138000
Add previous offset to get local transition time: October 27, 2019 03:00:00
New timezone is GMT+1

Transition time in file:1585443600
Add previous offset to get local transition time: March 29, 2020 02:00:00
New timezone is GMT+2

Transition time in file:1603587600
Add previous offset to get local transition time: October 25, 2020 03:00:00
New timezone is GMT+1

Transition time in file:1616893200
Add previous offset to get local transition time: March 28, 2021 02:00:00
New timezone is GMT+2

Transition time in file:1635642000
Add previous offset to get local transition time: October 31, 2021 03:00:00
New timezone is GMT+1

Transition time in file:1648342800
Add previous offset to get local transition time: March 27, 2022 02:00:00
New timezone is GMT+2

Transition time in file:1667091600
Add previous offset to get local transition time: October 30, 2022 03:00:00
New timezone is GMT+1

Transition time in file:1679792400
Add previous offset to get local transition time: March 26, 2023 02:00:00
New timezone is GMT+2

Transition time in file:1698541200
Add previous offset to get local transition time: October 29, 2023 03:00:00
New timezone is GMT+1

Transition time in file:1711846800
Add previous offset to get local transition time: March 31, 2024 02:00:00
New timezone is GMT+2

Transition time in file:1729990800
Add previous offset to get local transition time: October 27, 2024 03:00:00
New timezone is GMT+1

Transition time in file:1743296400
Add previous offset to get local transition time: March 30, 2025 02:00:00
New timezone is GMT+2

Transition time in file:1761440400
Add previous offset to get local transition time: October 26, 2025 03:00:00
New timezone is GMT+1

Transition time in file:1774746000
Add previous offset to get local transition time: March 29, 2026 02:00:00
New timezone is GMT+2

Transition time in file:1792890000
Add previous offset to get local transition time: October 25, 2026 03:00:00
New timezone is GMT+1

Transition time in file:1806195600
Add previous offset to get local transition time: March 28, 2027 02:00:00
New timezone is GMT+2

Transition time in file:1824944400
Add previous offset to get local transition time: October 31, 2027 03:00:00
New timezone is GMT+1

Transition time in file:1837645200
Add previous offset to get local transition time: March 26, 2028 02:00:00
New timezone is GMT+2

Transition time in file:1856394000
Add previous offset to get local transition time: October 29, 2028 03:00:00
New timezone is GMT+1

Transition time in file:1869094800
Add previous offset to get local transition time: March 25, 2029 02:00:00
New timezone is GMT+2

Transition time in file:1887843600
Add previous offset to get local transition time: October 28, 2029 03:00:00
New timezone is GMT+1

Transition time in file:1901149200
Add previous offset to get local transition time: March 31, 2030 02:00:00
New timezone is GMT+2

Transition time in file:1919293200
Add previous offset to get local transition time: October 27, 2030 03:00:00
New timezone is GMT+1

Transition time in file:1932598800
Add previous offset to get local transition time: March 30, 2031 02:00:00
New timezone is GMT+2

Transition time in file:1950742800
Add previous offset to get local transition time: October 26, 2031 03:00:00
New timezone is GMT+1

Transition time in file:1964048400
Add previous offset to get local transition time: March 28, 2032 02:00:00
New timezone is GMT+2

Transition time in file:1982797200
Add previous offset to get local transition time: October 31, 2032 03:00:00
New timezone is GMT+1

Transition time in file:1995498000
Add previous offset to get local transition time: March 27, 2033 02:00:00
New timezone is GMT+2

Transition time in file:2014246800
Add previous offset to get local transition time: October 30, 2033 03:00:00
New timezone is GMT+1

Transition time in file:2026947600
Add previous offset to get local transition time: March 26, 2034 02:00:00
New timezone is GMT+2

Transition time in file:2045696400
Add previous offset to get local transition time: October 29, 2034 03:00:00
New timezone is GMT+1

Transition time in file:2058397200
Add previous offset to get local transition time: March 25, 2035 02:00:00
New timezone is GMT+2

Transition time in file:2077146000
Add previous offset to get local transition time: October 28, 2035 03:00:00
New timezone is GMT+1

Transition time in file:2090451600
Add previous offset to get local transition time: March 30, 2036 02:00:00
New timezone is GMT+2

Transition time in file:2108595600
Add previous offset to get local transition time: October 26, 2036 03:00:00
New timezone is GMT+1

Transition time in file:2121901200
Add previous offset to get local transition time: March 29, 2037 02:00:00
New timezone is GMT+2

Transition time in file:2140045200
Add previous offset to get local transition time: October 25, 2037 03:00:00
New timezone is GMT+1

<