diff options
| author | Mark A. Hershberger <mah@debian.(none)> | 2009-03-25 00:39:08 -0400 |
|---|---|---|
| committer | Mark A. Hershberger <mah@debian.(none)> | 2009-03-25 00:39:08 -0400 |
| commit | 993e1866df547532a05ab6db76c9ff5aefc9a3df (patch) | |
| tree | 169d3bde0974235d3cde164786ef6f381a4749a7 /ext/date | |
| parent | 1f589a2bd44ba835ad1b009a5d83abd453724829 (diff) | |
| download | php-993e1866df547532a05ab6db76c9ff5aefc9a3df.tar.gz | |
Imported Upstream version 5.2.6upstream/5.2.6
Diffstat (limited to 'ext/date')
31 files changed, 1727 insertions, 794 deletions
diff --git a/ext/date/lib/astro.c b/ext/date/lib/astro.c index 17c03ba9b..87e91c448 100644 --- a/ext/date/lib/astro.c +++ b/ext/date/lib/astro.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -19,7 +19,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: astro.c,v 1.1.2.4.2.1 2007/01/01 09:35:48 sebastian Exp $ */ +/* $Id: astro.c,v 1.1.2.4.2.2 2007/12/31 07:20:05 sebastian Exp $ */ #include <stdio.h> #include <math.h> diff --git a/ext/date/lib/dow.c b/ext/date/lib/dow.c index 08e83d2da..4a5fa32d5 100644 --- a/ext/date/lib/dow.c +++ b/ext/date/lib/dow.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: dow.c,v 1.8.2.3.2.3 2007/01/01 09:35:48 sebastian Exp $ */ +/* $Id: dow.c,v 1.8.2.3.2.5 2008/02/22 17:49:30 derick Exp $ */ #include "timelib.h" @@ -35,10 +35,12 @@ static timelib_sll timelib_day_of_week_ex(timelib_sll y, timelib_sll m, timelib_ { timelib_sll c1, y1, m1, dow; - /* Only valid for Gregorian calendar */ + /* Only valid for Gregorian calendar, commented out as we don't handle + * julian calendar. We just return the 'wrong' day of week to be + * consistent. if (y < 1753) { return -1; - } + } */ c1 = century_value(y / 100); y1 = (y % 100); m1 = timelib_is_leap(y) ? m_table_leap[m] : m_table_common[m]; diff --git a/ext/date/lib/parse_date.c b/ext/date/lib/parse_date.c index 4d888a886..3c25760d6 100644 --- a/ext/date/lib/parse_date.c +++ b/ext/date/lib/parse_date.c @@ -1,4 +1,4 @@ -/* Generated by re2c 0.12.1 on Thu Jul 12 19:32:22 2007 */ +/* Generated by re2c 0.12.1 on Mon Feb 25 19:27:05 2008 */ /* +----------------------------------------------------------------------+ | PHP Version 5 | @@ -17,7 +17,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: parse_date.c,v 1.29.2.30.2.14 2007/07/12 18:59:55 derick Exp $ */ +/* $Id: parse_date.c,v 1.29.2.30.2.16 2008/02/25 18:28:03 derick Exp $ */ #include "timelib.h" @@ -668,7 +668,7 @@ static long timelib_lookup_zone(char **ptr, int *dst, char **tz_abbr, int *found long value = 0; const timelib_tz_lookup_table *tp; - while (**ptr != '\0' && **ptr != ')') { + while (**ptr != '\0' && **ptr != ')' && **ptr != ' ') { ++*ptr; } end = *ptr; diff --git a/ext/date/lib/parse_date.c.orig b/ext/date/lib/parse_date.c.orig index 79bad2b92..4948a2e82 100644 --- a/ext/date/lib/parse_date.c.orig +++ b/ext/date/lib/parse_date.c.orig @@ -1,4 +1,4 @@ -/* Generated by re2c 0.12.1 on Thu Jul 12 19:32:22 2007 */ +/* Generated by re2c 0.12.1 on Mon Feb 25 19:27:05 2008 */ #line 1 "ext/date/lib/parse_date.re" /* +----------------------------------------------------------------------+ @@ -18,7 +18,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: parse_date.c,v 1.29.2.30.2.14 2007/07/12 18:59:55 derick Exp $ */ +/* $Id: parse_date.c,v 1.29.2.30.2.16 2008/02/25 18:28:03 derick Exp $ */ #include "timelib.h" @@ -669,7 +669,7 @@ static long timelib_lookup_zone(char **ptr, int *dst, char **tz_abbr, int *found long value = 0; const timelib_tz_lookup_table *tp; - while (**ptr != '\0' && **ptr != ')') { + while (**ptr != '\0' && **ptr != ')' && **ptr != ' ') { ++*ptr; } end = *ptr; diff --git a/ext/date/lib/parse_date.re b/ext/date/lib/parse_date.re index c88d12e5b..6a24ff1f0 100644 --- a/ext/date/lib/parse_date.re +++ b/ext/date/lib/parse_date.re @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: parse_date.re,v 1.26.2.27.2.12 2007/07/12 18:58:00 derick Exp $ */ +/* $Id: parse_date.re,v 1.26.2.27.2.13 2008/02/25 18:28:18 derick Exp $ */ #include "timelib.h" @@ -667,7 +667,7 @@ static long timelib_lookup_zone(char **ptr, int *dst, char **tz_abbr, int *found long value = 0; const timelib_tz_lookup_table *tp; - while (**ptr != '\0' && **ptr != ')') { + while (**ptr != '\0' && **ptr != ')' && **ptr != ' ') { ++*ptr; } end = *ptr; diff --git a/ext/date/lib/parse_tz.c b/ext/date/lib/parse_tz.c index 5aae8e036..1ec5def7c 100644 --- a/ext/date/lib/parse_tz.c +++ b/ext/date/lib/parse_tz.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: parse_tz.c,v 1.20.2.6.2.13 2007/09/04 18:46:21 tony2001 Exp $ */ +/* $Id: parse_tz.c,v 1.20.2.6.2.14 2007/12/31 07:20:05 sebastian Exp $ */ #include "timelib.h" diff --git a/ext/date/lib/timelib.c b/ext/date/lib/timelib.c index 3043ebdf2..1a5e3c632 100644 --- a/ext/date/lib/timelib.c +++ b/ext/date/lib/timelib.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: timelib.c,v 1.7.2.4.2.6 2007/07/20 23:53:40 jani Exp $ */ +/* $Id: timelib.c,v 1.7.2.4.2.7 2007/12/31 07:20:05 sebastian Exp $ */ #include "timelib.h" #include <ctype.h> diff --git a/ext/date/lib/timelib.h b/ext/date/lib/timelib.h index 40e32494f..04db962bb 100644 --- a/ext/date/lib/timelib.h +++ b/ext/date/lib/timelib.h @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,12 +16,15 @@ +----------------------------------------------------------------------+ */ -/* $Id: timelib.h,v 1.10.2.11.2.3 2007/07/20 23:53:40 jani Exp $ */ +/* $Id: timelib.h,v 1.10.2.11.2.5 2008/02/22 09:48:18 derick Exp $ */ #ifndef __TIMELIB_H__ #define __TIMELIB_H__ #include "timelib_structs.h" +#if HAVE_LIMITS_H +#include <limits.h> +#endif #define TIMELIB_NONE 0x00 #define TIMELIB_OVERRIDE_TIME 0x01 diff --git a/ext/date/lib/timelib_structs.h b/ext/date/lib/timelib_structs.h index 323c95a8a..57eb4aafd 100644 --- a/ext/date/lib/timelib_structs.h +++ b/ext/date/lib/timelib_structs.h @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: timelib_structs.h,v 1.13.2.6.2.3 2007/01/01 09:35:59 sebastian Exp $ */ +/* $Id: timelib_structs.h,v 1.13.2.6.2.4 2007/12/31 07:20:05 sebastian Exp $ */ #ifndef __TIMELIB_STRUCTS_H__ #define __TIMELIB_STRUCTS_H__ diff --git a/ext/date/lib/timezonedb.h b/ext/date/lib/timezonedb.h index cfab2c936..bbd1c570a 100644 --- a/ext/date/lib/timezonedb.h +++ b/ext/date/lib/timezonedb.h @@ -1,4 +1,4 @@ -const timelib_tzdb_index_entry timezonedb_idx_builtin[552] = { +const timelib_tzdb_index_entry timezonedb_idx_builtin[557] = { { "Africa/Abidjan" , 0x000000 }, { "Africa/Accra" , 0x000049 }, { "Africa/Addis_Ababa" , 0x0000E5 }, @@ -58,502 +58,507 @@ const timelib_tzdb_index_entry timezonedb_idx_builtin[552] = { { "America/Antigua" , 0x002535 }, { "America/Araguaina" , 0x00258F }, { "America/Argentina/Buenos_Aires" , 0x0026D5 }, - { "America/Argentina/Catamarca" , 0x00284E }, - { "America/Argentina/ComodRivadavia" , 0x0029DE }, - { "America/Argentina/Cordoba" , 0x002B6E }, - { "America/Argentina/Jujuy" , 0x002CF4 }, - { "America/Argentina/La_Rioja" , 0x002E88 }, - { "America/Argentina/Mendoza" , 0x00301D }, - { "America/Argentina/Rio_Gallegos" , 0x0031BB }, - { "America/Argentina/San_Juan" , 0x00334B }, - { "America/Argentina/Tucuman" , 0x0034E0 }, - { "America/Argentina/Ushuaia" , 0x003670 }, - { "America/Aruba" , 0x003800 }, - { "America/Asuncion" , 0x00385A }, - { "America/Atikokan" , 0x003B33 }, - { "America/Atka" , 0x003BB9 }, - { "America/Bahia" , 0x003F13 }, - { "America/Barbados" , 0x00408B }, - { "America/Belem" , 0x004119 }, - { "America/Belize" , 0x0041FB }, - { "America/Blanc-Sablon" , 0x00436B }, - { "America/Boa_Vista" , 0x0043E0 }, - { "America/Bogota" , 0x0044D6 }, - { "America/Boise" , 0x004536 }, - { "America/Buenos_Aires" , 0x004898 }, - { "America/Cambridge_Bay" , 0x004A11 }, - { "America/Campo_Grande" , 0x004D11 }, - { "America/Cancun" , 0x004FE2 }, - { "America/Caracas" , 0x0051FD }, - { "America/Catamarca" , 0x005258 }, - { "America/Cayenne" , 0x0053E8 }, - { "America/Cayman" , 0x00543E }, - { "America/Chicago" , 0x005487 }, - { "America/Chihuahua" , 0x005986 }, - { "America/Coral_Harbour" , 0x005BB0 }, - { "America/Cordoba" , 0x005C36 }, - { "America/Costa_Rica" , 0x005DBC }, - { "America/Cuiaba" , 0x005E3A }, - { "America/Curacao" , 0x006101 }, - { "America/Danmarkshavn" , 0x00615B }, - { "America/Dawson" , 0x006272 }, - { "America/Dawson_Creek" , 0x006569 }, - { "America/Denver" , 0x0066EE }, - { "America/Detroit" , 0x006A5B }, - { "America/Dominica" , 0x006D86 }, - { "America/Edmonton" , 0x006DCF }, - { "America/Eirunepe" , 0x007139 }, - { "America/El_Salvador" , 0x007225 }, - { "America/Ensenada" , 0x00728E }, - { "America/Fort_Wayne" , 0x0076FF }, - { "America/Fortaleza" , 0x0075EB }, - { "America/Glace_Bay" , 0x00795D }, - { "America/Godthab" , 0x007C81 }, - { "America/Goose_Bay" , 0x007F2B }, - { "America/Grand_Turk" , 0x0083B3 }, - { "America/Grenada" , 0x008656 }, - { "America/Guadeloupe" , 0x00869F }, - { "America/Guatemala" , 0x0086E8 }, - { "America/Guayaquil" , 0x008765 }, - { "America/Guyana" , 0x0087AE }, - { "America/Halifax" , 0x008823 }, - { "America/Havana" , 0x008CFF }, - { "America/Hermosillo" , 0x009066 }, - { "America/Indiana/Indianapolis" , 0x009119 }, - { "America/Indiana/Knox" , 0x009377 }, - { "America/Indiana/Marengo" , 0x0096DC }, - { "America/Indiana/Petersburg" , 0x00994E }, - { "America/Indiana/Tell_City" , 0x009E5F }, - { "America/Indiana/Vevay" , 0x00A0C7 }, - { "America/Indiana/Vincennes" , 0x00A2CB }, - { "America/Indiana/Winamac" , 0x00A533 }, - { "America/Indianapolis" , 0x009C01 }, - { "America/Inuvik" , 0x00A7B9 }, - { "America/Iqaluit" , 0x00AA7A }, - { "America/Jamaica" , 0x00AD64 }, - { "America/Jujuy" , 0x00AE1D }, - { "America/Juneau" , 0x00AFB1 }, - { "America/Kentucky/Louisville" , 0x00B305 }, - { "America/Kentucky/Monticello" , 0x00B6EE }, - { "America/Knox_IN" , 0x00BA41 }, - { "America/La_Paz" , 0x00BDA6 }, - { "America/Lima" , 0x00BE01 }, - { "America/Los_Angeles" , 0x00BE9D }, - { "America/Louisville" , 0x00C296 }, - { "America/Maceio" , 0x00C67F }, - { "America/Managua" , 0x00C79D }, - { "America/Manaus" , 0x00C844 }, - { "America/Martinique" , 0x00C930 }, - { "America/Mazatlan" , 0x00C990 }, - { "America/Mendoza" , 0x00CBC9 }, - { "America/Menominee" , 0x00CD67 }, - { "America/Merida" , 0x00D095 }, - { "America/Mexico_City" , 0x00D2A4 }, - { "America/Miquelon" , 0x00D4F6 }, - { "America/Moncton" , 0x00D75C }, - { "America/Monterrey" , 0x00DBCA }, - { "America/Montevideo" , 0x00DDCD }, - { "America/Montreal" , 0x00E0D3 }, - { "America/Montserrat" , 0x00E5B7 }, - { "America/Nassau" , 0x00E600 }, - { "America/New_York" , 0x00E939 }, - { "America/Nipigon" , 0x00EE2C }, - { "America/Nome" , 0x00F126 }, - { "America/Noronha" , 0x00F47F }, - { "America/North_Dakota/Center" , 0x00F593 }, - { "America/North_Dakota/New_Salem" , 0x00F8F0 }, - { "America/Panama" , 0x00FC4D }, - { "America/Pangnirtung" , 0x00FC96 }, - { "America/Paramaribo" , 0x00FF9D }, - { "America/Phoenix" , 0x010023 }, - { "America/Port-au-Prince" , 0x0100A5 }, - { "America/Port_of_Spain" , 0x010297 }, - { "America/Porto_Acre" , 0x0101B5 }, - { "America/Porto_Velho" , 0x0102E0 }, - { "America/Puerto_Rico" , 0x0103C2 }, - { "America/Rainy_River" , 0x010421 }, - { "America/Rankin_Inlet" , 0x01071B }, - { "America/Recife" , 0x0109D7 }, - { "America/Regina" , 0x010AEB }, - { "America/Resolute" , 0x010C68 }, - { "America/Rio_Branco" , 0x010DEE }, - { "America/Rosario" , 0x010ED0 }, - { "America/Santiago" , 0x011056 }, - { "America/Santo_Domingo" , 0x0113E5 }, - { "America/Sao_Paulo" , 0x01149F }, - { "America/Scoresbysund" , 0x011770 }, - { "America/Shiprock" , 0x011A33 }, - { "America/St_Johns" , 0x011DA0 }, - { "America/St_Kitts" , 0x0122BF }, - { "America/St_Lucia" , 0x012308 }, - { "America/St_Thomas" , 0x012351 }, - { "America/St_Vincent" , 0x01239A }, - { "America/Swift_Current" , 0x0123E3 }, - { "America/Tegucigalpa" , 0x0124CA }, - { "America/Thule" , 0x01253D }, - { "America/Thunder_Bay" , 0x012768 }, - { "America/Tijuana" , 0x012A82 }, - { "America/Toronto" , 0x012DDF }, - { "America/Tortola" , 0x0132C3 }, - { "America/Vancouver" , 0x01330C }, - { "America/Virgin" , 0x013719 }, - { "America/Whitehorse" , 0x013762 }, - { "America/Winnipeg" , 0x013A59 }, - { "America/Yakutat" , 0x013E67 }, - { "America/Yellowknife" , 0x0141A3 }, - { "Antarctica/Casey" , 0x01447A }, - { "Antarctica/Davis" , 0x0144C3 }, - { "Antarctica/DumontDUrville" , 0x014517 }, - { "Antarctica/Mawson" , 0x014577 }, - { "Antarctica/McMurdo" , 0x0145C1 }, - { "Antarctica/Palmer" , 0x01489B }, - { "Antarctica/Rothera" , 0x014B8E }, - { "Antarctica/South_Pole" , 0x014BD8 }, - { "Antarctica/Syowa" , 0x014EB2 }, - { "Antarctica/Vostok" , 0x014EFC }, - { "Arctic/Longyearbyen" , 0x014F46 }, - { "Asia/Aden" , 0x01526C }, - { "Asia/Almaty" , 0x0152B5 }, - { "Asia/Amman" , 0x01541A }, - { "Asia/Anadyr" , 0x0156CE }, - { "Asia/Aqtau" , 0x01599A }, - { "Asia/Aqtobe" , 0x015B5C }, - { "Asia/Ashgabat" , 0x015CF9 }, - { "Asia/Ashkhabad" , 0x015E0A }, - { "Asia/Baghdad" , 0x015F1B }, - { "Asia/Bahrain" , 0x0161B0 }, - { "Asia/Baku" , 0x01620A }, - { "Asia/Bangkok" , 0x0164E6 }, - { "Asia/Beirut" , 0x01652F }, - { "Asia/Bishkek" , 0x016830 }, - { "Asia/Brunei" , 0x0169D0 }, - { "Asia/Calcutta" , 0x016A26 }, - { "Asia/Choibalsan" , 0x016A93 }, - { "Asia/Chongqing" , 0x016BE1 }, - { "Asia/Chungking" , 0x016C84 }, - { "Asia/Colombo" , 0x016D27 }, - { "Asia/Dacca" , 0x016DB7 }, - { "Asia/Damascus" , 0x016E3A }, - { "Asia/Dhaka" , 0x01717E }, - { "Asia/Dili" , 0x017201 }, - { "Asia/Dubai" , 0x01727E }, - { "Asia/Dushanbe" , 0x0172C7 }, - { "Asia/Gaza" , 0x0173BE }, - { "Asia/Harbin" , 0x0176FB }, - { "Asia/Hong_Kong" , 0x0177B5 }, - { "Asia/Hovd" , 0x01795F }, - { "Asia/Irkutsk" , 0x017AA0 }, - { "Asia/Istanbul" , 0x017D64 }, - { "Asia/Jakarta" , 0x018145 }, - { "Asia/Jayapura" , 0x0181D5 }, - { "Asia/Jerusalem" , 0x018234 }, - { "Asia/Kabul" , 0x018557 }, - { "Asia/Kamchatka" , 0x01859C }, - { "Asia/Karachi" , 0x018860 }, - { "Asia/Kashgar" , 0x0188F5 }, - { "Asia/Katmandu" , 0x0189A5 }, - { "Asia/Krasnoyarsk" , 0x0189FF }, - { "Asia/Kuala_Lumpur" , 0x018CC3 }, - { "Asia/Kuching" , 0x018D61 }, - { "Asia/Kuwait" , 0x018E34 }, - { "Asia/Macao" , 0x018E7D }, - { "Asia/Macau" , 0x018FAC }, - { "Asia/Magadan" , 0x0190DB }, - { "Asia/Makassar" , 0x01939F }, - { "Asia/Manila" , 0x01940F }, - { "Asia/Muscat" , 0x019488 }, - { "Asia/Nicosia" , 0x0194D1 }, - { "Asia/Novosibirsk" , 0x0197AD }, - { "Asia/Omsk" , 0x019A7E }, - { "Asia/Oral" , 0x019D42 }, - { "Asia/Phnom_Penh" , 0x019EF7 }, - { "Asia/Pontianak" , 0x019F63 }, - { "Asia/Pyongyang" , 0x01A003 }, - { "Asia/Qatar" , 0x01A064 }, - { "Asia/Qyzylorda" , 0x01A0BE }, - { "Asia/Rangoon" , 0x01A268 }, - { "Asia/Riyadh" , 0x01A2D4 }, - { "Asia/Saigon" , 0x01A31D }, - { "Asia/Sakhalin" , 0x01A389 }, - { "Asia/Samarkand" , 0x01A662 }, - { "Asia/Seoul" , 0x01A77D }, - { "Asia/Shanghai" , 0x01A815 }, - { "Asia/Singapore" , 0x01A8BA }, - { "Asia/Taipei" , 0x01A965 }, - { "Asia/Tashkent" , 0x01AA71 }, - { "Asia/Tbilisi" , 0x01AB87 }, - { "Asia/Tehran" , 0x01AD35 }, - { "Asia/Tel_Aviv" , 0x01AF97 }, - { "Asia/Thimbu" , 0x01B2BA }, - { "Asia/Thimphu" , 0x01B314 }, - { "Asia/Tokyo" , 0x01B36E }, - { "Asia/Ujung_Pandang" , 0x01B3EB }, - { "Asia/Ulaanbaatar" , 0x01B45B }, - { "Asia/Ulan_Bator" , 0x01B59C }, - { "Asia/Urumqi" , 0x01B6DD }, - { "Asia/Vientiane" , 0x01B780 }, - { "Asia/Vladivostok" , 0x01B7EC }, - { "Asia/Yakutsk" , 0x01BAB7 }, - { "Asia/Yekaterinburg" , 0x01BD7B }, - { "Asia/Yerevan" , 0x01C06A }, - { "Atlantic/Azores" , 0x01C362 }, - { "Atlantic/Bermuda" , 0x01C853 }, - { "Atlantic/Canary" , 0x01CB28 }, - { "Atlantic/Cape_Verde" , 0x01CDE4 }, - { "Atlantic/Faeroe" , 0x01CE51 }, - { "Atlantic/Faroe" , 0x01D0E9 }, - { "Atlantic/Jan_Mayen" , 0x01D381 }, - { "Atlantic/Madeira" , 0x01D6A7 }, - { "Atlantic/Reykjavik" , 0x01DB95 }, - { "Atlantic/South_Georgia" , 0x01DD42 }, - { "Atlantic/St_Helena" , 0x01E042 }, - { "Atlantic/Stanley" , 0x01DD7A }, - { "Australia/ACT" , 0x01E08B }, - { "Australia/Adelaide" , 0x01E39C }, - { "Australia/Brisbane" , 0x01E6AD }, - { "Australia/Broken_Hill" , 0x01E74D }, - { "Australia/Canberra" , 0x01EA63 }, - { "Australia/Currie" , 0x01ED74 }, - { "Australia/Darwin" , 0x01F085 }, - { "Australia/Eucla" , 0x01F0ED }, - { "Australia/Hobart" , 0x01F198 }, - { "Australia/LHI" , 0x01F4D1 }, - { "Australia/Lindeman" , 0x01F760 }, - { "Australia/Lord_Howe" , 0x01F819 }, - { "Australia/Melbourne" , 0x01FAA8 }, - { "Australia/North" , 0x01FDB9 }, - { "Australia/NSW" , 0x01FE21 }, - { "Australia/Perth" , 0x020132 }, - { "Australia/Queensland" , 0x0201DC }, - { "Australia/South" , 0x02027C }, - { "Australia/Sydney" , 0x02058D }, - { "Australia/Tasmania" , 0x02089E }, - { "Australia/Victoria" , 0x020BD7 }, - { "Australia/West" , 0x020EE8 }, - { "Australia/Yancowinna" , 0x020F92 }, - { "Brazil/Acre" , 0x0212A8 }, - { "Brazil/DeNoronha" , 0x02138A }, - { "Brazil/East" , 0x02149E }, - { "Brazil/West" , 0x02176F }, - { "Canada/Atlantic" , 0x02185B }, - { "Canada/Central" , 0x021D37 }, - { "Canada/East-Saskatchewan" , 0x022629 }, - { "Canada/Eastern" , 0x022145 }, - { "Canada/Mountain" , 0x0227A6 }, - { "Canada/Newfoundland" , 0x022B10 }, - { "Canada/Pacific" , 0x02302F }, - { "Canada/Saskatchewan" , 0x02343C }, - { "Canada/Yukon" , 0x0235B9 }, - { "CET" , 0x0238B0 }, - { "Chile/Continental" , 0x023BA3 }, - { "Chile/EasterIsland" , 0x023F32 }, - { "CST6CDT" , 0x024268 }, - { "Cuba" , 0x0245AD }, - { "EET" , 0x024914 }, - { "Egypt" , 0x024BBB }, - { "Eire" , 0x024F76 }, - { "EST" , 0x02547B }, - { "EST5EDT" , 0x0254B3 }, - { "Etc/GMT" , 0x0257F8 }, - { "Etc/GMT+0" , 0x0258A0 }, - { "Etc/GMT+1" , 0x025912 }, - { "Etc/GMT+10" , 0x025987 }, - { "Etc/GMT+11" , 0x0259FD }, - { "Etc/GMT+12" , 0x025A73 }, - { "Etc/GMT+2" , 0x025B5E }, - { "Etc/GMT+3" , 0x025BD2 }, - { "Etc/GMT+4" , 0x025C46 }, - { "Etc/GMT+5" , 0x025CBA }, - { "Etc/GMT+6" , 0x025D2E }, - { "Etc/GMT+7" , 0x025DA2 }, - { "Etc/GMT+8" , 0x025E16 }, - { "Etc/GMT+9" , 0x025E8A }, - { "Etc/GMT-0" , 0x025868 }, - { "Etc/GMT-1" , 0x0258D8 }, - { "Etc/GMT-10" , 0x02594C }, - { "Etc/GMT-11" , 0x0259C2 }, - { "Etc/GMT-12" , 0x025A38 }, - { "Etc/GMT-13" , 0x025AAE }, - { "Etc/GMT-14" , 0x025AE9 }, - { "Etc/GMT-2" , 0x025B24 }, - { "Etc/GMT-3" , 0x025B98 }, - { "Etc/GMT-4" , 0x025C0C }, - { "Etc/GMT-5" , 0x025C80 }, - { "Etc/GMT-6" , 0x025CF4 }, - { "Etc/GMT-7" , 0x025D68 }, - { "Etc/GMT-8" , 0x025DDC }, - { "Etc/GMT-9" , 0x025E50 }, - { "Etc/GMT0" , 0x025830 }, - { "Etc/Greenwich" , 0x025EC4 }, - { "Etc/UCT" , 0x025EFC }, - { "Etc/Universal" , 0x025F34 }, - { "Etc/UTC" , 0x025F6C }, - { "Etc/Zulu" , 0x025FA4 }, - { "Europe/Amsterdam" , 0x025FDC }, - { "Europe/Andorra" , 0x02640E }, - { "Europe/Athens" , 0x02667E }, - { "Europe/Belfast" , 0x0269B5 }, - { "Europe/Belgrade" , 0x026EE0 }, - { "Europe/Berlin" , 0x027198 }, - { "Europe/Bratislava" , 0x0274DD }, - { "Europe/Brussels" , 0x027803 }, - { "Europe/Bucharest" , 0x027C2E }, - { "Europe/Budapest" , 0x027F4C }, - { "Europe/Chisinau" , 0x0282AE }, - { "Europe/Copenhagen" , 0x028630 }, - { "Europe/Dublin" , 0x02892E }, - { "Europe/Gibraltar" , 0x028E33 }, - { "Europe/Guernsey" , 0x02927E }, - { "Europe/Helsinki" , 0x0297A9 }, - { "Europe/Isle_of_Man" , 0x029A53 }, - { "Europe/Istanbul" , 0x029F7E }, - { "Europe/Jersey" , 0x02A35F }, - { "Europe/Kaliningrad" , 0x02A88A }, - { "Europe/Kiev" , 0x02ABCA }, - { "Europe/Lisbon" , 0x02AEC7 }, - { "Europe/Ljubljana" , 0x02B3B7 }, - { "Europe/London" , 0x02B66F }, - { "Europe/Luxembourg" , 0x02BB9A }, - { "Europe/Madrid" , 0x02BFE4 }, - { "Europe/Malta" , 0x02C396 }, - { "Europe/Mariehamn" , 0x02C743 }, - { "Europe/Minsk" , 0x02C9ED }, - { "Europe/Monaco" , 0x02CCEC }, - { "Europe/Moscow" , 0x02D11B }, - { "Europe/Nicosia" , 0x02D44A }, - { "Europe/Oslo" , 0x02D726 }, - { "Europe/Paris" , 0x02DA4C }, - { "Europe/Podgorica" , 0x02DE86 }, - { "Europe/Prague" , 0x02E13E }, - { "Europe/Riga" , 0x02E464 }, - { "Europe/Rome" , 0x02E79D }, - { "Europe/Samara" , 0x02EB54 }, - { "Europe/San_Marino" , 0x02EE58 }, - { "Europe/Sarajevo" , 0x02F20F }, - { "Europe/Simferopol" , 0x02F4C7 }, - { "Europe/Skopje" , 0x02F7D8 }, - { "Europe/Sofia" , 0x02FA90 }, - { "Europe/Stockholm" , 0x02FD7F }, - { "Europe/Tallinn" , 0x030022 }, - { "Europe/Tirane" , 0x030350 }, - { "Europe/Tiraspol" , 0x03064A }, - { "Europe/Uzhgorod" , 0x0309CC }, - { "Europe/Vaduz" , 0x030CCF }, - { "Europe/Vatican" , 0x030F56 }, - { "Europe/Vienna" , 0x03130D }, - { "Europe/Vilnius" , 0x03162E }, - { "Europe/Volgograd" , 0x031961 }, - { "Europe/Warsaw" , 0x031C47 }, - { "Europe/Zagreb" , 0x03201C }, - { "Europe/Zaporozhye" , 0x0322D4 }, - { "Europe/Zurich" , 0x0325DB }, - { "Factory" , 0x032888 }, - { "GB" , 0x0328ED }, - { "GB-Eire" , 0x032E18 }, - { "GMT" , 0x033343 }, - { "GMT+0" , 0x0333EB }, - { "GMT-0" , 0x0333B3 }, - { "GMT0" , 0x03337B }, - { "Greenwich" , 0x033423 }, - { "Hongkong" , 0x03345B }, - { "HST" , 0x033605 }, - { "Iceland" , 0x03363D }, - { "Indian/Antananarivo" , 0x0337EA }, - { "Indian/Chagos" , 0x033852 }, - { "Indian/Christmas" , 0x0338A8 }, - { "Indian/Cocos" , 0x0338E0 }, - { "Indian/Comoro" , 0x033918 }, - { "Indian/Kerguelen" , 0x033961 }, - { "Indian/Mahe" , 0x0339AA }, - { "Indian/Maldives" , 0x0339F3 }, - { "Indian/Mauritius" , 0x033A3C }, - { "Indian/Mayotte" , 0x033A85 }, - { "Indian/Reunion" , 0x033ACE }, - { "Iran" , 0x033B17 }, - { "Israel" , 0x033D79 }, - { "Jamaica" , 0x03409C }, - { "Japan" , 0x034155 }, - { "Kwajalein" , 0x0341D2 }, - { "Libya" , 0x034229 }, - { "MET" , 0x034317 }, - { "Mexico/BajaNorte" , 0x03460A }, - { "Mexico/BajaSur" , 0x034967 }, - { "Mexico/General" , 0x034BA0 }, - { "MST" , 0x034DF2 }, - { "MST7MDT" , 0x034E2A }, - { "Navajo" , 0x03516F }, - { "NZ" , 0x0354DC }, - { "NZ-CHAT" , 0x03584E }, - { "Pacific/Apia" , 0x035B2A }, - { "Pacific/Auckland" , 0x035B85 }, - { "Pacific/Chatham" , 0x035EF7 }, - { "Pacific/Easter" , 0x0361D3 }, - { "Pacific/Efate" , 0x036509 }, - { "Pacific/Enderbury" , 0x0365C3 }, - { "Pacific/Fakaofo" , 0x036616 }, - { "Pacific/Fiji" , 0x03664E }, - { "Pacific/Funafuti" , 0x0366B8 }, - { "Pacific/Galapagos" , 0x0366F0 }, - { "Pacific/Gambier" , 0x03674B }, - { "Pacific/Guadalcanal" , 0x036795 }, - { "Pacific/Guam" , 0x0367DE }, - { "Pacific/Honolulu" , 0x036828 }, - { "Pacific/Johnston" , 0x0368AA }, - { "Pacific/Kiritimati" , 0x0368E2 }, - { "Pacific/Kosrae" , 0x036935 }, - { "Pacific/Kwajalein" , 0x036980 }, - { "Pacific/Majuro" , 0x0369D7 }, - { "Pacific/Marquesas" , 0x036A1C }, - { "Pacific/Midway" , 0x036A66 }, - { "Pacific/Nauru" , 0x036AD6 }, - { "Pacific/Niue" , 0x036B42 }, - { "Pacific/Norfolk" , 0x036B94 }, - { "Pacific/Noumea" , 0x036BDD }, - { "Pacific/Pago_Pago" , 0x036C61 }, - { "Pacific/Palau" , 0x036CDE }, - { "Pacific/Pitcairn" , 0x036D16 }, - { "Pacific/Ponape" , 0x036D5F }, - { "Pacific/Port_Moresby" , 0x036D98 }, - { "Pacific/Rarotonga" , 0x036DD0 }, - { "Pacific/Saipan" , 0x036EA0 }, - { "Pacific/Samoa" , 0x036EF7 }, - { "Pacific/Tahiti" , 0x036F74 }, - { "Pacific/Tarawa" , 0x036FBE }, - { "Pacific/Tongatapu" , 0x036FF7 }, - { "Pacific/Truk" , 0x037077 }, - { "Pacific/Wake" , 0x0370B0 }, - { "Pacific/Wallis" , 0x0370E9 }, - { "Pacific/Yap" , 0x037121 }, - { "Poland" , 0x03715A }, - { "Portugal" , 0x03752F }, - { "PRC" , 0x037A1F }, - { "PST8PDT" , 0x037AC4 }, - { "ROC" , 0x037E09 }, - { "ROK" , 0x037F15 }, - { "Singapore" , 0x037FAD }, - { "Turkey" , 0x038058 }, - { "UCT" , 0x038439 }, - { "Universal" , 0x038471 }, - { "US/Alaska" , 0x0384A9 }, - { "US/Aleutian" , 0x038806 }, - { "US/Arizona" , 0x038B60 }, - { "US/Central" , 0x038BE2 }, - { "US/East-Indiana" , 0x0395D4 }, - { "US/Eastern" , 0x0390E1 }, - { "US/Hawaii" , 0x039832 }, - { "US/Indiana-Starke" , 0x0398B4 }, - { "US/Michigan" , 0x039C19 }, - { "US/Mountain" , 0x039F44 }, - { "US/Pacific" , 0x03A2B1 }, - { "US/Pacific-New" , 0x03A6AA }, - { "US/Samoa" , 0x03AAA3 }, - { "UTC" , 0x03AB20 }, - { "W-SU" , 0x03ADFF }, - { "WET" , 0x03AB58 }, - { "Zulu" , 0x03B12E }, + { "America/Argentina/Catamarca" , 0x00297F }, + { "America/Argentina/ComodRivadavia" , 0x002C40 }, + { "America/Argentina/Cordoba" , 0x002F01 }, + { "America/Argentina/Jujuy" , 0x0031B8 }, + { "America/Argentina/La_Rioja" , 0x00347D }, + { "America/Argentina/Mendoza" , 0x003743 }, + { "America/Argentina/Rio_Gallegos" , 0x003A12 }, + { "America/Argentina/San_Juan" , 0x003CD3 }, + { "America/Argentina/San_Luis" , 0x003F99 }, + { "America/Argentina/Tucuman" , 0x004138 }, + { "America/Argentina/Ushuaia" , 0x0043F9 }, + { "America/Aruba" , 0x0046BA }, + { "America/Asuncion" , 0x004714 }, + { "America/Atikokan" , 0x0049ED }, + { "America/Atka" , 0x004A73 }, + { "America/Bahia" , 0x004DCD }, + { "America/Barbados" , 0x004F45 }, + { "America/Belem" , 0x004FD3 }, + { "America/Belize" , 0x0050B5 }, + { "America/Blanc-Sablon" , 0x005225 }, + { "America/Boa_Vista" , 0x00529A }, + { "America/Bogota" , 0x005390 }, + { "America/Boise" , 0x0053F0 }, + { "America/Buenos_Aires" , 0x005752 }, + { "America/Cambridge_Bay" , 0x0059FC }, + { "America/Campo_Grande" , 0x005CFC }, + { "America/Cancun" , 0x005FCD }, + { "America/Caracas" , 0x0061E8 }, + { "America/Catamarca" , 0x006243 }, + { "America/Cayenne" , 0x006504 }, + { "America/Cayman" , 0x00655A }, + { "America/Chicago" , 0x0065A3 }, + { "America/Chihuahua" , 0x006AA2 }, + { "America/Coral_Harbour" , 0x006CCC }, + { "America/Cordoba" , 0x006D52 }, + { "America/Costa_Rica" , 0x007009 }, + { "America/Cuiaba" , 0x007087 }, + { "America/Curacao" , 0x00734E }, + { "America/Danmarkshavn" , 0x0073A8 }, + { "America/Dawson" , 0x0074BF }, + { "America/Dawson_Creek" , 0x0077B6 }, + { "America/Denver" , 0x00793B }, + { "America/Detroit" , 0x007CA8 }, + { "America/Dominica" , 0x007FD3 }, + { "America/Edmonton" , 0x00801C }, + { "America/Eirunepe" , 0x008386 }, + { "America/El_Salvador" , 0x008472 }, + { "America/Ensenada" , 0x0084DB }, + { "America/Fort_Wayne" , 0x00894C }, + { "America/Fortaleza" , 0x008838 }, + { "America/Glace_Bay" , 0x008BAA }, + { "America/Godthab" , 0x008ECE }, + { "America/Goose_Bay" , 0x009178 }, + { "America/Grand_Turk" , 0x009600 }, + { "America/Grenada" , 0x0098A3 }, + { "America/Guadeloupe" , 0x0098EC }, + { "America/Guatemala" , 0x009935 }, + { "America/Guayaquil" , 0x0099B2 }, + { "America/Guyana" , 0x0099FB }, + { "America/Halifax" , 0x009A70 }, + { "America/Havana" , 0x009F4C }, + { "America/Hermosillo" , 0x00A2B3 }, + { "America/Indiana/Indianapolis" , 0x00A366 }, + { "America/Indiana/Knox" , 0x00A5C4 }, + { "America/Indiana/Marengo" , 0x00A929 }, + { "America/Indiana/Petersburg" , 0x00AB9B }, + { "America/Indiana/Tell_City" , 0x00B0AC }, + { "America/Indiana/Vevay" , 0x00B314 }, + { "America/Indiana/Vincennes" , 0x00B518 }, + { "America/Indiana/Winamac" , 0x00B780 }, + { "America/Indianapolis" , 0x00AE4E }, + { "America/Inuvik" , 0x00BA06 }, + { "America/Iqaluit" , 0x00BCC7 }, + { "America/Jamaica" , 0x00BFB1 }, + { "America/Jujuy" , 0x00C06A }, + { "America/Juneau" , 0x00C32F }, + { "America/Kentucky/Louisville" , 0x00C683 }, + { "America/Kentucky/Monticello" , 0x00CA6C }, + { "America/Knox_IN" , 0x00CDBF }, + { "America/La_Paz" , 0x00D124 }, + { "America/Lima" , 0x00D17F }, + { "America/Los_Angeles" , 0x00D21B }, + { "America/Louisville" , 0x00D614 }, + { "America/Maceio" , 0x00D9FD }, + { "America/Managua" , 0x00DB1B }, + { "America/Manaus" , 0x00DBC2 }, + { "America/Marigot" , 0x00DCAE }, + { "America/Martinique" , 0x00DCF7 }, + { "America/Mazatlan" , 0x00DD57 }, + { "America/Mendoza" , 0x00DF90 }, + { "America/Menominee" , 0x00E25F }, + { "America/Merida" , 0x00E58D }, + { "America/Mexico_City" , 0x00E79C }, + { "America/Miquelon" , 0x00E9EE }, + { "America/Moncton" , 0x00EC54 }, + { "America/Monterrey" , 0x00F0C2 }, + { "America/Montevideo" , 0x00F2C5 }, + { "America/Montreal" , 0x00F5CB }, + { "America/Montserrat" , 0x00FAAF }, + { "America/Nassau" , 0x00FAF8 }, + { "America/New_York" , 0x00FE31 }, + { "America/Nipigon" , 0x010324 }, + { "America/Nome" , 0x01061E }, + { "America/Noronha" , 0x010977 }, + { "America/North_Dakota/Center" , 0x010A8B }, + { "America/North_Dakota/New_Salem" , 0x010DE8 }, + { "America/Panama" , 0x011145 }, + { "America/Pangnirtung" , 0x01118E }, + { "America/Paramaribo" , 0x011495 }, + { "America/Phoenix" , 0x01151B }, + { "America/Port-au-Prince" , 0x01159D }, + { "America/Port_of_Spain" , 0x01178F }, + { "America/Porto_Acre" , 0x0116AD }, + { "America/Porto_Velho" , 0x0117D8 }, + { "America/Puerto_Rico" , 0x0118BA }, + { "America/Rainy_River" , 0x011919 }, + { "America/Rankin_Inlet" , 0x011C13 }, + { "America/Recife" , 0x011ECF }, + { "America/Regina" , 0x011FE3 }, + { "America/Resolute" , 0x012160 }, + { "America/Rio_Branco" , 0x0122E6 }, + { "America/Rosario" , 0x0123C8 }, + { "America/Santiago" , 0x01267F }, + { "America/Santo_Domingo" , 0x012A0E }, + { "America/Sao_Paulo" , 0x012AC8 }, + { "America/Scoresbysund" , 0x012D99 }, + { "America/Shiprock" , 0x01305C }, + { "America/St_Barthelemy" , 0x0133C9 }, + { "America/St_Johns" , 0x013412 }, + { "America/St_Kitts" , 0x013931 }, + { "America/St_Lucia" , 0x01397A }, + { "America/St_Thomas" , 0x0139C3 }, + { "America/St_Vincent" , 0x013A0C }, + { "America/Swift_Current" , 0x013A55 }, + { "America/Tegucigalpa" , 0x013B3C }, + { "America/Thule" , 0x013BAF }, + { "America/Thunder_Bay" , 0x013DDA }, + { "America/Tijuana" , 0x0140F4 }, + { "America/Toronto" , 0x014451 }, + { "America/Tortola" , 0x014935 }, + { "America/Vancouver" , 0x01497E }, + { "America/Virgin" , 0x014D8B }, + { "America/Whitehorse" , 0x014DD4 }, + { "America/Winnipeg" , 0x0150CB }, + { "America/Yakutat" , 0x0154D9 }, + { "America/Yellowknife" , 0x015815 }, + { "Antarctica/Casey" , 0x015AEC }, + { "Antarctica/Davis" , 0x015B35 }, + { "Antarctica/DumontDUrville" , 0x015B89 }, + { "Antarctica/Mawson" , 0x015BE9 }, + { "Antarctica/McMurdo" , 0x015C33 }, + { "Antarctica/Palmer" , 0x015F0D }, + { "Antarctica/Rothera" , 0x016200 }, + { "Antarctica/South_Pole" , 0x01624A }, + { "Antarctica/Syowa" , 0x016524 }, + { "Antarctica/Vostok" , 0x01656E }, + { "Arctic/Longyearbyen" , 0x0165B8 }, + { "Asia/Aden" , 0x0168DE }, + { "Asia/Almaty" , 0x016927 }, + { "Asia/Amman" , 0x016A8C }, + { "Asia/Anadyr" , 0x016D40 }, + { "Asia/Aqtau" , 0x01700C }, + { "Asia/Aqtobe" , 0x0171CE }, + { "Asia/Ashgabat" , 0x01736B }, + { "Asia/Ashkhabad" , 0x01747C }, + { "Asia/Baghdad" , 0x01758D }, + { "Asia/Bahrain" , 0x0176F6 }, + { "Asia/Baku" , 0x017750 }, + { "Asia/Bangkok" , 0x017A2C }, + { "Asia/Beirut" , 0x017A75 }, + { "Asia/Bishkek" , 0x017D76 }, + { "Asia/Brunei" , 0x017F16 }, + { "Asia/Calcutta" , 0x017F6C }, + { "Asia/Choibalsan" , 0x017FD9 }, + { "Asia/Chongqing" , 0x018127 }, + { "Asia/Chungking" , 0x0181CA }, + { "Asia/Colombo" , 0x01826D }, + { "Asia/Dacca" , 0x0182FD }, + { "Asia/Damascus" , 0x018380 }, + { "Asia/Dhaka" , 0x0186C4 }, + { "Asia/Dili" , 0x018747 }, + { "Asia/Dubai" , 0x0187C4 }, + { "Asia/Dushanbe" , 0x01880D }, + { "Asia/Gaza" , 0x018904 }, + { "Asia/Harbin" , 0x018C41 }, + { "Asia/Ho_Chi_Minh" , 0x018CFB }, + { "Asia/Hong_Kong" , 0x018D67 }, + { "Asia/Hovd" , 0x018F11 }, + { "Asia/Irkutsk" , 0x019052 }, + { "Asia/Istanbul" , 0x019316 }, + { "Asia/Jakarta" , 0x0196F7 }, + { "Asia/Jayapura" , 0x019787 }, + { "Asia/Jerusalem" , 0x0197E6 }, + { "Asia/Kabul" , 0x019B09 }, + { "Asia/Kamchatka" , 0x019B4E }, + { "Asia/Karachi" , 0x019E12 }, + { "Asia/Kashgar" , 0x019EA7 }, + { "Asia/Katmandu" , 0x019F57 }, + { "Asia/Kolkata" , 0x019FB1 }, + { "Asia/Krasnoyarsk" , 0x01A01E }, + { "Asia/Kuala_Lumpur" , 0x01A2E2 }, + { "Asia/Kuching" , 0x01A380 }, + { "Asia/Kuwait" , 0x01A453 }, + { "Asia/Macao" , 0x01A49C }, + { "Asia/Macau" , 0x01A5CB }, + { "Asia/Magadan" , 0x01A6FA }, + { "Asia/Makassar" , 0x01A9BE }, + { "Asia/Manila" , 0x01AA2E }, + { "Asia/Muscat" , 0x01AAA7 }, + { "Asia/Nicosia" , 0x01AAF0 }, + { "Asia/Novosibirsk" , 0x01ADCC }, + { "Asia/Omsk" , 0x01B09D }, + { "Asia/Oral" , 0x01B361 }, + { "Asia/Phnom_Penh" , 0x01B516 }, + { "Asia/Pontianak" , 0x01B582 }, + { "Asia/Pyongyang" , 0x01B622 }, + { "Asia/Qatar" , 0x01B683 }, + { "Asia/Qyzylorda" , 0x01B6DD }, + { "Asia/Rangoon" , 0x01B887 }, + { "Asia/Riyadh" , 0x01B8F3 }, + { "Asia/Saigon" , 0x01B93C }, + { "Asia/Sakhalin" , 0x01B9A8 }, + { "Asia/Samarkand" , 0x01BC81 }, + { "Asia/Seoul" , 0x01BD9C }, + { "Asia/Shanghai" , 0x01BE34 }, + { "Asia/Singapore" , 0x01BED9 }, + { "Asia/Taipei" , 0x01BF84 }, + { "Asia/Tashkent" , 0x01C090 }, + { "Asia/Tbilisi" , 0x01C1A6 }, + { "Asia/Tehran" , 0x01C354 }, + { "Asia/Tel_Aviv" , 0x01C5B6 }, + { "Asia/Thimbu" , 0x01C8D9 }, + { "Asia/Thimphu" , 0x01C933 }, + { "Asia/Tokyo" , 0x01C98D }, + { "Asia/Ujung_Pandang" , 0x01CA0A }, + { "Asia/Ulaanbaatar" , 0x01CA7A }, + { "Asia/Ulan_Bator" , 0x01CBBB }, + { "Asia/Urumqi" , 0x01CCFC }, + { "Asia/Vientiane" , 0x01CD9F }, + { "Asia/Vladivostok" , 0x01CE0B }, + { "Asia/Yakutsk" , 0x01D0D6 }, + { "Asia/Yekaterinburg" , 0x01D39A }, + { "Asia/Yerevan" , 0x01D689 }, + { "Atlantic/Azores" , 0x01D981 }, + { "Atlantic/Bermuda" , 0x01DE72 }, + { "Atlantic/Canary" , 0x01E147 }, + { "Atlantic/Cape_Verde" , 0x01E403 }, + { "Atlantic/Faeroe" , 0x01E470 }, + { "Atlantic/Faroe" , 0x01E708 }, + { "Atlantic/Jan_Mayen" , 0x01E9A0 }, + { "Atlantic/Madeira" , 0x01ECC6 }, + { "Atlantic/Reykjavik" , 0x01F1B4 }, + { "Atlantic/South_Georgia" , 0x01F361 }, + { "Atlantic/St_Helena" , 0x01F661 }, + { "Atlantic/Stanley" , 0x01F399 }, + { "Australia/ACT" , 0x01F6AA }, + { "Australia/Adelaide" , 0x01F9BB }, + { "Australia/Brisbane" , 0x01FCCC }, + { "Australia/Broken_Hill" , 0x01FD6C }, + { "Australia/Canberra" , 0x020082 }, + { "Australia/Currie" , 0x020393 }, + { "Australia/Darwin" , 0x0206A4 }, + { "Australia/Eucla" , 0x02070C }, + { "Australia/Hobart" , 0x0207B7 }, + { "Australia/LHI" , 0x020AF0 }, + { "Australia/Lindeman" , 0x020D7F }, + { "Australia/Lord_Howe" , 0x020E38 }, + { "Australia/Melbourne" , 0x0210C7 }, + { "Australia/North" , 0x0213D8 }, + { "Australia/NSW" , 0x021440 }, + { "Australia/Perth" , 0x021751 }, + { "Australia/Queensland" , 0x0217FB }, + { "Australia/South" , 0x02189B }, + { "Australia/Sydney" , 0x021BAC }, + { "Australia/Tasmania" , 0x021EBD }, + { "Australia/Victoria" , 0x0221F6 }, + { "Australia/West" , 0x022507 }, + { "Australia/Yancowinna" , 0x0225B1 }, + { "Brazil/Acre" , 0x0228C7 }, + { "Brazil/DeNoronha" , 0x0229A9 }, + { "Brazil/East" , 0x022ABD }, + { "Brazil/West" , 0x022D8E }, + { "Canada/Atlantic" , 0x022E7A }, + { "Canada/Central" , 0x023356 }, + { "Canada/East-Saskatchewan" , 0x023C48 }, + { "Canada/Eastern" , 0x023764 }, + { "Canada/Mountain" , 0x023DC5 }, + { "Canada/Newfoundland" , 0x02412F }, + { "Canada/Pacific" , 0x02464E }, + { "Canada/Saskatchewan" , 0x024A5B }, + { "Canada/Yukon" , 0x024BD8 }, + { "CET" , 0x024ECF }, + { "Chile/Continental" , 0x0251C2 }, + { "Chile/EasterIsland" , 0x025551 }, + { "CST6CDT" , 0x025887 }, + { "Cuba" , 0x025BCC }, + { "EET" , 0x025F33 }, + { "Egypt" , 0x0261DA }, + { "Eire" , 0x026595 }, + { "EST" , 0x026A9A }, + { "EST5EDT" , 0x026AD2 }, + { "Etc/GMT" , 0x026E17 }, + { "Etc/GMT+0" , 0x026EBF }, + { "Etc/GMT+1" , 0x026F31 }, + { "Etc/GMT+10" , 0x026FA6 }, + { "Etc/GMT+11" , 0x02701C }, + { "Etc/GMT+12" , 0x027092 }, + { "Etc/GMT+2" , 0x02717D }, + { "Etc/GMT+3" , 0x0271F1 }, + { "Etc/GMT+4" , 0x027265 }, + { "Etc/GMT+5" , 0x0272D9 }, + { "Etc/GMT+6" , 0x02734D }, + { "Etc/GMT+7" , 0x0273C1 }, + { "Etc/GMT+8" , 0x027435 }, + { "Etc/GMT+9" , 0x0274A9 }, + { "Etc/GMT-0" , 0x026E87 }, + { "Etc/GMT-1" , 0x026EF7 }, + { "Etc/GMT-10" , 0x026F6B }, + { "Etc/GMT-11" , 0x026FE1 }, + { "Etc/GMT-12" , 0x027057 }, + { "Etc/GMT-13" , 0x0270CD }, + { "Etc/GMT-14" , 0x027108 }, + { "Etc/GMT-2" , 0x027143 }, + { "Etc/GMT-3" , 0x0271B7 }, + { "Etc/GMT-4" , 0x02722B }, + { "Etc/GMT-5" , 0x02729F }, + { "Etc/GMT-6" , 0x027313 }, + { "Etc/GMT-7" , 0x027387 }, + { "Etc/GMT-8" , 0x0273FB }, + { "Etc/GMT-9" , 0x02746F }, + { "Etc/GMT0" , 0x026E4F }, + { "Etc/Greenwich" , 0x0274E3 }, + { "Etc/UCT" , 0x02751B }, + { "Etc/Universal" , 0x027553 }, + { "Etc/UTC" , 0x02758B }, + { "Etc/Zulu" , 0x0275C3 }, + { "Europe/Amsterdam" , 0x0275FB }, + { "Europe/Andorra" , 0x027A2D }, + { "Europe/Athens" , 0x027C9D }, + { "Europe/Belfast" , 0x027FD4 }, + { "Europe/Belgrade" , 0x0284FF }, + { "Europe/Berlin" , 0x0287B7 }, + { "Europe/Bratislava" , 0x028AFC }, + { "Europe/Brussels" , 0x028E22 }, + { "Europe/Bucharest" , 0x02924D }, + { "Europe/Budapest" , 0x02956B }, + { "Europe/Chisinau" , 0x0298CD }, + { "Europe/Copenhagen" , 0x029C4F }, + { "Europe/Dublin" , 0x029F4D }, + { "Europe/Gibraltar" , 0x02A452 }, + { "Europe/Guernsey" , 0x02A89D }, + { "Europe/Helsinki" , 0x02ADC8 }, + { "Europe/Isle_of_Man" , 0x02B072 }, + { "Europe/Istanbul" , 0x02B59D }, + { "Europe/Jersey" , 0x02B97E }, + { "Europe/Kaliningrad" , 0x02BEA9 }, + { "Europe/Kiev" , 0x02C1E9 }, + { "Europe/Lisbon" , 0x02C4E6 }, + { "Europe/Ljubljana" , 0x02C9D6 }, + { "Europe/London" , 0x02CC8E }, + { "Europe/Luxembourg" , 0x02D1B9 }, + { "Europe/Madrid" , 0x02D603 }, + { "Europe/Malta" , 0x02D9B5 }, + { "Europe/Mariehamn" , 0x02DD62 }, + { "Europe/Minsk" , 0x02E00C }, + { "Europe/Monaco" , 0x02E30B }, + { "Europe/Moscow" , 0x02E73A }, + { "Europe/Nicosia" , 0x02EA69 }, + { "Europe/Oslo" , 0x02ED45 }, + { "Europe/Paris" , 0x02F06B }, + { "Europe/Podgorica" , 0x02F4A5 }, + { "Europe/Prague" , 0x02F75D }, + { "Europe/Riga" , 0x02FA83 }, + { "Europe/Rome" , 0x02FDBC }, + { "Europe/Samara" , 0x030173 }, + { "Europe/San_Marino" , 0x030477 }, + { "Europe/Sarajevo" , 0x03082E }, + { "Europe/Simferopol" , 0x030AE6 }, + { "Europe/Skopje" , 0x030DF7 }, + { "Europe/Sofia" , 0x0310AF }, + { "Europe/Stockholm" , 0x03139E }, + { "Europe/Tallinn" , 0x031641 }, + { "Europe/Tirane" , 0x03196F }, + { "Europe/Tiraspol" , 0x031C69 }, + { "Europe/Uzhgorod" , 0x031FEB }, + { "Europe/Vaduz" , 0x0322EE }, + { "Europe/Vatican" , 0x032575 }, + { "Europe/Vienna" , 0x03292C }, + { "Europe/Vilnius" , 0x032C4D }, + { "Europe/Volgograd" , 0x032F80 }, + { "Europe/Warsaw" , 0x033266 }, + { "Europe/Zagreb" , 0x03363B }, + { "Europe/Zaporozhye" , 0x0338F3 }, + { "Europe/Zurich" , 0x033BFA }, + { "Factory" , 0x033EA7 }, + { "GB" , 0x033F0C }, + { "GB-Eire" , 0x034437 }, + { "GMT" , 0x034962 }, + { "GMT+0" , 0x034A0A }, + { "GMT-0" , 0x0349D2 }, + { "GMT0" , 0x03499A }, + { "Greenwich" , 0x034A42 }, + { "Hongkong" , 0x034A7A }, + { "HST" , 0x034C24 }, + { "Iceland" , 0x034C5C }, + { "Indian/Antananarivo" , 0x034E09 }, + { "Indian/Chagos" , 0x034E71 }, + { "Indian/Christmas" , 0x034EC7 }, + { "Indian/Cocos" , 0x034EFF }, + { "Indian/Comoro" , 0x034F37 }, + { "Indian/Kerguelen" , 0x034F80 }, + { "Indian/Mahe" , 0x034FC9 }, + { "Indian/Maldives" , 0x035012 }, + { "Indian/Mauritius" , 0x03505B }, + { "Indian/Mayotte" , 0x0350A4 }, + { "Indian/Reunion" , 0x0350ED }, + { "Iran" , 0x035136 }, + { "Israel" , 0x035398 }, + { "Jamaica" , 0x0356BB }, + { "Japan" , 0x035774 }, + { "Kwajalein" , 0x0357F1 }, + { "Libya" , 0x035848 }, + { "MET" , 0x035936 }, + { "Mexico/BajaNorte" , 0x035C29 }, + { "Mexico/BajaSur" , 0x035F86 }, + { "Mexico/General" , 0x0361BF }, + { "MST" , 0x036411 }, + { "MST7MDT" , 0x036449 }, + { "Navajo" , 0x03678E }, + { "NZ" , 0x036AFB }, + { "NZ-CHAT" , 0x036E6D }, + { "Pacific/Apia" , 0x037149 }, + { "Pacific/Auckland" , 0x0371A4 }, + { "Pacific/Chatham" , 0x037516 }, + { "Pacific/Easter" , 0x0377F2 }, + { "Pacific/Efate" , 0x037B28 }, + { "Pacific/Enderbury" , 0x037BE2 }, + { "Pacific/Fakaofo" , 0x037C35 }, + { "Pacific/Fiji" , 0x037C6D }, + { "Pacific/Funafuti" , 0x037CD7 }, + { "Pacific/Galapagos" , 0x037D0F }, + { "Pacific/Gambier" , 0x037D6A }, + { "Pacific/Guadalcanal" , 0x037DB4 }, + { "Pacific/Guam" , 0x037DFD }, + { "Pacific/Honolulu" , 0x037E47 }, + { "Pacific/Johnston" , 0x037EC9 }, + { "Pacific/Kiritimati" , 0x037F01 }, + { "Pacific/Kosrae" , 0x037F54 }, + { "Pacific/Kwajalein" , 0x037F9F }, + { "Pacific/Majuro" , 0x037FF6 }, + { "Pacific/Marquesas" , 0x03803B }, + { "Pacific/Midway" , 0x038085 }, + { "Pacific/Nauru" , 0x0380F5 }, + { "Pacific/Niue" , 0x038161 }, + { "Pacific/Norfolk" , 0x0381B3 }, + { "Pacific/Noumea" , 0x0381FC }, + { "Pacific/Pago_Pago" , 0x038280 }, + { "Pacific/Palau" , 0x0382FD }, + { "Pacific/Pitcairn" , 0x038335 }, + { "Pacific/Ponape" , 0x03837E }, + { "Pacific/Port_Moresby" , 0x0383B7 }, + { "Pacific/Rarotonga" , 0x0383EF }, + { "Pacific/Saipan" , 0x0384BF }, + { "Pacific/Samoa" , 0x038516 }, + { "Pacific/Tahiti" , 0x038593 }, + { "Pacific/Tarawa" , 0x0385DD }, + { "Pacific/Tongatapu" , 0x038616 }, + { "Pacific/Truk" , 0x038696 }, + { "Pacific/Wake" , 0x0386CF }, + { "Pacific/Wallis" , 0x038708 }, + { "Pacific/Yap" , 0x038740 }, + { "Poland" , 0x038779 }, + { "Portugal" , 0x038B4E }, + { "PRC" , 0x03903E }, + { "PST8PDT" , 0x0390E3 }, + { "ROC" , 0x039428 }, + { "ROK" , 0x039534 }, + { "Singapore" , 0x0395CC }, + { "Turkey" , 0x039677 }, + { "UCT" , 0x039A58 }, + { "Universal" , 0x039A90 }, + { "US/Alaska" , 0x039AC8 }, + { "US/Aleutian" , 0x039E25 }, + { "US/Arizona" , 0x03A17F }, + { "US/Central" , 0x03A201 }, + { "US/East-Indiana" , 0x03ABF3 }, + { "US/Eastern" , 0x03A700 }, + { "US/Hawaii" , 0x03AE51 }, + { "US/Indiana-Starke" , 0x03AED3 }, + { "US/Michigan" , 0x03B238 }, + { "US/Mountain" , 0x03B563 }, + { "US/Pacific" , 0x03B8D0 }, + { "US/Pacific-New" , 0x03BCC9 }, + { "US/Samoa" , 0x03C0C2 }, + { "UTC" , 0x03C13F }, + { "W-SU" , 0x03C41E }, + { "WET" , 0x03C177 }, + { "Zulu" , 0x03C74D }, }; /* This is a generated file, do not modify */ -const unsigned char timelib_timezone_db_data_builtin[242022] = { +const unsigned char timelib_timezone_db_data_builtin[247685] = { /* Africa/Abidjan */ @@ -1320,7 +1325,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Argentina/Buenos_Aires */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0D, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0D, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1334,19 +1339,38 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/Catamarca */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1361,20 +1385,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xBB, 0xF1, 0x30, -0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Argentina/ComodRivadavia */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1389,20 +1432,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xBB, 0xF1, 0x30, -0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Argentina/Cordoba */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1416,20 +1478,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, -0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, +0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/Jujuy */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1443,21 +1524,40 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x2A, 0x57, 0xC0, 0x27, 0xE2, 0xDB, 0xB0, 0x28, 0xEE, 0x8A, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, -0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, -0x57, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, +0x06, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, +0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, +0x00, 0x57, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/La_Rioja */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1472,20 +1572,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xCD, 0xB5, 0xA0, 0x28, 0x26, 0x26, 0x40, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, -0x40, 0xBB, 0xF1, 0x30, 0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xBB, 0xF1, 0x30, 0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, +0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, +0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, +0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, +0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, +0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, +0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, +0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, +0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, +0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, +0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, +0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, +0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, +0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, +0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, +0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, -0x04, 0x05, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, -0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, -0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, -0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x04, 0x03, +0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, +0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, +0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, +0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/Mendoza */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1500,20 +1619,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x19, 0x34, 0x40, 0x27, 0xCD, 0xC3, 0xB0, 0x28, 0xFA, 0x67, 0xC0, 0x29, 0xB0, 0x48, 0xB0, 0x2A, 0xE0, 0xE1, 0x40, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xB0, 0x13, 0xB0, -0x41, 0x56, 0x3E, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x41, 0x56, 0x3E, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x06, 0x05, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, -0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x57, 0x41, 0x52, 0x53, 0x54, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x06, 0x05, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, +0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x57, 0x41, 0x52, 0x53, 0x54, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/Rio_Gallegos */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1528,20 +1666,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xBB, 0xF1, 0x30, -0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Argentina/San_Juan */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3B, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x78, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1556,20 +1713,67 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xCD, 0xB5, 0xA0, 0x28, 0x26, 0x26, 0x40, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, -0x40, 0xBA, 0x9F, 0xB0, 0x41, 0x03, 0x30, 0x40, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xBA, 0x9F, 0xB0, 0x41, 0x03, 0x30, 0x40, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, +0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, +0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, +0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, +0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, +0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, +0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, +0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, +0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, +0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, +0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, +0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, +0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, +0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, +0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, +0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, -0x04, 0x05, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, -0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, -0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, -0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x04, 0x03, +0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, +0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, +0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, +0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, +0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + +/* America/Argentina/San_Luis */ +0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x3D, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, +0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, +0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, +0xC1, 0x9D, 0x9D, 0x40, 0xC2, 0x3B, 0xC3, 0x30, 0xC3, 0x7E, 0xD0, 0xC0, 0xC4, 0x1C, 0xF6, 0xB0, +0xC5, 0x60, 0x04, 0x40, 0xC5, 0xFE, 0x2A, 0x30, 0xC7, 0x41, 0x37, 0xC0, 0xC7, 0xE0, 0xAF, 0x30, +0xC8, 0x81, 0x94, 0x40, 0xCA, 0x4D, 0xA1, 0xB0, 0xCA, 0xEE, 0x86, 0xC0, 0xCE, 0x4D, 0xFF, 0x30, +0xCE, 0xB0, 0xED, 0xC0, 0xD3, 0x29, 0x35, 0xB0, 0xD4, 0x43, 0x64, 0xC0, 0xF4, 0x3D, 0x08, 0x30, +0xF4, 0x9F, 0xF6, 0xC0, 0xF5, 0x05, 0x6C, 0x30, 0xF6, 0x32, 0x10, 0x40, 0xF6, 0xE6, 0x9F, 0xB0, +0xF8, 0x13, 0x43, 0xC0, 0xF8, 0xC7, 0xD3, 0x30, 0xF9, 0xF4, 0x77, 0x40, 0xFA, 0xD3, 0x36, 0xB0, +0xFB, 0xC3, 0x35, 0xC0, 0xFC, 0xBC, 0x53, 0x30, 0xFD, 0xAC, 0x52, 0x40, 0xFE, 0x9C, 0x35, 0x30, +0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, +0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, +0x27, 0xCD, 0xB5, 0xA0, 0x28, 0x26, 0x26, 0x40, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, +0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, +0x40, 0xBA, 0x9F, 0xB0, 0x41, 0x03, 0x30, 0x40, 0x47, 0x77, 0x09, 0xB0, 0x47, 0x93, 0xFC, 0xA0, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0x03, 0x04, 0xFF, 0xFF, 0xC3, +0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, +0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, +0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Argentina/Tucuman */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1584,20 +1788,39 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xBB, 0xF1, 0x30, -0x40, 0xCB, 0xD1, 0x40, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xCB, 0xD1, 0x40, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Argentina/Ushuaia */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1612,15 +1835,34 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xB9, 0x4E, 0x30, -0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Aruba */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -1922,7 +2164,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Buenos_Aires */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0D, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0D, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -1936,14 +2178,33 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xF1, 0x30, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Cambridge_Bay */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -2084,14 +2345,14 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x08, 0x93, 0x1E, 0x2C, 0x3C, -0xF6, 0x98, 0xEC, 0x48, 0x47, 0x79, 0xBA, 0xC0, 0x01, 0x02, 0x01, 0xFF, 0xFF, 0xC1, 0x44, 0x00, +0xF6, 0x98, 0xEC, 0x48, 0x47, 0x5B, 0x92, 0x70, 0x01, 0x02, 0x01, 0xFF, 0xFF, 0xC1, 0x44, 0x00, 0x00, 0xFF, 0xFF, 0xC0, 0xB8, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0x43, 0x4D, 0x54, 0x00, 0x56, 0x45, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Catamarca */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -2106,15 +2367,34 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xBB, 0xF1, 0x30, -0x40, 0xD5, 0x0B, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x40, 0xD5, 0x0B, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, -0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, +0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, /* America/Cayenne */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -2264,7 +2544,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Cordoba */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -2278,15 +2558,34 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, -0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, +0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Costa_Rica */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -3132,22 +3431,22 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x36, 0xFD, 0xB7, 0x50, 0x38, 0x1B, 0xCC, 0xD0, 0x38, 0xE6, 0xD3, 0xD0, 0x39, 0xFB, 0xAE, 0xD0, 0x3A, 0xC6, 0xB5, 0xD0, 0x3B, 0xDB, 0x90, 0xD0, 0x3C, 0xAF, 0xD2, 0x50, 0x3D, 0xBB, 0x72, 0xD0, 0x3E, 0x8F, 0xB4, 0x50, 0x3F, 0x9B, 0x54, 0xD0, 0x40, 0x6F, 0x96, 0x50, 0x45, 0x44, 0x35, 0x50, -0x45, 0xF3, 0x8C, 0xD0, 0x47, 0x24, 0x17, 0x50, 0x47, 0xD3, 0x6E, 0xD0, 0x49, 0x03, 0xF9, 0x50, -0x49, 0xB3, 0x50, 0xD0, 0x4A, 0xE3, 0xDB, 0x50, 0x4B, 0x9C, 0x6D, 0x50, 0x4C, 0xCC, 0xF7, 0xD0, -0x4D, 0x7C, 0x4F, 0x50, 0x4E, 0xAC, 0xD9, 0xD0, 0x4F, 0x5C, 0x31, 0x50, 0x50, 0x8C, 0xBB, 0xD0, -0x51, 0x3C, 0x13, 0x50, 0x52, 0x6C, 0x9D, 0xD0, 0x53, 0x1B, 0xF5, 0x50, 0x54, 0x4C, 0x7F, 0xD0, -0x54, 0xFB, 0xD7, 0x50, 0x56, 0x2C, 0x61, 0xD0, 0x56, 0xE4, 0xF3, 0xD0, 0x58, 0x15, 0x7E, 0x50, -0x58, 0xC4, 0xD5, 0xD0, 0x59, 0xF5, 0x60, 0x50, 0x5A, 0xA4, 0xB7, 0xD0, 0x5B, 0xD5, 0x42, 0x50, -0x5C, 0x84, 0x99, 0xD0, 0x5D, 0xB5, 0x24, 0x50, 0x5E, 0x64, 0x7B, 0xD0, 0x5F, 0x95, 0x06, 0x50, -0x60, 0x4D, 0x98, 0x50, 0x61, 0x7E, 0x22, 0xD0, 0x62, 0x2D, 0x7A, 0x50, 0x63, 0x5E, 0x04, 0xD0, -0x64, 0x0D, 0x5C, 0x50, 0x65, 0x3D, 0xE6, 0xD0, 0x65, 0xED, 0x3E, 0x50, 0x67, 0x1D, 0xC8, 0xD0, -0x67, 0xCD, 0x20, 0x50, 0x68, 0xFD, 0xAA, 0xD0, 0x69, 0xAD, 0x02, 0x50, 0x6A, 0xDD, 0x8C, 0xD0, -0x6B, 0x96, 0x1E, 0xD0, 0x6C, 0xC6, 0xA9, 0x50, 0x6D, 0x76, 0x00, 0xD0, 0x6E, 0xA6, 0x8B, 0x50, -0x6F, 0x55, 0xE2, 0xD0, 0x70, 0x86, 0x6D, 0x50, 0x71, 0x35, 0xC4, 0xD0, 0x72, 0x66, 0x4F, 0x50, -0x73, 0x15, 0xA6, 0xD0, 0x74, 0x46, 0x31, 0x50, 0x74, 0xFE, 0xC3, 0x50, 0x76, 0x2F, 0x4D, 0xD0, -0x76, 0xDE, 0xA5, 0x50, 0x78, 0x0F, 0x2F, 0xD0, 0x78, 0xBE, 0x87, 0x50, 0x79, 0xEF, 0x11, 0xD0, -0x7A, 0x9E, 0x69, 0x50, 0x7B, 0xCE, 0xF3, 0xD0, 0x7C, 0x7E, 0x4B, 0x50, 0x7D, 0xAE, 0xD5, 0xD0, -0x7E, 0x5E, 0x2D, 0x50, 0x7F, 0x8E, 0xB7, 0xD0, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, +0x45, 0xF3, 0x8C, 0xD0, 0x47, 0x24, 0x17, 0x50, 0x47, 0xDC, 0xA9, 0x50, 0x49, 0x03, 0xF9, 0x50, +0x49, 0xBC, 0x8B, 0x50, 0x4A, 0xE3, 0xDB, 0x50, 0x4B, 0xA5, 0xA7, 0xD0, 0x4C, 0xCC, 0xF7, 0xD0, +0x4D, 0x85, 0x89, 0xD0, 0x4E, 0xAC, 0xD9, 0xD0, 0x4F, 0x65, 0x6B, 0xD0, 0x50, 0x8C, 0xBB, 0xD0, +0x51, 0x45, 0x4D, 0xD0, 0x52, 0x6C, 0x9D, 0xD0, 0x53, 0x25, 0x2F, 0xD0, 0x54, 0x4C, 0x7F, 0xD0, +0x55, 0x05, 0x11, 0xD0, 0x56, 0x2C, 0x61, 0xD0, 0x56, 0xEE, 0x2E, 0x50, 0x58, 0x15, 0x7E, 0x50, +0x58, 0xCE, 0x10, 0x50, 0x59, 0xF5, 0x60, 0x50, 0x5A, 0xAD, 0xF2, 0x50, 0x5B, 0xD5, 0x42, 0x50, +0x5C, 0x8D, 0xD4, 0x50, 0x5D, 0xB5, 0x24, 0x50, 0x5E, 0x6D, 0xB6, 0x50, 0x5F, 0x95, 0x06, 0x50, +0x60, 0x56, 0xD2, 0xD0, 0x61, 0x7E, 0x22, 0xD0, 0x62, 0x36, 0xB4, 0xD0, 0x63, 0x5E, 0x04, 0xD0, +0x64, 0x16, 0x96, 0xD0, 0x65, 0x3D, 0xE6, 0xD0, 0x65, 0xF6, 0x78, 0xD0, 0x67, 0x1D, 0xC8, 0xD0, +0x67, 0xD6, 0x5A, 0xD0, 0x68, 0xFD, 0xAA, 0xD0, 0x69, 0xB6, 0x3C, 0xD0, 0x6A, 0xDD, 0x8C, 0xD0, +0x6B, 0x9F, 0x59, 0x50, 0x6C, 0xC6, 0xA9, 0x50, 0x6D, 0x7F, 0x3B, 0x50, 0x6E, 0xA6, 0x8B, 0x50, +0x6F, 0x5F, 0x1D, 0x50, 0x70, 0x86, 0x6D, 0x50, 0x71, 0x3E, 0xFF, 0x50, 0x72, 0x66, 0x4F, 0x50, +0x73, 0x1E, 0xE1, 0x50, 0x74, 0x46, 0x31, 0x50, 0x75, 0x07, 0xFD, 0xD0, 0x76, 0x2F, 0x4D, 0xD0, +0x76, 0xE7, 0xDF, 0xD0, 0x78, 0x0F, 0x2F, 0xD0, 0x78, 0xC7, 0xC1, 0xD0, 0x79, 0xEF, 0x11, 0xD0, +0x7A, 0xA7, 0xA3, 0xD0, 0x7B, 0xCE, 0xF3, 0xD0, 0x7C, 0x87, 0x85, 0xD0, 0x7D, 0xAE, 0xD5, 0xD0, +0x7E, 0x67, 0x67, 0xD0, 0x7F, 0x8E, 0xB7, 0xD0, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, @@ -3674,7 +3973,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Jujuy */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -3688,16 +3987,35 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x2A, 0x57, 0xC0, 0x27, 0xE2, 0xDB, 0xB0, 0x28, 0xEE, 0x8A, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, -0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, -0x57, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, +0x06, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, +0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, +0x00, 0x57, 0x41, 0x52, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, /* America/Juneau */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -4134,6 +4452,13 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xD0, 0x01, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x09, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x4D, 0x53, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* America/Marigot */ +0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x91, 0xD5, 0xE1, 0xB0, +0x01, 0xFF, 0xFF, 0xC6, 0x50, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0x4C, 0x4D, 0x54, +0x00, 0x41, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, + /* America/Martinique */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, @@ -4184,7 +4509,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Mendoza */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x3A, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x18, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -4199,15 +4524,34 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x19, 0x34, 0x40, 0x27, 0xCD, 0xC3, 0xB0, 0x28, 0xFA, 0x67, 0xC0, 0x29, 0xB0, 0x48, 0xB0, 0x2A, 0xE0, 0xE1, 0x40, 0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x40, 0xB0, 0x13, 0xB0, -0x41, 0x56, 0x3E, 0xC0, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x41, 0x56, 0x3E, 0xC0, 0x47, 0x77, 0x09, 0xB0, 0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, +0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, 0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, +0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, 0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, +0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, 0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, +0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, 0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, +0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, 0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, +0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, 0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, +0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, 0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, +0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, 0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, +0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, 0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, +0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, 0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, +0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, 0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, +0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, 0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, +0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, 0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, +0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, 0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, +0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x06, 0x05, 0x03, 0x04, 0x02, 0x04, 0x05, 0x04, 0xFF, 0xFF, -0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, -0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, -0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, -0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x57, 0x41, 0x52, 0x53, 0x54, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, +0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x06, 0x05, 0x06, 0x05, 0x03, 0x04, 0x02, 0x04, +0x05, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, +0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, +0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, +0xC0, 0x00, 0x0D, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x12, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, +0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x57, 0x41, 0x52, 0x53, 0x54, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Menominee */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -5337,7 +5681,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* America/Rosario */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, +0x00, 0x00, 0x00, 0x75, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x12, 0xA2, 0x92, 0x8F, 0x30, 0xB6, 0x7B, 0x52, 0x40, 0xB7, 0x1A, 0xC9, 0xB0, 0xB8, 0x1E, 0x8F, 0x40, 0xB8, 0xD4, 0x70, 0x30, 0xBA, 0x17, 0x7D, 0xC0, 0xBA, 0xB5, 0xA3, 0xB0, 0xBB, 0xF8, 0xB1, 0x40, 0xBC, 0x96, 0xD7, 0x30, 0xBD, 0xD9, 0xE4, 0xC0, 0xBE, 0x78, 0x0A, 0xB0, 0xBF, 0xBB, 0x18, 0x40, 0xC0, 0x5A, 0x8F, 0xB0, @@ -5351,15 +5695,34 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0x8C, 0x34, 0x40, 0x07, 0xA3, 0x4A, 0xB0, 0x08, 0x24, 0x6F, 0xA0, 0x23, 0x94, 0xB5, 0xB0, 0x24, 0x10, 0x94, 0xA0, 0x25, 0x37, 0xF2, 0xB0, 0x25, 0xF0, 0x76, 0xA0, 0x27, 0x21, 0x0F, 0x30, 0x27, 0xD0, 0x58, 0xA0, 0x29, 0x00, 0xFF, 0x40, 0x29, 0xB0, 0x3A, 0xA0, 0x2A, 0xE0, 0xD3, 0x30, -0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x01, 0x02, 0x01, 0x02, +0x2B, 0x99, 0x57, 0x20, 0x37, 0xF6, 0xC6, 0xB0, 0x38, 0xBF, 0x2A, 0xB0, 0x47, 0x77, 0x09, 0xB0, +0x47, 0xDC, 0x7F, 0x20, 0x48, 0xE8, 0x2D, 0xB0, 0x49, 0xBC, 0x61, 0x20, 0x4A, 0xC8, 0x0F, 0xB0, +0x4B, 0xA5, 0x7D, 0xA0, 0x4C, 0xA7, 0xF1, 0xB0, 0x4D, 0x85, 0x5F, 0xA0, 0x4E, 0x87, 0xD3, 0xB0, +0x4F, 0x65, 0x41, 0xA0, 0x50, 0x70, 0xF0, 0x30, 0x51, 0x45, 0x23, 0xA0, 0x52, 0x50, 0xD2, 0x30, +0x53, 0x25, 0x05, 0xA0, 0x54, 0x30, 0xB4, 0x30, 0x55, 0x04, 0xE7, 0xA0, 0x56, 0x10, 0x96, 0x30, +0x56, 0xEE, 0x04, 0x20, 0x57, 0xF0, 0x78, 0x30, 0x58, 0xCD, 0xE6, 0x20, 0x59, 0xD0, 0x5A, 0x30, +0x5A, 0xAD, 0xC8, 0x20, 0x5B, 0xB9, 0x76, 0xB0, 0x5C, 0x8D, 0xAA, 0x20, 0x5D, 0x99, 0x58, 0xB0, +0x5E, 0x6D, 0x8C, 0x20, 0x5F, 0x79, 0x3A, 0xB0, 0x60, 0x56, 0xA8, 0xA0, 0x61, 0x59, 0x1C, 0xB0, +0x62, 0x36, 0x8A, 0xA0, 0x63, 0x38, 0xFE, 0xB0, 0x64, 0x16, 0x6C, 0xA0, 0x65, 0x18, 0xE0, 0xB0, +0x65, 0xF6, 0x4E, 0xA0, 0x67, 0x01, 0xFD, 0x30, 0x67, 0xD6, 0x30, 0xA0, 0x68, 0xE1, 0xDF, 0x30, +0x69, 0xB6, 0x12, 0xA0, 0x6A, 0xC1, 0xC1, 0x30, 0x6B, 0x9F, 0x2F, 0x20, 0x6C, 0xA1, 0xA3, 0x30, +0x6D, 0x7F, 0x11, 0x20, 0x6E, 0x81, 0x85, 0x30, 0x6F, 0x5E, 0xF3, 0x20, 0x70, 0x6A, 0xA1, 0xB0, +0x71, 0x3E, 0xD5, 0x20, 0x72, 0x4A, 0x83, 0xB0, 0x73, 0x1E, 0xB7, 0x20, 0x74, 0x2A, 0x65, 0xB0, +0x75, 0x07, 0xD3, 0xA0, 0x76, 0x0A, 0x47, 0xB0, 0x76, 0xE7, 0xB5, 0xA0, 0x77, 0xEA, 0x29, 0xB0, +0x78, 0xC7, 0x97, 0xA0, 0x79, 0xCA, 0x0B, 0xB0, 0x7A, 0xA7, 0x79, 0xA0, 0x7B, 0xB3, 0x28, 0x30, +0x7C, 0x87, 0x5B, 0xA0, 0x7D, 0x93, 0x0A, 0x30, 0x7E, 0x67, 0x3D, 0xA0, 0x7F, 0x72, 0xEC, 0x30, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, -0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x05, 0x03, 0x04, -0x03, 0x04, 0x02, 0x04, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, -0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, 0xD0, -0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, 0x00, -0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x05, 0x03, 0x04, 0x03, 0x04, 0x02, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, +0x03, 0x04, 0x03, 0x04, 0x03, 0xFF, 0xFF, 0xC3, 0xD0, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, +0x04, 0xFF, 0xFF, 0xD5, 0xD0, 0x01, 0x08, 0xFF, 0xFF, 0xE3, 0xE0, 0x01, 0x08, 0xFF, 0xFF, 0xD5, +0xD0, 0x00, 0x04, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x43, 0x4D, 0x54, 0x00, 0x41, 0x52, 0x54, +0x00, 0x41, 0x52, 0x53, 0x54, 0x00, 0x57, 0x41, 0x52, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, /* America/Santiago */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -5389,7 +5752,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3B, 0xC9, 0x0D, 0xC0, 0x3C, 0x8A, 0xCC, 0x30, 0x3D, 0xA8, 0xEF, 0xC0, 0x3E, 0x6A, 0xAE, 0x30, 0x3F, 0x88, 0xD1, 0xC0, 0x40, 0x53, 0xCA, 0xB0, 0x41, 0x68, 0xB3, 0xC0, 0x42, 0x33, 0xAC, 0xB0, 0x43, 0x48, 0x95, 0xC0, 0x44, 0x13, 0x8E, 0xB0, 0x45, 0x31, 0xB2, 0x40, 0x45, 0xF3, 0x70, 0xB0, -0x47, 0x11, 0x94, 0x40, 0x47, 0xD3, 0x52, 0xB0, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, +0x47, 0x11, 0x94, 0x40, 0x47, 0xEF, 0x02, 0x30, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, 0x4A, 0xD1, 0x58, 0x40, 0x4B, 0x9C, 0x51, 0x30, 0x4C, 0xB1, 0x3A, 0x40, 0x4D, 0x7C, 0x33, 0x30, 0x4E, 0x91, 0x1C, 0x40, 0x4F, 0x5C, 0x15, 0x30, 0x50, 0x7A, 0x38, 0xC0, 0x51, 0x3B, 0xF7, 0x30, 0x52, 0x5A, 0x1A, 0xC0, 0x53, 0x1B, 0xD9, 0x30, 0x54, 0x39, 0xFC, 0xC0, 0x55, 0x04, 0xF5, 0xB0, @@ -5586,6 +5949,13 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0xFF, 0xAB, 0xA0, 0x01, 0x0C, 0x4D, 0x44, 0x54, 0x00, 0x4D, 0x53, 0x54, 0x00, 0x4D, 0x57, 0x54, 0x00, 0x4D, 0x50, 0x54, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x01, +/* America/St_Barthelemy */ +0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x91, 0xD5, 0xE1, 0xB0, +0x01, 0xFF, 0xFF, 0xC6, 0x50, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x04, 0x4C, 0x4D, 0x54, +0x00, 0x41, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, + /* America/St_Johns */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, @@ -6729,7 +7099,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { /* Asia/Baghdad */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, -0x00, 0x00, 0x00, 0x71, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0C, 0x9E, 0x30, 0x3C, 0xE0, +0x00, 0x00, 0x00, 0x35, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x0C, 0x9E, 0x30, 0x3C, 0xE0, 0x17, 0x30, 0x68, 0x50, 0x17, 0xFA, 0x0F, 0xC0, 0x18, 0xE8, 0xBD, 0x50, 0x19, 0xDB, 0x43, 0x40, 0x1A, 0xCC, 0x93, 0xD0, 0x1B, 0xBD, 0xC8, 0x40, 0x1C, 0xAD, 0xC7, 0x50, 0x1D, 0x9C, 0x74, 0xE0, 0x1E, 0x8C, 0x65, 0xE0, 0x1F, 0x7C, 0x56, 0xE0, 0x20, 0x6C, 0x47, 0xE0, 0x21, 0x5C, 0x38, 0xE0, @@ -6743,32 +7113,13 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3C, 0xA7, 0xA3, 0x00, 0x3D, 0x98, 0xE5, 0x80, 0x3E, 0x88, 0xD6, 0x80, 0x3F, 0x7A, 0x19, 0x00, 0x40, 0x6B, 0x5B, 0x80, 0x41, 0x5C, 0x9E, 0x00, 0x42, 0x4C, 0x8F, 0x00, 0x43, 0x3D, 0xD1, 0x80, 0x44, 0x2D, 0xC2, 0x80, 0x45, 0x1F, 0x05, 0x00, 0x46, 0x0E, 0xF6, 0x00, 0x47, 0x00, 0x38, 0x80, -0x47, 0xF1, 0x7B, 0x00, 0x48, 0xE2, 0xBD, 0x80, 0x49, 0xD2, 0xAE, 0x80, 0x4A, 0xC3, 0xF1, 0x00, -0x4B, 0xB3, 0xE2, 0x00, 0x4C, 0xA5, 0x24, 0x80, 0x4D, 0x95, 0x15, 0x80, 0x4E, 0x86, 0x58, 0x00, -0x4F, 0x77, 0x9A, 0x80, 0x50, 0x68, 0xDD, 0x00, 0x51, 0x58, 0xCE, 0x00, 0x52, 0x4A, 0x10, 0x80, -0x53, 0x3A, 0x01, 0x80, 0x54, 0x2B, 0x44, 0x00, 0x55, 0x1B, 0x35, 0x00, 0x56, 0x0C, 0x77, 0x80, -0x56, 0xFD, 0xBA, 0x00, 0x57, 0xEE, 0xFC, 0x80, 0x58, 0xDE, 0xED, 0x80, 0x59, 0xD0, 0x30, 0x00, -0x5A, 0xC0, 0x21, 0x00, 0x5B, 0xB1, 0x63, 0x80, 0x5C, 0xA1, 0x54, 0x80, 0x5D, 0x92, 0x97, 0x00, -0x5E, 0x83, 0xD9, 0x80, 0x5F, 0x75, 0x1C, 0x00, 0x60, 0x65, 0x0D, 0x00, 0x61, 0x56, 0x4F, 0x80, -0x62, 0x46, 0x40, 0x80, 0x63, 0x37, 0x83, 0x00, 0x64, 0x27, 0x74, 0x00, 0x65, 0x18, 0xB6, 0x80, -0x66, 0x09, 0xF9, 0x00, 0x66, 0xFB, 0x3B, 0x80, 0x67, 0xEB, 0x2C, 0x80, 0x68, 0xDC, 0x6F, 0x00, -0x69, 0xCC, 0x60, 0x00, 0x6A, 0xBD, 0xA2, 0x80, 0x6B, 0xAD, 0x93, 0x80, 0x6C, 0x9E, 0xD6, 0x00, -0x6D, 0x90, 0x18, 0x80, 0x6E, 0x81, 0x5B, 0x00, 0x6F, 0x71, 0x4C, 0x00, 0x70, 0x62, 0x8E, 0x80, -0x71, 0x52, 0x7F, 0x80, 0x72, 0x43, 0xC2, 0x00, 0x73, 0x33, 0xB3, 0x00, 0x74, 0x24, 0xF5, 0x80, -0x75, 0x16, 0x38, 0x00, 0x76, 0x07, 0x7A, 0x80, 0x76, 0xF7, 0x6B, 0x80, 0x77, 0xE8, 0xAE, 0x00, -0x78, 0xD8, 0x9F, 0x00, 0x79, 0xC9, 0xE1, 0x80, 0x7A, 0xB9, 0xD2, 0x80, 0x7B, 0xAB, 0x15, 0x00, -0x7C, 0x9C, 0x57, 0x80, 0x7D, 0x8D, 0x9A, 0x00, 0x7E, 0x7D, 0x8B, 0x00, 0x7F, 0x6E, 0xCD, 0x80, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, 0x03, 0x04, -0x03, 0x00, 0x00, 0x29, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x2A, 0x30, 0x00, 0x04, 0x00, 0x00, 0x38, -0x40, 0x01, 0x08, 0x00, 0x00, 0x2A, 0x30, 0x00, 0x04, 0x00, 0x00, 0x38, 0x40, 0x01, 0x08, 0x42, -0x4D, 0x54, 0x00, 0x41, 0x53, 0x54, 0x00, 0x41, 0x44, 0x54, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, -0x00, 0x00, 0x00, 0x00, 0x00, +0x03, 0x04, 0x03, 0x04, 0x03, 0x00, 0x00, 0x29, 0xA0, 0x00, 0x00, 0x00, 0x00, 0x2A, 0x30, 0x00, +0x04, 0x00, 0x00, 0x38, 0x40, 0x01, 0x08, 0x00, 0x00, 0x2A, 0x30, 0x00, 0x04, 0x00, 0x00, 0x38, +0x40, 0x01, 0x08, 0x42, 0x4D, 0x54, 0x00, 0x41, 0x53, 0x54, 0x00, 0x41, 0x44, 0x54, 0x00, 0x00, +0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, /* Asia/Bahrain */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -7028,22 +7379,22 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3A, 0xC6, 0x53, 0x60, 0x3B, 0xB7, 0x87, 0xD0, 0x3C, 0xA7, 0x86, 0xE0, 0x3D, 0x98, 0xBB, 0x50, 0x3E, 0x88, 0xBA, 0x60, 0x3F, 0x79, 0xEE, 0xD0, 0x40, 0x6B, 0x3F, 0x60, 0x41, 0x5C, 0x73, 0xD0, 0x42, 0x4C, 0x72, 0xE0, 0x43, 0x3D, 0xA7, 0x50, 0x44, 0x2D, 0xA6, 0x60, 0x45, 0x12, 0xFD, 0x50, -0x46, 0x0C, 0x36, 0xE0, 0x47, 0x2A, 0x3E, 0x50, 0x47, 0xEC, 0x18, 0xE0, 0x49, 0x13, 0x5A, 0xD0, -0x49, 0xCB, 0xFA, 0xE0, 0x4A, 0xF3, 0x3C, 0xD0, 0x4B, 0xAB, 0xDC, 0xE0, 0x4C, 0xD3, 0x1E, 0xD0, -0x4D, 0x8B, 0xBE, 0xE0, 0x4E, 0xB3, 0x00, 0xD0, 0x4F, 0x74, 0xDB, 0x60, 0x50, 0x92, 0xE2, 0xD0, -0x51, 0x54, 0xBD, 0x60, 0x52, 0x72, 0xC4, 0xD0, 0x53, 0x34, 0x9F, 0x60, 0x54, 0x5B, 0xE1, 0x50, -0x55, 0x14, 0x81, 0x60, 0x56, 0x3B, 0xC3, 0x50, 0x56, 0xF4, 0x63, 0x60, 0x58, 0x1B, 0xA5, 0x50, -0x58, 0xDD, 0x7F, 0xE0, 0x59, 0xFB, 0x87, 0x50, 0x5A, 0xBD, 0x61, 0xE0, 0x5B, 0xDB, 0x69, 0x50, -0x5C, 0x9D, 0x43, 0xE0, 0x5D, 0xBB, 0x4B, 0x50, 0x5E, 0x7D, 0x25, 0xE0, 0x5F, 0xA4, 0x67, 0xD0, -0x60, 0x5D, 0x07, 0xE0, 0x61, 0x84, 0x49, 0xD0, 0x62, 0x3C, 0xE9, 0xE0, 0x63, 0x64, 0x2B, 0xD0, -0x64, 0x26, 0x06, 0x60, 0x65, 0x44, 0x0D, 0xD0, 0x66, 0x05, 0xE8, 0x60, 0x67, 0x23, 0xEF, 0xD0, -0x67, 0xE5, 0xCA, 0x60, 0x69, 0x0D, 0x0C, 0x50, 0x69, 0xC5, 0xAC, 0x60, 0x6A, 0xEC, 0xEE, 0x50, -0x6B, 0xA5, 0x8E, 0x60, 0x6C, 0xCC, 0xD0, 0x50, 0x6D, 0x8E, 0xAA, 0xE0, 0x6E, 0xAC, 0xB2, 0x50, -0x6F, 0x6E, 0x8C, 0xE0, 0x70, 0x8C, 0x94, 0x50, 0x71, 0x4E, 0x6E, 0xE0, 0x72, 0x6C, 0x76, 0x50, -0x73, 0x2E, 0x50, 0xE0, 0x74, 0x55, 0x92, 0xD0, 0x75, 0x0E, 0x32, 0xE0, 0x76, 0x35, 0x74, 0xD0, -0x76, 0xEE, 0x14, 0xE0, 0x78, 0x15, 0x56, 0xD0, 0x78, 0xD7, 0x31, 0x60, 0x79, 0xF5, 0x38, 0xD0, -0x7A, 0xB7, 0x13, 0x60, 0x7B, 0xD5, 0x1A, 0xD0, 0x7C, 0x96, 0xF5, 0x60, 0x7D, 0xBE, 0x37, 0x50, -0x7E, 0x76, 0xD7, 0x60, 0x7F, 0x9E, 0x19, 0x50, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, +0x46, 0x0C, 0x36, 0xE0, 0x47, 0x2A, 0x3E, 0x50, 0x47, 0xF5, 0x53, 0x60, 0x48, 0xE2, 0x93, 0x50, +0x49, 0xD5, 0x35, 0x60, 0x4A, 0xC3, 0xC6, 0xD0, 0x4B, 0xB5, 0x17, 0x60, 0x4C, 0xA4, 0xFA, 0x50, +0x4D, 0x94, 0xF9, 0x60, 0x4E, 0x86, 0x2D, 0xD0, 0x4F, 0x7E, 0x15, 0xE0, 0x50, 0x68, 0xB2, 0xD0, +0x51, 0x5D, 0xF7, 0xE0, 0x52, 0x49, 0xE6, 0x50, 0x53, 0x3D, 0xD9, 0xE0, 0x54, 0x2B, 0x19, 0xD0, +0x55, 0x1D, 0xBB, 0xE0, 0x56, 0x0C, 0x4D, 0x50, 0x56, 0xFD, 0x9D, 0xE0, 0x57, 0xEE, 0xD2, 0x50, +0x58, 0xE6, 0xBA, 0x60, 0x59, 0xD0, 0x05, 0xD0, 0x5A, 0xC6, 0x9C, 0x60, 0x5B, 0xB1, 0x39, 0x50, +0x5C, 0xA6, 0x7E, 0x60, 0x5D, 0x92, 0x6C, 0xD0, 0x5E, 0x86, 0x60, 0x60, 0x5F, 0x74, 0xF1, 0xD0, +0x60, 0x66, 0x42, 0x60, 0x61, 0x56, 0x25, 0x50, 0x62, 0x46, 0x24, 0x60, 0x63, 0x37, 0x58, 0xD0, +0x64, 0x2F, 0x40, 0xE0, 0x65, 0x18, 0x8C, 0x50, 0x66, 0x0F, 0x22, 0xE0, 0x66, 0xFB, 0x11, 0x50, +0x67, 0xEF, 0x04, 0xE0, 0x68, 0xDC, 0x44, 0xD0, 0x69, 0xCE, 0xE6, 0xE0, 0x6A, 0xBD, 0x78, 0x50, +0x6B, 0xAE, 0xC8, 0xE0, 0x6C, 0x9E, 0xAB, 0xD0, 0x6D, 0x97, 0xE5, 0x60, 0x6E, 0x81, 0x30, 0xD0, +0x6F, 0x77, 0xC7, 0x60, 0x70, 0x62, 0x64, 0x50, 0x71, 0x57, 0xA9, 0x60, 0x72, 0x43, 0x97, 0xD0, +0x73, 0x37, 0x8B, 0x60, 0x74, 0x24, 0xCB, 0x50, 0x75, 0x17, 0x6D, 0x60, 0x76, 0x07, 0x50, 0x50, +0x76, 0xF7, 0x4F, 0x60, 0x77, 0xE8, 0x83, 0xD0, 0x78, 0xE0, 0x6B, 0xE0, 0x79, 0xC9, 0xB7, 0x50, +0x7A, 0xC0, 0x4D, 0xE0, 0x7B, 0xAA, 0xEA, 0xD0, 0x7C, 0xA0, 0x2F, 0xE0, 0x7D, 0x8D, 0x6F, 0xD0, +0x7E, 0x80, 0x11, 0xE0, 0x7F, 0x6E, 0xA3, 0x50, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, @@ -7171,6 +7522,15 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x4D, 0x54, 0x00, 0x43, 0x48, 0x41, 0x54, 0x00, 0x43, 0x53, 0x54, 0x00, 0x43, 0x44, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Asia/Ho_Chi_Minh */ +0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0C, 0x88, 0x6F, 0x42, 0x80, +0x91, 0x5F, 0xEE, 0xD0, 0x93, 0x85, 0xB1, 0x90, 0xB7, 0x41, 0xBC, 0x00, 0x01, 0x02, 0x03, 0x02, +0x00, 0x00, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x63, 0xEC, 0x00, 0x04, 0x00, 0x00, 0x62, 0x70, +0x00, 0x08, 0x00, 0x00, 0x70, 0x80, 0x00, 0x08, 0x4C, 0x4D, 0x54, 0x00, 0x53, 0x4D, 0x54, 0x00, +0x49, 0x43, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + /* Asia/Hong_Kong */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, @@ -7496,6 +7856,15 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x00, 0x04, 0x00, 0x00, 0x50, 0xDC, 0x00, 0x08, 0x4C, 0x4D, 0x54, 0x00, 0x49, 0x53, 0x54, 0x00, 0x4E, 0x50, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +/* Asia/Kolkata */ +0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, +0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x0D, 0xCA, 0xDB, 0x86, 0xB0, +0xCC, 0x05, 0x71, 0x18, 0xCC, 0x95, 0x32, 0xA8, 0xD2, 0x74, 0x12, 0x98, 0x01, 0x02, 0x03, 0x02, +0x00, 0x00, 0x52, 0xD0, 0x00, 0x00, 0x00, 0x00, 0x5B, 0x68, 0x00, 0x04, 0x00, 0x00, 0x4D, 0x58, +0x00, 0x09, 0x00, 0x00, 0x5B, 0x68, 0x01, 0x09, 0x48, 0x4D, 0x54, 0x00, 0x42, 0x55, 0x52, 0x54, +0x00, 0x49, 0x53, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + /* Asia/Krasnoyarsk */ 0x54, 0x5A, 0x69, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, @@ -10602,7 +10971,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3B, 0xC9, 0x0D, 0xC0, 0x3C, 0x8A, 0xCC, 0x30, 0x3D, 0xA8, 0xEF, 0xC0, 0x3E, 0x6A, 0xAE, 0x30, 0x3F, 0x88, 0xD1, 0xC0, 0x40, 0x53, 0xCA, 0xB0, 0x41, 0x68, 0xB3, 0xC0, 0x42, 0x33, 0xAC, 0xB0, 0x43, 0x48, 0x95, 0xC0, 0x44, 0x13, 0x8E, 0xB0, 0x45, 0x31, 0xB2, 0x40, 0x45, 0xF3, 0x70, 0xB0, -0x47, 0x11, 0x94, 0x40, 0x47, 0xD3, 0x52, 0xB0, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, +0x47, 0x11, 0x94, 0x40, 0x47, 0xEF, 0x02, 0x30, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, 0x4A, 0xD1, 0x58, 0x40, 0x4B, 0x9C, 0x51, 0x30, 0x4C, 0xB1, 0x3A, 0x40, 0x4D, 0x7C, 0x33, 0x30, 0x4E, 0x91, 0x1C, 0x40, 0x4F, 0x5C, 0x15, 0x30, 0x50, 0x7A, 0x38, 0xC0, 0x51, 0x3B, 0xF7, 0x30, 0x52, 0x5A, 0x1A, 0xC0, 0x53, 0x1B, 0xD9, 0x30, 0x54, 0x39, 0xFC, 0xC0, 0x55, 0x04, 0xF5, 0xB0, @@ -10657,7 +11026,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3A, 0xAA, 0xEA, 0x30, 0x3B, 0xC9, 0x0D, 0xC0, 0x3C, 0x8A, 0xCC, 0x30, 0x3D, 0xA8, 0xEF, 0xC0, 0x3E, 0x6A, 0xAE, 0x30, 0x3F, 0x88, 0xD1, 0xC0, 0x40, 0x53, 0xCA, 0xB0, 0x41, 0x68, 0xB3, 0xC0, 0x42, 0x33, 0xAC, 0xB0, 0x43, 0x48, 0x95, 0xC0, 0x44, 0x13, 0x8E, 0xB0, 0x45, 0x31, 0xB2, 0x40, -0x45, 0xF3, 0x70, 0xB0, 0x47, 0x11, 0x94, 0x40, 0x47, 0xD3, 0x52, 0xB0, 0x48, 0xF1, 0x76, 0x40, +0x45, 0xF3, 0x70, 0xB0, 0x47, 0x11, 0x94, 0x40, 0x47, 0xEF, 0x02, 0x30, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, 0x4A, 0xD1, 0x58, 0x40, 0x4B, 0x9C, 0x51, 0x30, 0x4C, 0xB1, 0x3A, 0x40, 0x4D, 0x7C, 0x33, 0x30, 0x4E, 0x91, 0x1C, 0x40, 0x4F, 0x5C, 0x15, 0x30, 0x50, 0x7A, 0x38, 0xC0, 0x51, 0x3B, 0xF7, 0x30, 0x52, 0x5A, 0x1A, 0xC0, 0x53, 0x1B, 0xD9, 0x30, 0x54, 0x39, 0xFC, 0xC0, @@ -10769,22 +11138,22 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x36, 0xFD, 0xB7, 0x50, 0x38, 0x1B, 0xCC, 0xD0, 0x38, 0xE6, 0xD3, 0xD0, 0x39, 0xFB, 0xAE, 0xD0, 0x3A, 0xC6, 0xB5, 0xD0, 0x3B, 0xDB, 0x90, 0xD0, 0x3C, 0xAF, 0xD2, 0x50, 0x3D, 0xBB, 0x72, 0xD0, 0x3E, 0x8F, 0xB4, 0x50, 0x3F, 0x9B, 0x54, 0xD0, 0x40, 0x6F, 0x96, 0x50, 0x45, 0x44, 0x35, 0x50, -0x45, 0xF3, 0x8C, 0xD0, 0x47, 0x24, 0x17, 0x50, 0x47, 0xD3, 0x6E, 0xD0, 0x49, 0x03, 0xF9, 0x50, -0x49, 0xB3, 0x50, 0xD0, 0x4A, 0xE3, 0xDB, 0x50, 0x4B, 0x9C, 0x6D, 0x50, 0x4C, 0xCC, 0xF7, 0xD0, -0x4D, 0x7C, 0x4F, 0x50, 0x4E, 0xAC, 0xD9, 0xD0, 0x4F, 0x5C, 0x31, 0x50, 0x50, 0x8C, 0xBB, 0xD0, -0x51, 0x3C, 0x13, 0x50, 0x52, 0x6C, 0x9D, 0xD0, 0x53, 0x1B, 0xF5, 0x50, 0x54, 0x4C, 0x7F, 0xD0, -0x54, 0xFB, 0xD7, 0x50, 0x56, 0x2C, 0x61, 0xD0, 0x56, 0xE4, 0xF3, 0xD0, 0x58, 0x15, 0x7E, 0x50, -0x58, 0xC4, 0xD5, 0xD0, 0x59, 0xF5, 0x60, 0x50, 0x5A, 0xA4, 0xB7, 0xD0, 0x5B, 0xD5, 0x42, 0x50, -0x5C, 0x84, 0x99, 0xD0, 0x5D, 0xB5, 0x24, 0x50, 0x5E, 0x64, 0x7B, 0xD0, 0x5F, 0x95, 0x06, 0x50, -0x60, 0x4D, 0x98, 0x50, 0x61, 0x7E, 0x22, 0xD0, 0x62, 0x2D, 0x7A, 0x50, 0x63, 0x5E, 0x04, 0xD0, -0x64, 0x0D, 0x5C, 0x50, 0x65, 0x3D, 0xE6, 0xD0, 0x65, 0xED, 0x3E, 0x50, 0x67, 0x1D, 0xC8, 0xD0, -0x67, 0xCD, 0x20, 0x50, 0x68, 0xFD, 0xAA, 0xD0, 0x69, 0xAD, 0x02, 0x50, 0x6A, 0xDD, 0x8C, 0xD0, -0x6B, 0x96, 0x1E, 0xD0, 0x6C, 0xC6, 0xA9, 0x50, 0x6D, 0x76, 0x00, 0xD0, 0x6E, 0xA6, 0x8B, 0x50, -0x6F, 0x55, 0xE2, 0xD0, 0x70, 0x86, 0x6D, 0x50, 0x71, 0x35, 0xC4, 0xD0, 0x72, 0x66, 0x4F, 0x50, -0x73, 0x15, 0xA6, 0xD0, 0x74, 0x46, 0x31, 0x50, 0x74, 0xFE, 0xC3, 0x50, 0x76, 0x2F, 0x4D, 0xD0, -0x76, 0xDE, 0xA5, 0x50, 0x78, 0x0F, 0x2F, 0xD0, 0x78, 0xBE, 0x87, 0x50, 0x79, 0xEF, 0x11, 0xD0, -0x7A, 0x9E, 0x69, 0x50, 0x7B, 0xCE, 0xF3, 0xD0, 0x7C, 0x7E, 0x4B, 0x50, 0x7D, 0xAE, 0xD5, 0xD0, -0x7E, 0x5E, 0x2D, 0x50, 0x7F, 0x8E, 0xB7, 0xD0, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, +0x45, 0xF3, 0x8C, 0xD0, 0x47, 0x24, 0x17, 0x50, 0x47, 0xDC, 0xA9, 0x50, 0x49, 0x03, 0xF9, 0x50, +0x49, 0xBC, 0x8B, 0x50, 0x4A, 0xE3, 0xDB, 0x50, 0x4B, 0xA5, 0xA7, 0xD0, 0x4C, 0xCC, 0xF7, 0xD0, +0x4D, 0x85, 0x89, 0xD0, 0x4E, 0xAC, 0xD9, 0xD0, 0x4F, 0x65, 0x6B, 0xD0, 0x50, 0x8C, 0xBB, 0xD0, +0x51, 0x45, 0x4D, 0xD0, 0x52, 0x6C, 0x9D, 0xD0, 0x53, 0x25, 0x2F, 0xD0, 0x54, 0x4C, 0x7F, 0xD0, +0x55, 0x05, 0x11, 0xD0, 0x56, 0x2C, 0x61, 0xD0, 0x56, 0xEE, 0x2E, 0x50, 0x58, 0x15, 0x7E, 0x50, +0x58, 0xCE, 0x10, 0x50, 0x59, 0xF5, 0x60, 0x50, 0x5A, 0xAD, 0xF2, 0x50, 0x5B, 0xD5, 0x42, 0x50, +0x5C, 0x8D, 0xD4, 0x50, 0x5D, 0xB5, 0x24, 0x50, 0x5E, 0x6D, 0xB6, 0x50, 0x5F, 0x95, 0x06, 0x50, +0x60, 0x56, 0xD2, 0xD0, 0x61, 0x7E, 0x22, 0xD0, 0x62, 0x36, 0xB4, 0xD0, 0x63, 0x5E, 0x04, 0xD0, +0x64, 0x16, 0x96, 0xD0, 0x65, 0x3D, 0xE6, 0xD0, 0x65, 0xF6, 0x78, 0xD0, 0x67, 0x1D, 0xC8, 0xD0, +0x67, 0xD6, 0x5A, 0xD0, 0x68, 0xFD, 0xAA, 0xD0, 0x69, 0xB6, 0x3C, 0xD0, 0x6A, 0xDD, 0x8C, 0xD0, +0x6B, 0x9F, 0x59, 0x50, 0x6C, 0xC6, 0xA9, 0x50, 0x6D, 0x7F, 0x3B, 0x50, 0x6E, 0xA6, 0x8B, 0x50, +0x6F, 0x5F, 0x1D, 0x50, 0x70, 0x86, 0x6D, 0x50, 0x71, 0x3E, 0xFF, 0x50, 0x72, 0x66, 0x4F, 0x50, +0x73, 0x1E, 0xE1, 0x50, 0x74, 0x46, 0x31, 0x50, 0x75, 0x07, 0xFD, 0xD0, 0x76, 0x2F, 0x4D, 0xD0, +0x76, 0xE7, 0xDF, 0xD0, 0x78, 0x0F, 0x2F, 0xD0, 0x78, 0xC7, 0xC1, 0xD0, 0x79, 0xEF, 0x11, 0xD0, +0x7A, 0xA7, 0xA3, 0xD0, 0x7B, 0xCE, 0xF3, 0xD0, 0x7C, 0x87, 0x85, 0xD0, 0x7D, 0xAE, 0xD5, 0xD0, +0x7E, 0x67, 0x67, 0xD0, 0x7F, 0x8E, 0xB7, 0xD0, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, @@ -15657,7 +16026,7 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x3A, 0xAA, 0xEA, 0x30, 0x3B, 0xC9, 0x0D, 0xC0, 0x3C, 0x8A, 0xCC, 0x30, 0x3D, 0xA8, 0xEF, 0xC0, 0x3E, 0x6A, 0xAE, 0x30, 0x3F, 0x88, 0xD1, 0xC0, 0x40, 0x53, 0xCA, 0xB0, 0x41, 0x68, 0xB3, 0xC0, 0x42, 0x33, 0xAC, 0xB0, 0x43, 0x48, 0x95, 0xC0, 0x44, 0x13, 0x8E, 0xB0, 0x45, 0x31, 0xB2, 0x40, -0x45, 0xF3, 0x70, 0xB0, 0x47, 0x11, 0x94, 0x40, 0x47, 0xD3, 0x52, 0xB0, 0x48, 0xF1, 0x76, 0x40, +0x45, 0xF3, 0x70, 0xB0, 0x47, 0x11, 0x94, 0x40, 0x47, 0xEF, 0x02, 0x30, 0x48, 0xF1, 0x76, 0x40, 0x49, 0xBC, 0x6F, 0x30, 0x4A, 0xD1, 0x58, 0x40, 0x4B, 0x9C, 0x51, 0x30, 0x4C, 0xB1, 0x3A, 0x40, 0x4D, 0x7C, 0x33, 0x30, 0x4E, 0x91, 0x1C, 0x40, 0x4F, 0x5C, 0x15, 0x30, 0x50, 0x7A, 0x38, 0xC0, 0x51, 0x3B, 0xF7, 0x30, 0x52, 0x5A, 0x1A, 0xC0, 0x53, 0x1B, 0xD9, 0x30, 0x54, 0x39, 0xFC, 0xC0, @@ -17067,4 +17436,4 @@ const unsigned char timelib_timezone_db_data_builtin[242022] = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x54, 0x43, 0x00, 0x00, 0x00, }; -const timelib_tzdb timezonedb_builtin = { "2007.9", 552, timezonedb_idx_builtin, timelib_timezone_db_data_builtin }; +const timelib_tzdb timezonedb_builtin = { "2008.2", 557, timezonedb_idx_builtin, timelib_timezone_db_data_builtin }; diff --git a/ext/date/lib/tm2unixtime.c b/ext/date/lib/tm2unixtime.c index b0cbff966..a4e6996b2 100644 --- a/ext/date/lib/tm2unixtime.c +++ b/ext/date/lib/tm2unixtime.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: tm2unixtime.c,v 1.13.2.3.2.2 2007/01/01 09:35:59 sebastian Exp $ */ +/* $Id: tm2unixtime.c,v 1.13.2.3.2.4 2008/01/26 16:26:47 derick Exp $ */ #include "timelib.h" @@ -98,6 +98,7 @@ static void do_adjust_for_weekday(timelib_time* time) } else { time->d -= (7 - (abs(time->relative.weekday) - current_dow)); } + time->have_weekday_relative = 0; } static void do_normalize(timelib_time* time) @@ -130,6 +131,7 @@ static void do_adjust_relative(timelib_time* time) do_normalize(time); memset(&(time->relative), 0, sizeof(time->relative)); + time->have_relative = 0; } static void do_adjust_special_weekday(timelib_time* time) diff --git a/ext/date/lib/unixtime2tm.c b/ext/date/lib/unixtime2tm.c index 2de7bcf2e..4b36e9c94 100644 --- a/ext/date/lib/unixtime2tm.c +++ b/ext/date/lib/unixtime2tm.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: unixtime2tm.c,v 1.12.2.4.2.3 2007/07/12 18:58:00 derick Exp $ */ +/* $Id: unixtime2tm.c,v 1.12.2.4.2.4 2007/12/31 07:20:05 sebastian Exp $ */ #include "timelib.h" diff --git a/ext/date/php_date.c b/ext/date/php_date.c index 597271241..25189b5c6 100644 --- a/ext/date/php_date.c +++ b/ext/date/php_date.c @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_date.c,v 1.43.2.45.2.51 2007/07/12 18:59:05 derick Exp $ */ +/* $Id: php_date.c,v 1.43.2.45.2.58 2008/04/16 17:21:46 derick Exp $ */ #include "php.h" #include "php_streams.h" @@ -266,7 +266,18 @@ struct _php_date_obj { struct _php_timezone_obj { zend_object std; - timelib_tzinfo *tz; + int initialized; + int type; + union { + timelib_tzinfo *tz; // TIMELIB_ZONETYPE_ID; + timelib_sll utc_offset; // TIMELIB_ZONETYPE_OFFSET + struct // TIMELIB_ZONETYPE_ABBR + { + timelib_sll utc_offset; + char *abbr; + int dst; + } z; + } tzi; }; #define DATE_SET_CONTEXT \ @@ -735,9 +746,9 @@ static char *date_format(char *format, int format_len, timelib_time *t, int loca offset->abbr = strdup(t->tz_abbr); } else if (t->zone_type == TIMELIB_ZONETYPE_OFFSET) { offset = timelib_time_offset_ctor(); - offset->offset = (t->z - (t->dst * 60)) * -60; + offset->offset = (t->z) * -60; offset->leap_secs = 0; - offset->is_dst = t->dst; + offset->is_dst = 0; offset->abbr = malloc(9); /* GMT±xxxx\0 */ snprintf(offset->abbr, 9, "GMT%c%02d%02d", localtime ? ((offset->offset < 0) ? '-' : '+') : '+', @@ -808,7 +819,26 @@ static char *date_format(char *format, int format_len, timelib_time *t, int loca ); break; case 'T': length = slprintf(buffer, 32, "%s", localtime ? offset->abbr : "GMT"); break; - case 'e': length = slprintf(buffer, 32, "%s", localtime ? t->tz_info->name : "UTC"); break; + case 'e': if (!localtime) { + length = slprintf(buffer, 32, "%s", "UTC"); + } else { + switch (t->zone_type) { + case TIMELIB_ZONETYPE_ID: + length = slprintf(buffer, 32, "%s", t->tz_info->name); + break; + case TIMELIB_ZONETYPE_ABBR: + length = slprintf(buffer, 32, "%s", offset->abbr); + break; + case TIMELIB_ZONETYPE_OFFSET: + length = slprintf(buffer, 32, "%c%02d:%02d", + ((offset->offset < 0) ? '-' : '+'), + abs(offset->offset / 3600), + abs((offset->offset % 3600) / 60) + ); + break; + } + } + break; case 'Z': length = slprintf(buffer, 32, "%d", localtime ? offset->offset : 0); break; /* full date/time */ @@ -1086,7 +1116,7 @@ PHP_FUNCTION(strtotime) now = timelib_time_ctor(); initial_ts = emalloc(25); - snprintf(initial_ts, 24, "@%ld", preset_ts); + snprintf(initial_ts, 24, "@%ld UTC", preset_ts); t = timelib_strtotime(initial_ts, strlen(initial_ts), NULL, DATE_TIMEZONEDB); /* we ignore the error here, as this should never fail */ timelib_update_ts(t, tzi); now->tz_info = tzi; @@ -1590,7 +1620,21 @@ static zend_object_value date_object_clone_timezone(zval *this_ptr TSRMLS_DC) zend_object_value new_ov = date_object_new_timezone_ex(old_obj->std.ce, &new_obj TSRMLS_CC); zend_objects_clone_members(&new_obj->std, new_ov, &old_obj->std, Z_OBJ_HANDLE_P(this_ptr) TSRMLS_CC); - new_obj->tz = old_obj->tz; + new_obj->type = old_obj->type; + new_obj->initialized = 1; + switch (new_obj->type) { + case TIMELIB_ZONETYPE_ID: + new_obj->tzi.tz = old_obj->tzi.tz; + break; + case TIMELIB_ZONETYPE_OFFSET: + new_obj->tzi.utc_offset = old_obj->tzi.utc_offset; + break; + case TIMELIB_ZONETYPE_ABBR: + new_obj->tzi.z.utc_offset = old_obj->tzi.z.utc_offset; + new_obj->tzi.z.dst = old_obj->tzi.z.dst; + new_obj->tzi.z.abbr = old_obj->tzi.z.abbr; + break; + } return new_ov; } @@ -1614,6 +1658,9 @@ static void date_object_free_storage_timezone(void *object TSRMLS_DC) { php_timezone_obj *intern = (php_timezone_obj *)object; + if (intern->type == TIMELIB_ZONETYPE_ABBR) { + free(intern->tzi.z.abbr); + } zend_object_std_dtor(&intern->std TSRMLS_CC); efree(object); } @@ -1632,12 +1679,14 @@ static zval * date_instantiate(zend_class_entry *pce, zval *object TSRMLS_DC) return object; } -static void date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int time_str_len, zval *timezone_object TSRMLS_DC) +static int date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int time_str_len, zval *timezone_object, int ctor TSRMLS_DC) { timelib_time *now; timelib_tzinfo *tzi; timelib_error_container *err = NULL; - int free_tzi = 0; + int free_tzi = 0, type = TIMELIB_ZONETYPE_ID, new_dst, errors_found = 0; + char *new_abbr; + timelib_sll new_offset; if (dateobj->time) { if (dateobj->time->tz_info) { @@ -1646,21 +1695,39 @@ static void date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int timelib_time_dtor(dateobj->time); } dateobj->time = timelib_strtotime(time_str_len ? time_str : "now", time_str_len ? time_str_len : sizeof("now") -1, &err, DATE_TIMEZONEDB); - if (err) { - if (err->error_count) { + + if (err && err->error_count) { + if (ctor) { /* spit out the first library error message, at least */ php_error_docref(NULL TSRMLS_CC, E_WARNING, "Failed to parse time string (%s) at position %d (%c): %s", time_str, - err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); + err->error_messages[0].position, err->error_messages[0].character, err->error_messages[0].message); } - timelib_error_container_dtor(err); + errors_found = 1; + } + timelib_error_container_dtor(err); + if (errors_found) { + return 0; } if (timezone_object) { php_timezone_obj *tzobj; tzobj = (php_timezone_obj *) zend_object_store_get_object(timezone_object TSRMLS_CC); - tzi = timelib_tzinfo_clone(tzobj->tz); - free_tzi = 1; + switch (tzobj->type) { + case TIMELIB_ZONETYPE_ID: + tzi = timelib_tzinfo_clone(tzobj->tzi.tz); + free_tzi = 1; + break; + case TIMELIB_ZONETYPE_OFFSET: + new_offset = tzobj->tzi.utc_offset; + break; + case TIMELIB_ZONETYPE_ABBR: + new_offset = tzobj->tzi.z.utc_offset; + new_dst = tzobj->tzi.z.dst; + new_abbr = strdup(tzobj->tzi.z.abbr); + break; + } + type = tzobj->type; } else if (dateobj->time->tz_info) { tzi = timelib_tzinfo_clone(dateobj->time->tz_info); free_tzi = 1; @@ -1669,8 +1736,20 @@ static void date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int } now = timelib_time_ctor(); - now->tz_info = tzi; - now->zone_type = TIMELIB_ZONETYPE_ID; + now->zone_type = type; + switch (type) { + case TIMELIB_ZONETYPE_ID: + now->tz_info = tzi; + break; + case TIMELIB_ZONETYPE_OFFSET: + now->z = new_offset; + break; + case TIMELIB_ZONETYPE_ABBR: + now->z = new_offset; + now->dst = new_dst; + now->tz_abbr = new_abbr; + break; + } timelib_unixtime2local(now, (timelib_sll) time(NULL)); timelib_fill_holes(dateobj->time, now, 0); @@ -1678,13 +1757,15 @@ static void date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, int dateobj->time->have_weekday_relative = dateobj->time->have_relative = 0; - if (now->tz_info != tzi) { + if (type == TIMELIB_ZONETYPE_ID && now->tz_info != tzi) { timelib_tzinfo_dtor(now->tz_info); } if (free_tzi) { timelib_tzinfo_dtor(tzi); } - timelib_time_dtor(now); + timelib_time_dtor(now); + + return 1; } /* {{{ proto DateTime date_create([string time[, DateTimeZone object]]) @@ -1701,7 +1782,9 @@ PHP_FUNCTION(date_create) } date_instantiate(date_ce_date, return_value TSRMLS_CC); - date_initialize(zend_object_store_get_object(return_value TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); + if (!date_initialize(zend_object_store_get_object(return_value TSRMLS_CC), time_str, time_str_len, timezone_object, 0 TSRMLS_CC)) { + RETURN_FALSE; + } } /* }}} */ @@ -1716,7 +1799,7 @@ PHP_METHOD(DateTime, __construct) php_set_error_handling(EH_THROW, NULL TSRMLS_CC); if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "|sO", &time_str, &time_str_len, &timezone_object, date_ce_timezone)) { - date_initialize(zend_object_store_get_object(getThis() TSRMLS_CC), time_str, time_str_len, timezone_object TSRMLS_CC); + date_initialize(zend_object_store_get_object(getThis() TSRMLS_CC), time_str, time_str_len, timezone_object, 1 TSRMLS_CC); } php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); } @@ -1889,10 +1972,24 @@ PHP_FUNCTION(date_timezone_get) } dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); DATE_CHECK_INITIALIZED(dateobj->time, DateTime); - if (dateobj->time->is_localtime && dateobj->time->tz_info) { + if (dateobj->time->is_localtime/* && dateobj->time->tz_info*/) { date_instantiate(date_ce_timezone, return_value TSRMLS_CC); tzobj = (php_timezone_obj *) zend_object_store_get_object(return_value TSRMLS_CC); - tzobj->tz = timelib_tzinfo_clone(dateobj->time->tz_info); + tzobj->initialized = 1; + tzobj->type = dateobj->time->zone_type; + switch (dateobj->time->zone_type) { + case TIMELIB_ZONETYPE_ID: + tzobj->tzi.tz = dateobj->time->tz_info; + break; + case TIMELIB_ZONETYPE_OFFSET: + tzobj->tzi.utc_offset = dateobj->time->z; + break; + case TIMELIB_ZONETYPE_ABBR: + tzobj->tzi.z.utc_offset = dateobj->time->z; + tzobj->tzi.z.dst = dateobj->time->dst; + tzobj->tzi.z.abbr = strdup(dateobj->time->tz_abbr); + break; + } } else { RETURN_FALSE; } @@ -1915,10 +2012,13 @@ PHP_FUNCTION(date_timezone_set) dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); DATE_CHECK_INITIALIZED(dateobj->time, DateTime); tzobj = (php_timezone_obj *) zend_object_store_get_object(timezone_object TSRMLS_CC); + if (tzobj->type != TIMELIB_ZONETYPE_ID) { + php_error_docref(NULL TSRMLS_CC, E_WARNING, "Can only do this for zones with ID for now"); + } if (dateobj->time->tz_info) { timelib_tzinfo_dtor(dateobj->time->tz_info); } - timelib_set_timezone(dateobj->time, timelib_tzinfo_clone(tzobj->tz)); + timelib_set_timezone(dateobj->time, timelib_tzinfo_clone(tzobj->tzi.tz)); timelib_unixtime2local(dateobj->time, dateobj->time->sse); } /* }}} */ @@ -1937,10 +2037,20 @@ PHP_FUNCTION(date_offset_get) } dateobj = (php_date_obj *) zend_object_store_get_object(object TSRMLS_CC); DATE_CHECK_INITIALIZED(dateobj->time, DateTime); - if (dateobj->time->is_localtime && dateobj->time->tz_info) { - offset = timelib_get_time_zone_info(dateobj->time->sse, dateobj->time->tz_info); - RETVAL_LONG(offset->offset); - timelib_time_offset_dtor(offset); + if (dateobj->time->is_localtime/* && dateobj->time->tz_info*/) { + switch (dateobj->time->zone_type) { + case TIMELIB_ZONETYPE_ID: + offset = timelib_get_time_zone_info(dateobj->time->sse, dateobj->time->tz_info); + RETVAL_LONG(offset->offset); + timelib_time_offset_dtor(offset); + break; + case TIMELIB_ZONETYPE_OFFSET: + RETVAL_LONG(dateobj->time->z * -60); + break; + case TIMELIB_ZONETYPE_ABBR: + RETVAL_LONG((dateobj->time->z - (60 * dateobj->time->dst)) * -60); + break; + } return; } else { RETURN_LONG(0); @@ -2042,6 +2152,7 @@ PHP_FUNCTION(timezone_open) char *tz; int tz_len; timelib_tzinfo *tzi = NULL; + php_timezone_obj *tzobj; if (zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &tz, &tz_len) == FAILURE) { RETURN_FALSE; @@ -2049,7 +2160,10 @@ PHP_FUNCTION(timezone_open) if (SUCCESS != timezone_initialize(&tzi, tz TSRMLS_CC)) { RETURN_FALSE; } - ((php_timezone_obj *) zend_object_store_get_object(date_instantiate(date_ce_timezone, return_value TSRMLS_CC) TSRMLS_CC))->tz = tzi; + tzobj = zend_object_store_get_object(date_instantiate(date_ce_timezone, return_value TSRMLS_CC) TSRMLS_CC); + tzobj->type = TIMELIB_ZONETYPE_ID; + tzobj->tzi.tz = tzi; + tzobj->initialized = 1; } /* }}} */ @@ -2061,11 +2175,17 @@ PHP_METHOD(DateTimeZone, __construct) char *tz; int tz_len; timelib_tzinfo *tzi = NULL; + php_timezone_obj *tzobj; php_set_error_handling(EH_THROW, NULL TSRMLS_CC); if (SUCCESS == zend_parse_parameters(ZEND_NUM_ARGS() TSRMLS_CC, "s", &tz, &tz_len)) { if (SUCCESS == timezone_initialize(&tzi, tz TSRMLS_CC)) { - ((php_timezone_obj *) zend_object_store_get_object(getThis() TSRMLS_CC))->tz = tzi; + tzobj = zend_object_store_get_object(getThis() TSRMLS_CC); + tzobj->type = TIMELIB_ZONETYPE_ID; + tzobj->tzi.tz = tzi; + tzobj->initialized = 1; + } else { + ZVAL_NULL(getThis()); } } php_set_error_handling(EH_NORMAL, NULL TSRMLS_CC); @@ -2084,9 +2204,28 @@ PHP_FUNCTION(timezone_name_get) RETURN_FALSE; } tzobj = (php_timezone_obj *) zend_object_store_get_object(object TSRMLS_CC); - DATE_CHECK_INITIALIZED(tzobj->tz, DateTimeZone); + DATE_CHECK_INITIALIZED(tzobj->initialized, DateTimeZone); + + switch (tzobj->type) { + case TIMELIB_ZONETYPE_ID: + RETURN_STRING(tzobj->tzi.tz->name, 1); + break; + case TIMELIB_ZONETYPE_OFFSET: { + char *tmpstr = emalloc(sizeof("UTC+05:00")); + timelib_sll utc_offset = tzobj->tzi.utc_offset; - RETURN_STRING(tzobj->tz->name, 1); + snprintf(tmpstr, sizeof("+05:00"), "%c%02d:%02d", + utc_offset > 0 ? '-' : '+', + abs(utc_offset / 60), + abs((utc_offset % 60))); + + RETURN_STRING(tmpstr, 0); + } + break; + case TIMELIB_ZONETYPE_ABBR: + RETURN_STRING(tzobj->tzi.z.abbr, 1); + break; + } } /* }}} */ @@ -2128,13 +2267,23 @@ PHP_FUNCTION(timezone_offset_get) RETURN_FALSE; } tzobj = (php_timezone_obj *) zend_object_store_get_object(object TSRMLS_CC); - DATE_CHECK_INITIALIZED(tzobj->tz, DateTimeZone); + DATE_CHECK_INITIALIZED(tzobj->initialized, DateTimeZone); dateobj = (php_date_obj *) zend_object_store_get_object(dateobject TSRMLS_CC); DATE_CHECK_INITIALIZED(dateobj->time, DateTime); - offset = timelib_get_time_zone_info(dateobj->time->sse, tzobj->tz); - RETVAL_LONG(offset->offset); - timelib_time_offset_dtor(offset); + switch (tzobj->type) { + case TIMELIB_ZONETYPE_ID: + offset = timelib_get_time_zone_info(dateobj->time->sse, tzobj->tzi.tz); + RETVAL_LONG(offset->offset); + timelib_time_offset_dtor(offset); + break; + case TIMELIB_ZONETYPE_OFFSET: + RETURN_LONG(tzobj->tzi.utc_offset * -60); + break; + case TIMELIB_ZONETYPE_ABBR: + RETURN_LONG((tzobj->tzi.z.utc_offset - (tzobj->tzi.z.dst*60)) * -60); + break; + } } /* }}} */ @@ -2151,17 +2300,20 @@ PHP_FUNCTION(timezone_transitions_get) RETURN_FALSE; } tzobj = (php_timezone_obj *) zend_object_store_get_object(object TSRMLS_CC); - DATE_CHECK_INITIALIZED(tzobj->tz, DateTimeZone); + DATE_CHECK_INITIALIZED(tzobj->initialized, DateTimeZone); + if (tzobj->type != TIMELIB_ZONETYPE_ID) { + RETURN_FALSE; + } array_init(return_value); - for (i = 0; i < tzobj->tz->timecnt; ++i) { + for (i = 0; i < tzobj->tzi.tz->timecnt; ++i) { MAKE_STD_ZVAL(element); array_init(element); - add_assoc_long(element, "ts", tzobj->tz->trans[i]); - add_assoc_string(element, "time", php_format_date(DATE_FORMAT_ISO8601, 13, tzobj->tz->trans[i], 0 TSRMLS_CC), 0); - add_assoc_long(element, "offset", tzobj->tz->type[tzobj->tz->trans_idx[i]].offset); - add_assoc_bool(element, "isdst", tzobj->tz->type[tzobj->tz->trans_idx[i]].isdst); - add_assoc_string(element, "abbr", &tzobj->tz->timezone_abbr[tzobj->tz->type[tzobj->tz->trans_idx[i]].abbr_idx], 1); + add_assoc_long(element, "ts", tzobj->tzi.tz->trans[i]); + add_assoc_string(element, "time", php_format_date(DATE_FORMAT_ISO8601, 13, tzobj->tzi.tz->trans[i], 0 TSRMLS_CC), 0); + add_assoc_long(element, "offset", tzobj->tzi.tz->type[tzobj->tzi.tz->trans_idx[i]].offset); + add_assoc_bool(element, "isdst", tzobj->tzi.tz->type[tzobj->tzi.tz->trans_idx[i]].isdst); + add_assoc_string(element, "abbr", &tzobj->tzi.tz->timezone_abbr[tzobj->tzi.tz->type[tzobj->tzi.tz->trans_idx[i]].abbr_idx], 1); add_next_index_zval(return_value, element); } diff --git a/ext/date/php_date.h b/ext/date/php_date.h index ac01af728..79e2785dc 100644 --- a/ext/date/php_date.h +++ b/ext/date/php_date.h @@ -2,7 +2,7 @@ +----------------------------------------------------------------------+ | PHP Version 5 | +----------------------------------------------------------------------+ - | Copyright (c) 1997-2007 The PHP Group | + | Copyright (c) 1997-2008 The PHP Group | +----------------------------------------------------------------------+ | This source file is subject to version 3.01 of the PHP license, | | that is bundled with this package in the file LICENSE, and is | @@ -16,7 +16,7 @@ +----------------------------------------------------------------------+ */ -/* $Id: php_date.h,v 1.17.2.11.2.3 2007/01/01 09:35:48 sebastian Exp $ */ +/* $Id: php_date.h,v 1.17.2.11.2.4 2007/12/31 07:20:05 sebastian Exp $ */ #ifndef PHP_DATE_H #define PHP_DATE_H diff --git a/ext/date/tests/bug40743.phpt b/ext/date/tests/bug40743.phpt new file mode 100644 index 000000000..f3ce17124 --- /dev/null +++ b/ext/date/tests/bug40743.phpt @@ -0,0 +1,40 @@ +--TEST-- +Bug #40743 (DateTime ignores the TimeZone object passed to the constructor) +--FILE-- +<?php +$dt = new DateTime('@1200506699', new DateTimeZone('Europe/Berlin')); +echo $dt->format(DATE_RFC822), "\n"; +echo $dt->format('T e Z'), "\n"; +echo "-----\n"; + +date_default_timezone_set('America/New_York'); + +$dt = new DateTime('16 Jan 08 13:04:59'); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; + +$dt = new DateTime('@1200506699'); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; + +$dt = new DateTime('@1200506699'); +$dt->setTimezone( new DateTimeZone( 'America/New_York' ) ); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; + +$dt = new DateTime('@1200506699', new DateTimeZone('Europe/Berlin')); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; + +$dt = new DateTime('16 Jan 08 13:04:59 America/Chicago'); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; + +$dt = new DateTime('16 Jan 08 13:04:59 America/Chicago', new DateTimeZone('Europe/Berlin')); +echo $dt->format(DATE_RFC822 . " e T O U"), "\n"; +?> +--EXPECT-- +Wed, 16 Jan 08 18:04:59 +0000 +GMT+0000 +00:00 0 +----- +Wed, 16 Jan 08 13:04:59 -0500 America/New_York EST -0500 1200506699 +Wed, 16 Jan 08 18:04:59 +0000 +00:00 GMT+0000 +0000 1200506699 +Wed, 16 Jan 08 13:04:59 -0500 America/New_York EST -0500 1200506699 +Wed, 16 Jan 08 18:04:59 +0000 +00:00 GMT+0000 +0000 1200506699 +Wed, 16 Jan 08 13:04:59 -0600 America/Chicago CST -0600 1200510299 +Wed, 16 Jan 08 13:04:59 -0600 America/Chicago CST -0600 1200510299 diff --git a/ext/date/tests/bug41523-64bit.phpt b/ext/date/tests/bug41523-64bit.phpt new file mode 100644 index 000000000..9b4e90061 --- /dev/null +++ b/ext/date/tests/bug41523-64bit.phpt @@ -0,0 +1,47 @@ +--TEST-- +Bug #41523 (strtotime('0000-00-00 00:00:00') is parsed as 1999-11-30) (64 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE != 8 ? "skip 64-bit only" : "OK"; ?> +--FILE-- +<?php +date_default_timezone_set("UTC"); + +var_dump( date_parse('0000-00-00 00:00:00') ); +var_dump( strtotime('0000-00-00 00:00:00') ); +var_dump( $dt = new DateTime('0000-00-00 00:00:00') ); +echo $dt->format( DateTime::ISO8601 ), "\n"; + +?> +--EXPECT-- +array(12) { + ["year"]=> + int(0) + ["month"]=> + int(0) + ["day"]=> + int(0) + ["hour"]=> + int(0) + ["minute"]=> + int(0) + ["second"]=> + int(0) + ["fraction"]=> + float(0) + ["warning_count"]=> + int(0) + ["warnings"]=> + array(0) { + } + ["error_count"]=> + int(0) + ["errors"]=> + array(0) { + } + ["is_localtime"]=> + bool(false) +} +int(-62169984000) +object(DateTime)#1 (0) { +} +-0001-11-30T00:00:00+0000 diff --git a/ext/date/tests/bug41523.phpt b/ext/date/tests/bug41523.phpt index c8aa00fd7..5b0d5bd19 100644 --- a/ext/date/tests/bug41523.phpt +++ b/ext/date/tests/bug41523.phpt @@ -1,5 +1,7 @@ --TEST-- -Bug #41523 (strtotime('0000-00-00 00:00:00') is parsed as 1999-11-30) +Bug #41523 (strtotime('0000-00-00 00:00:00') is parsed as 1999-11-30) (32 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE == 8 ? "skip 32-bit only" : "OK"; ?> --FILE-- <?php date_default_timezone_set("UTC"); diff --git a/ext/date/tests/bug41599.phpt b/ext/date/tests/bug41599.phpt new file mode 100644 index 000000000..e4febe2cd --- /dev/null +++ b/ext/date/tests/bug41599.phpt @@ -0,0 +1,27 @@ +--TEST-- +Bug #41599 (setTime() fails after modify() is used) +--FILE-- +<?php +date_default_timezone_set('Europe/London'); + +$start = new DateTime('2008-01-17 last Monday'); +echo $start->format('Y-m-d H:i:s'),PHP_EOL; +//good + +$start->modify('Tuesday'); +echo $start->format('Y-m-d H:i:s'),PHP_EOL; +//good + +$start->setTime(4, 0, 0); +echo $start->format('Y-m-d H:i:s'),PHP_EOL; +//jumped to next Sunday + +$start->setTime(8, 0, 0); +echo $start->format('Y-m-d H:i:s'),PHP_EOL; +//jumped to next Sunday again +?> +--EXPECT-- +2008-01-14 00:00:00 +2008-01-15 00:00:00 +2008-01-15 04:00:00 +2008-01-15 08:00:00 diff --git a/ext/date/tests/bug42910.phpt b/ext/date/tests/bug42910.phpt new file mode 100644 index 000000000..1bd079081 --- /dev/null +++ b/ext/date/tests/bug42910.phpt @@ -0,0 +1,30 @@ +--TEST-- +Bug #42910 (Constructing DateTime with TimeZone Indicator invalidates DateTimeZone) +--FILE-- +<?php + date_default_timezone_set('America/Los_Angeles'); + $foo = new DateTime('2007-03-11'); + $bar = new DateTime('2007-03-11T00:00:00-0800'); + + print $foo->format(DateTime::ISO8601) . ' - ' . $foo->getTimezone()->getName() . ' - ' . $foo->format('U') . "\r\n"; + print $bar->format(DateTime::ISO8601) . ' - ' . $bar->getTimezone()->getName() . ' - ' . $bar->format('U') . "\r\n"; + + $foo->setDate(2007, 03, 12); + $bar->setDate(2007, 03, 12); + + print $foo->format(DateTime::ISO8601) . ' - ' . $foo->getTimezone()->getName() . ' - ' . $foo->format('U') . "\r\n"; + print $bar->format(DateTime::ISO8601) . ' - ' . $bar->getTimezone()->getName() . ' - ' . $bar->format('U') . "\r\n"; + +// -------------- + + date_default_timezone_set('Australia/Sydney'); + + $date= date_create('2007-11-04 12:00:00+0200'); + var_dump(date_format($date, 'O e')); +?> +--EXPECT-- +2007-03-11T00:00:00-0800 - America/Los_Angeles - 1173600000 +2007-03-11T00:00:00-0800 - -08:00 - 1173600000 +2007-03-12T00:00:00-0700 - America/Los_Angeles - 1173682800 +2007-03-12T00:00:00-0800 - -08:00 - 1173686400 +string(12) "+0200 +02:00" diff --git a/ext/date/tests/bug43003.phpt b/ext/date/tests/bug43003.phpt new file mode 100644 index 000000000..8070358b9 --- /dev/null +++ b/ext/date/tests/bug43003.phpt @@ -0,0 +1,27 @@ +--TEST-- +Bug #43003 (Invalid timezone reported for DateTime objects constructed using a timestamp) +--FILE-- +<?php +date_default_timezone_set('Europe/Oslo'); + +$oDateTest = new DateTime("@0", new DateTimeZone(date_default_timezone_get())); +echo $oDateTest->getTimezone()->getName().": " . $oDateTest->format("Y-m-d H:i:s")."\n"; + +$oDateTest->setTimezone(new DateTimeZone("UTC")); +echo $oDateTest->getTimezone()->getName().": " . $oDateTest->format("Y-m-d H:i:s")."\n"; + +$oDateTest->setTimezone(new DateTimeZone(date_default_timezone_get())); +echo $oDateTest->getTimezone()->getName().": " . $oDateTest->format("Y-m-d H:i:s")."\n"; + +$oDateTest = new DateTime("@0"); +echo $oDateTest->getTimezone()->getName().": " . $oDateTest->format("Y-m-d H:i:s")."\n"; + +$oDateTest->setTimezone( new DateTimeZone(date_default_timezone_get())); +echo $oDateTest->getTimezone()->getName().": " . $oDateTest->format("Y-m-d H:i:s")."\n"; +?> +--EXPECT-- ++00:00: 1970-01-01 00:00:00 +UTC: 1970-01-01 00:00:00 +Europe/Oslo: 1970-01-01 01:00:00 ++00:00: 1970-01-01 00:00:00 +Europe/Oslo: 1970-01-01 01:00:00 diff --git a/ext/date/tests/bug43527.phpt b/ext/date/tests/bug43527.phpt new file mode 100644 index 000000000..cc69def7b --- /dev/null +++ b/ext/date/tests/bug43527.phpt @@ -0,0 +1,10 @@ +--TEST-- +Bug #43527 (DateTime created from a timestamp reports environment timezone) +--FILE-- +<?php +date_default_timezone_set("Etc/GMT+1"); +$datetime = new DateTime('Fri, 07 Dec 2007 19:05:14 +1000'); +echo $datetime->getTimezone()->getName(), "\n"; +?> +--EXPECT-- ++10:00 diff --git a/ext/date/tests/bug43808.phpt b/ext/date/tests/bug43808.phpt new file mode 100644 index 000000000..fe8102199 --- /dev/null +++ b/ext/date/tests/bug43808.phpt @@ -0,0 +1,14 @@ +--TEST-- +Bug #43808 (date_create never fails (even when it should)) +--FILE-- +<?php +$date = date_create('asdfasdf'); + +if ($date instanceof DateTime) { + echo "this is wrong, should be bool"; +} + +var_dump( $date ); +?> +--EXPECT-- +bool(false) diff --git a/ext/date/tests/bug44742.phpt b/ext/date/tests/bug44742.phpt new file mode 100644 index 000000000..48952b4e6 --- /dev/null +++ b/ext/date/tests/bug44742.phpt @@ -0,0 +1,36 @@ +--TEST-- +Bug #44742 (timezone_offset_get() causes segmentation faults) +--FILE-- +<?php +date_default_timezone_set('Europe/London'); +$dates = array( + "2008-04-11 00:00:00+0000", + "2008-04-11 00:00:00+0200", + "2008-04-11 00:00:00+0330", + "2008-04-11 00:00:00-0500", + "2008-04-11 00:00:00-1130", + "2008-04-11 00:00:00 CEST", + "2008-04-11 00:00:00 CET", + "2008-04-11 00:00:00 UTC", + "2008-04-11 00:00:00 America/New_York", + "2008-04-11 00:00:00 Europe/Oslo", + "2008-04-11 00:00:00 Asia/Singapore", +); +foreach ($dates as $date) +{ + $date = date_create($date); + var_dump(timezone_offset_get(date_timezone_get($date), $date)); +} +?> +--EXPECT-- +int(0) +int(7200) +int(12600) +int(-18000) +int(-41400) +int(7200) +int(3600) +int(0) +int(-14400) +int(7200) +int(28800) diff --git a/ext/date/tests/mktime-3-64bit.phpt b/ext/date/tests/mktime-3-64bit.phpt new file mode 100644 index 000000000..bb3fb2df7 --- /dev/null +++ b/ext/date/tests/mktime-3-64bit.phpt @@ -0,0 +1,56 @@ +--TEST-- +mktime() [3] (64-bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE != 8 ? "skip 64-bit only" : "OK" ?> +--INI-- +error_reporting=2047 +--FILE-- +<?php +$tzs = array("America/Toronto", "Europe/Oslo"); +$years = array(0, 69, 70, 71, 99, 100, 105, 1900, 1901, 1902, 1999, 2000, 2001); + +foreach ($tzs as $tz) { + echo $tz, "\n"; + date_default_timezone_set($tz); + foreach ($years as $year) { + printf("Y: %4d - ", $year); + $ret = mktime(1, 1, 1, 1, 1, $year); + if ($ret == FALSE) { + echo "out of range\n"; + } else { + echo date("F ".DATE_ISO8601, $ret), "\n"; + } + } + echo "\n"; +} +?> +--EXPECT-- +America/Toronto +Y: 0 - January 2000-01-01T01:01:01-0500 +Y: 69 - January 2069-01-01T01:01:01-0500 +Y: 70 - January 1970-01-01T01:01:01-0500 +Y: 71 - January 1971-01-01T01:01:01-0500 +Y: 99 - January 1999-01-01T01:01:01-0500 +Y: 100 - January 2000-01-01T01:01:01-0500 +Y: 105 - January 2005-01-01T01:01:01-0500 +Y: 1900 - January 1900-01-01T01:01:01-0500 +Y: 1901 - January 1901-01-01T01:01:01-0500 +Y: 1902 - January 1902-01-01T01:01:01-0500 +Y: 1999 - January 1999-01-01T01:01:01-0500 +Y: 2000 - January 2000-01-01T01:01:01-0500 +Y: 2001 - January 2001-01-01T01:01:01-0500 + +Europe/Oslo +Y: 0 - January 2000-01-01T01:01:01+0100 +Y: 69 - January 2069-01-01T01:01:01+0100 +Y: 70 - January 1970-01-01T01:01:01+0100 +Y: 71 - January 1971-01-01T01:01:01+0100 +Y: 99 - January 1999-01-01T01:01:01+0100 +Y: 100 - January 2000-01-01T01:01:01+0100 +Y: 105 - January 2005-01-01T01:01:01+0100 +Y: 1900 - January 1900-01-01T01:01:01+0100 +Y: 1901 - January 1901-01-01T01:01:01+0100 +Y: 1902 - January 1902-01-01T01:01:01+0100 +Y: 1999 - January 1999-01-01T01:01:01+0100 +Y: 2000 - January 2000-01-01T01:01:01+0100 +Y: 2001 - January 2001-01-01T01:01:01+0100 diff --git a/ext/date/tests/mktime-3.phpt b/ext/date/tests/mktime-3.phpt index 0d19074fc..3201def6c 100644 --- a/ext/date/tests/mktime-3.phpt +++ b/ext/date/tests/mktime-3.phpt @@ -1,5 +1,7 @@ --TEST-- -mktime() [3] +mktime() [3] (32-bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE == 8 ? "skip 32-bit only" : "OK" ?> --INI-- error_reporting=2047 --FILE-- diff --git a/ext/date/tests/oo_002.phpt b/ext/date/tests/oo_002.phpt index e619d9dfe..0cd9187b1 100644 --- a/ext/date/tests/oo_002.phpt +++ b/ext/date/tests/oo_002.phpt @@ -6,7 +6,7 @@ date.timezone=Europe/Berlin <?php class _d extends DateTime {} class _t extends DateTimeZone {} -$d = new _d("1pm Aug 1 GMT"); +$d = new _d("1pm Aug 1 GMT 2007"); var_dump($d->format(DateTime::RFC822)); $c = clone $d; var_dump($c->format(DateTime::RFC822)); diff --git a/ext/date/tests/strtotime-mysql-64bit.phpt b/ext/date/tests/strtotime-mysql-64bit.phpt new file mode 100644 index 000000000..38e7f15df --- /dev/null +++ b/ext/date/tests/strtotime-mysql-64bit.phpt @@ -0,0 +1,28 @@ +--TEST-- +strtotime() and mysql timestamps (64 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE != 8 ? "skip 64-bit only" : "OK"; ?> +--FILE-- +<?php +date_default_timezone_set('UTC'); + +/* Format: YYYYMMDDHHMMSS */ +$d[] = '19970523091528'; +$d[] = '20001231185859'; +$d[] = '20800410101010'; // overflow.. + +foreach($d as $date) { + $time = strtotime($date); + + if (is_integer($time)) { + var_dump(date('r', $time)); + } else { + var_dump($time); + } +} +?> +--EXPECT-- +string(31) "Fri, 23 May 1997 09:15:28 +0000" +string(31) "Sun, 31 Dec 2000 18:58:59 +0000" +string(31) "Wed, 10 Apr 2080 10:10:10 +0000" + diff --git a/ext/date/tests/strtotime-mysql.phpt b/ext/date/tests/strtotime-mysql.phpt index 88a8f10fe..e5935bb16 100755 --- a/ext/date/tests/strtotime-mysql.phpt +++ b/ext/date/tests/strtotime-mysql.phpt @@ -1,5 +1,7 @@ --TEST-- -strtotime() and mysql timestamps +strtotime() and mysql timestamps (32 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE == 8 ? "skip 32-bit only" : "OK"; ?> --FILE-- <?php date_default_timezone_set('UTC'); diff --git a/ext/date/tests/strtotime3-64bit.phpt b/ext/date/tests/strtotime3-64bit.phpt new file mode 100644 index 000000000..7dc081635 --- /dev/null +++ b/ext/date/tests/strtotime3-64bit.phpt @@ -0,0 +1,71 @@ +--TEST-- +strtotime() function (64 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE != 8 ? "skip 64-bit only" : "OK"; ?> +--FILE-- +<?php +date_default_timezone_set('Europe/Lisbon'); +$time = 1150494719; // 16/June/2006 + +$strs = array( + '', + " \t\r\n000", + 'yesterday', + '22:49:12', + '22:49:12 bogusTZ', + '22.49.12.42GMT', + '22.49.12.42bogusTZ', + 't0222', + 't0222 t0222', + '022233', + '022233 bogusTZ', + '2-3-2004', + '2.3.2004', + '20060212T23:12:23UTC', + '20060212T23:12:23 bogusTZ', + '2006167', //pgydotd + 'Jan-15-2006', //pgtextshort + '2006-Jan-15', //pgtextreverse + '10/Oct/2000:13:55:36 +0100', //clf + '10/Oct/2000:13:55:36 +00100', //clf + '2006', + '1986', // year + 'JAN', + 'January', +); + +foreach ($strs as $str) { + $t = strtotime($str, $time); + if (is_integer($t)) { + var_dump(date(DATE_RFC2822, $t)); + } else { + var_dump($t); + } +} + +?> +--EXPECT-- +bool(false) +bool(false) +string(31) "Thu, 15 Jun 2006 00:00:00 +0100" +string(31) "Fri, 16 Jun 2006 22:49:12 +0100" +bool(false) +string(31) "Fri, 16 Jun 2006 23:49:12 +0100" +bool(false) +string(31) "Fri, 16 Jun 2006 02:22:00 +0100" +string(31) "Mon, 16 Jun 0222 02:22:00 -0036" +string(31) "Fri, 16 Jun 2006 02:22:33 +0100" +bool(false) +string(31) "Tue, 02 Mar 2004 00:00:00 +0000" +string(31) "Tue, 02 Mar 2004 00:00:00 +0000" +string(31) "Sun, 12 Feb 2006 23:12:23 +0000" +bool(false) +string(31) "Fri, 16 Jun 2006 00:00:00 +0100" +string(31) "Sun, 15 Jan 2006 00:00:00 +0000" +string(31) "Sun, 15 Jan 2006 00:00:00 +0000" +string(31) "Tue, 10 Oct 2000 13:55:36 +0100" +bool(false) +string(31) "Fri, 16 Jun 2006 20:06:00 +0100" +string(31) "Mon, 16 Jun 1986 22:51:59 +0100" +string(31) "Mon, 16 Jan 2006 00:00:00 +0000" +string(31) "Mon, 16 Jan 2006 00:00:00 +0000" diff --git a/ext/date/tests/strtotime3.phpt b/ext/date/tests/strtotime3.phpt index c5d13d8a6..6aa5640f6 100644 --- a/ext/date/tests/strtotime3.phpt +++ b/ext/date/tests/strtotime3.phpt @@ -1,5 +1,7 @@ --TEST-- -strtotime() function +strtotime() function (32 bit) +--SKIPIF-- +<?php echo PHP_INT_SIZE == 8 ? "skip 32-bit only" : "OK"; ?> --FILE-- <?php date_default_timezone_set('Europe/Lisbon'); diff --git a/ext/date/tests/timestamp-in-dst.phpt b/ext/date/tests/timestamp-in-dst.phpt new file mode 100644 index 000000000..5b66351e1 --- /dev/null +++ b/ext/date/tests/timestamp-in-dst.phpt @@ -0,0 +1,11 @@ +--TEST-- +Format timestamp in DST test +--INI-- +date.timezone=CEST +--FILE-- +<?php +error_reporting(E_ALL); // hide e_strict warning about timezones +var_dump( date_create( '@1202996091' )->format( 'c' ) ); +?> +--EXPECT-- +string(25) "2008-02-14T13:34:51+00:00" |
