diff --git a/src/buttons/event-creation/utils.ts b/src/buttons/event-creation/utils.ts index 3d76027..9544872 100644 --- a/src/buttons/event-creation/utils.ts +++ b/src/buttons/event-creation/utils.ts @@ -8,7 +8,59 @@ export const tokenTimeoutMS = tokenTimeoutS * 1000; export const idSeparator = '@'; export const pathIdxSeparator = '|'; export const pathIdxEnder = '&'; -export const selfDestructMessage = (currentTime: number) => `**Please note:** This message will self destruct due to limits imposed by the Discord API.` +export const selfDestructMessage = (currentTime: number) => `**Please note:** This message will self destruct due to limits imposed by the Discord API.`; +export const tzMap: Map = new Map([ + ['CDT', '-05:00'], + ['CST', '-06:00'], + ['PST', '-08:00'], + ['IST', '+05:30'], + ['GMT', '+00:00'], + ['EAT', '+03:00'], + ['CET', '+01:00'], + ['WAT', '+01:00'], + ['CAT', '+02:00'], + ['EET', '+02:00'], + ['CEST', '+02:00'], + ['SAST', '+02:00'], + ['HST', '-10:00'], + ['HDT', '-09:00'], + ['AKST', '-09:00'], + ['AKDT', '-08:00'], + ['AST', '-04:00'], + ['EST', '-05:00'], + ['MST', '-07:00'], + ['MDT', '-06:00'], + ['EDT', '-04:00'], + ['PDT', '-07:00'], + ['ADT', '-03:00'], + ['NST', '-03:30'], + ['NDT', '-02:30'], + ['AEST', '+10:00'], + ['AEDT', '+11:00'], + ['NZST', '+12:00'], + ['NZDT', '+13:00'], + ['EEST', '+03:00'], + ['HKT', '+08:00'], + ['WIB', '+07:00'], + ['WIT', '+09:00'], + ['IDT', '+03:00'], + ['PKT', '+05:00'], + ['WITA', '+08:00'], + ['KST', '+09:00'], + ['JST', '+09:00'], + ['WET', '+00:00'], + ['WEST', '+01:00'], + ['ACST', '+09:30'], + ['ACDT', '+10:30'], + ['AWST', '+08:00'], + ['UTC', '+00:00'], + ['BST', '+01:00'], + ['MSK', '+03:00'], + ['MET', '+01:00'], + ['MEST', '+02:00'], + ['CHST', '+10:00'], + ['SST', '-11:00'], +]); export const tokenMap: Map = new Map(); + +// Overrides because the world had to be special +const tzOverrides: Array> = [ + ['CDT', '-05:00'], + ['CST', '-06:00'], + ['PST', '-08:00'], + ['IST', '+05:30'], +]; +const abbrOverrides: Array = tzOverrides.map(tzSet => tzSet[0]); + +// Prefill the map +for (const override of tzOverrides) { + tzMap.set(override[0], override[1]); +} + +// Attempt to add tz to the map +const attemptAdd = (tzAbbr: string, tzOffset: string) => { + if (!abbrOverrides.includes(tzAbbr)) { + if (tzMap.has(tzAbbr) && tzMap.get(tzAbbr) !== tzOffset) { + console.error(`DOUBLED TZ ABBR WITH DIFF OFFSETS: ${tzAbbr} | ${tzOffset} | ${tzMap.get(tzAbbr)}`) + } else { + if (!tzAbbr.includes('+') && !tzAbbr.includes('-')) { + tzMap.set(tzAbbr, tzOffset); + } + } + } +}; + +// Get each TZ from the csv +for (const row of csvRows) { + const [rawSTDOffset, rawDSTOffset, rawSTDAbbr, rawDSTAbbr] = row.replaceAll('?', '-').toUpperCase().split(','); + const STDOffset = (rawSTDOffset || ''); + const DSTOffset = (rawDSTOffset || ''); + const STDAbbr = (rawSTDAbbr || ''); + const DSTAbbr = (rawDSTAbbr || ''); + + attemptAdd(STDAbbr, STDOffset); + if (STDAbbr !== DSTAbbr) { + attemptAdd(DSTAbbr, DSTOffset); + } +} + +// Log it out to copy to source +const tzIt = tzMap.entries(); +let tzVal = tzIt.next() +while (!tzVal.done) { + if (tzVal.value[0]) { + console.log(`['${tzVal.value[0]}','${tzVal.value[1]}'],`); + } + tzVal = tzIt.next(); +} diff --git a/tzData/tzTable.csv b/tzData/tzTable.csv new file mode 100644 index 0000000..ecbf04e --- /dev/null +++ b/tzData/tzTable.csv @@ -0,0 +1,597 @@ ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++03:00,+03:00,EAT,EAT ++01:00,+01:00,CET,CET ++03:00,+03:00,EAT,EAT ++03:00,+03:00,EAT,EAT ++00:00,+00:00,GMT,GMT ++01:00,+01:00,WAT,WAT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++02:00,+02:00,CAT,CAT ++01:00,+01:00,WAT,WAT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,EET,EET ++01:00,+00:00,+01,+00 ++01:00,+02:00,CET,CEST ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++03:00,+03:00,EAT,EAT ++03:00,+03:00,EAT,EAT ++01:00,+01:00,WAT,WAT ++01:00,+00:00,+01,+00 ++00:00,+00:00,GMT,GMT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,SAST,SAST ++02:00,+02:00,CAT,CAT ++03:00,+03:00,EAT,EAT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,CAT,CAT ++01:00,+01:00,WAT,WAT ++01:00,+01:00,WAT,WAT ++01:00,+01:00,WAT,WAT ++00:00,+00:00,GMT,GMT ++01:00,+01:00,WAT,WAT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,CAT,CAT ++01:00,+01:00,WAT,WAT ++02:00,+02:00,CAT,CAT ++02:00,+02:00,SAST,SAST ++02:00,+02:00,SAST,SAST ++03:00,+03:00,EAT,EAT ++00:00,+00:00,GMT,GMT ++03:00,+03:00,EAT,EAT ++01:00,+01:00,WAT,WAT ++01:00,+01:00,WAT,WAT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++01:00,+01:00,WAT,WAT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++02:00,+02:00,EET,EET ++01:00,+01:00,CET,CET ++02:00,+02:00,CAT,CAT +?10:00,?09:00,HST,HDT +?09:00,?08:00,AKST,AKDT +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?04:00,?04:00,AST,AST +?04:00,?03:00,-04,-03 +?05:00,?05:00,EST,EST +?10:00,?09:00,HST,HDT +?03:00,?03:00,-03,-03 +?06:00,?06:00,CST,CST +?04:00,?04:00,AST,AST +?03:00,?03:00,-03,-03 +?06:00,?06:00,CST,CST +?04:00,?04:00,AST,AST +?04:00,?04:00,-04,-04 +?05:00,?05:00,-05,-05 +?07:00,?06:00,MST,MDT +?03:00,?03:00,-03,-03 +?07:00,?06:00,MST,MDT +?04:00,?04:00,-04,-04 +?05:00,?05:00,EST,EST +?04:00,?04:00,-04,-04 +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 +?05:00,?05:00,EST,EST +?06:00,?05:00,CST,CDT +?06:00,?06:00,CST,CST +?07:00,?06:00,MST,MDT +?05:00,?05:00,EST,EST +?03:00,?03:00,-03,-03 +?06:00,?06:00,CST,CST +?07:00,?07:00,MST,MST +?04:00,?04:00,-04,-04 +?04:00,?04:00,AST,AST ++00:00,+00:00,GMT,GMT +?07:00,?07:00,MST,MST +?07:00,?07:00,MST,MST +?07:00,?06:00,MST,MDT +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?07:00,?06:00,MST,MDT +?05:00,?05:00,-05,-05 +?06:00,?06:00,CST,CST +?08:00,?07:00,PST,PDT +?07:00,?07:00,MST,MST +?05:00,?04:00,EST,EDT +?03:00,?03:00,-03,-03 +?04:00,?03:00,AST,ADT +?03:00,?03:00,-03,-03 +?04:00,?03:00,AST,ADT +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?06:00,?06:00,CST,CST +?05:00,?05:00,-05,-05 +?04:00,?04:00,-04,-04 +?04:00,?03:00,AST,ADT +?05:00,?04:00,CST,CDT +?07:00,?07:00,MST,MST +?05:00,?04:00,EST,EDT +?06:00,?05:00,CST,CDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?06:00,?05:00,CST,CDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?07:00,?06:00,MST,MDT +?05:00,?04:00,EST,EDT +?05:00,?05:00,EST,EST +?03:00,?03:00,-03,-03 +?09:00,?08:00,AKST,AKDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?06:00,?05:00,CST,CDT +?04:00,?04:00,AST,AST +?04:00,?04:00,-04,-04 +?05:00,?05:00,-05,-05 +?08:00,?07:00,PST,PDT +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?03:00,?03:00,-03,-03 +?06:00,?06:00,CST,CST +?04:00,?04:00,-04,-04 +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?06:00,?05:00,CST,CDT +?07:00,?07:00,MST,MST +?03:00,?03:00,-03,-03 +?06:00,?05:00,CST,CDT +?06:00,?06:00,CST,CST +?09:00,?08:00,AKST,AKDT +?06:00,?06:00,CST,CST +?03:00,?02:00,-03,-02 +?04:00,?03:00,AST,ADT +?06:00,?06:00,CST,CST +?03:00,?03:00,-03,-03 +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?09:00,?08:00,AKST,AKDT +?02:00,?02:00,-02,-02 +?06:00,?05:00,CST,CDT +?06:00,?05:00,CST,CDT +?06:00,?05:00,CST,CDT +?03:00,?03:00,-03,-03 +?06:00,?05:00,CST,CDT +?05:00,?05:00,EST,EST +?05:00,?04:00,EST,EDT +?03:00,?03:00,-03,-03 +?07:00,?07:00,MST,MST +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?05:00,?05:00,-05,-05 +?04:00,?04:00,-04,-04 +?04:00,?04:00,AST,AST +?03:00,?03:00,-03,-03 +?06:00,?05:00,CST,CDT +?06:00,?05:00,CST,CDT +?03:00,?03:00,-03,-03 +?06:00,?06:00,CST,CST +?06:00,?05:00,CST,CDT +?05:00,?05:00,-05,-05 +?03:00,?03:00,-03,-03 +?08:00,?07:00,PST,PDT +?03:00,?03:00,-03,-03 +?04:00,?03:00,-04,-03 +?04:00,?04:00,AST,AST +?03:00,?03:00,-03,-03 +?01:00,+00:00,-01,+00 +?07:00,?06:00,MST,MDT +?09:00,?08:00,AKST,AKDT +?04:00,?04:00,AST,AST +?03:30,?02:30,NST,NDT +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?04:00,?04:00,AST,AST +?06:00,?06:00,CST,CST +?06:00,?06:00,CST,CST +?04:00,?03:00,AST,ADT +?05:00,?04:00,EST,EDT +?08:00,?07:00,PST,PDT +?05:00,?04:00,EST,EDT +?04:00,?04:00,AST,AST +?08:00,?07:00,PST,PDT +?04:00,?04:00,AST,AST +?07:00,?07:00,MST,MST +?06:00,?05:00,CST,CDT +?09:00,?08:00,AKST,AKDT +?07:00,?06:00,MST,MDT ++11:00,+11:00,+11,+11 ++07:00,+07:00,+07,+07 ++10:00,+10:00,+10,+10 ++10:00,+11:00,AEST,AEDT ++05:00,+05:00,+05,+05 ++12:00,+13:00,NZST,NZDT +?03:00,?03:00,-03,-03 +?03:00,?03:00,-03,-03 ++12:00,+13:00,NZST,NZDT ++03:00,+03:00,+03,+03 ++00:00,+02:00,+00,+02 ++06:00,+06:00,+06,+06 ++01:00,+02:00,CET,CEST ++03:00,+03:00,+03,+03 ++06:00,+06:00,+06,+06 ++03:00,+03:00,+03,+03 ++12:00,+12:00,+12,+12 ++05:00,+05:00,+05,+05 ++05:00,+05:00,+05,+05 ++05:00,+05:00,+05,+05 ++05:00,+05:00,+05,+05 ++05:00,+05:00,+05,+05 ++03:00,+03:00,+03,+03 ++03:00,+03:00,+03,+03 ++04:00,+04:00,+04,+04 ++07:00,+07:00,+07,+07 ++07:00,+07:00,+07,+07 ++02:00,+03:00,EET,EEST ++06:00,+06:00,+06,+06 ++08:00,+08:00,+08,+08 ++05:30,+05:30,IST,IST ++09:00,+09:00,+09,+09 ++08:00,+08:00,+08,+08 ++08:00,+08:00,CST,CST ++08:00,+08:00,CST,CST ++05:30,+05:30,+0530,+0530 ++06:00,+06:00,+06,+06 ++03:00,+03:00,+03,+03 ++06:00,+06:00,+06,+06 ++09:00,+09:00,+09,+09 ++04:00,+04:00,+04,+04 ++05:00,+05:00,+05,+05 ++02:00,+03:00,EET,EEST ++02:00,+03:00,EET,EEST ++08:00,+08:00,CST,CST ++02:00,+03:00,EET,EEST ++07:00,+07:00,+07,+07 ++08:00,+08:00,HKT,HKT ++07:00,+07:00,+07,+07 ++08:00,+08:00,+08,+08 ++03:00,+03:00,+03,+03 ++07:00,+07:00,WIB,WIB ++09:00,+09:00,WIT,WIT ++02:00,+03:00,IST,IDT ++04:30,+04:30,+0430,+0430 ++12:00,+12:00,+12,+12 ++05:00,+05:00,PKT,PKT ++06:00,+06:00,+06,+06 ++05:45,+05:45,+0545,+0545 ++05:45,+05:45,+0545,+0545 ++09:00,+09:00,+09,+09 ++05:30,+05:30,IST,IST ++07:00,+07:00,+07,+07 ++08:00,+08:00,+08,+08 ++08:00,+08:00,+08,+08 ++03:00,+03:00,+03,+03 ++08:00,+08:00,CST,CST ++08:00,+08:00,CST,CST ++11:00,+11:00,+11,+11 ++08:00,+08:00,WITA,WITA ++08:00,+08:00,PST,PST ++04:00,+04:00,+04,+04 ++02:00,+03:00,EET,EEST ++07:00,+07:00,+07,+07 ++07:00,+07:00,+07,+07 ++06:00,+06:00,+06,+06 ++05:00,+05:00,+05,+05 ++07:00,+07:00,+07,+07 ++07:00,+07:00,WIB,WIB ++09:00,+09:00,KST,KST ++03:00,+03:00,+03,+03 ++06:00,+06:00,+06,+06 ++05:00,+05:00,+05,+05 ++06:30,+06:30,+0630,+0630 ++03:00,+03:00,+03,+03 ++07:00,+07:00,+07,+07 ++11:00,+11:00,+11,+11 ++05:00,+05:00,+05,+05 ++09:00,+09:00,KST,KST ++08:00,+08:00,CST,CST ++08:00,+08:00,+08,+08 ++11:00,+11:00,+11,+11 ++08:00,+08:00,CST,CST ++05:00,+05:00,+05,+05 ++04:00,+04:00,+04,+04 ++03:30,+03:30,+0330,+0330 ++02:00,+03:00,IST,IDT ++06:00,+06:00,+06,+06 ++06:00,+06:00,+06,+06 ++09:00,+09:00,JST,JST ++07:00,+07:00,+07,+07 ++08:00,+08:00,WITA,WITA ++08:00,+08:00,+08,+08 ++08:00,+08:00,+08,+08 ++06:00,+06:00,+06,+06 ++10:00,+10:00,+10,+10 ++07:00,+07:00,+07,+07 ++10:00,+10:00,+10,+10 ++09:00,+09:00,+09,+09 ++06:30,+06:30,+0630,+0630 ++05:00,+05:00,+05,+05 ++04:00,+04:00,+04,+04 +?01:00,+00:00,-01,+00 +?04:00,?03:00,AST,ADT ++00:00,+01:00,WET,WEST +?01:00,?01:00,-01,-01 ++00:00,+01:00,WET,WEST ++00:00,+01:00,WET,WEST ++01:00,+02:00,CET,CEST ++00:00,+01:00,WET,WEST ++00:00,+00:00,GMT,GMT +?02:00,?02:00,-02,-02 ++00:00,+00:00,GMT,GMT +?03:00,?03:00,-03,-03 ++10:00,+11:00,AEST,AEDT ++09:30,+10:30,ACST,ACDT ++10:00,+10:00,AEST,AEST ++09:30,+10:30,ACST,ACDT ++10:00,+11:00,AEST,AEDT ++10:00,+11:00,AEST,AEDT ++09:30,+09:30,ACST,ACST ++08:45,+08:45,+0845,+0845 ++10:00,+11:00,AEST,AEDT ++10:30,+11:00,+1030,+11 ++10:00,+10:00,AEST,AEST ++10:30,+11:00,+1030,+11 ++10:00,+11:00,AEST,AEDT ++09:30,+09:30,ACST,ACST ++10:00,+11:00,AEST,AEDT ++08:00,+08:00,AWST,AWST ++10:00,+10:00,AEST,AEST ++09:30,+10:30,ACST,ACDT ++10:00,+11:00,AEST,AEDT ++10:00,+11:00,AEST,AEDT ++10:00,+11:00,AEST,AEDT ++08:00,+08:00,AWST,AWST ++09:30,+10:30,ACST,ACDT +?05:00,?05:00,-05,-05 +?02:00,?02:00,-02,-02 +?03:00,?03:00,-03,-03 +?04:00,?04:00,-04,-04 +?04:00,?03:00,AST,ADT +?06:00,?05:00,CST,CDT +?05:00,?04:00,EST,EDT +?07:00,?06:00,MST,MDT +?03:30,?02:30,NST,NDT +?08:00,?07:00,PST,PDT +?06:00,?06:00,CST,CST +?07:00,?07:00,MST,MST ++01:00,+02:00,CET,CEST +?04:00,?03:00,-04,-03 +?06:00,?05:00,-06,-05 +?06:00,?05:00,CST,CDT +?05:00,?04:00,CST,CDT ++02:00,+03:00,EET,EEST ++02:00,+02:00,EET,EET ++01:00,+00:00,IST,GMT +?05:00,?05:00,EST,EST +?05:00,?04:00,EST,EDT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT +?01:00,?01:00,-01,-01 +?10:00,?10:00,-10,-10 +?11:00,?11:00,-11,-11 +?12:00,?12:00,-12,-12 +?02:00,?02:00,-02,-02 +?03:00,?03:00,-03,-03 +?04:00,?04:00,-04,-04 +?05:00,?05:00,-05,-05 +?06:00,?06:00,-06,-06 +?07:00,?07:00,-07,-07 +?08:00,?08:00,-08,-08 +?09:00,?09:00,-09,-09 ++00:00,+00:00,GMT,GMT ++01:00,+01:00,+01,+01 ++10:00,+10:00,+10,+10 ++11:00,+11:00,+11,+11 ++12:00,+12:00,+12,+12 ++13:00,+13:00,+13,+13 ++14:00,+14:00,+14,+14 ++02:00,+02:00,+02,+02 ++03:00,+03:00,+03,+03 ++04:00,+04:00,+04,+04 ++05:00,+05:00,+05,+05 ++06:00,+06:00,+06,+06 ++07:00,+07:00,+07,+07 ++08:00,+08:00,+08,+08 ++09:00,+09:00,+09,+09 ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,UTC,UTC ++00:00,+00:00,UTC,UTC ++00:00,+00:00,UTC,UTC ++00:00,+00:00,UTC,UTC ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++04:00,+04:00,+04,+04 ++02:00,+03:00,EET,EEST ++00:00,+01:00,GMT,BST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++01:00,+00:00,IST,GMT ++01:00,+02:00,CET,CEST ++00:00,+01:00,GMT,BST ++02:00,+03:00,EET,EEST ++00:00,+01:00,GMT,BST ++03:00,+03:00,+03,+03 ++00:00,+01:00,GMT,BST ++02:00,+02:00,EET,EET ++02:00,+03:00,EET,EEST ++03:00,+03:00,+03,+03 ++02:00,+03:00,EET,EEST ++00:00,+01:00,WET,WEST ++01:00,+02:00,CET,CEST ++00:00,+01:00,GMT,BST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++03:00,+03:00,+03,+03 ++01:00,+02:00,CET,CEST ++03:00,+03:00,MSK,MSK ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++04:00,+04:00,+04,+04 ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++04:00,+04:00,+04,+04 ++03:00,+03:00,MSK,MSK ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++04:00,+04:00,+04,+04 ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++03:00,+03:00,+03,+03 ++01:00,+02:00,CET,CEST ++01:00,+02:00,CET,CEST ++02:00,+03:00,EET,EEST ++01:00,+02:00,CET,CEST ++00:00,+00:00,-00,-00 ++00:00,+01:00,GMT,BST ++00:00,+01:00,GMT,BST ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++00:00,+00:00,GMT,GMT ++08:00,+08:00,HKT,HKT +?10:00,?10:00,HST,HST ++00:00,+00:00,GMT,GMT ++03:00,+03:00,EAT,EAT ++06:00,+06:00,+06,+06 ++07:00,+07:00,+07,+07 ++06:30,+06:30,+0630,+0630 ++03:00,+03:00,EAT,EAT ++05:00,+05:00,+05,+05 ++04:00,+04:00,+04,+04 ++05:00,+05:00,+05,+05 ++04:00,+04:00,+04,+04 ++03:00,+03:00,EAT,EAT ++04:00,+04:00,+04,+04 ++03:30,+03:30,+0330,+0330 ++02:00,+03:00,IST,IDT +?05:00,?05:00,EST,EST ++09:00,+09:00,JST,JST ++12:00,+12:00,+12,+12 ++02:00,+02:00,EET,EET ++01:00,+02:00,MET,MEST +?08:00,?07:00,PST,PDT +?07:00,?07:00,MST,MST +?06:00,?06:00,CST,CST +?07:00,?07:00,MST,MST +?07:00,?06:00,MST,MDT +?07:00,?06:00,MST,MDT ++12:00,+13:00,NZST,NZDT ++12:45,+13:45,+1245,+1345 ++13:00,+13:00,+13,+13 ++12:00,+13:00,NZST,NZDT ++11:00,+11:00,+11,+11 ++12:45,+13:45,+1245,+1345 ++10:00,+10:00,+10,+10 +?06:00,?05:00,-06,-05 ++11:00,+11:00,+11,+11 ++13:00,+13:00,+13,+13 ++13:00,+13:00,+13,+13 ++12:00,+12:00,+12,+12 ++12:00,+12:00,+12,+12 +?06:00,?06:00,-06,-06 +?09:00,?09:00,-09,-09 ++11:00,+11:00,+11,+11 ++10:00,+10:00,ChST,ChST +?10:00,?10:00,HST,HST +?10:00,?10:00,HST,HST ++13:00,+13:00,+13,+13 ++14:00,+14:00,+14,+14 ++11:00,+11:00,+11,+11 ++12:00,+12:00,+12,+12 ++12:00,+12:00,+12,+12 +?09:30,?09:30,-0930,-0930 +?11:00,?11:00,SST,SST ++12:00,+12:00,+12,+12 +?11:00,?11:00,-11,-11 ++11:00,+12:00,+11,+12 ++11:00,+11:00,+11,+11 +?11:00,?11:00,SST,SST ++09:00,+09:00,+09,+09 +?08:00,?08:00,-08,-08 ++11:00,+11:00,+11,+11 ++11:00,+11:00,+11,+11 ++10:00,+10:00,+10,+10 +?10:00,?10:00,-10,-10 ++10:00,+10:00,ChST,ChST +?11:00,?11:00,SST,SST +?10:00,?10:00,-10,-10 ++12:00,+12:00,+12,+12 ++13:00,+13:00,+13,+13 ++10:00,+10:00,+10,+10 ++12:00,+12:00,+12,+12 ++12:00,+12:00,+12,+12 ++10:00,+10:00,+10,+10 ++01:00,+02:00,CET,CEST ++00:00,+01:00,WET,WEST ++08:00,+08:00,CST,CST +?08:00,?07:00,PST,PDT ++08:00,+08:00,CST,CST ++09:00,+09:00,KST,KST ++08:00,+08:00,+08,+08 ++03:00,+03:00,+03,+03 ++00:00,+00:00,UTC,UTC ++00:00,+00:00,UTC,UTC +?09:00,?08:00,AKST,AKDT +?10:00,?09:00,HST,HDT +?07:00,?07:00,MST,MST +?06:00,?05:00,CST,CDT +?05:00,?04:00,EST,EDT +?05:00,?04:00,EST,EDT +?10:00,?10:00,HST,HST +?06:00,?05:00,CST,CDT +?05:00,?04:00,EST,EDT +?07:00,?06:00,MST,MDT +?08:00,?07:00,PST,PDT +?11:00,?11:00,SST,SST ++00:00,+00:00,UTC,UTC ++03:00,+03:00,MSK,MSK ++00:00,+01:00,WET,WEST ++00:00,+00:00,UTC,UTC