Skip to content

Instantly share code, notes, and snippets.

@lifthrasiir
Last active March 13, 2024 02:53
Show Gist options
  • Save lifthrasiir/829a165ac5b753bb8c0c3ac3d62ec1c2 to your computer and use it in GitHub Desktop.
Save lifthrasiir/829a165ac5b753bb8c0c3ac3d62ec1c2 to your computer and use it in GitHub Desktop.
Proposal for stable short identifier (or two) of time zones

This proposal was originally written in 2018 as a concrete proposal for numeric time zone identifiers. I'm still not sure if this has a merit or not, but for the historical perspective, I reproduce the (incomplete) proposal in verbatim here. --Kang Seonghoon


[...]

The needs for the short and stable identifier are most importantly observed by the case of the Unicode CLDR project. CLDR required a stable identifier for the locales, which requires a stable identifier for the time zones. [...]

Short Identifiers

The proposed short identifier is a 4 digit long, unsigned and zero-padded integer. A set of all possible short identifiers is further divided into the following partitions.

0000        Unknown (Etc/Unknown)
0001..0059  Global time zones
0060..0099  Fixed offsets to "GMT"
0100..0999  Regional time zones (exceptional)
1000..9998  Regional time zones (locational)
9999        Reserved

There is a single known global time zone.

0001    Etc/UTC

Fixed offsets to "GMT" are in fact offsets to UTC and provided for the legacy time zones which name starts with Etc/GMT. In particular, Etc/GMT (0080) is exactly identical to Etc/UTC (0001) but given a different identifier for the backward compatibility.

0068    Etc/GMT+12 (UTC-12)
...     ...
0079    Etc/GMT+1 (UTC-01)
0080    Etc/GMT (UTC)
0081    Etc/GMT-1 (UTC+01)
...     ...
0094    Etc/GMT-14 (UTC+14)

Regional time zones are divided into 9 major regions, identified by a single digit from 1 to 9. They are at the first digit in the locational zones or the second digit in the systematic zones.

1   Africa/
2   America/
3   Antarctica/
4   Asia/
5   Australia/
6   Europe/
7   Arctic/ + Atlantic/ (often considered to be a single ocean)
8   Indian/
9   Pacific/

Almost all time zones are locational, i.e. its long name points to a particular location where the time zone is in use. Exceptional identifiers are only given when there is no reference location or much more exceptional needs arise. They are very rare in the current tz database and as a result there is no particular assignment policy. In fact, the following is the complete list of current exceptional identifiers:

0205    US Eastern Time (UTC-5/-4)
0206    US Central Time (UTC-6/-5)
0207    US Mountain Time (UTC-7/-6)
0208    US Pacific Time (UTC-8/-7)

WGS 84 coordinates of the reference locations are used to generate locational time zone identifiers: The second and third digit is the units digit of latitude and longitude rounded to the nearest integer, respectively. In the other words, we divide the entire earth into "squares" which latitude ranges from X-0.5° to X+0.5° and longitude ranges from Y-0.5° to Y+0.5° (wrapping around), and number them with abs(X) mod 10 and abs(Y) mod 10 concatenated. The "squares" around north and south poles (i.e. circles up to 89.5° N/S) are exceptionally shaped and always numbered 00. For example:

LONG NAME               LAT. (ROUNDED)       LONG. (ROUNDED)        SQUARE
America/Los_Angeles     34d 03m 38s N (34N)  118d 14m 34s W (118W)  48
America/Buenos_Aires    34d 36m S (35S)      58d 27m W (58W)        58
Asia/Tokyo              35d 39m 16s N (36N)  139d 44m 41s E (140E)  60
Asia/Vladivostok        43d 10m N (43N)      131d 56m E (132E)      32
Asia/Kuala_Lumpur       3d 10m N (3N)        101d 42m E (102E)      32
Pacific/Galapagos       0d 54m S (1S)        89d 36m W (90W)        10
Antarctica/South_Pole   89d 59m S (90S)      139d 16m E (-)         00

In principle any square overlapping the time zone can be used, but in reality we use a single representative location to simplify the matter.

The square number is then concatenated with the primary region. As expected, and as you can see above, this may result in duplicates. The final, fourth digit is used to disambiguate them. Initially duplicate time zones are numbered from the north to the south, starting at 0; later assignments will simply use the next available number. It is highly unlikely that there are more than 10 locations in a single square, but if it does happen, exceptional identifiers will be used.

LONG NAME               REGION  SQUARE  SERIAL  SHORT ID
America/Los_Angeles     2       48      1       2481
America/Buenos_Aires    2       58      2       2582
Asia/Tokyo              4       60      0       4600
Asia/Vladivostok        4       32      0       4320
Asia/Kuala_Lumpur       4       32      1       4321
Pacific/Galapagos       9       10      0       9100
Antarctica/South_Pole   3       00      0       3000

Rationale

The numeric format was chosen for multiple reasons. A fixed-length numeric format is computationally efficient and language-agnostic. Human can easily see, read or write a numeric identifier but cannot directly infer its meaning. This property is useful for avoiding most political concerns, particularly when combined with the locational assignment.

The length of four decimal digit is chosen because they are deemed sufficient for the current and future needs (there are about 460 time zones to be encoded initially). Three digits may be even usable, but a spare digit greatly simplifies the collision resolution. In addition, no identifiers included in BCP 47 are numeric and also four digit long, unlike three-digit numeric identifiers that will interfere with UN M.49.

The assignment based on the coordinates completely sidesteps political issues and/or linguistic issues. We also assume that the final assignment will be made by human, so the simplicity is paramount. Essentially we are using coordinates as a reproducible pseudo-random number generator, and it should be simple enough that anyone can reproduce. Using the units digit as a pseudo-random number is pretty reliable as no city is that large (1 degree of arc is about 110 km). Using the absolute value instead of the proper modulo means there are some biases around zeros, but it doesn't skew the distribution too much and is easier for humans. We do not try other possible coordinates to minimize the collision for the same reason---with a spare digit the collision is of less concern.

The first digit for the region is added to greatly reduce the collision. This also allows a rudimentary classification of short identifiers by the region, that can be useful from time to time. The set of regions is exactly same to the current primary category (except for Etc/) to avoid any additional assumption. It had to be tweaked, however, to fit 10 regions into 9 possible digits; I opted to merge Arctic/ with neighboring Atlantic/ because they are least populated. In the future, if we had a time zone based on the Southern Ocean, a resulting new category will be also merged to Antarctic/. The regions are grouped by continents and oceans and ordered by their ASCII names; grouping was there because Asia/ is ordered after Arctic/ but before Atlantic/.

The initial assignment is done in the way that it's reproducible from any version of the tz database plus additional coordinates. The assignment from north to south is purely cosmetic, with a weak justification that the northern hemisphere has more locations than the southern hemisphere (thus resulting in smaller numbers).

The smallest identifier (0000) and the largest identifier (9999) are both reserved for technically obvious reasons. This is also why the regional digit is never 0 (we have multiple locations in the square 00). The smallest identifier is used as an unknown time zone (Etc/Unknown) because 0 is a common initial value.

Initial List

The following is the initial list based on the tz database release 2018e (2018-05-01). The columns are the short identifier, the BCP 47 identifier (which the short identifier should bijectively map), the long name, and if any, the coordinates used in the assignment in the zone1970.tab format. The asterisk after the coordinates indicates that the coordinates are not present in zone1970.tab itself and sourced from US/LOCODE and Wikipedia. Consequently those coordinates are enough for assignment but may not be enough for other purpose; you have been warned.

0000    unk         Etc/Unknown
0001    utc         Etc/UTC
0068    utcw12      Etc/GMT+12
0069    utcw11      Etc/GMT+11
0070    utcw10      Etc/GMT+10
0071    utcw09      Etc/GMT+9
0072    utcw08      Etc/GMT+8
0073    utcw07      Etc/GMT+7
0074    utcw06      Etc/GMT+6
0075    utcw05      Etc/GMT+5
0076    utcw04      Etc/GMT+4
0077    utcw03      Etc/GMT+3
0078    utcw02      Etc/GMT+2
0079    utcw01      Etc/GMT+1
0080    gmt         Etc/GMT
0081    utce01      Etc/GMT-1
0082    utce02      Etc/GMT-2
0083    utce03      Etc/GMT-3
0084    utce04      Etc/GMT-4
0085    utce05      Etc/GMT-5
0086    utce06      Etc/GMT-6
0087    utce07      Etc/GMT-7
0088    utce08      Etc/GMT-8
0089    utce09      Etc/GMT-9
0090    utce10      Etc/GMT-10
0091    utce11      Etc/GMT-11
0092    utce12      Etc/GMT-12
0093    utce13      Etc/GMT-13
0094    utce14      Etc/GMT-14
0205    est5edt     EST5EDT
0206    cst6cdt     CST6CDT
0207    mst7mdt     MST7MDT
0208    pst8pdt     PST8PDT
1010    egcai       Africa/Cairo                    +3003+03115
1030    ugkla       Africa/Kampala                  +001849+0323452 *
1040    gncky       Africa/Conakry                  +093033-0134244 *
1070    sttms       Africa/Sao_Tome                 +0020+00644
1090    galbv       Africa/Libreville               +002324+0092716 *
1170    kenbo       Africa/Nairobi                  -0117+03649
1200    rwkgl       Africa/Kigali                   -015638+0300334 *
1220    bfoua       Africa/Ouagadougou              +122126-0013207 *
1230    djjib       Africa/Djibouti                 +1130+04300 *
1250    tdndj       Africa/Ndjamena                 +1207+01503
1251    somgq       Africa/Mogadishu                +0202+04520 *
1260    gwoxb       Africa/Bissau                   +1151-01535
1270    cdfbm       Africa/Lubumbashi               -1140+02729 *
1330    lytip       Africa/Tripoli                  +3254+01311
1370    gmbjl       Africa/Banjul                   +132711-0163439 *
1371    nawdh       Africa/Windhoek                 -2234+01706
1380    mlbko       Africa/Bamako                   +123821-0080010 *
1390    bibjm       Africa/Bujumbura                -0323+02922 *
1400    cmdla       Africa/Douala                   +0403+00942 *
1420    nenim       Africa/Niamey                   +133042+0020731 *
1450    cgbzv       Africa/Brazzaville              -041604+0151731 *
1451    cdfih       Africa/Kinshasa                 -041930+0151920 *
1480    macas       Africa/Casablanca               +3339-00735
1490    cfbgf       Africa/Bangui                   +0422+01835 *
1491    gqssg       Africa/Malabo                   +0345+00847 *
1520    ssjub       Africa/Juba                     +0451+03137
1540    ciabj       Africa/Abidjan                  +0519-00402
1560    bwgbe       Africa/Gaborone                 -2440+02555 *
1570    sndkr       Africa/Dakar                    +144134-0172648 *
1580    zmlun       Africa/Lusaka                   -1525+02817 *
1590    erasm       Africa/Asmera                   +1520+03856 *
1600    ghacc       Africa/Accra                    +0533-00013
1610    lrmlw       Africa/Monrovia                 +0618-01047
1611    tglfw       Africa/Lome                     +060755+0011322 *
1612    szqmn       Africa/Mbabane                  -2619+03108 *
1630    sdkrt       Africa/Khartoum                 +1536+03232
1631    bjptn       Africa/Porto-Novo               +0629+00237 *
1632    nglos       Africa/Lagos                    +0627+00324
1633    mzmpm       Africa/Maputo                   -2558+03235
1650    esceu       Africa/Ceuta                    +3553-00519
1651    mwblz       Africa/Blantyre                 -154710+0350021 *
1680    zajnb       Africa/Johannesburg             -2615+02800
1700    tntun       Africa/Tunis                    +3648+01011
1730    dzalg       Africa/Algiers                  +3647+00303
1731    eheai       Africa/El_Aaiun                 +2709-01312
1790    tzdar       Africa/Dar_es_Salaam            -0648+03917 *
1810    zwhre       Africa/Harare                   -174945+0310308 *
1830    slfna       Africa/Freetown                 +082904-0131404 *
1860    mrnkc       Africa/Nouakchott               +1806-01557 *
1930    aolad       Africa/Luanda                   -085018+0131404 *
1970    lsmsu       Africa/Maseru                   -2919+02729 *
1990    etadd       Africa/Addis_Ababa              +090148+0384424 *
2000    caydq       America/Dawson_Creek            +5946-12014
2001    usyak       America/Yakutat                 +593249-1394338
2020    globy       America/Scoresbysund            +7029-02158
2040    mxoji       America/Ojinaga                 +2934-10425
2041    crsjo       America/Costa_Rica              +0956-08405
2050    careg       America/Regina                  +5024-10439
2051    usden       America/Denver                  +394421-1045903
2052    brcgr       America/Campo_Grande            -2027-05437
2060    usind       America/Indianapolis            +394606-0860929
2061    brmcz       America/Maceio                  -0940-03543
2070    cawnp       America/Winnipeg                +4953-09709
2080    cayyn       America/Swift_Current           +5017-10750
2081    brrbr       America/Rio_Branco              -0958-06748
2100    usanc       America/Anchorage               +611305-1495401
2101    mxmid       America/Merida                  +2058-08937
2110    tcgdt       America/Grand_Turk              +2128-07108
2120    ttpos       America/Port_of_Spain           +1039-06131
2140    usnyc       America/New_York                +404251-0740023
2141    arcor       America/Cordoba                 -3124-06411
2150    cayxy       America/Whitehorse              +6043-13503
2151    mxpvr       America/Bahia_Banderas          +2048-10515
2170    caybx       America/Blanc-Sablon            +5125-05707
2171    usknx       America/Indiana/Knox            +411745-0863730
2172    uswlz       America/Indiana/Winamac         +410305-0863611
2173    mxcun       America/Cancun                  +2105-08646
2174    veccs       America/Caracas                 +1030-06656
2180    brbel       America/Belem                   -0127-04829
2200    ecgye       America/Guayaquil               -0210-07950
2220    gdgnd       America/Grenada                 +1207-06140 *
2230    usdet       America/Detroit                 +421953-0830245
2240    cayzf       America/Yellowknife             +6227-11421
2250    brstm       America/Santarem                -0226-05452
2260    nimga       America/Managua                 +1209-08617
2270    usadk       America/Adak                    +515248-1763929
2271    pelim       America/Lima                    -1203-07703
2280    uschi       America/Chicago                 +4151-08739
2281    bqkra       America/Kralendijk              +1209-06816 *
2290    ancur       America/Curacao                 +1211-06900
2291    aruaq       America/Argentina/San_Juan      -3132-06831
2292    arrgl       America/Argentina/Rio_Gallegos  -5138-069132 *
2300    cagoo       America/Goose_Bay               +5320-06025
2301    bbbgi       America/Barbados                +1306-05937
2302    awaua       America/Aruba                   +1230-06958 *
2303    brmao       America/Manaus                  -0308-06001
2310    vcsvd       America/St_Vincent              +1315-06112 *
2311    brbvb       America/Boa_Vista               +0249-06040
2312    clscl       America/Santiago                -3327-07040
2313    clpuq       America/Punta_Arenas            -5309-07055
2320    cayek       America/Rankin_Inlet            +624900-0920459
2321    usphx       America/Phoenix                 +332654-1120424
2322    cuhav       America/Havana                  +2308-08222
2360    mxstis      America/Santa_Isabel            +323753-1153432 *
2361    mxmzt       America/Mazatlan                +2313-10625
2362    arluq       America/Argentina/San_Luis      -3319-06621
2370    mxtij       America/Tijuana                 +3232-11701
2390    brssa       America/Bahia                   -1259-03831
2391    armdz       America/Mendoza                 -3253-06849
2410    lccas       America/St_Lucia                +1401-06058 *
2420    glgoh       America/Godthab                 +6411-05144
2421    brfen       America/Noronha                 -0351-03225
2430    caedm       America/Edmonton                +5333-11328
2450    arjuj       America/Jujuy                   -2411-06518
2460    usboi       America/Boise                   +433649-1161209
2470    hntgu       America/Tegucigalpa             +1406-08713
2471    brsao       America/Sao_Paulo               -2332-04637
2480    caiql       America/Iqaluit                 +6344-06828
2481    uslax       America/Los_Angeles             +340308-1181434
2490    cayda       America/Dawson                  +6404-13925
2491    cator       America/Toronto                 +4339-07923
2492    svsal       America/El_Salvador             +1342-08912
2493    brfor       America/Fortaleza               -0343-03830
2510    dmdom       America/Dominica                +1525-06120 *
2511    gtgua       America/Guatemala               +1438-09031
2512    mqfdf       America/Martinique              +1436-06105
2520    usmtm       America/Metlakatla              +550737-1313435
2521    gfcay       America/Cayenne                 +0456-05220
2540    cahal       America/Halifax                 +4439-06336
2541    cobog       America/Bogota                  +0436-07405
2550    careb       America/Resolute                +744144-0944945
2551    usome       America/Nome                    +643004-1652423
2552    arsla       America/Argentina/Salta         -2447-06525
2560    uymvd       America/Montevideo              -345433-0561245
2570    bsnas       America/Nassau                  +2505-07721
2580    usmnm       America/Menominee               +450628-0873651
2581    pyasu       America/Asuncion                -2516-05740
2582    arbue       America/Buenos_Aires            -3436-05827
2583    arush       America/Argentina/Ushuaia       -5448-06818
2600    caglb       America/Glace_Bay               +4612-05957
2601    mxmty       America/Monterrey               +2540-10019
2620    gpbbr       America/Guadeloupe              +1600-06143 *
2640    camtr       America/Montreal                +4530-07334 *
2650    camon       America/Moncton                 +4606-06447
2651    srpbm       America/Paramaribo              +0550-05510
2662    capnt       America/Pangnirtung             +6608-06544
2663    brcgb       America/Cuiaba                  -1535-05605
2680    mxmam       America/Matamoros               +2550-09730
2700    brern       America/Eirunepe                -0640-06952
2710    usndcnt     America/North_Dakota/Center     +470659-1011757
2711    usndnsl     America/North_Dakota/New_Salem  +465042-10124391 *
2720    usxul       America/North_Dakota/Beulah     +471551-1014640
2721    aganu       America/Antigua                 +1705-06148 *
2722    msmni       America/Montserrat              +1645-06212 *
2730    knbas       America/St_Kitts                +1715-06240 *
2750    ussit       America/Sitka                   +571035-1351807
2751    usmoc       America/Kentucky/Monticello     +364947-0845057
2752    artuc       America/Argentina/Tucuman       -2649-06513
2760    pmmqc       America/Miquelon                +4703-05620
2780    gygeo       America/Guyana                  +0648-05810
2781    braux       America/Araguaina               -0712-04812
2782    bolpb       America/La_Paz                  -1630-06809
2790    gldkshvn    America/Danmarkshavn            +7646-01840
2791    glthu       America/Thule                   +7634-06847
2792    usnavajo    America/Shiprock                +364115-1085011 *
2800    dosdq       America/Santo_Domingo           +1828-06954
2830    casjf       America/St_Johns                +4734-05243
2831    aiaxa       America/Anguilla                +181338-0630256 *
2832    gpmsb       America/Marigot                 +1804-06305 *
2833    sxphi       America/Lower_Princes           +1801-06302 *
2834    gpsbh       America/St_Barthelemy           +1754-06250 *
2840    cayev       America/Inuvik                  +682059-1334300
2841    usjnu       America/Juneau                  +581807-1342511
2850    vgtov       America/Tortola                 +182524-0643705 *
2851    vistt       America/St_Thomas               +1821-06456 *
2852    brrec       America/Recife                  -0803-03454
2860    usaeg       America/Indiana/Marengo         +382232-0862041
2861    uslui       America/Louisville              +381515-0854534
2862    prsju       America/Puerto_Rico             +182806-0660622
2863    arctc       America/Catamarca               -2828-06547
2870    uswsq       America/Indiana/Petersburg      +382931-0871643
2871    ustel       America/Indiana/Tell_City       +375711-0864541
2872    jmkin       America/Jamaica                 +175805-0764736
2880    bzbze       America/Belize                  +1730-08812
2890    cathu       America/Thunder_Bay             +4823-08915
2900    papty       America/Panama                  +0858-07932
2910    mxhmo       America/Hermosillo              +2904-11058
2911    kygec       America/Cayman                  +1918-08123 *
2920    cayzs       America/Coral_Harbour           +484531-0913718
2921    htpap       America/Port-au-Prince          +1832-07220
2930    cafne       America/Fort_Nelson             +5848-12242
2931    cavan       America/Vancouver               +4916-12307
2940    brpvh       America/Porto_Velho             -0846-06354
2950    caycb       America/Cambridge_Bay           +690650-1050310
2951    caffs       America/Rainy_River             +4843-09434
2952    usinvev     America/Indiana/Vevay           +384452-0850402
2960    mxchi       America/Chihuahua               +2838-10605
2970    cacfq       America/Creston                 +4906-11631
2971    arirj       America/Argentina/La_Rioja      -2926-06651
2980    canpg       America/Nipigon                 +4901-08816
2981    usoea       America/Indiana/Vincennes       +384038-0873143
2990    mxmex       America/Mexico_City             +1924-09909
3000    aqams       Antarctica/South_Pole           -8959+13916 *
3230    aqtrl       Antarctica/Troll                -720041+0023206
3540    aqplm       Antarctica/Palmer               -6448-06406
3590    aumqi       Antarctica/Macquarie            -5430+15857
3610    aqcas       Antarctica/Casey                -6617+11031
3700    aqddu       Antarctica/DumontDUrville       -6640+14001
3830    aqmaw       Antarctica/Mawson               -6736+06253
3870    aqmcm       Antarctica/McMurdo              -7750+16640 *
3871    aqvos       Antarctica/Vostok               -7824+10654
3880    aqrot       Antarctica/Rothera              -6734-06808
3900    aqsyw       Antarctica/Syowa                -690022+0393524
3980    aqdav       Antarctica/Davis                -6835+07758
4000    azbak       Asia/Baku                       +4023+04951
4010    rugdx       Asia/Magadan                    +5934+15048
4050    amevn       Asia/Yerevan                    +4011+04430
4060    kwkwi       Asia/Kuwait                     +2930+04545 *
4070    kzakx       Asia/Aqtobe                     +5017+05710
4071    uzskd       Asia/Samarkand                  +3940+06648
4072    cnckg       Asia/Chongqing                  +293330+1063400 *
4090    idpnk       Asia/Pontianak                  -0002+10920
4110    kzura       Asia/Oral                       +5113+05121
4111    cnsha       Asia/Shanghai                   +3114+12128
4140    sgsin       Asia/Singapore                  +0117+10351
4160    vnhan       Asia/Hanoi                      +2102+10551 *
4170    vnsgn       Asia/Saigon                     +1045+10640
4190    uztas       Asia/Tashkent                   +4120+06918
4200    ruyks       Asia/Yakutsk                    +6200+12940
4201    mykch       Asia/Kuching                    +0133+11020
4230    ruchita     Asia/Chita                      +5203+11328
4240    ruikt       Asia/Irkutsk                    +5216+10420
4241    gaza        Asia/Gaza                       +3130+03428
4242    hkhkg       Asia/Hong_Kong                  +2217+11409
4243    momfm       Asia/Macau                      +221150+1133230
4250    getbs       Asia/Tbilisi                    +4143+04449
4251    jeruslm     Asia/Jerusalem                  +314650+0351326
4252    hebron      Asia/Hebron                     +313200+0350542
4253    khpnh       Asia/Phnom_Penh                 +1133+10455 *
4260    joamm       Asia/Amman                      +3157+03556
4310    iddjj       Asia/Jayapura                   -0232+14042
4320    ruvvo       Asia/Vladivostok                +4310+13156
4321    mykul       Asia/Kuala_Lumpur               +0310+10142
4340    rubax       Asia/Barnaul                    +5322+08345
4341    iqbgw       Asia/Baghdad                    +3321+04425
4350    kgfru       Asia/Bishkek                    +4254+07436
4351    yeade       Asia/Aden                       +1248+04502 *
4360    rukhndg     Asia/Khandyga                   +623923+1353314
4370    kzala       Asia/Almaty                     +4315+07657
4380    inccu       Asia/Calcutta                   +2232+08822
4390    rupkc       Asia/Kamchatka                  +5301+15839
4400    bddac       Asia/Dhaka                      +2343+09025
4410    thbkk       Asia/Bangkok                    +1345+10031
4460    lbbey       Asia/Beirut                     +3353+03530
4461    sydam       Asia/Damascus                   +3330+03618
4470    runoz       Asia/Novokuznetsk               +5345+08707
4480    cnurc       Asia/Urumqi                     +4348+08735
4490    ommct       Asia/Muscat                     +2336+05835 *
4500    kzaau       Asia/Aqtau                      +4431+05016
4510    phmnl       Asia/Manila                     +1435+12100
4520    qadoh       Asia/Qatar                      +2517+05132
4521    twtpe       Asia/Taipei                     +2503+12130
4530    ruunera     Asia/Ust-Nera                   +643337+1431336
4531    ruovb       Asia/Novosibirsk                +5502+08255
4532    ruoms       Asia/Omsk                       +5500+07324
4533    cynic       Asia/Nicosia                    +3510+03322
4540    cyfmg       Asia/Famagusta                  +3507+03357
4550    kzkzo       Asia/Qyzylorda                  +4448+06528
4551    aedxb       Asia/Dubai                      +2518+05518
4552    bnbwn       Asia/Brunei                     +0456+11455
4570    rudyr       Asia/Anadyr                     +6445+17729
4571    pkkhi       Asia/Karachi                    +2452+06703
4572    saruh       Asia/Riyadh                     +2438+04643
4590    afkbl       Asia/Kabul                      +3431+06912
4591    idmak       Asia/Makassar                   -0507+11924
4600    jptyo       Asia/Tokyo                      +353916+1394441
4610    irthr       Asia/Tehran                     +3540+05126
4611    bhbah       Asia/Bahrain                    +2616+05038 *
4630    rukra       Asia/Krasnoyarsk                +5601+09250
4670    cnhrb       Asia/Harbin                     +4545+12638 *
4671    idjkt       Asia/Jakarta                    -0610+10648
4700    btthi       Asia/Thimphu                    +2728+08939
4701    lkcmb       Asia/Colombo                    +0656+07951
4710    ruyek       Asia/Yekaterinburg              +5651+06036
4720    kzguw       Asia/Atyrau                     +4707+05156
4730    ruuus       Asia/Sakhalin                   +4658+14242
4740    rusred      Asia/Srednekolymsk              +6728+15343
4750    rutof       Asia/Tomsk                      +5630+08458
4760    mmrgn       Asia/Rangoon                    +1647+09610
4820    mnhvd       Asia/Hovd                       +4801+09139
4830    lavte       Asia/Vientiane                  +1758+10236 *
4850    mncoq       Asia/Choibalsan                 +4804+11430
4851    npktm       Asia/Katmandu                   +2743+08519
4870    mnuln       Asia/Ulaanbaatar                +4755+10653
4871    krsel       Asia/Seoul                      +3733+12658
4880    tmasb       Asia/Ashgabat                   +3757+05823
4960    cnkhg       Asia/Kashgar                    +3928+07559 *
4961    kpfnj       Asia/Pyongyang                  +3901+12545
4962    tldil       Asia/Dili                       -0833+12535
4990    tjdyu       Asia/Dushanbe                   +3835+06848
5040    aukns       Australia/Currie                -3956+14352
5090    auldc       Australia/Lindeman              -2016+14900
5210    audrw       Australia/Darwin                -1228+13050
5211    aubhq       Australia/Broken_Hill           -3157+14127
5260    auper       Australia/Perth                 -3157+11551
5290    auldh       Australia/Lord_Howe             -3133+15905
5291    aueuc       Australia/Eucla                 -3143+12852
5370    auhba       Australia/Hobart                -4253+14719
5410    ausyd       Australia/Sydney                -3352+15113
5590    auadl       Australia/Adelaide              -3455+13835
5730    aubne       Australia/Brisbane              -2728+15302
5850    aumel       Australia/Melbourne             -3749+14458
6000    fimhq       Europe/Mariehamn                +6006+01957 *
6010    noosl       Europe/Oslo                     +5955+01045
6011    uaiev       Europe/Kiev                     +5026+03031
6040    czprg       Europe/Prague                   +5005+01426
6041    esmad       Europe/Madrid                   +4024-00341
6050    fihel       Europe/Helsinki                 +6010+02458
6060    lulux       Europe/Luxembourg               +4936+00609
6100    altia       Europe/Tirane                   +4120+01950
6140    bebru       Europe/Brussels                 +5050+00420
6190    trist       Europe/Istanbul                 +4101+02858
6200    gblon       Europe/London                   +513030-0000731
6210    plwaw       Europe/Warsaw                   +5215+02100
6211    mkskp       Europe/Skopje                   +4200+02126 *
6220    itrom       Europe/Rome                     +4154+01229
6221    vavat       Europe/Vatican                  +4154+01227 *
6250    nlams       Europe/Amsterdam                +5222+00454
6260    rurtw       Europe/Saratov                  +5134+04602
6290    metgd       Europe/Podgorica                +4226+01915 *
6300    rukuf       Europe/Samara                   +5312+05009
6320    adalv       Europe/Andorra                  +4230+00131
6330    deber       Europe/Berlin                   +5230+01322
6331    bgsof       Europe/Sofia                    +4241+02319
6360    iedub       Europe/Dublin                   +5320-00615
6420    smsai       Europe/San_Marino               +435630+0122730 *
6440    imdgs       Europe/Isle_of_Man              +5410-00429 *
6460    robuh       Europe/Bucharest                +4426+02606
6470    mcmon       Europe/Monaco                   +4342+00723
6480    ruuly       Europe/Ulyanovsk                +5420+04824
6481    bymsq       Europe/Minsk                    +5354+02734
6482    basjj       Europe/Sarajevo                 +4351+01823 *
6510    rukgd       Europe/Kaliningrad              +5443+02030
6511    rsbeg       Europe/Belgrade                 +4450+02030
6540    uasip       Europe/Simferopol               +4457+03406
6550    ltvno       Europe/Vilnius                  +5441+02519
6630    dkcph       Europe/Copenhagen               +5540+01235
6650    silju       Europe/Ljubljana                +4603+01430 *
6651    gigib       Europe/Gibraltar                +3608-00521
6652    mtmla       Europe/Malta                    +3554+01431
6660    hrzag       Europe/Zagreb                   +4548+01600 *
6680    rumow       Europe/Moscow                   +554521+0373704
6681    ruasf       Europe/Astrakhan                +4621+04803
6700    livdz       Europe/Vaduz                    +4709+00932 *
6740    lvrix       Europe/Riga                     +5657+02406
6790    chzrh       Europe/Zurich                   +4723+00832
6791    mdkiv       Europe/Chisinau                 +4700+02850
6840    grath       Europe/Athens                   +3758+02343
6850    uaozh       Europe/Zaporozhye               +4750+03510
6860    atvie       Europe/Vienna                   +4813+01620
6870    skbts       Europe/Bratislava               +4809+01707 *
6890    debsngn     Europe/Busingen                 +474149+0084125 *
6891    hubud       Europe/Budapest                 +4730+01905
6900    rukvx       Europe/Kirov                    +5836+04939
6920    jesth       Europe/Jersey                   +4911-00206 *
6921    frpar       Europe/Paris                    +4852+00220
6922    uauzh       Europe/Uzhgorod                 +4837+02218
6930    gggci       Europe/Guernsey                 +4926-00235 *
6940    ruvog       Europe/Volgograd                +4844+04425
6950    eetll       Europe/Tallinn                  +5925+02445
6980    sesto       Europe/Stockholm                +5920+01803
6990    ptlis       Europe/Lisbon                   +3843-00908
7250    bmbda       Atlantic/Bermuda                +3217-06446
7270    fotho       Atlantic/Faeroe                 +6201-00646
7280    fkpsy       Atlantic/Stanley                -5142-05751
7370    ptfnc       Atlantic/Madeira                +3238-01654
7420    isrey       Atlantic/Reykjavik              +6409-02151
7470    gsgrv       Atlantic/South_Georgia          -5416-03632
7540    cvrai       Atlantic/Cape_Verde             +1455-02331
7660    shshn       Atlantic/St_Helena              -1557-00543 *
7850    eslpa       Atlantic/Canary                 +2806-01524
7860    sjlyr       Arctic/Longyearbyen             +7813+01538 *
7861    ptpdl       Atlantic/Azores                 +3744-02540
8060    cxxch       Indian/Christmas                -1025+10543
8080    muplu       Indian/Mauritius                -2010+05730
8150    rereu       Indian/Reunion                  -2052+05528
8240    kmyva       Indian/Comoro                   -1210+04415 *
8270    cccck       Indian/Cocos                    -1210+09655
8350    ytmam       Indian/Mayotte                  -125035+0450818 *
8440    mvmle       Indian/Maldives                 +0410+07330
8550    scmaw       Indian/Mahe                     -0440+05528
8720    iodga       Indian/Chagos                   -0720+07225
8900    tfpfr       Indian/Kerguelen                -492110+0701303
8980    mgtnr       Indian/Antananarivo             -1856+04731 *
9000    sbhir       Pacific/Guadalcanal             -0932+16012
9070    pgpom       Pacific/Port_Moresby            -0930+14710
9100    ecgps       Pacific/Galapagos               -0054-08936
9101    ckrar       Pacific/Rarotonga               -2114-15946
9130    kitrw       Pacific/Tarawa                  +0125+17300
9150    totbu       Pacific/Tongatapu               -2110-17510
9170    nrinu       Pacific/Nauru                   -0031+16655
9180    ushnl       Pacific/Honolulu                +211825-1575130
9260    ncnou       Pacific/Noumea                  -2216+16627
9270    kicxi       Pacific/Kiritimati              +0152-15720
9310    kipho       Pacific/Enderbury               -0308-17105
9350    gugum       Pacific/Guam                    +1328+14445
9351    pfgmr       Pacific/Gambier                 -2308-13457
9360    wfmau       Pacific/Wallis                  -1318-17610
9410    asppg       Pacific/Pago_Pago               -1416-17042
9420    wsapw       Pacific/Apia                    -1350-17144
9470    nzcht       Pacific/Chatham                 -4357-17633
9500    pnpcn       Pacific/Pitcairn                -2504-13005
9530    fmksa       Pacific/Kosrae                  +0519+16259
9560    mpspn       Pacific/Saipan                  +1511+14545 *
9660    pgraw       Pacific/Bougainville            -0613+15534
9700    umjon       Pacific/Johnston                +164413-1693126 *
9710    mhmaj       Pacific/Majuro                  +0709+17112
9720    fmtkk       Pacific/Truk                    +0725+15147
9740    pwror       Pacific/Palau                   +0720+13429
9750    nzakl       Pacific/Auckland                -3652+17446
9780    fmpni       Pacific/Ponape                  +0658+15813
9790    clipc       Pacific/Easter                  -2709-10926
9800    pfppt       Pacific/Tahiti                  -1732-14934
9870    ummdy       Pacific/Midway                  +2812-17721 *
9880    vuvli       Pacific/Efate                   -1740+16825
9881    fjsuv       Pacific/Fiji                    -1808+17825
9900    pfnhv       Pacific/Marquesas               -0900-13930
9901    nuiue       Pacific/Niue                    -1901-16955
9910    tkfko       Pacific/Fakaofo                 -0922-17114
9970    umawk       Pacific/Wake                    +1917+16637
9971    mhkwa       Pacific/Kwajalein               +0905+16720
9980    nfnlk       Pacific/Norfolk                 -2903+16758
9990    tvfun       Pacific/Funafuti                -0831+17913

Policy

[...]

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment