From a1fea652cb1f796257353773d8b925cb6b0d1018 Mon Sep 17 00:00:00 2001 From: Reactivity512 Date: Wed, 4 Nov 2026 20:47:04 +0300 Subject: [PATCH] fix(mapping): replace double brace initialization in timezone generator --- .../tarantool/mapping/TarantoolTimezones.java | 2979 ++++++++--------- .../io/tarantool/mapping/gen-timezones.sh | 33 +- 2 files changed, 1512 insertions(+), 1500 deletions(-) diff --git a/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/TarantoolTimezones.java b/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/TarantoolTimezones.java index 5b151a1b..20fba8f4 100644 --- a/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/TarantoolTimezones.java +++ b/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/TarantoolTimezones.java @@ -1,1498 +1,1497 @@ -/* - * Copyright (c) 2026 VK DIGITAL TECHNOLOGIES LIMITED LIABILITY COMPANY - * All Rights Reserved. - */ - package io.tarantool.mapping; import java.util.HashMap; +import java.util.Map; /* Automatically generated by gen-timezones.sh */ public class TarantoolTimezones { - public static final HashMap indexToTimezone = - new HashMap() { - { - put((short) 1, "A"); - put((short) 2, "B"); - put((short) 3, "C"); - put((short) 4, "D"); - put((short) 5, "E"); - put((short) 6, "F"); - put((short) 7, "G"); - put((short) 8, "H"); - put((short) 9, "I"); - put((short) 10, "K"); - put((short) 11, "L"); - put((short) 12, "M"); - put((short) 13, "N"); - put((short) 14, "O"); - put((short) 15, "P"); - put((short) 16, "Q"); - put((short) 17, "R"); - put((short) 18, "S"); - put((short) 19, "T"); - put((short) 20, "U"); - put((short) 21, "V"); - put((short) 22, "W"); - put((short) 23, "X"); - put((short) 24, "Y"); - put((short) 25, "Z"); - put((short) 32, "AT"); - put((short) 40, "BT"); - put((short) 48, "CT"); - put((short) 56, "ET"); - put((short) 64, "GT"); - put((short) 72, "IT"); - put((short) 80, "KT"); - put((short) 88, "MT"); - put((short) 96, "PT"); - put((short) 104, "ST"); - put((short) 112, "UT"); - put((short) 120, "WT"); - put((short) 128, "ACT"); - put((short) 129, "ADT"); - put((short) 130, "AET"); - put((short) 131, "AFT"); - put((short) 132, "AMT"); - put((short) 133, "AoE"); - put((short) 134, "ART"); - put((short) 135, "AST"); - put((short) 136, "AZT"); - put((short) 144, "BDT"); - put((short) 145, "BNT"); - put((short) 146, "BOT"); - put((short) 147, "BRT"); - put((short) 148, "BST"); - put((short) 149, "BTT"); - put((short) 152, "CAT"); - put((short) 153, "CCT"); - put((short) 154, "CDT"); - put((short) 155, "CET"); - put((short) 156, "CIT"); - put((short) 157, "CKT"); - put((short) 158, "CLT"); - put((short) 159, "COT"); - put((short) 160, "CST"); - put((short) 161, "CVT"); - put((short) 162, "CXT"); - put((short) 168, "EAT"); - put((short) 169, "ECT"); - put((short) 170, "EDT"); - put((short) 171, "EET"); - put((short) 172, "EGT"); - put((short) 173, "EST"); - put((short) 176, "FET"); - put((short) 177, "FJT"); - put((short) 178, "FKT"); - put((short) 179, "FNT"); - put((short) 184, "GET"); - put((short) 185, "GFT"); - put((short) 186, "GMT"); - put((short) 187, "GST"); - put((short) 188, "GYT"); - put((short) 192, "HAA"); - put((short) 193, "HAC"); - put((short) 194, "HAE"); - put((short) 195, "HAP"); - put((short) 196, "HAR"); - put((short) 197, "HAT"); - put((short) 198, "HDT"); - put((short) 199, "HKT"); - put((short) 200, "HLV"); - put((short) 201, "HNA"); - put((short) 202, "HNC"); - put((short) 203, "HNE"); - put((short) 204, "HNP"); - put((short) 205, "HNR"); - put((short) 206, "HNT"); - put((short) 207, "HST"); - put((short) 208, "ICT"); - put((short) 209, "IDT"); - put((short) 210, "IOT"); - put((short) 211, "IST"); - put((short) 216, "JST"); - put((short) 224, "KGT"); - put((short) 225, "KIT"); - put((short) 226, "KST"); - put((short) 232, "MCK"); - put((short) 233, "MDT"); - put((short) 234, "MEZ"); - put((short) 235, "MHT"); - put((short) 236, "MMT"); - put((short) 237, "MSD"); - put((short) 238, "MSK"); - put((short) 239, "MST"); - put((short) 240, "MUT"); - put((short) 241, "MVT"); - put((short) 242, "MYT"); - put((short) 248, "NCT"); - put((short) 249, "NDT"); - put((short) 250, "NFT"); - put((short) 251, "NPT"); - put((short) 252, "NRT"); - put((short) 253, "NST"); - put((short) 254, "NUT"); - put((short) 256, "OEZ"); - put((short) 264, "PDT"); - put((short) 265, "PET"); - put((short) 266, "PGT"); - put((short) 267, "PHT"); - put((short) 268, "PKT"); - put((short) 269, "PST"); - put((short) 270, "PWT"); - put((short) 271, "PYT"); - put((short) 272, "RET"); - put((short) 280, "SBT"); - put((short) 281, "SCT"); - put((short) 282, "SGT"); - put((short) 283, "SRT"); - put((short) 284, "SST"); - put((short) 288, "TFT"); - put((short) 289, "TJT"); - put((short) 290, "TKT"); - put((short) 291, "TLT"); - put((short) 292, "TMT"); - put((short) 293, "TOT"); - put((short) 294, "TRT"); - put((short) 295, "TVT"); - put((short) 296, "UTC"); - put((short) 297, "UYT"); - put((short) 298, "UZT"); - put((short) 304, "VET"); - put((short) 305, "VUT"); - put((short) 312, "WAT"); - put((short) 313, "WDT"); - put((short) 314, "WET"); - put((short) 315, "WEZ"); - put((short) 316, "WFT"); - put((short) 317, "WGT"); - put((short) 318, "WIB"); - put((short) 319, "WIT"); - put((short) 320, "WST"); - put((short) 328, "ACDT"); - put((short) 329, "ACST"); - put((short) 330, "ADST"); - put((short) 331, "AEDT"); - put((short) 332, "AEST"); - put((short) 333, "AKDT"); - put((short) 334, "AKST"); - put((short) 335, "ALMT"); - put((short) 336, "AMDT"); - put((short) 337, "AMST"); - put((short) 338, "ANAT"); - put((short) 339, "AQTT"); - put((short) 340, "AWDT"); - put((short) 341, "AWST"); - put((short) 342, "AZOT"); - put((short) 343, "AZST"); - put((short) 344, "BDST"); - put((short) 345, "BRST"); - put((short) 352, "CAST"); - put((short) 353, "CDST"); - put((short) 354, "CEDT"); - put((short) 355, "CEST"); - put((short) 356, "CHOT"); - put((short) 357, "ChST"); - put((short) 358, "CHUT"); - put((short) 359, "CIST"); - put((short) 360, "CLDT"); - put((short) 361, "CLST"); - put((short) 368, "DAVT"); - put((short) 369, "DDUT"); - put((short) 376, "EADT"); - put((short) 377, "EAST"); - put((short) 378, "ECST"); - put((short) 379, "EDST"); - put((short) 380, "EEDT"); - put((short) 381, "EEST"); - put((short) 382, "EGST"); - put((short) 384, "FJDT"); - put((short) 385, "FJST"); - put((short) 386, "FKDT"); - put((short) 387, "FKST"); - put((short) 392, "GALT"); - put((short) 393, "GAMT"); - put((short) 394, "GILT"); - put((short) 400, "HADT"); - put((short) 401, "HAST"); - put((short) 402, "HOVT"); - put((short) 408, "IRDT"); - put((short) 409, "IRKT"); - put((short) 410, "IRST"); - put((short) 416, "KOST"); - put((short) 417, "KRAT"); - put((short) 418, "KUYT"); - put((short) 424, "LHDT"); - put((short) 425, "LHST"); - put((short) 426, "LINT"); - put((short) 432, "MAGT"); - put((short) 433, "MART"); - put((short) 434, "MAWT"); - put((short) 435, "MDST"); - put((short) 436, "MESZ"); - put((short) 440, "NFDT"); - put((short) 441, "NOVT"); - put((short) 442, "NZDT"); - put((short) 443, "NZST"); - put((short) 448, "OESZ"); - put((short) 449, "OMST"); - put((short) 450, "ORAT"); - put((short) 456, "PDST"); - put((short) 457, "PETT"); - put((short) 458, "PHOT"); - put((short) 459, "PMDT"); - put((short) 460, "PMST"); - put((short) 461, "PONT"); - put((short) 462, "PYST"); - put((short) 464, "QYZT"); - put((short) 472, "ROTT"); - put((short) 480, "SAKT"); - put((short) 481, "SAMT"); - put((short) 482, "SAST"); - put((short) 483, "SRET"); - put((short) 484, "SYOT"); - put((short) 488, "TAHT"); - put((short) 489, "TOST"); - put((short) 496, "ULAT"); - put((short) 497, "UYST"); - put((short) 504, "VLAT"); - put((short) 505, "VOST"); - put((short) 512, "WAKT"); - put((short) 513, "WAST"); - put((short) 514, "WEDT"); - put((short) 515, "WEST"); - put((short) 516, "WESZ"); - put((short) 517, "WGST"); - put((short) 518, "WITA"); - put((short) 520, "YAKT"); - put((short) 521, "YAPT"); - put((short) 522, "YEKT"); - put((short) 528, "ACWST"); - put((short) 529, "ANAST"); - put((short) 530, "AZODT"); - put((short) 531, "AZOST"); - put((short) 536, "CHADT"); - put((short) 537, "CHAST"); - put((short) 538, "CHODT"); - put((short) 539, "CHOST"); - put((short) 540, "CIDST"); - put((short) 544, "EASST"); - put((short) 545, "EFATE"); - put((short) 552, "HOVDT"); - put((short) 553, "HOVST"); - put((short) 560, "IRKST"); - put((short) 568, "KRAST"); - put((short) 576, "MAGST"); - put((short) 584, "NACDT"); - put((short) 585, "NACST"); - put((short) 586, "NAEDT"); - put((short) 587, "NAEST"); - put((short) 588, "NAMDT"); - put((short) 589, "NAMST"); - put((short) 590, "NAPDT"); - put((short) 591, "NAPST"); - put((short) 592, "NOVST"); - put((short) 600, "OMSST"); - put((short) 608, "PETST"); - put((short) 616, "SAMST"); - put((short) 624, "ULAST"); - put((short) 632, "VLAST"); - put((short) 640, "WARST"); - put((short) 648, "YAKST"); - put((short) 649, "YEKST"); - put((short) 656, "CHODST"); - put((short) 664, "HOVDST"); - put((short) 672, "Africa/Abidjan"); - put((short) 673, "Africa/Algiers"); - put((short) 674, "Africa/Bissau"); - put((short) 675, "Africa/Cairo"); - put((short) 676, "Africa/Casablanca"); - put((short) 677, "Africa/Ceuta"); - put((short) 678, "Africa/El_Aaiun"); - put((short) 679, "Africa/Johannesburg"); - put((short) 680, "Africa/Juba"); - put((short) 681, "Africa/Khartoum"); - put((short) 682, "Africa/Lagos"); - put((short) 683, "Africa/Maputo"); - put((short) 684, "Africa/Monrovia"); - put((short) 685, "Africa/Nairobi"); - put((short) 686, "Africa/Ndjamena"); - put((short) 687, "Africa/Sao_Tome"); - put((short) 688, "Africa/Tripoli"); - put((short) 689, "Africa/Tunis"); - put((short) 690, "Africa/Windhoek"); - put((short) 691, "America/Adak"); - put((short) 692, "America/Anchorage"); - put((short) 693, "America/Araguaina"); - put((short) 694, "America/Argentina/Buenos_Aires"); - put((short) 695, "America/Argentina/Catamarca"); - put((short) 696, "America/Argentina/Cordoba"); - put((short) 697, "America/Argentina/Jujuy"); - put((short) 698, "America/Argentina/La_Rioja"); - put((short) 699, "America/Argentina/Mendoza"); - put((short) 700, "America/Argentina/Rio_Gallegos"); - put((short) 701, "America/Argentina/Salta"); - put((short) 702, "America/Argentina/San_Juan"); - put((short) 703, "America/Argentina/San_Luis"); - put((short) 704, "America/Argentina/Tucuman"); - put((short) 705, "America/Argentina/Ushuaia"); - put((short) 706, "America/Asuncion"); - put((short) 707, "America/Bahia"); - put((short) 708, "America/Bahia_Banderas"); - put((short) 709, "America/Barbados"); - put((short) 710, "America/Belem"); - put((short) 711, "America/Belize"); - put((short) 712, "America/Boa_Vista"); - put((short) 713, "America/Bogota"); - put((short) 714, "America/Boise"); - put((short) 715, "America/Cambridge_Bay"); - put((short) 716, "America/Campo_Grande"); - put((short) 717, "America/Cancun"); - put((short) 718, "America/Caracas"); - put((short) 719, "America/Cayenne"); - put((short) 720, "America/Chicago"); - put((short) 721, "America/Chihuahua"); - put((short) 722, "America/Costa_Rica"); - put((short) 723, "America/Cuiaba"); - put((short) 724, "America/Danmarkshavn"); - put((short) 725, "America/Dawson"); - put((short) 726, "America/Dawson_Creek"); - put((short) 727, "America/Denver"); - put((short) 728, "America/Detroit"); - put((short) 729, "America/Edmonton"); - put((short) 730, "America/Eirunepe"); - put((short) 731, "America/El_Salvador"); - put((short) 732, "America/Fort_Nelson"); - put((short) 733, "America/Fortaleza"); - put((short) 734, "America/Glace_Bay"); - put((short) 735, "America/Goose_Bay"); - put((short) 736, "America/Grand_Turk"); - put((short) 737, "America/Guatemala"); - put((short) 738, "America/Guayaquil"); - put((short) 739, "America/Guyana"); - put((short) 740, "America/Halifax"); - put((short) 741, "America/Havana"); - put((short) 742, "America/Hermosillo"); - put((short) 743, "America/Indiana/Indianapolis"); - put((short) 744, "America/Indiana/Knox"); - put((short) 745, "America/Indiana/Marengo"); - put((short) 746, "America/Indiana/Petersburg"); - put((short) 747, "America/Indiana/Tell_City"); - put((short) 748, "America/Indiana/Vevay"); - put((short) 749, "America/Indiana/Vincennes"); - put((short) 750, "America/Indiana/Winamac"); - put((short) 751, "America/Inuvik"); - put((short) 752, "America/Iqaluit"); - put((short) 753, "America/Jamaica"); - put((short) 754, "America/Juneau"); - put((short) 755, "America/Kentucky/Louisville"); - put((short) 756, "America/Kentucky/Monticello"); - put((short) 757, "America/La_Paz"); - put((short) 758, "America/Lima"); - put((short) 759, "America/Los_Angeles"); - put((short) 760, "America/Maceio"); - put((short) 761, "America/Managua"); - put((short) 762, "America/Manaus"); - put((short) 763, "America/Martinique"); - put((short) 764, "America/Matamoros"); - put((short) 765, "America/Mazatlan"); - put((short) 766, "America/Menominee"); - put((short) 767, "America/Merida"); - put((short) 768, "America/Metlakatla"); - put((short) 769, "America/Mexico_City"); - put((short) 770, "America/Miquelon"); - put((short) 771, "America/Moncton"); - put((short) 772, "America/Monterrey"); - put((short) 773, "America/Montevideo"); - put((short) 774, "America/New_York"); - put((short) 775, "America/Nipigon"); - put((short) 776, "America/Nome"); - put((short) 777, "America/Noronha"); - put((short) 778, "America/North_Dakota/Beulah"); - put((short) 779, "America/North_Dakota/Center"); - put((short) 780, "America/North_Dakota/New_Salem"); - put((short) 781, "America/Nuuk"); - put((short) 782, "America/Ojinaga"); - put((short) 783, "America/Panama"); - put((short) 784, "America/Pangnirtung"); - put((short) 785, "America/Paramaribo"); - put((short) 786, "America/Phoenix"); - put((short) 787, "America/Port-au-Prince"); - put((short) 788, "America/Porto_Velho"); - put((short) 789, "America/Puerto_Rico"); - put((short) 790, "America/Punta_Arenas"); - put((short) 791, "America/Rainy_River"); - put((short) 792, "America/Rankin_Inlet"); - put((short) 793, "America/Recife"); - put((short) 794, "America/Regina"); - put((short) 795, "America/Resolute"); - put((short) 796, "America/Rio_Branco"); - put((short) 797, "America/Santarem"); - put((short) 798, "America/Santiago"); - put((short) 799, "America/Santo_Domingo"); - put((short) 800, "America/Sao_Paulo"); - put((short) 801, "America/Scoresbysund"); - put((short) 802, "America/Sitka"); - put((short) 803, "America/St_Johns"); - put((short) 804, "America/Swift_Current"); - put((short) 805, "America/Tegucigalpa"); - put((short) 806, "America/Thule"); - put((short) 807, "America/Thunder_Bay"); - put((short) 808, "America/Tijuana"); - put((short) 809, "America/Toronto"); - put((short) 810, "America/Vancouver"); - put((short) 811, "America/Whitehorse"); - put((short) 812, "America/Winnipeg"); - put((short) 813, "America/Yakutat"); - put((short) 814, "America/Yellowknife"); - put((short) 815, "Antarctica/Casey"); - put((short) 816, "Antarctica/Davis"); - put((short) 817, "Antarctica/Macquarie"); - put((short) 818, "Antarctica/Mawson"); - put((short) 819, "Antarctica/Palmer"); - put((short) 820, "Antarctica/Rothera"); - put((short) 821, "Antarctica/Troll"); - put((short) 822, "Antarctica/Vostok"); - put((short) 823, "Asia/Almaty"); - put((short) 824, "Asia/Amman"); - put((short) 825, "Asia/Anadyr"); - put((short) 826, "Asia/Aqtau"); - put((short) 827, "Asia/Aqtobe"); - put((short) 828, "Asia/Ashgabat"); - put((short) 829, "Asia/Atyrau"); - put((short) 830, "Asia/Baghdad"); - put((short) 831, "Asia/Baku"); - put((short) 832, "Asia/Bangkok"); - put((short) 833, "Asia/Barnaul"); - put((short) 834, "Asia/Beirut"); - put((short) 835, "Asia/Bishkek"); - put((short) 836, "Asia/Brunei"); - put((short) 837, "Asia/Chita"); - put((short) 838, "Asia/Choibalsan"); - put((short) 839, "Asia/Colombo"); - put((short) 840, "Asia/Damascus"); - put((short) 841, "Asia/Dhaka"); - put((short) 842, "Asia/Dili"); - put((short) 843, "Asia/Dubai"); - put((short) 844, "Asia/Dushanbe"); - put((short) 845, "Asia/Famagusta"); - put((short) 846, "Asia/Gaza"); - put((short) 847, "Asia/Hebron"); - put((short) 848, "Asia/Ho_Chi_Minh"); - put((short) 849, "Asia/Hong_Kong"); - put((short) 850, "Asia/Hovd"); - put((short) 851, "Asia/Irkutsk"); - put((short) 852, "Asia/Jakarta"); - put((short) 853, "Asia/Jayapura"); - put((short) 854, "Asia/Jerusalem"); - put((short) 855, "Asia/Kabul"); - put((short) 856, "Asia/Kamchatka"); - put((short) 857, "Asia/Karachi"); - put((short) 858, "Asia/Kathmandu"); - put((short) 859, "Asia/Khandyga"); - put((short) 860, "Asia/Kolkata"); - put((short) 861, "Asia/Krasnoyarsk"); - put((short) 862, "Asia/Kuala_Lumpur"); - put((short) 863, "Asia/Kuching"); - put((short) 864, "Asia/Macau"); - put((short) 865, "Asia/Magadan"); - put((short) 866, "Asia/Makassar"); - put((short) 867, "Asia/Manila"); - put((short) 868, "Asia/Nicosia"); - put((short) 869, "Asia/Novokuznetsk"); - put((short) 870, "Asia/Novosibirsk"); - put((short) 871, "Asia/Omsk"); - put((short) 872, "Asia/Oral"); - put((short) 873, "Asia/Pontianak"); - put((short) 874, "Asia/Pyongyang"); - put((short) 875, "Asia/Qatar"); - put((short) 876, "Asia/Qostanay"); - put((short) 877, "Asia/Qyzylorda"); - put((short) 878, "Asia/Riyadh"); - put((short) 879, "Asia/Sakhalin"); - put((short) 880, "Asia/Samarkand"); - put((short) 881, "Asia/Seoul"); - put((short) 882, "Asia/Shanghai"); - put((short) 883, "Asia/Singapore"); - put((short) 884, "Asia/Srednekolymsk"); - put((short) 885, "Asia/Taipei"); - put((short) 886, "Asia/Tashkent"); - put((short) 887, "Asia/Tbilisi"); - put((short) 888, "Asia/Tehran"); - put((short) 889, "Asia/Thimphu"); - put((short) 890, "Asia/Tokyo"); - put((short) 891, "Asia/Tomsk"); - put((short) 892, "Asia/Ulaanbaatar"); - put((short) 893, "Asia/Urumqi"); - put((short) 894, "Asia/Ust-Nera"); - put((short) 895, "Asia/Vladivostok"); - put((short) 896, "Asia/Yakutsk"); - put((short) 897, "Asia/Yangon"); - put((short) 898, "Asia/Yekaterinburg"); - put((short) 899, "Asia/Yerevan"); - put((short) 900, "Atlantic/Azores"); - put((short) 901, "Atlantic/Bermuda"); - put((short) 902, "Atlantic/Canary"); - put((short) 903, "Atlantic/Cape_Verde"); - put((short) 904, "Atlantic/Faroe"); - put((short) 905, "Atlantic/Madeira"); - put((short) 906, "Atlantic/Reykjavik"); - put((short) 907, "Atlantic/South_Georgia"); - put((short) 908, "Atlantic/Stanley"); - put((short) 909, "Australia/Adelaide"); - put((short) 910, "Australia/Brisbane"); - put((short) 911, "Australia/Broken_Hill"); - put((short) 912, "Australia/Darwin"); - put((short) 913, "Australia/Eucla"); - put((short) 914, "Australia/Hobart"); - put((short) 915, "Australia/Lindeman"); - put((short) 916, "Australia/Lord_Howe"); - put((short) 917, "Australia/Melbourne"); - put((short) 918, "Australia/Perth"); - put((short) 919, "Australia/Sydney"); - put((short) 920, "Etc/GMT"); - put((short) 921, "Etc/UTC"); - put((short) 922, "Europe/Amsterdam"); - put((short) 923, "Europe/Andorra"); - put((short) 924, "Europe/Astrakhan"); - put((short) 925, "Europe/Athens"); - put((short) 926, "Europe/Belgrade"); - put((short) 927, "Europe/Berlin"); - put((short) 928, "Europe/Brussels"); - put((short) 929, "Europe/Bucharest"); - put((short) 930, "Europe/Budapest"); - put((short) 931, "Europe/Chisinau"); - put((short) 932, "Europe/Copenhagen"); - put((short) 933, "Europe/Dublin"); - put((short) 934, "Europe/Gibraltar"); - put((short) 935, "Europe/Helsinki"); - put((short) 936, "Europe/Istanbul"); - put((short) 937, "Europe/Kaliningrad"); - put((short) 938, "Europe/Kiev"); - put((short) 939, "Europe/Kirov"); - put((short) 940, "Europe/Lisbon"); - put((short) 941, "Europe/London"); - put((short) 942, "Europe/Luxembourg"); - put((short) 943, "Europe/Madrid"); - put((short) 944, "Europe/Malta"); - put((short) 945, "Europe/Minsk"); - put((short) 946, "Europe/Monaco"); - put((short) 947, "Europe/Moscow"); - put((short) 948, "Europe/Oslo"); - put((short) 949, "Europe/Paris"); - put((short) 950, "Europe/Prague"); - put((short) 951, "Europe/Riga"); - put((short) 952, "Europe/Rome"); - put((short) 953, "Europe/Samara"); - put((short) 954, "Europe/Saratov"); - put((short) 955, "Europe/Simferopol"); - put((short) 956, "Europe/Sofia"); - put((short) 957, "Europe/Stockholm"); - put((short) 958, "Europe/Tallinn"); - put((short) 959, "Europe/Tirane"); - put((short) 960, "Europe/Ulyanovsk"); - put((short) 961, "Europe/Uzhgorod"); - put((short) 962, "Europe/Vienna"); - put((short) 963, "Europe/Vilnius"); - put((short) 964, "Europe/Volgograd"); - put((short) 965, "Europe/Warsaw"); - put((short) 966, "Europe/Zaporozhye"); - put((short) 967, "Europe/Zurich"); - put((short) 968, "Indian/Chagos"); - put((short) 969, "Indian/Christmas"); - put((short) 970, "Indian/Cocos"); - put((short) 971, "Indian/Kerguelen"); - put((short) 972, "Indian/Mahe"); - put((short) 973, "Indian/Maldives"); - put((short) 974, "Indian/Mauritius"); - put((short) 975, "Indian/Reunion"); - put((short) 976, "Pacific/Apia"); - put((short) 977, "Pacific/Auckland"); - put((short) 978, "Pacific/Bougainville"); - put((short) 979, "Pacific/Chatham"); - put((short) 980, "Pacific/Chuuk"); - put((short) 981, "Pacific/Easter"); - put((short) 982, "Pacific/Efate"); - put((short) 983, "Pacific/Fakaofo"); - put((short) 984, "Pacific/Fiji"); - put((short) 985, "Pacific/Funafuti"); - put((short) 986, "Pacific/Galapagos"); - put((short) 987, "Pacific/Gambier"); - put((short) 988, "Pacific/Guadalcanal"); - put((short) 989, "Pacific/Guam"); - put((short) 990, "Pacific/Honolulu"); - put((short) 991, "Pacific/Kanton"); - put((short) 992, "Pacific/Kiritimati"); - put((short) 993, "Pacific/Kosrae"); - put((short) 994, "Pacific/Kwajalein"); - put((short) 995, "Pacific/Majuro"); - put((short) 996, "Pacific/Marquesas"); - put((short) 997, "Pacific/Nauru"); - put((short) 998, "Pacific/Niue"); - put((short) 999, "Pacific/Norfolk"); - put((short) 1000, "Pacific/Noumea"); - put((short) 1001, "Pacific/Pago_Pago"); - put((short) 1002, "Pacific/Palau"); - put((short) 1003, "Pacific/Pitcairn"); - put((short) 1004, "Pacific/Pohnpei"); - put((short) 1005, "Pacific/Port_Moresby"); - put((short) 1006, "Pacific/Rarotonga"); - put((short) 1007, "Pacific/Tahiti"); - put((short) 1008, "Pacific/Tarawa"); - put((short) 1009, "Pacific/Tongatapu"); - put((short) 1010, "Pacific/Wake"); - put((short) 1011, "Pacific/Wallis"); - } - }; - public static final HashMap timezoneToIndex = - new HashMap() { - { - put("A", (short) 1); - put("B", (short) 2); - put("C", (short) 3); - put("D", (short) 4); - put("E", (short) 5); - put("F", (short) 6); - put("G", (short) 7); - put("H", (short) 8); - put("I", (short) 9); - put("K", (short) 10); - put("L", (short) 11); - put("M", (short) 12); - put("N", (short) 13); - put("O", (short) 14); - put("P", (short) 15); - put("Q", (short) 16); - put("R", (short) 17); - put("S", (short) 18); - put("T", (short) 19); - put("U", (short) 20); - put("V", (short) 21); - put("W", (short) 22); - put("X", (short) 23); - put("Y", (short) 24); - put("Z", (short) 25); - put("AT", (short) 32); - put("BT", (short) 40); - put("CT", (short) 48); - put("ET", (short) 56); - put("GT", (short) 64); - put("IT", (short) 72); - put("KT", (short) 80); - put("MT", (short) 88); - put("PT", (short) 96); - put("ST", (short) 104); - put("UT", (short) 112); - put("WT", (short) 120); - put("ACT", (short) 128); - put("ADT", (short) 129); - put("AET", (short) 130); - put("AFT", (short) 131); - put("AMT", (short) 132); - put("AoE", (short) 133); - put("ART", (short) 134); - put("AST", (short) 135); - put("AZT", (short) 136); - put("BDT", (short) 144); - put("BNT", (short) 145); - put("BOT", (short) 146); - put("BRT", (short) 147); - put("BST", (short) 148); - put("BTT", (short) 149); - put("CAT", (short) 152); - put("CCT", (short) 153); - put("CDT", (short) 154); - put("CET", (short) 155); - put("CIT", (short) 156); - put("CKT", (short) 157); - put("CLT", (short) 158); - put("COT", (short) 159); - put("CST", (short) 160); - put("CVT", (short) 161); - put("CXT", (short) 162); - put("EAT", (short) 168); - put("ECT", (short) 169); - put("EDT", (short) 170); - put("EET", (short) 171); - put("EGT", (short) 172); - put("EST", (short) 173); - put("FET", (short) 176); - put("FJT", (short) 177); - put("FKT", (short) 178); - put("FNT", (short) 179); - put("GET", (short) 184); - put("GFT", (short) 185); - put("GMT", (short) 186); - put("GST", (short) 187); - put("GYT", (short) 188); - put("HAA", (short) 192); - put("HAC", (short) 193); - put("HAE", (short) 194); - put("HAP", (short) 195); - put("HAR", (short) 196); - put("HAT", (short) 197); - put("HDT", (short) 198); - put("HKT", (short) 199); - put("HLV", (short) 200); - put("HNA", (short) 201); - put("HNC", (short) 202); - put("HNE", (short) 203); - put("HNP", (short) 204); - put("HNR", (short) 205); - put("HNT", (short) 206); - put("HST", (short) 207); - put("ICT", (short) 208); - put("IDT", (short) 209); - put("IOT", (short) 210); - put("IST", (short) 211); - put("JST", (short) 216); - put("KGT", (short) 224); - put("KIT", (short) 225); - put("KST", (short) 226); - put("MCK", (short) 232); - put("MDT", (short) 233); - put("MEZ", (short) 234); - put("MHT", (short) 235); - put("MMT", (short) 236); - put("MSD", (short) 237); - put("MSK", (short) 238); - put("MST", (short) 239); - put("MUT", (short) 240); - put("MVT", (short) 241); - put("MYT", (short) 242); - put("NCT", (short) 248); - put("NDT", (short) 249); - put("NFT", (short) 250); - put("NPT", (short) 251); - put("NRT", (short) 252); - put("NST", (short) 253); - put("NUT", (short) 254); - put("OEZ", (short) 256); - put("PDT", (short) 264); - put("PET", (short) 265); - put("PGT", (short) 266); - put("PHT", (short) 267); - put("PKT", (short) 268); - put("PST", (short) 269); - put("PWT", (short) 270); - put("PYT", (short) 271); - put("RET", (short) 272); - put("SBT", (short) 280); - put("SCT", (short) 281); - put("SGT", (short) 282); - put("SRT", (short) 283); - put("SST", (short) 284); - put("TFT", (short) 288); - put("TJT", (short) 289); - put("TKT", (short) 290); - put("TLT", (short) 291); - put("TMT", (short) 292); - put("TOT", (short) 293); - put("TRT", (short) 294); - put("TVT", (short) 295); - put("UTC", (short) 296); - put("UYT", (short) 297); - put("UZT", (short) 298); - put("VET", (short) 304); - put("VUT", (short) 305); - put("WAT", (short) 312); - put("WDT", (short) 313); - put("WET", (short) 314); - put("WEZ", (short) 315); - put("WFT", (short) 316); - put("WGT", (short) 317); - put("WIB", (short) 318); - put("WIT", (short) 319); - put("WST", (short) 320); - put("ACDT", (short) 328); - put("ACST", (short) 329); - put("ADST", (short) 330); - put("AEDT", (short) 331); - put("AEST", (short) 332); - put("AKDT", (short) 333); - put("AKST", (short) 334); - put("ALMT", (short) 335); - put("AMDT", (short) 336); - put("AMST", (short) 337); - put("ANAT", (short) 338); - put("AQTT", (short) 339); - put("AWDT", (short) 340); - put("AWST", (short) 341); - put("AZOT", (short) 342); - put("AZST", (short) 343); - put("BDST", (short) 344); - put("BRST", (short) 345); - put("CAST", (short) 352); - put("CDST", (short) 353); - put("CEDT", (short) 354); - put("CEST", (short) 355); - put("CHOT", (short) 356); - put("ChST", (short) 357); - put("CHUT", (short) 358); - put("CIST", (short) 359); - put("CLDT", (short) 360); - put("CLST", (short) 361); - put("DAVT", (short) 368); - put("DDUT", (short) 369); - put("EADT", (short) 376); - put("EAST", (short) 377); - put("ECST", (short) 378); - put("EDST", (short) 379); - put("EEDT", (short) 380); - put("EEST", (short) 381); - put("EGST", (short) 382); - put("FJDT", (short) 384); - put("FJST", (short) 385); - put("FKDT", (short) 386); - put("FKST", (short) 387); - put("GALT", (short) 392); - put("GAMT", (short) 393); - put("GILT", (short) 394); - put("HADT", (short) 400); - put("HAST", (short) 401); - put("HOVT", (short) 402); - put("IRDT", (short) 408); - put("IRKT", (short) 409); - put("IRST", (short) 410); - put("KOST", (short) 416); - put("KRAT", (short) 417); - put("KUYT", (short) 418); - put("LHDT", (short) 424); - put("LHST", (short) 425); - put("LINT", (short) 426); - put("MAGT", (short) 432); - put("MART", (short) 433); - put("MAWT", (short) 434); - put("MDST", (short) 435); - put("MESZ", (short) 436); - put("NFDT", (short) 440); - put("NOVT", (short) 441); - put("NZDT", (short) 442); - put("NZST", (short) 443); - put("OESZ", (short) 448); - put("OMST", (short) 449); - put("ORAT", (short) 450); - put("PDST", (short) 456); - put("PETT", (short) 457); - put("PHOT", (short) 458); - put("PMDT", (short) 459); - put("PMST", (short) 460); - put("PONT", (short) 461); - put("PYST", (short) 462); - put("QYZT", (short) 464); - put("ROTT", (short) 472); - put("SAKT", (short) 480); - put("SAMT", (short) 481); - put("SAST", (short) 482); - put("SRET", (short) 483); - put("SYOT", (short) 484); - put("TAHT", (short) 488); - put("TOST", (short) 489); - put("ULAT", (short) 496); - put("UYST", (short) 497); - put("VLAT", (short) 504); - put("VOST", (short) 505); - put("WAKT", (short) 512); - put("WAST", (short) 513); - put("WEDT", (short) 514); - put("WEST", (short) 515); - put("WESZ", (short) 516); - put("WGST", (short) 517); - put("WITA", (short) 518); - put("YAKT", (short) 520); - put("YAPT", (short) 521); - put("YEKT", (short) 522); - put("ACWST", (short) 528); - put("ANAST", (short) 529); - put("AZODT", (short) 530); - put("AZOST", (short) 531); - put("CHADT", (short) 536); - put("CHAST", (short) 537); - put("CHODT", (short) 538); - put("CHOST", (short) 539); - put("CIDST", (short) 540); - put("EASST", (short) 544); - put("EFATE", (short) 545); - put("HOVDT", (short) 552); - put("HOVST", (short) 553); - put("IRKST", (short) 560); - put("KRAST", (short) 568); - put("MAGST", (short) 576); - put("NACDT", (short) 584); - put("NACST", (short) 585); - put("NAEDT", (short) 586); - put("NAEST", (short) 587); - put("NAMDT", (short) 588); - put("NAMST", (short) 589); - put("NAPDT", (short) 590); - put("NAPST", (short) 591); - put("NOVST", (short) 592); - put("OMSST", (short) 600); - put("PETST", (short) 608); - put("SAMST", (short) 616); - put("ULAST", (short) 624); - put("VLAST", (short) 632); - put("WARST", (short) 640); - put("YAKST", (short) 648); - put("YEKST", (short) 649); - put("CHODST", (short) 656); - put("HOVDST", (short) 664); - put("Africa/Abidjan", (short) 672); - put("Africa/Algiers", (short) 673); - put("Africa/Bissau", (short) 674); - put("Africa/Cairo", (short) 675); - put("Africa/Casablanca", (short) 676); - put("Africa/Ceuta", (short) 677); - put("Africa/El_Aaiun", (short) 678); - put("Africa/Johannesburg", (short) 679); - put("Africa/Juba", (short) 680); - put("Africa/Khartoum", (short) 681); - put("Africa/Lagos", (short) 682); - put("Africa/Maputo", (short) 683); - put("Africa/Monrovia", (short) 684); - put("Africa/Nairobi", (short) 685); - put("Africa/Ndjamena", (short) 686); - put("Africa/Sao_Tome", (short) 687); - put("Africa/Tripoli", (short) 688); - put("Africa/Tunis", (short) 689); - put("Africa/Windhoek", (short) 690); - put("America/Adak", (short) 691); - put("America/Anchorage", (short) 692); - put("America/Araguaina", (short) 693); - put("America/Argentina/Buenos_Aires", (short) 694); - put("America/Argentina/Catamarca", (short) 695); - put("America/Argentina/Cordoba", (short) 696); - put("America/Argentina/Jujuy", (short) 697); - put("America/Argentina/La_Rioja", (short) 698); - put("America/Argentina/Mendoza", (short) 699); - put("America/Argentina/Rio_Gallegos", (short) 700); - put("America/Argentina/Salta", (short) 701); - put("America/Argentina/San_Juan", (short) 702); - put("America/Argentina/San_Luis", (short) 703); - put("America/Argentina/Tucuman", (short) 704); - put("America/Argentina/Ushuaia", (short) 705); - put("America/Asuncion", (short) 706); - put("America/Bahia", (short) 707); - put("America/Bahia_Banderas", (short) 708); - put("America/Barbados", (short) 709); - put("America/Belem", (short) 710); - put("America/Belize", (short) 711); - put("America/Boa_Vista", (short) 712); - put("America/Bogota", (short) 713); - put("America/Boise", (short) 714); - put("America/Cambridge_Bay", (short) 715); - put("America/Campo_Grande", (short) 716); - put("America/Cancun", (short) 717); - put("America/Caracas", (short) 718); - put("America/Cayenne", (short) 719); - put("America/Chicago", (short) 720); - put("America/Chihuahua", (short) 721); - put("America/Costa_Rica", (short) 722); - put("America/Cuiaba", (short) 723); - put("America/Danmarkshavn", (short) 724); - put("America/Dawson", (short) 725); - put("America/Dawson_Creek", (short) 726); - put("America/Denver", (short) 727); - put("America/Detroit", (short) 728); - put("America/Edmonton", (short) 729); - put("America/Eirunepe", (short) 730); - put("America/El_Salvador", (short) 731); - put("America/Fort_Nelson", (short) 732); - put("America/Fortaleza", (short) 733); - put("America/Glace_Bay", (short) 734); - put("America/Goose_Bay", (short) 735); - put("America/Grand_Turk", (short) 736); - put("America/Guatemala", (short) 737); - put("America/Guayaquil", (short) 738); - put("America/Guyana", (short) 739); - put("America/Halifax", (short) 740); - put("America/Havana", (short) 741); - put("America/Hermosillo", (short) 742); - put("America/Indiana/Indianapolis", (short) 743); - put("America/Indiana/Knox", (short) 744); - put("America/Indiana/Marengo", (short) 745); - put("America/Indiana/Petersburg", (short) 746); - put("America/Indiana/Tell_City", (short) 747); - put("America/Indiana/Vevay", (short) 748); - put("America/Indiana/Vincennes", (short) 749); - put("America/Indiana/Winamac", (short) 750); - put("America/Inuvik", (short) 751); - put("America/Iqaluit", (short) 752); - put("America/Jamaica", (short) 753); - put("America/Juneau", (short) 754); - put("America/Kentucky/Louisville", (short) 755); - put("America/Kentucky/Monticello", (short) 756); - put("America/La_Paz", (short) 757); - put("America/Lima", (short) 758); - put("America/Los_Angeles", (short) 759); - put("America/Maceio", (short) 760); - put("America/Managua", (short) 761); - put("America/Manaus", (short) 762); - put("America/Martinique", (short) 763); - put("America/Matamoros", (short) 764); - put("America/Mazatlan", (short) 765); - put("America/Menominee", (short) 766); - put("America/Merida", (short) 767); - put("America/Metlakatla", (short) 768); - put("America/Mexico_City", (short) 769); - put("America/Miquelon", (short) 770); - put("America/Moncton", (short) 771); - put("America/Monterrey", (short) 772); - put("America/Montevideo", (short) 773); - put("America/New_York", (short) 774); - put("America/Nipigon", (short) 775); - put("America/Nome", (short) 776); - put("America/Noronha", (short) 777); - put("America/North_Dakota/Beulah", (short) 778); - put("America/North_Dakota/Center", (short) 779); - put("America/North_Dakota/New_Salem", (short) 780); - put("America/Nuuk", (short) 781); - put("America/Ojinaga", (short) 782); - put("America/Panama", (short) 783); - put("America/Pangnirtung", (short) 784); - put("America/Paramaribo", (short) 785); - put("America/Phoenix", (short) 786); - put("America/Port-au-Prince", (short) 787); - put("America/Porto_Velho", (short) 788); - put("America/Puerto_Rico", (short) 789); - put("America/Punta_Arenas", (short) 790); - put("America/Rainy_River", (short) 791); - put("America/Rankin_Inlet", (short) 792); - put("America/Recife", (short) 793); - put("America/Regina", (short) 794); - put("America/Resolute", (short) 795); - put("America/Rio_Branco", (short) 796); - put("America/Santarem", (short) 797); - put("America/Santiago", (short) 798); - put("America/Santo_Domingo", (short) 799); - put("America/Sao_Paulo", (short) 800); - put("America/Scoresbysund", (short) 801); - put("America/Sitka", (short) 802); - put("America/St_Johns", (short) 803); - put("America/Swift_Current", (short) 804); - put("America/Tegucigalpa", (short) 805); - put("America/Thule", (short) 806); - put("America/Thunder_Bay", (short) 807); - put("America/Tijuana", (short) 808); - put("America/Toronto", (short) 809); - put("America/Vancouver", (short) 810); - put("America/Whitehorse", (short) 811); - put("America/Winnipeg", (short) 812); - put("America/Yakutat", (short) 813); - put("America/Yellowknife", (short) 814); - put("Antarctica/Casey", (short) 815); - put("Antarctica/Davis", (short) 816); - put("Antarctica/Macquarie", (short) 817); - put("Antarctica/Mawson", (short) 818); - put("Antarctica/Palmer", (short) 819); - put("Antarctica/Rothera", (short) 820); - put("Antarctica/Troll", (short) 821); - put("Antarctica/Vostok", (short) 822); - put("Asia/Almaty", (short) 823); - put("Asia/Amman", (short) 824); - put("Asia/Anadyr", (short) 825); - put("Asia/Aqtau", (short) 826); - put("Asia/Aqtobe", (short) 827); - put("Asia/Ashgabat", (short) 828); - put("Asia/Atyrau", (short) 829); - put("Asia/Baghdad", (short) 830); - put("Asia/Baku", (short) 831); - put("Asia/Bangkok", (short) 832); - put("Asia/Barnaul", (short) 833); - put("Asia/Beirut", (short) 834); - put("Asia/Bishkek", (short) 835); - put("Asia/Brunei", (short) 836); - put("Asia/Chita", (short) 837); - put("Asia/Choibalsan", (short) 838); - put("Asia/Colombo", (short) 839); - put("Asia/Damascus", (short) 840); - put("Asia/Dhaka", (short) 841); - put("Asia/Dili", (short) 842); - put("Asia/Dubai", (short) 843); - put("Asia/Dushanbe", (short) 844); - put("Asia/Famagusta", (short) 845); - put("Asia/Gaza", (short) 846); - put("Asia/Hebron", (short) 847); - put("Asia/Ho_Chi_Minh", (short) 848); - put("Asia/Hong_Kong", (short) 849); - put("Asia/Hovd", (short) 850); - put("Asia/Irkutsk", (short) 851); - put("Asia/Jakarta", (short) 852); - put("Asia/Jayapura", (short) 853); - put("Asia/Jerusalem", (short) 854); - put("Asia/Kabul", (short) 855); - put("Asia/Kamchatka", (short) 856); - put("Asia/Karachi", (short) 857); - put("Asia/Kathmandu", (short) 858); - put("Asia/Khandyga", (short) 859); - put("Asia/Kolkata", (short) 860); - put("Asia/Krasnoyarsk", (short) 861); - put("Asia/Kuala_Lumpur", (short) 862); - put("Asia/Kuching", (short) 863); - put("Asia/Macau", (short) 864); - put("Asia/Magadan", (short) 865); - put("Asia/Makassar", (short) 866); - put("Asia/Manila", (short) 867); - put("Asia/Nicosia", (short) 868); - put("Asia/Novokuznetsk", (short) 869); - put("Asia/Novosibirsk", (short) 870); - put("Asia/Omsk", (short) 871); - put("Asia/Oral", (short) 872); - put("Asia/Pontianak", (short) 873); - put("Asia/Pyongyang", (short) 874); - put("Asia/Qatar", (short) 875); - put("Asia/Qostanay", (short) 876); - put("Asia/Qyzylorda", (short) 877); - put("Asia/Riyadh", (short) 878); - put("Asia/Sakhalin", (short) 879); - put("Asia/Samarkand", (short) 880); - put("Asia/Seoul", (short) 881); - put("Asia/Shanghai", (short) 882); - put("Asia/Singapore", (short) 883); - put("Asia/Srednekolymsk", (short) 884); - put("Asia/Taipei", (short) 885); - put("Asia/Tashkent", (short) 886); - put("Asia/Tbilisi", (short) 887); - put("Asia/Tehran", (short) 888); - put("Asia/Thimphu", (short) 889); - put("Asia/Tokyo", (short) 890); - put("Asia/Tomsk", (short) 891); - put("Asia/Ulaanbaatar", (short) 892); - put("Asia/Urumqi", (short) 893); - put("Asia/Ust-Nera", (short) 894); - put("Asia/Vladivostok", (short) 895); - put("Asia/Yakutsk", (short) 896); - put("Asia/Yangon", (short) 897); - put("Asia/Yekaterinburg", (short) 898); - put("Asia/Yerevan", (short) 899); - put("Atlantic/Azores", (short) 900); - put("Atlantic/Bermuda", (short) 901); - put("Atlantic/Canary", (short) 902); - put("Atlantic/Cape_Verde", (short) 903); - put("Atlantic/Faroe", (short) 904); - put("Atlantic/Madeira", (short) 905); - put("Atlantic/Reykjavik", (short) 906); - put("Atlantic/South_Georgia", (short) 907); - put("Atlantic/Stanley", (short) 908); - put("Australia/Adelaide", (short) 909); - put("Australia/Brisbane", (short) 910); - put("Australia/Broken_Hill", (short) 911); - put("Australia/Darwin", (short) 912); - put("Australia/Eucla", (short) 913); - put("Australia/Hobart", (short) 914); - put("Australia/Lindeman", (short) 915); - put("Australia/Lord_Howe", (short) 916); - put("Australia/Melbourne", (short) 917); - put("Australia/Perth", (short) 918); - put("Australia/Sydney", (short) 919); - put("Etc/GMT", (short) 920); - put("Etc/UTC", (short) 921); - put("Europe/Amsterdam", (short) 922); - put("Europe/Andorra", (short) 923); - put("Europe/Astrakhan", (short) 924); - put("Europe/Athens", (short) 925); - put("Europe/Belgrade", (short) 926); - put("Europe/Berlin", (short) 927); - put("Europe/Brussels", (short) 928); - put("Europe/Bucharest", (short) 929); - put("Europe/Budapest", (short) 930); - put("Europe/Chisinau", (short) 931); - put("Europe/Copenhagen", (short) 932); - put("Europe/Dublin", (short) 933); - put("Europe/Gibraltar", (short) 934); - put("Europe/Helsinki", (short) 935); - put("Europe/Istanbul", (short) 936); - put("Europe/Kaliningrad", (short) 937); - put("Europe/Kiev", (short) 938); - put("Europe/Kirov", (short) 939); - put("Europe/Lisbon", (short) 940); - put("Europe/London", (short) 941); - put("Europe/Luxembourg", (short) 942); - put("Europe/Madrid", (short) 943); - put("Europe/Malta", (short) 944); - put("Europe/Minsk", (short) 945); - put("Europe/Monaco", (short) 946); - put("Europe/Moscow", (short) 947); - put("Europe/Oslo", (short) 948); - put("Europe/Paris", (short) 949); - put("Europe/Prague", (short) 950); - put("Europe/Riga", (short) 951); - put("Europe/Rome", (short) 952); - put("Europe/Samara", (short) 953); - put("Europe/Saratov", (short) 954); - put("Europe/Simferopol", (short) 955); - put("Europe/Sofia", (short) 956); - put("Europe/Stockholm", (short) 957); - put("Europe/Tallinn", (short) 958); - put("Europe/Tirane", (short) 959); - put("Europe/Ulyanovsk", (short) 960); - put("Europe/Uzhgorod", (short) 961); - put("Europe/Vienna", (short) 962); - put("Europe/Vilnius", (short) 963); - put("Europe/Volgograd", (short) 964); - put("Europe/Warsaw", (short) 965); - put("Europe/Zaporozhye", (short) 966); - put("Europe/Zurich", (short) 967); - put("Indian/Chagos", (short) 968); - put("Indian/Christmas", (short) 969); - put("Indian/Cocos", (short) 970); - put("Indian/Kerguelen", (short) 971); - put("Indian/Mahe", (short) 972); - put("Indian/Maldives", (short) 973); - put("Indian/Mauritius", (short) 974); - put("Indian/Reunion", (short) 975); - put("Pacific/Apia", (short) 976); - put("Pacific/Auckland", (short) 977); - put("Pacific/Bougainville", (short) 978); - put("Pacific/Chatham", (short) 979); - put("Pacific/Chuuk", (short) 980); - put("Pacific/Easter", (short) 981); - put("Pacific/Efate", (short) 982); - put("Pacific/Fakaofo", (short) 983); - put("Pacific/Fiji", (short) 984); - put("Pacific/Funafuti", (short) 985); - put("Pacific/Galapagos", (short) 986); - put("Pacific/Gambier", (short) 987); - put("Pacific/Guadalcanal", (short) 988); - put("Pacific/Guam", (short) 989); - put("Pacific/Honolulu", (short) 990); - put("Pacific/Kanton", (short) 991); - put("Pacific/Kiritimati", (short) 992); - put("Pacific/Kosrae", (short) 993); - put("Pacific/Kwajalein", (short) 994); - put("Pacific/Majuro", (short) 995); - put("Pacific/Marquesas", (short) 996); - put("Pacific/Nauru", (short) 997); - put("Pacific/Niue", (short) 998); - put("Pacific/Norfolk", (short) 999); - put("Pacific/Noumea", (short) 1000); - put("Pacific/Pago_Pago", (short) 1001); - put("Pacific/Palau", (short) 1002); - put("Pacific/Pitcairn", (short) 1003); - put("Pacific/Pohnpei", (short) 1004); - put("Pacific/Port_Moresby", (short) 1005); - put("Pacific/Rarotonga", (short) 1006); - put("Pacific/Tahiti", (short) 1007); - put("Pacific/Tarawa", (short) 1008); - put("Pacific/Tongatapu", (short) 1009); - put("Pacific/Wake", (short) 1010); - put("Pacific/Wallis", (short) 1011); - put("Africa/Accra", (short) 672); - put("Africa/Addis_Ababa", (short) 685); - put("Africa/Asmara", (short) 685); - put("Africa/Asmera", (short) 685); - put("Africa/Bamako", (short) 672); - put("Africa/Bangui", (short) 682); - put("Africa/Banjul", (short) 672); - put("Africa/Blantyre", (short) 683); - put("Africa/Brazzaville", (short) 682); - put("Africa/Bujumbura", (short) 683); - put("Africa/Conakry", (short) 672); - put("Africa/Dakar", (short) 672); - put("Africa/Dar_es_Salaam", (short) 685); - put("Africa/Djibouti", (short) 685); - put("Africa/Douala", (short) 682); - put("Africa/Freetown", (short) 672); - put("Africa/Gaborone", (short) 683); - put("Africa/Harare", (short) 683); - put("Africa/Kampala", (short) 685); - put("Africa/Kigali", (short) 683); - put("Africa/Kinshasa", (short) 682); - put("Africa/Libreville", (short) 682); - put("Africa/Lome", (short) 672); - put("Africa/Luanda", (short) 682); - put("Africa/Lubumbashi", (short) 683); - put("Africa/Lusaka", (short) 683); - put("Africa/Malabo", (short) 682); - put("Africa/Maseru", (short) 679); - put("Africa/Mbabane", (short) 679); - put("Africa/Mogadishu", (short) 685); - put("Africa/Niamey", (short) 682); - put("Africa/Nouakchott", (short) 672); - put("Africa/Ouagadougou", (short) 672); - put("Africa/Porto-Novo", (short) 682); - put("Africa/Timbuktu", (short) 672); - put("America/Anguilla", (short) 789); - put("America/Antigua", (short) 789); - put("America/Argentina/ComodRivadavia", (short) 695); - put("America/Aruba", (short) 789); - put("America/Atikokan", (short) 783); - put("America/Atka", (short) 691); - put("America/Blanc-Sablon", (short) 789); - put("America/Buenos_Aires", (short) 694); - put("America/Catamarca", (short) 695); - put("America/Cayman", (short) 783); - put("America/Coral_Harbour", (short) 783); - put("America/Cordoba", (short) 696); - put("America/Creston", (short) 786); - put("America/Curacao", (short) 789); - put("America/Dominica", (short) 789); - put("America/Ensenada", (short) 808); - put("America/Fort_Wayne", (short) 743); - put("America/Godthab", (short) 781); - put("America/Grenada", (short) 789); - put("America/Guadeloupe", (short) 789); - put("America/Indianapolis", (short) 743); - put("America/Jujuy", (short) 697); - put("America/Knox_IN", (short) 744); - put("America/Kralendijk", (short) 789); - put("America/Louisville", (short) 755); - put("America/Lower_Princes", (short) 789); - put("America/Marigot", (short) 789); - put("America/Mendoza", (short) 699); - put("America/Montreal", (short) 809); - put("America/Montserrat", (short) 789); - put("America/Nassau", (short) 809); - put("America/Port_of_Spain", (short) 789); - put("America/Porto_Acre", (short) 796); - put("America/Rosario", (short) 696); - put("America/Santa_Isabel", (short) 808); - put("America/Shiprock", (short) 727); - put("America/St_Barthelemy", (short) 789); - put("America/St_Kitts", (short) 789); - put("America/St_Lucia", (short) 789); - put("America/St_Thomas", (short) 789); - put("America/St_Vincent", (short) 789); - put("America/Tortola", (short) 789); - put("America/Virgin", (short) 789); - put("Antarctica/DumontDUrville", (short) 1005); - put("Antarctica/McMurdo", (short) 977); - put("Antarctica/South_Pole", (short) 977); - put("Antarctica/Syowa", (short) 878); - put("Arctic/Longyearbyen", (short) 948); - put("Asia/Aden", (short) 878); - put("Asia/Ashkhabad", (short) 828); - put("Asia/Bahrain", (short) 875); - put("Asia/Calcutta", (short) 860); - put("Asia/Chongqing", (short) 882); - put("Asia/Chungking", (short) 882); - put("Asia/Dacca", (short) 841); - put("Asia/Harbin", (short) 882); - put("Asia/Istanbul", (short) 936); - put("Asia/Kashgar", (short) 893); - put("Asia/Katmandu", (short) 858); - put("Asia/Kuwait", (short) 878); - put("Asia/Macao", (short) 864); - put("Asia/Muscat", (short) 843); - put("Asia/Phnom_Penh", (short) 832); - put("Asia/Rangoon", (short) 897); - put("Asia/Saigon", (short) 848); - put("Asia/Tel_Aviv", (short) 854); - put("Asia/Thimbu", (short) 889); - put("Asia/Ujung_Pandang", (short) 866); - put("Asia/Ulan_Bator", (short) 892); - put("Asia/Vientiane", (short) 832); - put("Atlantic/Faeroe", (short) 904); - put("Atlantic/Jan_Mayen", (short) 948); - put("Atlantic/St_Helena", (short) 672); - put("Australia/ACT", (short) 919); - put("Australia/Canberra", (short) 919); - put("Australia/Currie", (short) 914); - put("Australia/LHI", (short) 916); - put("Australia/NSW", (short) 919); - put("Australia/North", (short) 912); - put("Australia/Queensland", (short) 910); - put("Australia/South", (short) 909); - put("Australia/Tasmania", (short) 914); - put("Australia/Victoria", (short) 917); - put("Australia/West", (short) 918); - put("Australia/Yancowinna", (short) 911); - put("Brazil/Acre", (short) 796); - put("Brazil/DeNoronha", (short) 777); - put("Brazil/East", (short) 800); - put("Brazil/West", (short) 762); - put("Canada/Atlantic", (short) 740); - put("Canada/Central", (short) 812); - put("Canada/Eastern", (short) 809); - put("Canada/Mountain", (short) 729); - put("Canada/Newfoundland", (short) 803); - put("Canada/Pacific", (short) 810); - put("Canada/Saskatchewan", (short) 794); - put("Canada/Yukon", (short) 811); - put("Chile/Continental", (short) 798); - put("Chile/EasterIsland", (short) 981); - put("Cuba", (short) 741); - put("Egypt", (short) 675); - put("Eire", (short) 933); - put("Etc/GMT+0", (short) 920); - put("Etc/GMT-0", (short) 920); - put("Etc/GMT0", (short) 920); - put("Etc/Greenwich", (short) 920); - put("Etc/UCT", (short) 921); - put("Etc/Universal", (short) 921); - put("Etc/Zulu", (short) 921); - put("Europe/Belfast", (short) 941); - put("Europe/Bratislava", (short) 950); - put("Europe/Busingen", (short) 967); - put("Europe/Guernsey", (short) 941); - put("Europe/Isle_of_Man", (short) 941); - put("Europe/Jersey", (short) 941); - put("Europe/Ljubljana", (short) 926); - put("Europe/Mariehamn", (short) 935); - put("Europe/Nicosia", (short) 868); - put("Europe/Podgorica", (short) 926); - put("Europe/San_Marino", (short) 952); - put("Europe/Sarajevo", (short) 926); - put("Europe/Skopje", (short) 926); - put("Europe/Tiraspol", (short) 931); - put("Europe/Vaduz", (short) 967); - put("Europe/Vatican", (short) 952); - put("Europe/Zagreb", (short) 926); - put("GB", (short) 941); - put("GB-Eire", (short) 941); - put("GMT+0", (short) 920); - put("GMT-0", (short) 920); - put("GMT0", (short) 920); - put("Greenwich", (short) 920); - put("Hongkong", (short) 849); - put("Iceland", (short) 906); - put("Indian/Antananarivo", (short) 685); - put("Indian/Comoro", (short) 685); - put("Indian/Mayotte", (short) 685); - put("Iran", (short) 888); - put("Israel", (short) 854); - put("Jamaica", (short) 753); - put("Japan", (short) 890); - put("Kwajalein", (short) 994); - put("Libya", (short) 688); - put("Mexico/BajaNorte", (short) 808); - put("Mexico/BajaSur", (short) 765); - put("Mexico/General", (short) 769); - put("NZ", (short) 977); - put("NZ-CHAT", (short) 979); - put("Navajo", (short) 727); - put("PRC", (short) 882); - put("Pacific/Enderbury", (short) 991); - put("Pacific/Johnston", (short) 990); - put("Pacific/Midway", (short) 1001); - put("Pacific/Ponape", (short) 1004); - put("Pacific/Saipan", (short) 989); - put("Pacific/Samoa", (short) 1001); - put("Pacific/Truk", (short) 980); - put("Pacific/Yap", (short) 980); - put("Poland", (short) 965); - put("Portugal", (short) 940); - put("ROC", (short) 885); - put("ROK", (short) 881); - put("Singapore", (short) 883); - put("Turkey", (short) 936); - put("UCT", (short) 921); - put("US/Alaska", (short) 692); - put("US/Aleutian", (short) 691); - put("US/Arizona", (short) 786); - put("US/Central", (short) 720); - put("US/East-Indiana", (short) 743); - put("US/Eastern", (short) 774); - put("US/Hawaii", (short) 990); - put("US/Indiana-Starke", (short) 744); - put("US/Michigan", (short) 728); - put("US/Mountain", (short) 727); - put("US/Pacific", (short) 759); - put("US/Samoa", (short) 1001); - put("Universal", (short) 921); - put("W-SU", (short) 947); - put("Zulu", (short) 921); - } - }; + public static final Map indexToTimezone = createIndexToTimezone(); + + private static Map createIndexToTimezone() { + Map map = new HashMap<>(); + map.put((short)1, "A"); + map.put((short)2, "B"); + map.put((short)3, "C"); + map.put((short)4, "D"); + map.put((short)5, "E"); + map.put((short)6, "F"); + map.put((short)7, "G"); + map.put((short)8, "H"); + map.put((short)9, "I"); + map.put((short)10, "K"); + map.put((short)11, "L"); + map.put((short)12, "M"); + map.put((short)13, "N"); + map.put((short)14, "O"); + map.put((short)15, "P"); + map.put((short)16, "Q"); + map.put((short)17, "R"); + map.put((short)18, "S"); + map.put((short)19, "T"); + map.put((short)20, "U"); + map.put((short)21, "V"); + map.put((short)22, "W"); + map.put((short)23, "X"); + map.put((short)24, "Y"); + map.put((short)25, "Z"); + map.put((short)32, "AT"); + map.put((short)40, "BT"); + map.put((short)48, "CT"); + map.put((short)56, "ET"); + map.put((short)64, "GT"); + map.put((short)72, "IT"); + map.put((short)80, "KT"); + map.put((short)88, "MT"); + map.put((short)96, "PT"); + map.put((short)104, "ST"); + map.put((short)112, "UT"); + map.put((short)120, "WT"); + map.put((short)128, "ACT"); + map.put((short)129, "ADT"); + map.put((short)130, "AET"); + map.put((short)131, "AFT"); + map.put((short)132, "AMT"); + map.put((short)133, "AoE"); + map.put((short)134, "ART"); + map.put((short)135, "AST"); + map.put((short)136, "AZT"); + map.put((short)144, "BDT"); + map.put((short)145, "BNT"); + map.put((short)146, "BOT"); + map.put((short)147, "BRT"); + map.put((short)148, "BST"); + map.put((short)149, "BTT"); + map.put((short)152, "CAT"); + map.put((short)153, "CCT"); + map.put((short)154, "CDT"); + map.put((short)155, "CET"); + map.put((short)156, "CIT"); + map.put((short)157, "CKT"); + map.put((short)158, "CLT"); + map.put((short)159, "COT"); + map.put((short)160, "CST"); + map.put((short)161, "CVT"); + map.put((short)162, "CXT"); + map.put((short)168, "EAT"); + map.put((short)169, "ECT"); + map.put((short)170, "EDT"); + map.put((short)171, "EET"); + map.put((short)172, "EGT"); + map.put((short)173, "EST"); + map.put((short)176, "FET"); + map.put((short)177, "FJT"); + map.put((short)178, "FKT"); + map.put((short)179, "FNT"); + map.put((short)184, "GET"); + map.put((short)185, "GFT"); + map.put((short)186, "GMT"); + map.put((short)187, "GST"); + map.put((short)188, "GYT"); + map.put((short)192, "HAA"); + map.put((short)193, "HAC"); + map.put((short)194, "HAE"); + map.put((short)195, "HAP"); + map.put((short)196, "HAR"); + map.put((short)197, "HAT"); + map.put((short)198, "HDT"); + map.put((short)199, "HKT"); + map.put((short)200, "HLV"); + map.put((short)201, "HNA"); + map.put((short)202, "HNC"); + map.put((short)203, "HNE"); + map.put((short)204, "HNP"); + map.put((short)205, "HNR"); + map.put((short)206, "HNT"); + map.put((short)207, "HST"); + map.put((short)208, "ICT"); + map.put((short)209, "IDT"); + map.put((short)210, "IOT"); + map.put((short)211, "IST"); + map.put((short)216, "JST"); + map.put((short)224, "KGT"); + map.put((short)225, "KIT"); + map.put((short)226, "KST"); + map.put((short)232, "MCK"); + map.put((short)233, "MDT"); + map.put((short)234, "MEZ"); + map.put((short)235, "MHT"); + map.put((short)236, "MMT"); + map.put((short)237, "MSD"); + map.put((short)238, "MSK"); + map.put((short)239, "MST"); + map.put((short)240, "MUT"); + map.put((short)241, "MVT"); + map.put((short)242, "MYT"); + map.put((short)248, "NCT"); + map.put((short)249, "NDT"); + map.put((short)250, "NFT"); + map.put((short)251, "NPT"); + map.put((short)252, "NRT"); + map.put((short)253, "NST"); + map.put((short)254, "NUT"); + map.put((short)256, "OEZ"); + map.put((short)264, "PDT"); + map.put((short)265, "PET"); + map.put((short)266, "PGT"); + map.put((short)267, "PHT"); + map.put((short)268, "PKT"); + map.put((short)269, "PST"); + map.put((short)270, "PWT"); + map.put((short)271, "PYT"); + map.put((short)272, "RET"); + map.put((short)280, "SBT"); + map.put((short)281, "SCT"); + map.put((short)282, "SGT"); + map.put((short)283, "SRT"); + map.put((short)284, "SST"); + map.put((short)288, "TFT"); + map.put((short)289, "TJT"); + map.put((short)290, "TKT"); + map.put((short)291, "TLT"); + map.put((short)292, "TMT"); + map.put((short)293, "TOT"); + map.put((short)294, "TRT"); + map.put((short)295, "TVT"); + map.put((short)296, "UTC"); + map.put((short)297, "UYT"); + map.put((short)298, "UZT"); + map.put((short)304, "VET"); + map.put((short)305, "VUT"); + map.put((short)312, "WAT"); + map.put((short)313, "WDT"); + map.put((short)314, "WET"); + map.put((short)315, "WEZ"); + map.put((short)316, "WFT"); + map.put((short)317, "WGT"); + map.put((short)318, "WIB"); + map.put((short)319, "WIT"); + map.put((short)320, "WST"); + map.put((short)328, "ACDT"); + map.put((short)329, "ACST"); + map.put((short)330, "ADST"); + map.put((short)331, "AEDT"); + map.put((short)332, "AEST"); + map.put((short)333, "AKDT"); + map.put((short)334, "AKST"); + map.put((short)335, "ALMT"); + map.put((short)336, "AMDT"); + map.put((short)337, "AMST"); + map.put((short)338, "ANAT"); + map.put((short)339, "AQTT"); + map.put((short)340, "AWDT"); + map.put((short)341, "AWST"); + map.put((short)342, "AZOT"); + map.put((short)343, "AZST"); + map.put((short)344, "BDST"); + map.put((short)345, "BRST"); + map.put((short)352, "CAST"); + map.put((short)353, "CDST"); + map.put((short)354, "CEDT"); + map.put((short)355, "CEST"); + map.put((short)356, "CHOT"); + map.put((short)357, "ChST"); + map.put((short)358, "CHUT"); + map.put((short)359, "CIST"); + map.put((short)360, "CLDT"); + map.put((short)361, "CLST"); + map.put((short)368, "DAVT"); + map.put((short)369, "DDUT"); + map.put((short)376, "EADT"); + map.put((short)377, "EAST"); + map.put((short)378, "ECST"); + map.put((short)379, "EDST"); + map.put((short)380, "EEDT"); + map.put((short)381, "EEST"); + map.put((short)382, "EGST"); + map.put((short)384, "FJDT"); + map.put((short)385, "FJST"); + map.put((short)386, "FKDT"); + map.put((short)387, "FKST"); + map.put((short)392, "GALT"); + map.put((short)393, "GAMT"); + map.put((short)394, "GILT"); + map.put((short)400, "HADT"); + map.put((short)401, "HAST"); + map.put((short)402, "HOVT"); + map.put((short)408, "IRDT"); + map.put((short)409, "IRKT"); + map.put((short)410, "IRST"); + map.put((short)416, "KOST"); + map.put((short)417, "KRAT"); + map.put((short)418, "KUYT"); + map.put((short)424, "LHDT"); + map.put((short)425, "LHST"); + map.put((short)426, "LINT"); + map.put((short)432, "MAGT"); + map.put((short)433, "MART"); + map.put((short)434, "MAWT"); + map.put((short)435, "MDST"); + map.put((short)436, "MESZ"); + map.put((short)440, "NFDT"); + map.put((short)441, "NOVT"); + map.put((short)442, "NZDT"); + map.put((short)443, "NZST"); + map.put((short)448, "OESZ"); + map.put((short)449, "OMST"); + map.put((short)450, "ORAT"); + map.put((short)456, "PDST"); + map.put((short)457, "PETT"); + map.put((short)458, "PHOT"); + map.put((short)459, "PMDT"); + map.put((short)460, "PMST"); + map.put((short)461, "PONT"); + map.put((short)462, "PYST"); + map.put((short)464, "QYZT"); + map.put((short)472, "ROTT"); + map.put((short)480, "SAKT"); + map.put((short)481, "SAMT"); + map.put((short)482, "SAST"); + map.put((short)483, "SRET"); + map.put((short)484, "SYOT"); + map.put((short)488, "TAHT"); + map.put((short)489, "TOST"); + map.put((short)496, "ULAT"); + map.put((short)497, "UYST"); + map.put((short)504, "VLAT"); + map.put((short)505, "VOST"); + map.put((short)512, "WAKT"); + map.put((short)513, "WAST"); + map.put((short)514, "WEDT"); + map.put((short)515, "WEST"); + map.put((short)516, "WESZ"); + map.put((short)517, "WGST"); + map.put((short)518, "WITA"); + map.put((short)520, "YAKT"); + map.put((short)521, "YAPT"); + map.put((short)522, "YEKT"); + map.put((short)528, "ACWST"); + map.put((short)529, "ANAST"); + map.put((short)530, "AZODT"); + map.put((short)531, "AZOST"); + map.put((short)536, "CHADT"); + map.put((short)537, "CHAST"); + map.put((short)538, "CHODT"); + map.put((short)539, "CHOST"); + map.put((short)540, "CIDST"); + map.put((short)544, "EASST"); + map.put((short)545, "EFATE"); + map.put((short)552, "HOVDT"); + map.put((short)553, "HOVST"); + map.put((short)560, "IRKST"); + map.put((short)568, "KRAST"); + map.put((short)576, "MAGST"); + map.put((short)584, "NACDT"); + map.put((short)585, "NACST"); + map.put((short)586, "NAEDT"); + map.put((short)587, "NAEST"); + map.put((short)588, "NAMDT"); + map.put((short)589, "NAMST"); + map.put((short)590, "NAPDT"); + map.put((short)591, "NAPST"); + map.put((short)592, "NOVST"); + map.put((short)600, "OMSST"); + map.put((short)608, "PETST"); + map.put((short)616, "SAMST"); + map.put((short)624, "ULAST"); + map.put((short)632, "VLAST"); + map.put((short)640, "WARST"); + map.put((short)648, "YAKST"); + map.put((short)649, "YEKST"); + map.put((short)656, "CHODST"); + map.put((short)664, "HOVDST"); + map.put((short)672, "Africa/Abidjan"); + map.put((short)673, "Africa/Algiers"); + map.put((short)674, "Africa/Bissau"); + map.put((short)675, "Africa/Cairo"); + map.put((short)676, "Africa/Casablanca"); + map.put((short)677, "Africa/Ceuta"); + map.put((short)678, "Africa/El_Aaiun"); + map.put((short)679, "Africa/Johannesburg"); + map.put((short)680, "Africa/Juba"); + map.put((short)681, "Africa/Khartoum"); + map.put((short)682, "Africa/Lagos"); + map.put((short)683, "Africa/Maputo"); + map.put((short)684, "Africa/Monrovia"); + map.put((short)685, "Africa/Nairobi"); + map.put((short)686, "Africa/Ndjamena"); + map.put((short)687, "Africa/Sao_Tome"); + map.put((short)688, "Africa/Tripoli"); + map.put((short)689, "Africa/Tunis"); + map.put((short)690, "Africa/Windhoek"); + map.put((short)691, "America/Adak"); + map.put((short)692, "America/Anchorage"); + map.put((short)693, "America/Araguaina"); + map.put((short)694, "America/Argentina/Buenos_Aires"); + map.put((short)695, "America/Argentina/Catamarca"); + map.put((short)696, "America/Argentina/Cordoba"); + map.put((short)697, "America/Argentina/Jujuy"); + map.put((short)698, "America/Argentina/La_Rioja"); + map.put((short)699, "America/Argentina/Mendoza"); + map.put((short)700, "America/Argentina/Rio_Gallegos"); + map.put((short)701, "America/Argentina/Salta"); + map.put((short)702, "America/Argentina/San_Juan"); + map.put((short)703, "America/Argentina/San_Luis"); + map.put((short)704, "America/Argentina/Tucuman"); + map.put((short)705, "America/Argentina/Ushuaia"); + map.put((short)706, "America/Asuncion"); + map.put((short)707, "America/Bahia"); + map.put((short)708, "America/Bahia_Banderas"); + map.put((short)709, "America/Barbados"); + map.put((short)710, "America/Belem"); + map.put((short)711, "America/Belize"); + map.put((short)712, "America/Boa_Vista"); + map.put((short)713, "America/Bogota"); + map.put((short)714, "America/Boise"); + map.put((short)715, "America/Cambridge_Bay"); + map.put((short)716, "America/Campo_Grande"); + map.put((short)717, "America/Cancun"); + map.put((short)718, "America/Caracas"); + map.put((short)719, "America/Cayenne"); + map.put((short)720, "America/Chicago"); + map.put((short)721, "America/Chihuahua"); + map.put((short)722, "America/Costa_Rica"); + map.put((short)723, "America/Cuiaba"); + map.put((short)724, "America/Danmarkshavn"); + map.put((short)725, "America/Dawson"); + map.put((short)726, "America/Dawson_Creek"); + map.put((short)727, "America/Denver"); + map.put((short)728, "America/Detroit"); + map.put((short)729, "America/Edmonton"); + map.put((short)730, "America/Eirunepe"); + map.put((short)731, "America/El_Salvador"); + map.put((short)732, "America/Fort_Nelson"); + map.put((short)733, "America/Fortaleza"); + map.put((short)734, "America/Glace_Bay"); + map.put((short)735, "America/Goose_Bay"); + map.put((short)736, "America/Grand_Turk"); + map.put((short)737, "America/Guatemala"); + map.put((short)738, "America/Guayaquil"); + map.put((short)739, "America/Guyana"); + map.put((short)740, "America/Halifax"); + map.put((short)741, "America/Havana"); + map.put((short)742, "America/Hermosillo"); + map.put((short)743, "America/Indiana/Indianapolis"); + map.put((short)744, "America/Indiana/Knox"); + map.put((short)745, "America/Indiana/Marengo"); + map.put((short)746, "America/Indiana/Petersburg"); + map.put((short)747, "America/Indiana/Tell_City"); + map.put((short)748, "America/Indiana/Vevay"); + map.put((short)749, "America/Indiana/Vincennes"); + map.put((short)750, "America/Indiana/Winamac"); + map.put((short)751, "America/Inuvik"); + map.put((short)752, "America/Iqaluit"); + map.put((short)753, "America/Jamaica"); + map.put((short)754, "America/Juneau"); + map.put((short)755, "America/Kentucky/Louisville"); + map.put((short)756, "America/Kentucky/Monticello"); + map.put((short)757, "America/La_Paz"); + map.put((short)758, "America/Lima"); + map.put((short)759, "America/Los_Angeles"); + map.put((short)760, "America/Maceio"); + map.put((short)761, "America/Managua"); + map.put((short)762, "America/Manaus"); + map.put((short)763, "America/Martinique"); + map.put((short)764, "America/Matamoros"); + map.put((short)765, "America/Mazatlan"); + map.put((short)766, "America/Menominee"); + map.put((short)767, "America/Merida"); + map.put((short)768, "America/Metlakatla"); + map.put((short)769, "America/Mexico_City"); + map.put((short)770, "America/Miquelon"); + map.put((short)771, "America/Moncton"); + map.put((short)772, "America/Monterrey"); + map.put((short)773, "America/Montevideo"); + map.put((short)774, "America/New_York"); + map.put((short)775, "America/Nipigon"); + map.put((short)776, "America/Nome"); + map.put((short)777, "America/Noronha"); + map.put((short)778, "America/North_Dakota/Beulah"); + map.put((short)779, "America/North_Dakota/Center"); + map.put((short)780, "America/North_Dakota/New_Salem"); + map.put((short)781, "America/Nuuk"); + map.put((short)782, "America/Ojinaga"); + map.put((short)783, "America/Panama"); + map.put((short)784, "America/Pangnirtung"); + map.put((short)785, "America/Paramaribo"); + map.put((short)786, "America/Phoenix"); + map.put((short)787, "America/Port-au-Prince"); + map.put((short)788, "America/Porto_Velho"); + map.put((short)789, "America/Puerto_Rico"); + map.put((short)790, "America/Punta_Arenas"); + map.put((short)791, "America/Rainy_River"); + map.put((short)792, "America/Rankin_Inlet"); + map.put((short)793, "America/Recife"); + map.put((short)794, "America/Regina"); + map.put((short)795, "America/Resolute"); + map.put((short)796, "America/Rio_Branco"); + map.put((short)797, "America/Santarem"); + map.put((short)798, "America/Santiago"); + map.put((short)799, "America/Santo_Domingo"); + map.put((short)800, "America/Sao_Paulo"); + map.put((short)801, "America/Scoresbysund"); + map.put((short)802, "America/Sitka"); + map.put((short)803, "America/St_Johns"); + map.put((short)804, "America/Swift_Current"); + map.put((short)805, "America/Tegucigalpa"); + map.put((short)806, "America/Thule"); + map.put((short)807, "America/Thunder_Bay"); + map.put((short)808, "America/Tijuana"); + map.put((short)809, "America/Toronto"); + map.put((short)810, "America/Vancouver"); + map.put((short)811, "America/Whitehorse"); + map.put((short)812, "America/Winnipeg"); + map.put((short)813, "America/Yakutat"); + map.put((short)814, "America/Yellowknife"); + map.put((short)815, "Antarctica/Casey"); + map.put((short)816, "Antarctica/Davis"); + map.put((short)817, "Antarctica/Macquarie"); + map.put((short)818, "Antarctica/Mawson"); + map.put((short)819, "Antarctica/Palmer"); + map.put((short)820, "Antarctica/Rothera"); + map.put((short)821, "Antarctica/Troll"); + map.put((short)822, "Antarctica/Vostok"); + map.put((short)823, "Asia/Almaty"); + map.put((short)824, "Asia/Amman"); + map.put((short)825, "Asia/Anadyr"); + map.put((short)826, "Asia/Aqtau"); + map.put((short)827, "Asia/Aqtobe"); + map.put((short)828, "Asia/Ashgabat"); + map.put((short)829, "Asia/Atyrau"); + map.put((short)830, "Asia/Baghdad"); + map.put((short)831, "Asia/Baku"); + map.put((short)832, "Asia/Bangkok"); + map.put((short)833, "Asia/Barnaul"); + map.put((short)834, "Asia/Beirut"); + map.put((short)835, "Asia/Bishkek"); + map.put((short)836, "Asia/Brunei"); + map.put((short)837, "Asia/Chita"); + map.put((short)838, "Asia/Choibalsan"); + map.put((short)839, "Asia/Colombo"); + map.put((short)840, "Asia/Damascus"); + map.put((short)841, "Asia/Dhaka"); + map.put((short)842, "Asia/Dili"); + map.put((short)843, "Asia/Dubai"); + map.put((short)844, "Asia/Dushanbe"); + map.put((short)845, "Asia/Famagusta"); + map.put((short)846, "Asia/Gaza"); + map.put((short)847, "Asia/Hebron"); + map.put((short)848, "Asia/Ho_Chi_Minh"); + map.put((short)849, "Asia/Hong_Kong"); + map.put((short)850, "Asia/Hovd"); + map.put((short)851, "Asia/Irkutsk"); + map.put((short)852, "Asia/Jakarta"); + map.put((short)853, "Asia/Jayapura"); + map.put((short)854, "Asia/Jerusalem"); + map.put((short)855, "Asia/Kabul"); + map.put((short)856, "Asia/Kamchatka"); + map.put((short)857, "Asia/Karachi"); + map.put((short)858, "Asia/Kathmandu"); + map.put((short)859, "Asia/Khandyga"); + map.put((short)860, "Asia/Kolkata"); + map.put((short)861, "Asia/Krasnoyarsk"); + map.put((short)862, "Asia/Kuala_Lumpur"); + map.put((short)863, "Asia/Kuching"); + map.put((short)864, "Asia/Macau"); + map.put((short)865, "Asia/Magadan"); + map.put((short)866, "Asia/Makassar"); + map.put((short)867, "Asia/Manila"); + map.put((short)868, "Asia/Nicosia"); + map.put((short)869, "Asia/Novokuznetsk"); + map.put((short)870, "Asia/Novosibirsk"); + map.put((short)871, "Asia/Omsk"); + map.put((short)872, "Asia/Oral"); + map.put((short)873, "Asia/Pontianak"); + map.put((short)874, "Asia/Pyongyang"); + map.put((short)875, "Asia/Qatar"); + map.put((short)876, "Asia/Qostanay"); + map.put((short)877, "Asia/Qyzylorda"); + map.put((short)878, "Asia/Riyadh"); + map.put((short)879, "Asia/Sakhalin"); + map.put((short)880, "Asia/Samarkand"); + map.put((short)881, "Asia/Seoul"); + map.put((short)882, "Asia/Shanghai"); + map.put((short)883, "Asia/Singapore"); + map.put((short)884, "Asia/Srednekolymsk"); + map.put((short)885, "Asia/Taipei"); + map.put((short)886, "Asia/Tashkent"); + map.put((short)887, "Asia/Tbilisi"); + map.put((short)888, "Asia/Tehran"); + map.put((short)889, "Asia/Thimphu"); + map.put((short)890, "Asia/Tokyo"); + map.put((short)891, "Asia/Tomsk"); + map.put((short)892, "Asia/Ulaanbaatar"); + map.put((short)893, "Asia/Urumqi"); + map.put((short)894, "Asia/Ust-Nera"); + map.put((short)895, "Asia/Vladivostok"); + map.put((short)896, "Asia/Yakutsk"); + map.put((short)897, "Asia/Yangon"); + map.put((short)898, "Asia/Yekaterinburg"); + map.put((short)899, "Asia/Yerevan"); + map.put((short)900, "Atlantic/Azores"); + map.put((short)901, "Atlantic/Bermuda"); + map.put((short)902, "Atlantic/Canary"); + map.put((short)903, "Atlantic/Cape_Verde"); + map.put((short)904, "Atlantic/Faroe"); + map.put((short)905, "Atlantic/Madeira"); + map.put((short)906, "Atlantic/Reykjavik"); + map.put((short)907, "Atlantic/South_Georgia"); + map.put((short)908, "Atlantic/Stanley"); + map.put((short)909, "Australia/Adelaide"); + map.put((short)910, "Australia/Brisbane"); + map.put((short)911, "Australia/Broken_Hill"); + map.put((short)912, "Australia/Darwin"); + map.put((short)913, "Australia/Eucla"); + map.put((short)914, "Australia/Hobart"); + map.put((short)915, "Australia/Lindeman"); + map.put((short)916, "Australia/Lord_Howe"); + map.put((short)917, "Australia/Melbourne"); + map.put((short)918, "Australia/Perth"); + map.put((short)919, "Australia/Sydney"); + map.put((short)920, "Etc/GMT"); + map.put((short)921, "Etc/UTC"); + map.put((short)922, "Europe/Amsterdam"); + map.put((short)923, "Europe/Andorra"); + map.put((short)924, "Europe/Astrakhan"); + map.put((short)925, "Europe/Athens"); + map.put((short)926, "Europe/Belgrade"); + map.put((short)927, "Europe/Berlin"); + map.put((short)928, "Europe/Brussels"); + map.put((short)929, "Europe/Bucharest"); + map.put((short)930, "Europe/Budapest"); + map.put((short)931, "Europe/Chisinau"); + map.put((short)932, "Europe/Copenhagen"); + map.put((short)933, "Europe/Dublin"); + map.put((short)934, "Europe/Gibraltar"); + map.put((short)935, "Europe/Helsinki"); + map.put((short)936, "Europe/Istanbul"); + map.put((short)937, "Europe/Kaliningrad"); + map.put((short)938, "Europe/Kiev"); + map.put((short)939, "Europe/Kirov"); + map.put((short)940, "Europe/Lisbon"); + map.put((short)941, "Europe/London"); + map.put((short)942, "Europe/Luxembourg"); + map.put((short)943, "Europe/Madrid"); + map.put((short)944, "Europe/Malta"); + map.put((short)945, "Europe/Minsk"); + map.put((short)946, "Europe/Monaco"); + map.put((short)947, "Europe/Moscow"); + map.put((short)948, "Europe/Oslo"); + map.put((short)949, "Europe/Paris"); + map.put((short)950, "Europe/Prague"); + map.put((short)951, "Europe/Riga"); + map.put((short)952, "Europe/Rome"); + map.put((short)953, "Europe/Samara"); + map.put((short)954, "Europe/Saratov"); + map.put((short)955, "Europe/Simferopol"); + map.put((short)956, "Europe/Sofia"); + map.put((short)957, "Europe/Stockholm"); + map.put((short)958, "Europe/Tallinn"); + map.put((short)959, "Europe/Tirane"); + map.put((short)960, "Europe/Ulyanovsk"); + map.put((short)961, "Europe/Uzhgorod"); + map.put((short)962, "Europe/Vienna"); + map.put((short)963, "Europe/Vilnius"); + map.put((short)964, "Europe/Volgograd"); + map.put((short)965, "Europe/Warsaw"); + map.put((short)966, "Europe/Zaporozhye"); + map.put((short)967, "Europe/Zurich"); + map.put((short)968, "Indian/Chagos"); + map.put((short)969, "Indian/Christmas"); + map.put((short)970, "Indian/Cocos"); + map.put((short)971, "Indian/Kerguelen"); + map.put((short)972, "Indian/Mahe"); + map.put((short)973, "Indian/Maldives"); + map.put((short)974, "Indian/Mauritius"); + map.put((short)975, "Indian/Reunion"); + map.put((short)976, "Pacific/Apia"); + map.put((short)977, "Pacific/Auckland"); + map.put((short)978, "Pacific/Bougainville"); + map.put((short)979, "Pacific/Chatham"); + map.put((short)980, "Pacific/Chuuk"); + map.put((short)981, "Pacific/Easter"); + map.put((short)982, "Pacific/Efate"); + map.put((short)983, "Pacific/Fakaofo"); + map.put((short)984, "Pacific/Fiji"); + map.put((short)985, "Pacific/Funafuti"); + map.put((short)986, "Pacific/Galapagos"); + map.put((short)987, "Pacific/Gambier"); + map.put((short)988, "Pacific/Guadalcanal"); + map.put((short)989, "Pacific/Guam"); + map.put((short)990, "Pacific/Honolulu"); + map.put((short)991, "Pacific/Kanton"); + map.put((short)992, "Pacific/Kiritimati"); + map.put((short)993, "Pacific/Kosrae"); + map.put((short)994, "Pacific/Kwajalein"); + map.put((short)995, "Pacific/Majuro"); + map.put((short)996, "Pacific/Marquesas"); + map.put((short)997, "Pacific/Nauru"); + map.put((short)998, "Pacific/Niue"); + map.put((short)999, "Pacific/Norfolk"); + map.put((short)1000, "Pacific/Noumea"); + map.put((short)1001, "Pacific/Pago_Pago"); + map.put((short)1002, "Pacific/Palau"); + map.put((short)1003, "Pacific/Pitcairn"); + map.put((short)1004, "Pacific/Pohnpei"); + map.put((short)1005, "Pacific/Port_Moresby"); + map.put((short)1006, "Pacific/Rarotonga"); + map.put((short)1007, "Pacific/Tahiti"); + map.put((short)1008, "Pacific/Tarawa"); + map.put((short)1009, "Pacific/Tongatapu"); + map.put((short)1010, "Pacific/Wake"); + map.put((short)1011, "Pacific/Wallis"); + return map; + } + + public static final Map timezoneToIndex = createTimezoneToIndex(); + + private static Map createTimezoneToIndex() { + Map map = new HashMap<>(); + map.put("A", (short)1); + map.put("B", (short)2); + map.put("C", (short)3); + map.put("D", (short)4); + map.put("E", (short)5); + map.put("F", (short)6); + map.put("G", (short)7); + map.put("H", (short)8); + map.put("I", (short)9); + map.put("K", (short)10); + map.put("L", (short)11); + map.put("M", (short)12); + map.put("N", (short)13); + map.put("O", (short)14); + map.put("P", (short)15); + map.put("Q", (short)16); + map.put("R", (short)17); + map.put("S", (short)18); + map.put("T", (short)19); + map.put("U", (short)20); + map.put("V", (short)21); + map.put("W", (short)22); + map.put("X", (short)23); + map.put("Y", (short)24); + map.put("Z", (short)25); + map.put("AT", (short)32); + map.put("BT", (short)40); + map.put("CT", (short)48); + map.put("ET", (short)56); + map.put("GT", (short)64); + map.put("IT", (short)72); + map.put("KT", (short)80); + map.put("MT", (short)88); + map.put("PT", (short)96); + map.put("ST", (short)104); + map.put("UT", (short)112); + map.put("WT", (short)120); + map.put("ACT", (short)128); + map.put("ADT", (short)129); + map.put("AET", (short)130); + map.put("AFT", (short)131); + map.put("AMT", (short)132); + map.put("AoE", (short)133); + map.put("ART", (short)134); + map.put("AST", (short)135); + map.put("AZT", (short)136); + map.put("BDT", (short)144); + map.put("BNT", (short)145); + map.put("BOT", (short)146); + map.put("BRT", (short)147); + map.put("BST", (short)148); + map.put("BTT", (short)149); + map.put("CAT", (short)152); + map.put("CCT", (short)153); + map.put("CDT", (short)154); + map.put("CET", (short)155); + map.put("CIT", (short)156); + map.put("CKT", (short)157); + map.put("CLT", (short)158); + map.put("COT", (short)159); + map.put("CST", (short)160); + map.put("CVT", (short)161); + map.put("CXT", (short)162); + map.put("EAT", (short)168); + map.put("ECT", (short)169); + map.put("EDT", (short)170); + map.put("EET", (short)171); + map.put("EGT", (short)172); + map.put("EST", (short)173); + map.put("FET", (short)176); + map.put("FJT", (short)177); + map.put("FKT", (short)178); + map.put("FNT", (short)179); + map.put("GET", (short)184); + map.put("GFT", (short)185); + map.put("GMT", (short)186); + map.put("GST", (short)187); + map.put("GYT", (short)188); + map.put("HAA", (short)192); + map.put("HAC", (short)193); + map.put("HAE", (short)194); + map.put("HAP", (short)195); + map.put("HAR", (short)196); + map.put("HAT", (short)197); + map.put("HDT", (short)198); + map.put("HKT", (short)199); + map.put("HLV", (short)200); + map.put("HNA", (short)201); + map.put("HNC", (short)202); + map.put("HNE", (short)203); + map.put("HNP", (short)204); + map.put("HNR", (short)205); + map.put("HNT", (short)206); + map.put("HST", (short)207); + map.put("ICT", (short)208); + map.put("IDT", (short)209); + map.put("IOT", (short)210); + map.put("IST", (short)211); + map.put("JST", (short)216); + map.put("KGT", (short)224); + map.put("KIT", (short)225); + map.put("KST", (short)226); + map.put("MCK", (short)232); + map.put("MDT", (short)233); + map.put("MEZ", (short)234); + map.put("MHT", (short)235); + map.put("MMT", (short)236); + map.put("MSD", (short)237); + map.put("MSK", (short)238); + map.put("MST", (short)239); + map.put("MUT", (short)240); + map.put("MVT", (short)241); + map.put("MYT", (short)242); + map.put("NCT", (short)248); + map.put("NDT", (short)249); + map.put("NFT", (short)250); + map.put("NPT", (short)251); + map.put("NRT", (short)252); + map.put("NST", (short)253); + map.put("NUT", (short)254); + map.put("OEZ", (short)256); + map.put("PDT", (short)264); + map.put("PET", (short)265); + map.put("PGT", (short)266); + map.put("PHT", (short)267); + map.put("PKT", (short)268); + map.put("PST", (short)269); + map.put("PWT", (short)270); + map.put("PYT", (short)271); + map.put("RET", (short)272); + map.put("SBT", (short)280); + map.put("SCT", (short)281); + map.put("SGT", (short)282); + map.put("SRT", (short)283); + map.put("SST", (short)284); + map.put("TFT", (short)288); + map.put("TJT", (short)289); + map.put("TKT", (short)290); + map.put("TLT", (short)291); + map.put("TMT", (short)292); + map.put("TOT", (short)293); + map.put("TRT", (short)294); + map.put("TVT", (short)295); + map.put("UTC", (short)296); + map.put("UYT", (short)297); + map.put("UZT", (short)298); + map.put("VET", (short)304); + map.put("VUT", (short)305); + map.put("WAT", (short)312); + map.put("WDT", (short)313); + map.put("WET", (short)314); + map.put("WEZ", (short)315); + map.put("WFT", (short)316); + map.put("WGT", (short)317); + map.put("WIB", (short)318); + map.put("WIT", (short)319); + map.put("WST", (short)320); + map.put("ACDT", (short)328); + map.put("ACST", (short)329); + map.put("ADST", (short)330); + map.put("AEDT", (short)331); + map.put("AEST", (short)332); + map.put("AKDT", (short)333); + map.put("AKST", (short)334); + map.put("ALMT", (short)335); + map.put("AMDT", (short)336); + map.put("AMST", (short)337); + map.put("ANAT", (short)338); + map.put("AQTT", (short)339); + map.put("AWDT", (short)340); + map.put("AWST", (short)341); + map.put("AZOT", (short)342); + map.put("AZST", (short)343); + map.put("BDST", (short)344); + map.put("BRST", (short)345); + map.put("CAST", (short)352); + map.put("CDST", (short)353); + map.put("CEDT", (short)354); + map.put("CEST", (short)355); + map.put("CHOT", (short)356); + map.put("ChST", (short)357); + map.put("CHUT", (short)358); + map.put("CIST", (short)359); + map.put("CLDT", (short)360); + map.put("CLST", (short)361); + map.put("DAVT", (short)368); + map.put("DDUT", (short)369); + map.put("EADT", (short)376); + map.put("EAST", (short)377); + map.put("ECST", (short)378); + map.put("EDST", (short)379); + map.put("EEDT", (short)380); + map.put("EEST", (short)381); + map.put("EGST", (short)382); + map.put("FJDT", (short)384); + map.put("FJST", (short)385); + map.put("FKDT", (short)386); + map.put("FKST", (short)387); + map.put("GALT", (short)392); + map.put("GAMT", (short)393); + map.put("GILT", (short)394); + map.put("HADT", (short)400); + map.put("HAST", (short)401); + map.put("HOVT", (short)402); + map.put("IRDT", (short)408); + map.put("IRKT", (short)409); + map.put("IRST", (short)410); + map.put("KOST", (short)416); + map.put("KRAT", (short)417); + map.put("KUYT", (short)418); + map.put("LHDT", (short)424); + map.put("LHST", (short)425); + map.put("LINT", (short)426); + map.put("MAGT", (short)432); + map.put("MART", (short)433); + map.put("MAWT", (short)434); + map.put("MDST", (short)435); + map.put("MESZ", (short)436); + map.put("NFDT", (short)440); + map.put("NOVT", (short)441); + map.put("NZDT", (short)442); + map.put("NZST", (short)443); + map.put("OESZ", (short)448); + map.put("OMST", (short)449); + map.put("ORAT", (short)450); + map.put("PDST", (short)456); + map.put("PETT", (short)457); + map.put("PHOT", (short)458); + map.put("PMDT", (short)459); + map.put("PMST", (short)460); + map.put("PONT", (short)461); + map.put("PYST", (short)462); + map.put("QYZT", (short)464); + map.put("ROTT", (short)472); + map.put("SAKT", (short)480); + map.put("SAMT", (short)481); + map.put("SAST", (short)482); + map.put("SRET", (short)483); + map.put("SYOT", (short)484); + map.put("TAHT", (short)488); + map.put("TOST", (short)489); + map.put("ULAT", (short)496); + map.put("UYST", (short)497); + map.put("VLAT", (short)504); + map.put("VOST", (short)505); + map.put("WAKT", (short)512); + map.put("WAST", (short)513); + map.put("WEDT", (short)514); + map.put("WEST", (short)515); + map.put("WESZ", (short)516); + map.put("WGST", (short)517); + map.put("WITA", (short)518); + map.put("YAKT", (short)520); + map.put("YAPT", (short)521); + map.put("YEKT", (short)522); + map.put("ACWST", (short)528); + map.put("ANAST", (short)529); + map.put("AZODT", (short)530); + map.put("AZOST", (short)531); + map.put("CHADT", (short)536); + map.put("CHAST", (short)537); + map.put("CHODT", (short)538); + map.put("CHOST", (short)539); + map.put("CIDST", (short)540); + map.put("EASST", (short)544); + map.put("EFATE", (short)545); + map.put("HOVDT", (short)552); + map.put("HOVST", (short)553); + map.put("IRKST", (short)560); + map.put("KRAST", (short)568); + map.put("MAGST", (short)576); + map.put("NACDT", (short)584); + map.put("NACST", (short)585); + map.put("NAEDT", (short)586); + map.put("NAEST", (short)587); + map.put("NAMDT", (short)588); + map.put("NAMST", (short)589); + map.put("NAPDT", (short)590); + map.put("NAPST", (short)591); + map.put("NOVST", (short)592); + map.put("OMSST", (short)600); + map.put("PETST", (short)608); + map.put("SAMST", (short)616); + map.put("ULAST", (short)624); + map.put("VLAST", (short)632); + map.put("WARST", (short)640); + map.put("YAKST", (short)648); + map.put("YEKST", (short)649); + map.put("CHODST", (short)656); + map.put("HOVDST", (short)664); + map.put("Africa/Abidjan", (short)672); + map.put("Africa/Algiers", (short)673); + map.put("Africa/Bissau", (short)674); + map.put("Africa/Cairo", (short)675); + map.put("Africa/Casablanca", (short)676); + map.put("Africa/Ceuta", (short)677); + map.put("Africa/El_Aaiun", (short)678); + map.put("Africa/Johannesburg", (short)679); + map.put("Africa/Juba", (short)680); + map.put("Africa/Khartoum", (short)681); + map.put("Africa/Lagos", (short)682); + map.put("Africa/Maputo", (short)683); + map.put("Africa/Monrovia", (short)684); + map.put("Africa/Nairobi", (short)685); + map.put("Africa/Ndjamena", (short)686); + map.put("Africa/Sao_Tome", (short)687); + map.put("Africa/Tripoli", (short)688); + map.put("Africa/Tunis", (short)689); + map.put("Africa/Windhoek", (short)690); + map.put("America/Adak", (short)691); + map.put("America/Anchorage", (short)692); + map.put("America/Araguaina", (short)693); + map.put("America/Argentina/Buenos_Aires", (short)694); + map.put("America/Argentina/Catamarca", (short)695); + map.put("America/Argentina/Cordoba", (short)696); + map.put("America/Argentina/Jujuy", (short)697); + map.put("America/Argentina/La_Rioja", (short)698); + map.put("America/Argentina/Mendoza", (short)699); + map.put("America/Argentina/Rio_Gallegos", (short)700); + map.put("America/Argentina/Salta", (short)701); + map.put("America/Argentina/San_Juan", (short)702); + map.put("America/Argentina/San_Luis", (short)703); + map.put("America/Argentina/Tucuman", (short)704); + map.put("America/Argentina/Ushuaia", (short)705); + map.put("America/Asuncion", (short)706); + map.put("America/Bahia", (short)707); + map.put("America/Bahia_Banderas", (short)708); + map.put("America/Barbados", (short)709); + map.put("America/Belem", (short)710); + map.put("America/Belize", (short)711); + map.put("America/Boa_Vista", (short)712); + map.put("America/Bogota", (short)713); + map.put("America/Boise", (short)714); + map.put("America/Cambridge_Bay", (short)715); + map.put("America/Campo_Grande", (short)716); + map.put("America/Cancun", (short)717); + map.put("America/Caracas", (short)718); + map.put("America/Cayenne", (short)719); + map.put("America/Chicago", (short)720); + map.put("America/Chihuahua", (short)721); + map.put("America/Costa_Rica", (short)722); + map.put("America/Cuiaba", (short)723); + map.put("America/Danmarkshavn", (short)724); + map.put("America/Dawson", (short)725); + map.put("America/Dawson_Creek", (short)726); + map.put("America/Denver", (short)727); + map.put("America/Detroit", (short)728); + map.put("America/Edmonton", (short)729); + map.put("America/Eirunepe", (short)730); + map.put("America/El_Salvador", (short)731); + map.put("America/Fort_Nelson", (short)732); + map.put("America/Fortaleza", (short)733); + map.put("America/Glace_Bay", (short)734); + map.put("America/Goose_Bay", (short)735); + map.put("America/Grand_Turk", (short)736); + map.put("America/Guatemala", (short)737); + map.put("America/Guayaquil", (short)738); + map.put("America/Guyana", (short)739); + map.put("America/Halifax", (short)740); + map.put("America/Havana", (short)741); + map.put("America/Hermosillo", (short)742); + map.put("America/Indiana/Indianapolis", (short)743); + map.put("America/Indiana/Knox", (short)744); + map.put("America/Indiana/Marengo", (short)745); + map.put("America/Indiana/Petersburg", (short)746); + map.put("America/Indiana/Tell_City", (short)747); + map.put("America/Indiana/Vevay", (short)748); + map.put("America/Indiana/Vincennes", (short)749); + map.put("America/Indiana/Winamac", (short)750); + map.put("America/Inuvik", (short)751); + map.put("America/Iqaluit", (short)752); + map.put("America/Jamaica", (short)753); + map.put("America/Juneau", (short)754); + map.put("America/Kentucky/Louisville", (short)755); + map.put("America/Kentucky/Monticello", (short)756); + map.put("America/La_Paz", (short)757); + map.put("America/Lima", (short)758); + map.put("America/Los_Angeles", (short)759); + map.put("America/Maceio", (short)760); + map.put("America/Managua", (short)761); + map.put("America/Manaus", (short)762); + map.put("America/Martinique", (short)763); + map.put("America/Matamoros", (short)764); + map.put("America/Mazatlan", (short)765); + map.put("America/Menominee", (short)766); + map.put("America/Merida", (short)767); + map.put("America/Metlakatla", (short)768); + map.put("America/Mexico_City", (short)769); + map.put("America/Miquelon", (short)770); + map.put("America/Moncton", (short)771); + map.put("America/Monterrey", (short)772); + map.put("America/Montevideo", (short)773); + map.put("America/New_York", (short)774); + map.put("America/Nipigon", (short)775); + map.put("America/Nome", (short)776); + map.put("America/Noronha", (short)777); + map.put("America/North_Dakota/Beulah", (short)778); + map.put("America/North_Dakota/Center", (short)779); + map.put("America/North_Dakota/New_Salem", (short)780); + map.put("America/Nuuk", (short)781); + map.put("America/Ojinaga", (short)782); + map.put("America/Panama", (short)783); + map.put("America/Pangnirtung", (short)784); + map.put("America/Paramaribo", (short)785); + map.put("America/Phoenix", (short)786); + map.put("America/Port-au-Prince", (short)787); + map.put("America/Porto_Velho", (short)788); + map.put("America/Puerto_Rico", (short)789); + map.put("America/Punta_Arenas", (short)790); + map.put("America/Rainy_River", (short)791); + map.put("America/Rankin_Inlet", (short)792); + map.put("America/Recife", (short)793); + map.put("America/Regina", (short)794); + map.put("America/Resolute", (short)795); + map.put("America/Rio_Branco", (short)796); + map.put("America/Santarem", (short)797); + map.put("America/Santiago", (short)798); + map.put("America/Santo_Domingo", (short)799); + map.put("America/Sao_Paulo", (short)800); + map.put("America/Scoresbysund", (short)801); + map.put("America/Sitka", (short)802); + map.put("America/St_Johns", (short)803); + map.put("America/Swift_Current", (short)804); + map.put("America/Tegucigalpa", (short)805); + map.put("America/Thule", (short)806); + map.put("America/Thunder_Bay", (short)807); + map.put("America/Tijuana", (short)808); + map.put("America/Toronto", (short)809); + map.put("America/Vancouver", (short)810); + map.put("America/Whitehorse", (short)811); + map.put("America/Winnipeg", (short)812); + map.put("America/Yakutat", (short)813); + map.put("America/Yellowknife", (short)814); + map.put("Antarctica/Casey", (short)815); + map.put("Antarctica/Davis", (short)816); + map.put("Antarctica/Macquarie", (short)817); + map.put("Antarctica/Mawson", (short)818); + map.put("Antarctica/Palmer", (short)819); + map.put("Antarctica/Rothera", (short)820); + map.put("Antarctica/Troll", (short)821); + map.put("Antarctica/Vostok", (short)822); + map.put("Asia/Almaty", (short)823); + map.put("Asia/Amman", (short)824); + map.put("Asia/Anadyr", (short)825); + map.put("Asia/Aqtau", (short)826); + map.put("Asia/Aqtobe", (short)827); + map.put("Asia/Ashgabat", (short)828); + map.put("Asia/Atyrau", (short)829); + map.put("Asia/Baghdad", (short)830); + map.put("Asia/Baku", (short)831); + map.put("Asia/Bangkok", (short)832); + map.put("Asia/Barnaul", (short)833); + map.put("Asia/Beirut", (short)834); + map.put("Asia/Bishkek", (short)835); + map.put("Asia/Brunei", (short)836); + map.put("Asia/Chita", (short)837); + map.put("Asia/Choibalsan", (short)838); + map.put("Asia/Colombo", (short)839); + map.put("Asia/Damascus", (short)840); + map.put("Asia/Dhaka", (short)841); + map.put("Asia/Dili", (short)842); + map.put("Asia/Dubai", (short)843); + map.put("Asia/Dushanbe", (short)844); + map.put("Asia/Famagusta", (short)845); + map.put("Asia/Gaza", (short)846); + map.put("Asia/Hebron", (short)847); + map.put("Asia/Ho_Chi_Minh", (short)848); + map.put("Asia/Hong_Kong", (short)849); + map.put("Asia/Hovd", (short)850); + map.put("Asia/Irkutsk", (short)851); + map.put("Asia/Jakarta", (short)852); + map.put("Asia/Jayapura", (short)853); + map.put("Asia/Jerusalem", (short)854); + map.put("Asia/Kabul", (short)855); + map.put("Asia/Kamchatka", (short)856); + map.put("Asia/Karachi", (short)857); + map.put("Asia/Kathmandu", (short)858); + map.put("Asia/Khandyga", (short)859); + map.put("Asia/Kolkata", (short)860); + map.put("Asia/Krasnoyarsk", (short)861); + map.put("Asia/Kuala_Lumpur", (short)862); + map.put("Asia/Kuching", (short)863); + map.put("Asia/Macau", (short)864); + map.put("Asia/Magadan", (short)865); + map.put("Asia/Makassar", (short)866); + map.put("Asia/Manila", (short)867); + map.put("Asia/Nicosia", (short)868); + map.put("Asia/Novokuznetsk", (short)869); + map.put("Asia/Novosibirsk", (short)870); + map.put("Asia/Omsk", (short)871); + map.put("Asia/Oral", (short)872); + map.put("Asia/Pontianak", (short)873); + map.put("Asia/Pyongyang", (short)874); + map.put("Asia/Qatar", (short)875); + map.put("Asia/Qostanay", (short)876); + map.put("Asia/Qyzylorda", (short)877); + map.put("Asia/Riyadh", (short)878); + map.put("Asia/Sakhalin", (short)879); + map.put("Asia/Samarkand", (short)880); + map.put("Asia/Seoul", (short)881); + map.put("Asia/Shanghai", (short)882); + map.put("Asia/Singapore", (short)883); + map.put("Asia/Srednekolymsk", (short)884); + map.put("Asia/Taipei", (short)885); + map.put("Asia/Tashkent", (short)886); + map.put("Asia/Tbilisi", (short)887); + map.put("Asia/Tehran", (short)888); + map.put("Asia/Thimphu", (short)889); + map.put("Asia/Tokyo", (short)890); + map.put("Asia/Tomsk", (short)891); + map.put("Asia/Ulaanbaatar", (short)892); + map.put("Asia/Urumqi", (short)893); + map.put("Asia/Ust-Nera", (short)894); + map.put("Asia/Vladivostok", (short)895); + map.put("Asia/Yakutsk", (short)896); + map.put("Asia/Yangon", (short)897); + map.put("Asia/Yekaterinburg", (short)898); + map.put("Asia/Yerevan", (short)899); + map.put("Atlantic/Azores", (short)900); + map.put("Atlantic/Bermuda", (short)901); + map.put("Atlantic/Canary", (short)902); + map.put("Atlantic/Cape_Verde", (short)903); + map.put("Atlantic/Faroe", (short)904); + map.put("Atlantic/Madeira", (short)905); + map.put("Atlantic/Reykjavik", (short)906); + map.put("Atlantic/South_Georgia", (short)907); + map.put("Atlantic/Stanley", (short)908); + map.put("Australia/Adelaide", (short)909); + map.put("Australia/Brisbane", (short)910); + map.put("Australia/Broken_Hill", (short)911); + map.put("Australia/Darwin", (short)912); + map.put("Australia/Eucla", (short)913); + map.put("Australia/Hobart", (short)914); + map.put("Australia/Lindeman", (short)915); + map.put("Australia/Lord_Howe", (short)916); + map.put("Australia/Melbourne", (short)917); + map.put("Australia/Perth", (short)918); + map.put("Australia/Sydney", (short)919); + map.put("Etc/GMT", (short)920); + map.put("Etc/UTC", (short)921); + map.put("Europe/Amsterdam", (short)922); + map.put("Europe/Andorra", (short)923); + map.put("Europe/Astrakhan", (short)924); + map.put("Europe/Athens", (short)925); + map.put("Europe/Belgrade", (short)926); + map.put("Europe/Berlin", (short)927); + map.put("Europe/Brussels", (short)928); + map.put("Europe/Bucharest", (short)929); + map.put("Europe/Budapest", (short)930); + map.put("Europe/Chisinau", (short)931); + map.put("Europe/Copenhagen", (short)932); + map.put("Europe/Dublin", (short)933); + map.put("Europe/Gibraltar", (short)934); + map.put("Europe/Helsinki", (short)935); + map.put("Europe/Istanbul", (short)936); + map.put("Europe/Kaliningrad", (short)937); + map.put("Europe/Kiev", (short)938); + map.put("Europe/Kirov", (short)939); + map.put("Europe/Lisbon", (short)940); + map.put("Europe/London", (short)941); + map.put("Europe/Luxembourg", (short)942); + map.put("Europe/Madrid", (short)943); + map.put("Europe/Malta", (short)944); + map.put("Europe/Minsk", (short)945); + map.put("Europe/Monaco", (short)946); + map.put("Europe/Moscow", (short)947); + map.put("Europe/Oslo", (short)948); + map.put("Europe/Paris", (short)949); + map.put("Europe/Prague", (short)950); + map.put("Europe/Riga", (short)951); + map.put("Europe/Rome", (short)952); + map.put("Europe/Samara", (short)953); + map.put("Europe/Saratov", (short)954); + map.put("Europe/Simferopol", (short)955); + map.put("Europe/Sofia", (short)956); + map.put("Europe/Stockholm", (short)957); + map.put("Europe/Tallinn", (short)958); + map.put("Europe/Tirane", (short)959); + map.put("Europe/Ulyanovsk", (short)960); + map.put("Europe/Uzhgorod", (short)961); + map.put("Europe/Vienna", (short)962); + map.put("Europe/Vilnius", (short)963); + map.put("Europe/Volgograd", (short)964); + map.put("Europe/Warsaw", (short)965); + map.put("Europe/Zaporozhye", (short)966); + map.put("Europe/Zurich", (short)967); + map.put("Indian/Chagos", (short)968); + map.put("Indian/Christmas", (short)969); + map.put("Indian/Cocos", (short)970); + map.put("Indian/Kerguelen", (short)971); + map.put("Indian/Mahe", (short)972); + map.put("Indian/Maldives", (short)973); + map.put("Indian/Mauritius", (short)974); + map.put("Indian/Reunion", (short)975); + map.put("Pacific/Apia", (short)976); + map.put("Pacific/Auckland", (short)977); + map.put("Pacific/Bougainville", (short)978); + map.put("Pacific/Chatham", (short)979); + map.put("Pacific/Chuuk", (short)980); + map.put("Pacific/Easter", (short)981); + map.put("Pacific/Efate", (short)982); + map.put("Pacific/Fakaofo", (short)983); + map.put("Pacific/Fiji", (short)984); + map.put("Pacific/Funafuti", (short)985); + map.put("Pacific/Galapagos", (short)986); + map.put("Pacific/Gambier", (short)987); + map.put("Pacific/Guadalcanal", (short)988); + map.put("Pacific/Guam", (short)989); + map.put("Pacific/Honolulu", (short)990); + map.put("Pacific/Kanton", (short)991); + map.put("Pacific/Kiritimati", (short)992); + map.put("Pacific/Kosrae", (short)993); + map.put("Pacific/Kwajalein", (short)994); + map.put("Pacific/Majuro", (short)995); + map.put("Pacific/Marquesas", (short)996); + map.put("Pacific/Nauru", (short)997); + map.put("Pacific/Niue", (short)998); + map.put("Pacific/Norfolk", (short)999); + map.put("Pacific/Noumea", (short)1000); + map.put("Pacific/Pago_Pago", (short)1001); + map.put("Pacific/Palau", (short)1002); + map.put("Pacific/Pitcairn", (short)1003); + map.put("Pacific/Pohnpei", (short)1004); + map.put("Pacific/Port_Moresby", (short)1005); + map.put("Pacific/Rarotonga", (short)1006); + map.put("Pacific/Tahiti", (short)1007); + map.put("Pacific/Tarawa", (short)1008); + map.put("Pacific/Tongatapu", (short)1009); + map.put("Pacific/Wake", (short)1010); + map.put("Pacific/Wallis", (short)1011); + map.put("Africa/Accra", (short)672); + map.put("Africa/Addis_Ababa", (short)685); + map.put("Africa/Asmara", (short)685); + map.put("Africa/Asmera", (short)685); + map.put("Africa/Bamako", (short)672); + map.put("Africa/Bangui", (short)682); + map.put("Africa/Banjul", (short)672); + map.put("Africa/Blantyre", (short)683); + map.put("Africa/Brazzaville", (short)682); + map.put("Africa/Bujumbura", (short)683); + map.put("Africa/Conakry", (short)672); + map.put("Africa/Dakar", (short)672); + map.put("Africa/Dar_es_Salaam", (short)685); + map.put("Africa/Djibouti", (short)685); + map.put("Africa/Douala", (short)682); + map.put("Africa/Freetown", (short)672); + map.put("Africa/Gaborone", (short)683); + map.put("Africa/Harare", (short)683); + map.put("Africa/Kampala", (short)685); + map.put("Africa/Kigali", (short)683); + map.put("Africa/Kinshasa", (short)682); + map.put("Africa/Libreville", (short)682); + map.put("Africa/Lome", (short)672); + map.put("Africa/Luanda", (short)682); + map.put("Africa/Lubumbashi", (short)683); + map.put("Africa/Lusaka", (short)683); + map.put("Africa/Malabo", (short)682); + map.put("Africa/Maseru", (short)679); + map.put("Africa/Mbabane", (short)679); + map.put("Africa/Mogadishu", (short)685); + map.put("Africa/Niamey", (short)682); + map.put("Africa/Nouakchott", (short)672); + map.put("Africa/Ouagadougou", (short)672); + map.put("Africa/Porto-Novo", (short)682); + map.put("Africa/Timbuktu", (short)672); + map.put("America/Anguilla", (short)789); + map.put("America/Antigua", (short)789); + map.put("America/Argentina/ComodRivadavia", (short)695); + map.put("America/Aruba", (short)789); + map.put("America/Atikokan", (short)783); + map.put("America/Atka", (short)691); + map.put("America/Blanc-Sablon", (short)789); + map.put("America/Buenos_Aires", (short)694); + map.put("America/Catamarca", (short)695); + map.put("America/Cayman", (short)783); + map.put("America/Coral_Harbour", (short)783); + map.put("America/Cordoba", (short)696); + map.put("America/Creston", (short)786); + map.put("America/Curacao", (short)789); + map.put("America/Dominica", (short)789); + map.put("America/Ensenada", (short)808); + map.put("America/Fort_Wayne", (short)743); + map.put("America/Godthab", (short)781); + map.put("America/Grenada", (short)789); + map.put("America/Guadeloupe", (short)789); + map.put("America/Indianapolis", (short)743); + map.put("America/Jujuy", (short)697); + map.put("America/Knox_IN", (short)744); + map.put("America/Kralendijk", (short)789); + map.put("America/Louisville", (short)755); + map.put("America/Lower_Princes", (short)789); + map.put("America/Marigot", (short)789); + map.put("America/Mendoza", (short)699); + map.put("America/Montreal", (short)809); + map.put("America/Montserrat", (short)789); + map.put("America/Nassau", (short)809); + map.put("America/Port_of_Spain", (short)789); + map.put("America/Porto_Acre", (short)796); + map.put("America/Rosario", (short)696); + map.put("America/Santa_Isabel", (short)808); + map.put("America/Shiprock", (short)727); + map.put("America/St_Barthelemy", (short)789); + map.put("America/St_Kitts", (short)789); + map.put("America/St_Lucia", (short)789); + map.put("America/St_Thomas", (short)789); + map.put("America/St_Vincent", (short)789); + map.put("America/Tortola", (short)789); + map.put("America/Virgin", (short)789); + map.put("Antarctica/DumontDUrville", (short)1005); + map.put("Antarctica/McMurdo", (short)977); + map.put("Antarctica/South_Pole", (short)977); + map.put("Antarctica/Syowa", (short)878); + map.put("Arctic/Longyearbyen", (short)948); + map.put("Asia/Aden", (short)878); + map.put("Asia/Ashkhabad", (short)828); + map.put("Asia/Bahrain", (short)875); + map.put("Asia/Calcutta", (short)860); + map.put("Asia/Chongqing", (short)882); + map.put("Asia/Chungking", (short)882); + map.put("Asia/Dacca", (short)841); + map.put("Asia/Harbin", (short)882); + map.put("Asia/Istanbul", (short)936); + map.put("Asia/Kashgar", (short)893); + map.put("Asia/Katmandu", (short)858); + map.put("Asia/Kuwait", (short)878); + map.put("Asia/Macao", (short)864); + map.put("Asia/Muscat", (short)843); + map.put("Asia/Phnom_Penh", (short)832); + map.put("Asia/Rangoon", (short)897); + map.put("Asia/Saigon", (short)848); + map.put("Asia/Tel_Aviv", (short)854); + map.put("Asia/Thimbu", (short)889); + map.put("Asia/Ujung_Pandang", (short)866); + map.put("Asia/Ulan_Bator", (short)892); + map.put("Asia/Vientiane", (short)832); + map.put("Atlantic/Faeroe", (short)904); + map.put("Atlantic/Jan_Mayen", (short)948); + map.put("Atlantic/St_Helena", (short)672); + map.put("Australia/ACT", (short)919); + map.put("Australia/Canberra", (short)919); + map.put("Australia/Currie", (short)914); + map.put("Australia/LHI", (short)916); + map.put("Australia/NSW", (short)919); + map.put("Australia/North", (short)912); + map.put("Australia/Queensland", (short)910); + map.put("Australia/South", (short)909); + map.put("Australia/Tasmania", (short)914); + map.put("Australia/Victoria", (short)917); + map.put("Australia/West", (short)918); + map.put("Australia/Yancowinna", (short)911); + map.put("Brazil/Acre", (short)796); + map.put("Brazil/DeNoronha", (short)777); + map.put("Brazil/East", (short)800); + map.put("Brazil/West", (short)762); + map.put("Canada/Atlantic", (short)740); + map.put("Canada/Central", (short)812); + map.put("Canada/Eastern", (short)809); + map.put("Canada/Mountain", (short)729); + map.put("Canada/Newfoundland", (short)803); + map.put("Canada/Pacific", (short)810); + map.put("Canada/Saskatchewan", (short)794); + map.put("Canada/Yukon", (short)811); + map.put("Chile/Continental", (short)798); + map.put("Chile/EasterIsland", (short)981); + map.put("Cuba", (short)741); + map.put("Egypt", (short)675); + map.put("Eire", (short)933); + map.put("Etc/GMT+0", (short)920); + map.put("Etc/GMT-0", (short)920); + map.put("Etc/GMT0", (short)920); + map.put("Etc/Greenwich", (short)920); + map.put("Etc/UCT", (short)921); + map.put("Etc/Universal", (short)921); + map.put("Etc/Zulu", (short)921); + map.put("Europe/Belfast", (short)941); + map.put("Europe/Bratislava", (short)950); + map.put("Europe/Busingen", (short)967); + map.put("Europe/Guernsey", (short)941); + map.put("Europe/Isle_of_Man", (short)941); + map.put("Europe/Jersey", (short)941); + map.put("Europe/Ljubljana", (short)926); + map.put("Europe/Mariehamn", (short)935); + map.put("Europe/Nicosia", (short)868); + map.put("Europe/Podgorica", (short)926); + map.put("Europe/San_Marino", (short)952); + map.put("Europe/Sarajevo", (short)926); + map.put("Europe/Skopje", (short)926); + map.put("Europe/Tiraspol", (short)931); + map.put("Europe/Vaduz", (short)967); + map.put("Europe/Vatican", (short)952); + map.put("Europe/Zagreb", (short)926); + map.put("GB", (short)941); + map.put("GB-Eire", (short)941); + map.put("GMT+0", (short)920); + map.put("GMT-0", (short)920); + map.put("GMT0", (short)920); + map.put("Greenwich", (short)920); + map.put("Hongkong", (short)849); + map.put("Iceland", (short)906); + map.put("Indian/Antananarivo", (short)685); + map.put("Indian/Comoro", (short)685); + map.put("Indian/Mayotte", (short)685); + map.put("Iran", (short)888); + map.put("Israel", (short)854); + map.put("Jamaica", (short)753); + map.put("Japan", (short)890); + map.put("Kwajalein", (short)994); + map.put("Libya", (short)688); + map.put("Mexico/BajaNorte", (short)808); + map.put("Mexico/BajaSur", (short)765); + map.put("Mexico/General", (short)769); + map.put("NZ", (short)977); + map.put("NZ-CHAT", (short)979); + map.put("Navajo", (short)727); + map.put("PRC", (short)882); + map.put("Pacific/Enderbury", (short)991); + map.put("Pacific/Johnston", (short)990); + map.put("Pacific/Midway", (short)1001); + map.put("Pacific/Ponape", (short)1004); + map.put("Pacific/Saipan", (short)989); + map.put("Pacific/Samoa", (short)1001); + map.put("Pacific/Truk", (short)980); + map.put("Pacific/Yap", (short)980); + map.put("Poland", (short)965); + map.put("Portugal", (short)940); + map.put("ROC", (short)885); + map.put("ROK", (short)881); + map.put("Singapore", (short)883); + map.put("Turkey", (short)936); + map.put("UCT", (short)921); + map.put("US/Alaska", (short)692); + map.put("US/Aleutian", (short)691); + map.put("US/Arizona", (short)786); + map.put("US/Central", (short)720); + map.put("US/East-Indiana", (short)743); + map.put("US/Eastern", (short)774); + map.put("US/Hawaii", (short)990); + map.put("US/Indiana-Starke", (short)744); + map.put("US/Michigan", (short)728); + map.put("US/Mountain", (short)727); + map.put("US/Pacific", (short)759); + map.put("US/Samoa", (short)1001); + map.put("Universal", (short)921); + map.put("W-SU", (short)947); + map.put("Zulu", (short)921); + return map; + } } diff --git a/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/gen-timezones.sh b/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/gen-timezones.sh index 99d81e1e..bd14ede7 100644 --- a/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/gen-timezones.sh +++ b/tarantool-jackson-mapping/src/main/java/io/tarantool/mapping/gen-timezones.sh @@ -23,32 +23,45 @@ wget -O ${SRC_FILE} \ cat < ${DST_FILE} package io.tarantool.mapping; + import java.util.HashMap; +import java.util.Map; + /* Automatically generated by gen-timezones.sh */ public class TarantoolTimezones { - public static HashMap indexToTimezone = new HashMap() {{ + + public static final Map indexToTimezone = createIndexToTimezone(); + + private static Map createIndexToTimezone() { + Map map = new HashMap<>(); EOF grep ZONE_ABBREV ${SRC_FILE} | sed "s/ZONE_ABBREV( *//g" | sed "s/[),]//g" \ - | awk '{printf("\t\tput((short)%s, %s);\n", $1, $3)}' >> ${DST_FILE} + | awk '{printf("\t\tmap.put((short)%s, %s);\n", $1, $3)}' >> ${DST_FILE} grep ZONE_UNIQUE ${SRC_FILE} | sed "s/ZONE_UNIQUE( *//g" | sed "s/[),]//g" \ - | awk '{printf("\t\tput((short)%s, %s);\n", $1, $2)}' >> ${DST_FILE} + | awk '{printf("\t\tmap.put((short)%s, %s);\n", $1, $2)}' >> ${DST_FILE} cat <> ${DST_FILE} - }}; - public static HashMap timezoneToIndex = new HashMap() {{ + return map; + } + + public static final Map timezoneToIndex = createTimezoneToIndex(); + + private static Map createTimezoneToIndex() { + Map map = new HashMap<>(); EOF grep ZONE_ABBREV ${SRC_FILE} | sed "s/ZONE_ABBREV( *//g" | sed "s/[),]//g" \ - | awk '{printf("\t\tput(%s, (short)%s);\n", $3, $1)}' >> ${DST_FILE} + | awk '{printf("\t\tmap.put(%s, (short)%s);\n", $3, $1)}' >> ${DST_FILE} grep ZONE_UNIQUE ${SRC_FILE} | sed "s/ZONE_UNIQUE( *//g" | sed "s/[),]//g" \ - | awk '{printf("\t\tput(%s, (short)%s);\n", $2, $1)}' >> ${DST_FILE} + | awk '{printf("\t\tmap.put(%s, (short)%s);\n", $2, $1)}' >> ${DST_FILE} grep ZONE_ALIAS ${SRC_FILE} | sed "s/ZONE_ALIAS( *//g" | sed "s/[),]//g" \ - | awk '{printf("\t\tput(%s, (short)%s);\n", $2, $1)}' >> ${DST_FILE} + | awk '{printf("\t\tmap.put(%s, (short)%s);\n", $2, $1)}' >> ${DST_FILE} cat <> ${DST_FILE} - }}; + return map; + } } EOF -rm timezones.h +rm -f timezones.h