TimeChangeRule aEDT = {
"AEDT"
, First, Sun, Oct, 2, 660};
TimeChangeRule aEST = {
"AEST"
, First, Sun, Apr, 3, 600};
Timezone ausET(aEDT, aEST);
TimeChangeRule msk = {
"MSK"
, Last, Sun, Mar, 1, 180};
Timezone tzMSK(msk);
TimeChangeRule CEST = {
"CEST"
, Last, Sun, Mar, 2, 120};
TimeChangeRule CET = {
"CET "
, Last, Sun, Oct, 3, 60};
Timezone CE(CEST, CET);
TimeChangeRule BST = {
"BST"
, Last, Sun, Mar, 1, 60};
TimeChangeRule GMT = {
"GMT"
, Last, Sun, Oct, 2, 0};
Timezone UK(BST, GMT);
TimeChangeRule utcRule = {
"UTC"
, Last, Sun, Mar, 1, 0};
Timezone UTC(utcRule);
TimeChangeRule usEDT = {
"EDT"
, Second, Sun, Mar, 2, -240};
TimeChangeRule usEST = {
"EST"
, First, Sun, Nov, 2, -300};
Timezone usET(usEDT, usEST);
TimeChangeRule usCDT = {
"CDT"
, Second, Sun, Mar, 2, -300};
TimeChangeRule usCST = {
"CST"
, First, Sun, Nov, 2, -360};
Timezone usCT(usCDT, usCST);
TimeChangeRule usMDT = {
"MDT"
, Second, Sun, Mar, 2, -360};
TimeChangeRule usMST = {
"MST"
, First, Sun, Nov, 2, -420};
Timezone usMT(usMDT, usMST);
Timezone usAZ(usMST);
TimeChangeRule usPDT = {
"PDT"
, Second, Sun, Mar, 2, -420};
TimeChangeRule usPST = {
"PST"
, First, Sun, Nov, 2, -480};
Timezone usPT(usPDT, usPST);