summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYasuo Ohgaki <yohgaki@php.net>2013-10-29 17:24:48 +0900
committerYasuo Ohgaki <yohgaki@php.net>2013-10-29 17:24:48 +0900
commit49b3fef86af93e506dd83c37f9c999080e54f083 (patch)
tree31841d0e7297a9626cd6452790942a9ff7f6fb8e
parent6af3683a4c2eefc5bdeba0b495635be9827afea0 (diff)
parenta7fc8eecb0a23a21666ddab2eb09a54a3e9690f5 (diff)
downloadphp-git-49b3fef86af93e506dd83c37f9c999080e54f083.tar.gz
Merge branch 'PHP-5.5' of git.php.net:php-src into PHP-5.5
* 'PHP-5.5' of git.php.net:php-src: add bundled libzip LICENSE, as required by BSD License terms - Updated to version 2013.8 (2013h) Use zval* instead of zval** Increased limit for opcache.max_accelerated_files to 1,000,000. (Chris) Improved performance of array_merge() by eliminating useless copying Improved performance of func_get_args() by eliminating useless copying Link to more readmes increase backlog to the highest value everywhere Update NEWS Fixed bug #65950 Field name truncation if the field name is bigger than 32 characters - Updated to version 2013.7 (2013g) Increment version number, since this will be 5.5.6. Added Zend Debugger to the note about the load order (by trash4you at online dot de)
-rw-r--r--NEWS10
-rw-r--r--README.md11
-rw-r--r--Zend/zend_builtin_functions.c15
-rw-r--r--Zend/zend_vm_def.h28
-rw-r--r--Zend/zend_vm_execute.h336
-rw-r--r--configure.in2
-rw-r--r--ext/date/lib/timezonedb.h1318
-rw-r--r--ext/odbc/php_odbc_includes.h2
-rw-r--r--ext/opcache/README8
-rw-r--r--ext/opcache/zend_accelerator_module.c2
-rw-r--r--ext/standard/array.c37
-rw-r--r--ext/zip/LICENSE_libzip27
-rw-r--r--main/php_version.h6
-rw-r--r--sapi/fpm/fpm/fpm_sockets.h2
-rw-r--r--sapi/fpm/php-fpm.conf.in4
15 files changed, 923 insertions, 885 deletions
diff --git a/NEWS b/NEWS
index b51b8b23eb..9fe5fc4638 100644
--- a/NEWS
+++ b/NEWS
@@ -3,11 +3,21 @@ PHP NEWS
?? ??? 2013, PHP 5.5.6
- Core:
+ . Improved performance of array_merge() and func_get_args() by eliminating
+ useless copying. (Dmitry)
. Fixed bug #65939 (Space before ";" breaks php.ini parsing).
(brainstorm at nopcode dot org)
. Fixed bug #65911 (scope resolution operator - strange behavior with $this).
(Bob Weinand)
+-OPcache
+ . Increased limit for opcache.max_accelerated_files to 1,000,000. (Chris)
+
+- ODBC
+ . Fixed bug #65950 (Field name truncation if the field name is bigger than
+ 32 characters). (patch submitted by: michael dot y at zend dot com, Yasuo)
+
+
17 Oct 2013, PHP 5.5.5
- Core:
diff --git a/README.md b/README.md
index 51973854db..09e70e6a39 100644
--- a/README.md
+++ b/README.md
@@ -17,7 +17,7 @@ See https://wiki.php.net/rfc and https://wiki.php.net/rfc/voting for more
information on the process.
Bug fixes **do not** require an RFC, but require a bugtracker ticket. Always
-open a ticket at http://bugs.php.net and reference the bug id using #NNNNNN.
+open a ticket at https://bugs.php.net and reference the bug id using #NNNNNN.
Fix #55371: get_magic_quotes_gpc() throws deprecation warning
@@ -28,3 +28,12 @@ open a ticket at http://bugs.php.net and reference the bug id using #NNNNNN.
We do not merge pull requests directly on github. All PRs will be
pulled and pushed through http://git.php.net.
+
+
+Guidelines for contributors
+===========================
+- [CODING_STANDARDS](/CODING_STANDARDS)
+- [README.GIT-RULES](/README.GIT-RULES)
+- [README.MAILINGLIST_RULES](/README.MAILINGLIST_RULES)
+- [README.RELEASE_PROCESS](/README.RELEASE_PROCESS)
+
diff --git a/Zend/zend_builtin_functions.c b/Zend/zend_builtin_functions.c
index 1ad64e74ea..6cbe0bc687 100644
--- a/Zend/zend_builtin_functions.c
+++ b/Zend/zend_builtin_functions.c
@@ -461,12 +461,17 @@ ZEND_FUNCTION(func_get_args)
array_init_size(return_value, arg_count);
for (i=0; i<arg_count; i++) {
- zval *element;
+ zval *element, *arg;
- ALLOC_ZVAL(element);
- *element = **((zval **) (p-(arg_count-i)));
- zval_copy_ctor(element);
- INIT_PZVAL(element);
+ arg = *((zval **) (p-(arg_count-i)));
+ if (!Z_ISREF_P(arg)) {
+ element = arg;
+ Z_ADDREF_P(element);
+ } else {
+ ALLOC_ZVAL(element);
+ INIT_PZVAL_COPY(element, arg);
+ zval_copy_ctor(element);
+ }
zend_hash_next_index_insert(return_value->value.ht, &element, sizeof(zval *), NULL);
}
}
diff --git a/Zend/zend_vm_def.h b/Zend/zend_vm_def.h
index 201ae49e05..c2c3ae5219 100644
--- a/Zend/zend_vm_def.h
+++ b/Zend/zend_vm_def.h
@@ -4453,22 +4453,22 @@ ZEND_VM_HELPER_EX(zend_isset_isempty_dim_prop_obj_handler, VAR|UNUSED|CV, CONST|
{
USE_OPLINE
zend_free_op free_op1, free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = GET_OP1_OBJ_ZVAL_PTR_PTR(BP_VAR_IS);
+ container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_IS);
offset = GET_OP2_ZVAL_PTR(BP_VAR_R);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -4487,9 +4487,7 @@ ZEND_VM_C_LABEL(num_index_prop):
if (OP2_TYPE == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, ZEND_VM_C_GOTO(num_index_prop));
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, ZEND_VM_C_GOTO(num_index_prop));
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -4524,20 +4522,20 @@ ZEND_VM_C_LABEL(num_index_prop):
}
}
FREE_OP2();
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (IS_OP2_TMP_FREE()) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((OP2_TYPE == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((OP2_TYPE == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -4548,7 +4546,7 @@ ZEND_VM_C_LABEL(num_index_prop):
} else {
FREE_OP2();
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -4566,11 +4564,11 @@ ZEND_VM_C_LABEL(num_index_prop):
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
diff --git a/Zend/zend_vm_execute.h b/Zend/zend_vm_execute.h
index 74a8c12d40..b21f6bf895 100644
--- a/Zend/zend_vm_execute.h
+++ b/Zend/zend_vm_execute.h
@@ -16074,22 +16074,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_CONST(
{
USE_OPLINE
zend_free_op free_op1;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
+ container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
offset = opline->op2.zv;
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -16108,9 +16108,7 @@ num_index_prop:
if (IS_CONST == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -16145,20 +16143,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -16169,7 +16167,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -16187,11 +16185,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -18168,22 +18166,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_TMP(in
{
USE_OPLINE
zend_free_op free_op1, free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
+ container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -18202,9 +18200,7 @@ num_index_prop:
if (IS_TMP_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -18239,20 +18235,20 @@ num_index_prop:
}
}
zval_dtor(free_op2.var);
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (1) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -18263,7 +18259,7 @@ num_index_prop:
} else {
zval_dtor(free_op2.var);
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -18281,11 +18277,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -20644,22 +20640,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_VAR(in
{
USE_OPLINE
zend_free_op free_op1, free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
+ container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -20678,9 +20674,7 @@ num_index_prop:
if (IS_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -20715,20 +20709,20 @@ num_index_prop:
}
}
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -20739,7 +20733,7 @@ num_index_prop:
} else {
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -20757,11 +20751,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -23936,22 +23930,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_VAR_CV(int
{
USE_OPLINE
zend_free_op free_op1;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
+ container = _get_zval_ptr_var(opline->op1.var, execute_data, &free_op1 TSRMLS_CC);
offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -23970,9 +23964,7 @@ num_index_prop:
if (IS_CV == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -24007,20 +23999,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -24031,7 +24023,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -24049,11 +24041,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -25440,22 +25432,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_CON
{
USE_OPLINE
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_obj_zval_ptr_ptr_unused(TSRMLS_C);
+ container = _get_obj_zval_ptr_unused(TSRMLS_C);
offset = opline->op2.zv;
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -25474,9 +25466,7 @@ num_index_prop:
if (IS_CONST == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -25511,20 +25501,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -25535,7 +25525,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -25553,11 +25543,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -26756,22 +26746,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_TMP
{
USE_OPLINE
zend_free_op free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_obj_zval_ptr_ptr_unused(TSRMLS_C);
+ container = _get_obj_zval_ptr_unused(TSRMLS_C);
offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -26790,9 +26780,7 @@ num_index_prop:
if (IS_TMP_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -26827,20 +26815,20 @@ num_index_prop:
}
}
zval_dtor(free_op2.var);
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (1) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -26851,7 +26839,7 @@ num_index_prop:
} else {
zval_dtor(free_op2.var);
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -26869,11 +26857,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -28072,22 +28060,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_VAR
{
USE_OPLINE
zend_free_op free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_obj_zval_ptr_ptr_unused(TSRMLS_C);
+ container = _get_obj_zval_ptr_unused(TSRMLS_C);
offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -28106,9 +28094,7 @@ num_index_prop:
if (IS_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -28143,20 +28129,20 @@ num_index_prop:
}
}
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -28167,7 +28153,7 @@ num_index_prop:
} else {
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -28185,11 +28171,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -29808,22 +29794,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_UNUSED_CV(
{
USE_OPLINE
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_obj_zval_ptr_ptr_unused(TSRMLS_C);
+ container = _get_obj_zval_ptr_unused(TSRMLS_C);
offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -29842,9 +29828,7 @@ num_index_prop:
if (IS_CV == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -29879,20 +29863,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -29903,7 +29887,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -29921,11 +29905,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -33302,22 +33286,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_CONST(i
{
USE_OPLINE
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
+ container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
offset = opline->op2.zv;
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -33336,9 +33320,7 @@ num_index_prop:
if (IS_CONST == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -33373,20 +33355,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CONST == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -33397,7 +33379,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -33415,11 +33397,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -35258,22 +35240,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_TMP(int
{
USE_OPLINE
zend_free_op free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
+ container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
offset = _get_zval_ptr_tmp(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -35292,9 +35274,7 @@ num_index_prop:
if (IS_TMP_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -35329,20 +35309,20 @@ num_index_prop:
}
}
zval_dtor(free_op2.var);
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (1) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_TMP_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -35353,7 +35333,7 @@ num_index_prop:
} else {
zval_dtor(free_op2.var);
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -35371,11 +35351,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -37595,22 +37575,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_VAR(int
{
USE_OPLINE
zend_free_op free_op2;
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
+ container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
offset = _get_zval_ptr_var(opline->op2.var, execute_data, &free_op2 TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -37629,9 +37609,7 @@ num_index_prop:
if (IS_VAR == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -37666,20 +37644,20 @@ num_index_prop:
}
}
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_VAR == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -37690,7 +37668,7 @@ num_index_prop:
} else {
if (free_op2.var) {zval_ptr_dtor(&free_op2.var);};
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -37708,11 +37686,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
@@ -40600,22 +40578,22 @@ static int ZEND_FASTCALL zend_isset_isempty_dim_prop_obj_handler_SPEC_CV_CV(int
{
USE_OPLINE
- zval **container;
+ zval *container;
zval **value = NULL;
int result = 0;
ulong hval;
zval *offset;
SAVE_OPLINE();
- container = _get_zval_ptr_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
+ container = _get_zval_ptr_cv_BP_VAR_IS(execute_data, opline->op1.var TSRMLS_CC);
offset = _get_zval_ptr_cv_BP_VAR_R(execute_data, opline->op2.var TSRMLS_CC);
- if (Z_TYPE_PP(container) == IS_ARRAY && !prop_dim) {
+ if (Z_TYPE_P(container) == IS_ARRAY && !prop_dim) {
HashTable *ht;
int isset = 0;
- ht = Z_ARRVAL_PP(container);
+ ht = Z_ARRVAL_P(container);
switch (Z_TYPE_P(offset)) {
case IS_DOUBLE:
@@ -40634,9 +40612,7 @@ num_index_prop:
if (IS_CV == IS_CONST) {
hval = Z_HASH_P(offset);
} else {
- if (!prop_dim) {
- ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
- }
+ ZEND_HANDLE_NUMERIC_EX(Z_STRVAL_P(offset), Z_STRLEN_P(offset)+1, hval, goto num_index_prop);
if (IS_INTERNED(Z_STRVAL_P(offset))) {
hval = INTERNED_HASH(Z_STRVAL_P(offset));
} else {
@@ -40671,20 +40647,20 @@ num_index_prop:
}
}
- } else if (Z_TYPE_PP(container) == IS_OBJECT) {
+ } else if (Z_TYPE_P(container) == IS_OBJECT) {
if (0) {
MAKE_REAL_ZVAL_PTR(offset);
}
if (prop_dim) {
- if (Z_OBJ_HT_P(*container)->has_property) {
- result = Z_OBJ_HT_P(*container)->has_property(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_property) {
+ result = Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0, ((IS_CV == IS_CONST) ? opline->op2.literal : NULL) TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check property of non-object");
result = 0;
}
} else {
- if (Z_OBJ_HT_P(*container)->has_dimension) {
- result = Z_OBJ_HT_P(*container)->has_dimension(*container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
+ if (Z_OBJ_HT_P(container)->has_dimension) {
+ result = Z_OBJ_HT_P(container)->has_dimension(container, offset, (opline->extended_value & ZEND_ISEMPTY) != 0 TSRMLS_CC);
} else {
zend_error(E_NOTICE, "Trying to check element of non-array");
result = 0;
@@ -40695,7 +40671,7 @@ num_index_prop:
} else {
}
- } else if ((*container)->type == IS_STRING && !prop_dim) { /* string offsets */
+ } else if (Z_TYPE_P(container) == IS_STRING && !prop_dim) { /* string offsets */
zval tmp;
if (Z_TYPE_P(offset) != IS_LONG) {
@@ -40713,11 +40689,11 @@ num_index_prop:
}
if (Z_TYPE_P(offset) == IS_LONG) {
if (opline->extended_value & ZEND_ISSET) {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container)) {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container)) {
result = 1;
}
} else /* if (opline->extended_value & ZEND_ISEMPTY) */ {
- if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_PP(container) && Z_STRVAL_PP(container)[offset->value.lval] != '0') {
+ if (offset->value.lval >= 0 && offset->value.lval < Z_STRLEN_P(container) && Z_STRVAL_P(container)[offset->value.lval] != '0') {
result = 1;
}
}
diff --git a/configure.in b/configure.in
index 40130626cb..7e444b0ac4 100644
--- a/configure.in
+++ b/configure.in
@@ -119,7 +119,7 @@ int zend_sprintf(char *buffer, const char *format, ...);
PHP_MAJOR_VERSION=5
PHP_MINOR_VERSION=5
-PHP_RELEASE_VERSION=5
+PHP_RELEASE_VERSION=6
PHP_EXTRA_VERSION="-dev"
PHP_VERSION="$PHP_MAJOR_VERSION.$PHP_MINOR_VERSION.$PHP_RELEASE_VERSION$PHP_EXTRA_VERSION"
PHP_VERSION_ID=`expr [$]PHP_MAJOR_VERSION \* 10000 + [$]PHP_MINOR_VERSION \* 100 + [$]PHP_RELEASE_VERSION`
diff --git a/ext/date/lib/timezonedb.h b/ext/date/lib/timezonedb.h
index 8142aab565..91884a935f 100644
--- a/ext/date/lib/timezonedb.h
+++ b/ext/date/lib/timezonedb.h
@@ -14,573 +14,573 @@ const timelib_tzdb_index_entry timezonedb_idx_builtin[579] = {
{ "Africa/Bujumbura" , 0x000571 },
{ "Africa/Cairo" , 0x0005B5 },
{ "Africa/Casablanca" , 0x000878 },
- { "Africa/Ceuta" , 0x000ABC },
- { "Africa/Conakry" , 0x000DC3 },
- { "Africa/Dakar" , 0x000E2E },
- { "Africa/Dar_es_Salaam" , 0x000E94 },
- { "Africa/Djibouti" , 0x000F01 },
- { "Africa/Douala" , 0x000F56 },
- { "Africa/El_Aaiun" , 0x000FAB },
- { "Africa/Freetown" , 0x001011 },
- { "Africa/Gaborone" , 0x001120 },
- { "Africa/Harare" , 0x00118D },
- { "Africa/Johannesburg" , 0x0011E2 },
- { "Africa/Juba" , 0x001250 },
- { "Africa/Kampala" , 0x001363 },
- { "Africa/Khartoum" , 0x0013E2 },
- { "Africa/Kigali" , 0x0014F5 },
- { "Africa/Kinshasa" , 0x00154A },
- { "Africa/Lagos" , 0x0015A5 },
- { "Africa/Libreville" , 0x0015FA },
- { "Africa/Lome" , 0x00164F },
- { "Africa/Luanda" , 0x001693 },
- { "Africa/Lubumbashi" , 0x0016E8 },
- { "Africa/Lusaka" , 0x001743 },
- { "Africa/Malabo" , 0x001798 },
- { "Africa/Maputo" , 0x0017FE },
- { "Africa/Maseru" , 0x001853 },
- { "Africa/Mbabane" , 0x0018BB },
- { "Africa/Mogadishu" , 0x001911 },
- { "Africa/Monrovia" , 0x00196C },
- { "Africa/Nairobi" , 0x0019D2 },
- { "Africa/Ndjamena" , 0x001A51 },
- { "Africa/Niamey" , 0x001ABD },
- { "Africa/Nouakchott" , 0x001B30 },
- { "Africa/Ouagadougou" , 0x001B9B },
- { "Africa/Porto-Novo" , 0x001BF0 },
- { "Africa/Sao_Tome" , 0x001C56 },
- { "Africa/Timbuktu" , 0x001CAB },
- { "Africa/Tripoli" , 0x001D16 },
- { "Africa/Tunis" , 0x001F0F },
- { "Africa/Windhoek" , 0x002021 },
- { "America/Adak" , 0x002268 },
- { "America/Anchorage" , 0x0025DE },
- { "America/Anguilla" , 0x002952 },
- { "America/Antigua" , 0x0029A7 },
- { "America/Araguaina" , 0x002A0D },
- { "America/Argentina/Buenos_Aires" , 0x002B72 },
- { "America/Argentina/Catamarca" , 0x002D20 },
- { "America/Argentina/ComodRivadavia" , 0x002EE1 },
- { "America/Argentina/Cordoba" , 0x003087 },
- { "America/Argentina/Jujuy" , 0x00325C },
- { "America/Argentina/La_Rioja" , 0x003410 },
- { "America/Argentina/Mendoza" , 0x0035C8 },
- { "America/Argentina/Rio_Gallegos" , 0x003788 },
- { "America/Argentina/Salta" , 0x00393D },
- { "America/Argentina/San_Juan" , 0x003AE9 },
- { "America/Argentina/San_Luis" , 0x003CA1 },
- { "America/Argentina/Tucuman" , 0x003E67 },
- { "America/Argentina/Ushuaia" , 0x004023 },
- { "America/Aruba" , 0x0041DE },
- { "America/Asuncion" , 0x004244 },
- { "America/Atikokan" , 0x004529 },
- { "America/Atka" , 0x0045FF },
- { "America/Bahia" , 0x004965 },
- { "America/Bahia_Banderas" , 0x004AF8 },
- { "America/Barbados" , 0x004D71 },
- { "America/Belem" , 0x004E0B },
- { "America/Belize" , 0x004F06 },
- { "America/Blanc-Sablon" , 0x005082 },
- { "America/Boa_Vista" , 0x005136 },
- { "America/Bogota" , 0x00523F },
- { "America/Boise" , 0x0052AB },
- { "America/Buenos_Aires" , 0x005642 },
- { "America/Cambridge_Bay" , 0x0057DB },
- { "America/Campo_Grande" , 0x005B03 },
- { "America/Cancun" , 0x005DF2 },
- { "America/Caracas" , 0x006034 },
- { "America/Catamarca" , 0x00609B },
- { "America/Cayenne" , 0x006241 },
- { "America/Cayman" , 0x0062A3 },
- { "America/Chicago" , 0x0062F8 },
- { "America/Chihuahua" , 0x00680F },
- { "America/Coral_Harbour" , 0x006A7A },
- { "America/Cordoba" , 0x006B0C },
- { "America/Costa_Rica" , 0x006CB2 },
- { "America/Creston" , 0x006D3C },
- { "America/Cuiaba" , 0x006DC8 },
- { "America/Curacao" , 0x0070A6 },
- { "America/Danmarkshavn" , 0x00710C },
- { "America/Dawson" , 0x007250 },
- { "America/Dawson_Creek" , 0x00756D },
- { "America/Denver" , 0x007747 },
- { "America/Detroit" , 0x007ACD },
- { "America/Dominica" , 0x007E2C },
- { "America/Edmonton" , 0x007E81 },
- { "America/Eirunepe" , 0x008239 },
- { "America/El_Salvador" , 0x00834C },
- { "America/Ensenada" , 0x0083C1 },
- { "America/Fort_Wayne" , 0x008868 },
- { "America/Fortaleza" , 0x00872A },
- { "America/Glace_Bay" , 0x008AD2 },
- { "America/Godthab" , 0x008E49 },
- { "America/Goose_Bay" , 0x00910D },
- { "America/Grand_Turk" , 0x0095CA },
- { "America/Grenada" , 0x009879 },
- { "America/Guadeloupe" , 0x0098CE },
- { "America/Guatemala" , 0x009923 },
- { "America/Guayaquil" , 0x0099AC },
- { "America/Guyana" , 0x009A09 },
- { "America/Halifax" , 0x009A8A },
- { "America/Havana" , 0x009FA0 },
- { "America/Hermosillo" , 0x00A313 },
- { "America/Indiana/Indianapolis" , 0x00A3F1 },
- { "America/Indiana/Knox" , 0x00A682 },
- { "America/Indiana/Marengo" , 0x00AA19 },
- { "America/Indiana/Petersburg" , 0x00ACBF },
- { "America/Indiana/Tell_City" , 0x00B20C },
- { "America/Indiana/Vevay" , 0x00B4A5 },
- { "America/Indiana/Vincennes" , 0x00B6E0 },
- { "America/Indiana/Winamac" , 0x00B994 },
- { "America/Indianapolis" , 0x00AFA2 },
- { "America/Inuvik" , 0x00BC4D },
- { "America/Iqaluit" , 0x00BF44 },
- { "America/Jamaica" , 0x00C266 },
- { "America/Jujuy" , 0x00C32B },
- { "America/Juneau" , 0x00C4D5 },
- { "America/Kentucky/Louisville" , 0x00C853 },
- { "America/Kentucky/Monticello" , 0x00CC71 },
- { "America/Knox_IN" , 0x00CFF6 },
- { "America/Kralendijk" , 0x00D367 },
- { "America/La_Paz" , 0x00D3CD },
- { "America/Lima" , 0x00D434 },
- { "America/Los_Angeles" , 0x00D4DC },
- { "America/Louisville" , 0x00D8ED },
- { "America/Lower_Princes" , 0x00DCE2 },
- { "America/Maceio" , 0x00DD48 },
- { "America/Managua" , 0x00DE82 },
- { "America/Manaus" , 0x00DF35 },
- { "America/Marigot" , 0x00E037 },
- { "America/Martinique" , 0x00E08C },
- { "America/Matamoros" , 0x00E0F8 },
- { "America/Mazatlan" , 0x00E351 },
- { "America/Mendoza" , 0x00E5BE },
- { "America/Menominee" , 0x00E772 },
- { "America/Merida" , 0x00EAF3 },
- { "America/Metlakatla" , 0x00ED2E },
- { "America/Mexico_City" , 0x00EE68 },
- { "America/Miquelon" , 0x00F0E3 },
- { "America/Moncton" , 0x00F355 },
- { "America/Monterrey" , 0x00F7EC },
- { "America/Montevideo" , 0x00FA4F },
- { "America/Montreal" , 0x00FD61 },
- { "America/Montserrat" , 0x010251 },
- { "America/Nassau" , 0x0102A6 },
- { "America/New_York" , 0x0105EB },
- { "America/Nipigon" , 0x010AF6 },
- { "America/Nome" , 0x010E47 },
- { "America/Noronha" , 0x0111C5 },
- { "America/North_Dakota/Beulah" , 0x0112F5 },
- { "America/North_Dakota/Center" , 0x011689 },
- { "America/North_Dakota/New_Salem" , 0x011A1D },
- { "America/Ojinaga" , 0x011DC6 },
- { "America/Panama" , 0x012027 },
- { "America/Pangnirtung" , 0x01207C },
- { "America/Paramaribo" , 0x0123B2 },
- { "America/Phoenix" , 0x012444 },
- { "America/Port-au-Prince" , 0x012502 },
- { "America/Port_of_Spain" , 0x012821 },
- { "America/Porto_Acre" , 0x012722 },
- { "America/Porto_Velho" , 0x012876 },
- { "America/Puerto_Rico" , 0x01296C },
- { "America/Rainy_River" , 0x0129D7 },
- { "America/Rankin_Inlet" , 0x012D0F },
- { "America/Recife" , 0x012FF5 },
- { "America/Regina" , 0x01311F },
- { "America/Resolute" , 0x0132DD },
- { "America/Rio_Branco" , 0x0135CE },
- { "America/Rosario" , 0x0136D1 },
- { "America/Santa_Isabel" , 0x013877 },
- { "America/Santarem" , 0x013C1A },
- { "America/Santiago" , 0x013D1F },
- { "America/Santo_Domingo" , 0x0140C8 },
- { "America/Sao_Paulo" , 0x01418E },
- { "America/Scoresbysund" , 0x01449D },
- { "America/Shiprock" , 0x01478B },
- { "America/Sitka" , 0x014B04 },
- { "America/St_Barthelemy" , 0x014E8C },
- { "America/St_Johns" , 0x014EE1 },
- { "America/St_Kitts" , 0x015434 },
- { "America/St_Lucia" , 0x015489 },
- { "America/St_Thomas" , 0x0154DE },
- { "America/St_Vincent" , 0x015533 },
- { "America/Swift_Current" , 0x015588 },
- { "America/Tegucigalpa" , 0x0156A9 },
- { "America/Thule" , 0x015728 },
- { "America/Thunder_Bay" , 0x01596F },
- { "America/Tijuana" , 0x015CB8 },
- { "America/Toronto" , 0x016051 },
- { "America/Tortola" , 0x016571 },
- { "America/Vancouver" , 0x0165C6 },
- { "America/Virgin" , 0x016A03 },
- { "America/Whitehorse" , 0x016A58 },
- { "America/Winnipeg" , 0x016D75 },
- { "America/Yakutat" , 0x0171B5 },
- { "America/Yellowknife" , 0x017520 },
- { "Antarctica/Casey" , 0x017830 },
- { "Antarctica/Davis" , 0x0178CD },
- { "Antarctica/DumontDUrville" , 0x01796E },
- { "Antarctica/Macquarie" , 0x017A00 },
- { "Antarctica/Mawson" , 0x017C47 },
- { "Antarctica/McMurdo" , 0x017CC3 },
- { "Antarctica/Palmer" , 0x01806E },
- { "Antarctica/Rothera" , 0x01838A },
- { "Antarctica/South_Pole" , 0x018400 },
- { "Antarctica/Syowa" , 0x01877E },
- { "Antarctica/Vostok" , 0x0187EC },
- { "Arctic/Longyearbyen" , 0x01885D },
- { "Asia/Aden" , 0x018B8F },
- { "Asia/Almaty" , 0x018BE4 },
- { "Asia/Amman" , 0x018D63 },
- { "Asia/Anadyr" , 0x018F35 },
- { "Asia/Aqtau" , 0x01911A },
- { "Asia/Aqtobe" , 0x019319 },
- { "Asia/Ashgabat" , 0x0194D1 },
- { "Asia/Ashkhabad" , 0x0195EE },
- { "Asia/Baghdad" , 0x01970B },
- { "Asia/Bahrain" , 0x019880 },
- { "Asia/Baku" , 0x0198E6 },
- { "Asia/Bangkok" , 0x019BCE },
- { "Asia/Beirut" , 0x019C23 },
- { "Asia/Bishkek" , 0x019F30 },
- { "Asia/Brunei" , 0x01A0DC },
- { "Asia/Calcutta" , 0x01A13E },
- { "Asia/Choibalsan" , 0x01A1B7 },
- { "Asia/Chongqing" , 0x01A330 },
- { "Asia/Chungking" , 0x01A41F },
- { "Asia/Colombo" , 0x01A4CE },
- { "Asia/Dacca" , 0x01A56A },
- { "Asia/Damascus" , 0x01A610 },
- { "Asia/Dhaka" , 0x01A960 },
- { "Asia/Dili" , 0x01AA06 },
- { "Asia/Dubai" , 0x01AA90 },
- { "Asia/Dushanbe" , 0x01AAE5 },
- { "Asia/Gaza" , 0x01ABE8 },
- { "Asia/Harbin" , 0x01AF3B },
- { "Asia/Hebron" , 0x01B022 },
- { "Asia/Ho_Chi_Minh" , 0x01B37E },
- { "Asia/Hong_Kong" , 0x01B3F6 },
- { "Asia/Hovd" , 0x01B5B8 },
- { "Asia/Irkutsk" , 0x01B730 },
- { "Asia/Istanbul" , 0x01B916 },
- { "Asia/Jakarta" , 0x01BD03 },
- { "Asia/Jayapura" , 0x01BDAD },
- { "Asia/Jerusalem" , 0x01BE49 },
- { "Asia/Kabul" , 0x01C178 },
- { "Asia/Kamchatka" , 0x01C1C9 },
- { "Asia/Karachi" , 0x01C3A5 },
- { "Asia/Kashgar" , 0x01C45A },
- { "Asia/Kathmandu" , 0x01C52B },
- { "Asia/Katmandu" , 0x01C591 },
- { "Asia/Khandyga" , 0x01C5F7 },
- { "Asia/Kolkata" , 0x01C81C },
- { "Asia/Krasnoyarsk" , 0x01C895 },
- { "Asia/Kuala_Lumpur" , 0x01CA7D },
- { "Asia/Kuching" , 0x01CB3A },
- { "Asia/Kuwait" , 0x01CC28 },
- { "Asia/Macao" , 0x01CC7D },
- { "Asia/Macau" , 0x01CDB8 },
- { "Asia/Magadan" , 0x01CEF3 },
- { "Asia/Makassar" , 0x01D0D5 },
- { "Asia/Manila" , 0x01D19A },
- { "Asia/Muscat" , 0x01D21F },
- { "Asia/Nicosia" , 0x01D274 },
- { "Asia/Novokuznetsk" , 0x01D55C },
- { "Asia/Novosibirsk" , 0x01D75E },
- { "Asia/Omsk" , 0x01D949 },
- { "Asia/Oral" , 0x01DB30 },
- { "Asia/Phnom_Penh" , 0x01DD00 },
- { "Asia/Pontianak" , 0x01DD78 },
- { "Asia/Pyongyang" , 0x01DE3A },
- { "Asia/Qatar" , 0x01DEA7 },
- { "Asia/Qyzylorda" , 0x01DF0D },
- { "Asia/Rangoon" , 0x01E0E3 },
- { "Asia/Riyadh" , 0x01E15B },
- { "Asia/Saigon" , 0x01E1B0 },
- { "Asia/Sakhalin" , 0x01E228 },
- { "Asia/Samarkand" , 0x01E41F },
- { "Asia/Seoul" , 0x01E555 },
- { "Asia/Shanghai" , 0x01E5F9 },
- { "Asia/Singapore" , 0x01E6D9 },
- { "Asia/Taipei" , 0x01E790 },
- { "Asia/Tashkent" , 0x01E8A8 },
- { "Asia/Tbilisi" , 0x01E9D9 },
- { "Asia/Tehran" , 0x01EB93 },
- { "Asia/Tel_Aviv" , 0x01EE01 },
- { "Asia/Thimbu" , 0x01F130 },
- { "Asia/Thimphu" , 0x01F196 },
- { "Asia/Tokyo" , 0x01F1FC },
- { "Asia/Ujung_Pandang" , 0x01F285 },
- { "Asia/Ulaanbaatar" , 0x01F302 },
- { "Asia/Ulan_Bator" , 0x01F45D },
- { "Asia/Urumqi" , 0x01F5AA },
- { "Asia/Ust-Nera" , 0x01F671 },
- { "Asia/Vientiane" , 0x01F876 },
- { "Asia/Vladivostok" , 0x01F8EE },
- { "Asia/Yakutsk" , 0x01FADA },
- { "Asia/Yekaterinburg" , 0x01FCBF },
- { "Asia/Yerevan" , 0x01FECA },
- { "Atlantic/Azores" , 0x0200CA },
- { "Atlantic/Bermuda" , 0x0205CD },
- { "Atlantic/Canary" , 0x0208AE },
- { "Atlantic/Cape_Verde" , 0x020B84 },
- { "Atlantic/Faeroe" , 0x020BFD },
- { "Atlantic/Faroe" , 0x020EA1 },
- { "Atlantic/Jan_Mayen" , 0x021145 },
- { "Atlantic/Madeira" , 0x021477 },
- { "Atlantic/Reykjavik" , 0x021980 },
- { "Atlantic/South_Georgia" , 0x021B39 },
- { "Atlantic/St_Helena" , 0x021D4B },
- { "Atlantic/Stanley" , 0x021B7D },
- { "Australia/ACT" , 0x021DA0 },
- { "Australia/Adelaide" , 0x0220BD },
- { "Australia/Brisbane" , 0x0223E9 },
- { "Australia/Broken_Hill" , 0x0224B0 },
- { "Australia/Canberra" , 0x0227EE },
- { "Australia/Currie" , 0x022B0B },
- { "Australia/Darwin" , 0x022E3E },
- { "Australia/Eucla" , 0x022EC4 },
- { "Australia/Hobart" , 0x022F99 },
- { "Australia/LHI" , 0x0232F7 },
- { "Australia/Lindeman" , 0x023592 },
- { "Australia/Lord_Howe" , 0x023673 },
- { "Australia/Melbourne" , 0x02391E },
- { "Australia/North" , 0x023C43 },
- { "Australia/NSW" , 0x023CB7 },
- { "Australia/Perth" , 0x023FD4 },
- { "Australia/Queensland" , 0x0240AC },
- { "Australia/South" , 0x024158 },
- { "Australia/Sydney" , 0x024475 },
- { "Australia/Tasmania" , 0x0247B2 },
- { "Australia/Victoria" , 0x024AF7 },
- { "Australia/West" , 0x024E14 },
- { "Australia/Yancowinna" , 0x024ECA },
- { "Brazil/Acre" , 0x0251EC },
- { "Brazil/DeNoronha" , 0x0252EB },
- { "Brazil/East" , 0x02540B },
- { "Brazil/West" , 0x0256E8 },
- { "Canada/Atlantic" , 0x0257E0 },
- { "Canada/Central" , 0x025CC8 },
- { "Canada/East-Saskatchewan" , 0x0265D2 },
- { "Canada/Eastern" , 0x0260E2 },
- { "Canada/Mountain" , 0x02675B },
- { "Canada/Newfoundland" , 0x026AD1 },
- { "Canada/Pacific" , 0x026FFC },
- { "Canada/Saskatchewan" , 0x027415 },
- { "Canada/Yukon" , 0x02759E },
- { "CET" , 0x0278A1 },
- { "Chile/Continental" , 0x027BAA },
- { "Chile/EasterIsland" , 0x027F45 },
- { "CST6CDT" , 0x028287 },
- { "Cuba" , 0x0285D8 },
- { "EET" , 0x02894B },
- { "Egypt" , 0x028BFE },
- { "Eire" , 0x028EC1 },
- { "EST" , 0x0293D2 },
- { "EST5EDT" , 0x029416 },
- { "Etc/GMT" , 0x029767 },
- { "Etc/GMT+0" , 0x029833 },
- { "Etc/GMT+1" , 0x0298BD },
- { "Etc/GMT+10" , 0x02994A },
- { "Etc/GMT+11" , 0x0299D8 },
- { "Etc/GMT+12" , 0x029A66 },
- { "Etc/GMT+2" , 0x029B81 },
- { "Etc/GMT+3" , 0x029C0D },
- { "Etc/GMT+4" , 0x029C99 },
- { "Etc/GMT+5" , 0x029D25 },
- { "Etc/GMT+6" , 0x029DB1 },
- { "Etc/GMT+7" , 0x029E3D },
- { "Etc/GMT+8" , 0x029EC9 },
- { "Etc/GMT+9" , 0x029F55 },
- { "Etc/GMT-0" , 0x0297EF },
- { "Etc/GMT-1" , 0x029877 },
- { "Etc/GMT-10" , 0x029903 },
- { "Etc/GMT-11" , 0x029991 },
- { "Etc/GMT-12" , 0x029A1F },
- { "Etc/GMT-13" , 0x029AAD },
- { "Etc/GMT-14" , 0x029AF4 },
- { "Etc/GMT-2" , 0x029B3B },
- { "Etc/GMT-3" , 0x029BC7 },
- { "Etc/GMT-4" , 0x029C53 },
- { "Etc/GMT-5" , 0x029CDF },
- { "Etc/GMT-6" , 0x029D6B },
- { "Etc/GMT-7" , 0x029DF7 },
- { "Etc/GMT-8" , 0x029E83 },
- { "Etc/GMT-9" , 0x029F0F },
- { "Etc/GMT0" , 0x0297AB },
- { "Etc/Greenwich" , 0x029F9B },
- { "Etc/UCT" , 0x029FDF },
- { "Etc/Universal" , 0x02A023 },
- { "Etc/UTC" , 0x02A067 },
- { "Etc/Zulu" , 0x02A0AB },
- { "Europe/Amsterdam" , 0x02A0EF },
- { "Europe/Andorra" , 0x02A52D },
- { "Europe/Athens" , 0x02A7A9 },
- { "Europe/Belfast" , 0x02AAEC },
- { "Europe/Belgrade" , 0x02B023 },
- { "Europe/Berlin" , 0x02B2EC },
- { "Europe/Bratislava" , 0x02B650 },
- { "Europe/Brussels" , 0x02B982 },
- { "Europe/Bucharest" , 0x02BDB9 },
- { "Europe/Budapest" , 0x02C0E3 },
- { "Europe/Busingen" , 0x02C456 },
- { "Europe/Chisinau" , 0x02C70D },
- { "Europe/Copenhagen" , 0x02CA9B },
- { "Europe/Dublin" , 0x02CDA5 },
- { "Europe/Gibraltar" , 0x02D2B6 },
- { "Europe/Guernsey" , 0x02D70D },
- { "Europe/Helsinki" , 0x02DC44 },
- { "Europe/Isle_of_Man" , 0x02DEFA },
- { "Europe/Istanbul" , 0x02E431 },
- { "Europe/Jersey" , 0x02E81E },
- { "Europe/Kaliningrad" , 0x02ED55 },
- { "Europe/Kiev" , 0x02EFBB },
- { "Europe/Lisbon" , 0x02F2D2 },
- { "Europe/Ljubljana" , 0x02F7D6 },
- { "Europe/London" , 0x02FA9F },
- { "Europe/Luxembourg" , 0x02FFD6 },
- { "Europe/Madrid" , 0x03042C },
- { "Europe/Malta" , 0x0307F2 },
- { "Europe/Mariehamn" , 0x030BAB },
- { "Europe/Minsk" , 0x030E61 },
- { "Europe/Monaco" , 0x03106F },
- { "Europe/Moscow" , 0x0314AA },
- { "Europe/Nicosia" , 0x0316FB },
- { "Europe/Oslo" , 0x0319E3 },
- { "Europe/Paris" , 0x031D15 },
- { "Europe/Podgorica" , 0x03215B },
- { "Europe/Prague" , 0x032424 },
- { "Europe/Riga" , 0x032756 },
- { "Europe/Rome" , 0x032A9B },
- { "Europe/Samara" , 0x032E5E },
- { "Europe/San_Marino" , 0x033091 },
- { "Europe/Sarajevo" , 0x033454 },
- { "Europe/Simferopol" , 0x03371D },
- { "Europe/Skopje" , 0x033A48 },
- { "Europe/Sofia" , 0x033D11 },
- { "Europe/Stockholm" , 0x034019 },
- { "Europe/Tallinn" , 0x0342C8 },
- { "Europe/Tirane" , 0x034602 },
- { "Europe/Tiraspol" , 0x034908 },
- { "Europe/Uzhgorod" , 0x034C96 },
- { "Europe/Vaduz" , 0x034FAD },
- { "Europe/Vatican" , 0x03525C },
- { "Europe/Vienna" , 0x03561F },
- { "Europe/Vilnius" , 0x03594C },
- { "Europe/Volgograd" , 0x035C8B },
- { "Europe/Warsaw" , 0x035E8B },
- { "Europe/Zagreb" , 0x03626C },
- { "Europe/Zaporozhye" , 0x036535 },
- { "Europe/Zurich" , 0x036876 },
- { "Factory" , 0x036B25 },
- { "GB" , 0x036B96 },
- { "GB-Eire" , 0x0370CD },
- { "GMT" , 0x037604 },
- { "GMT+0" , 0x0376D0 },
- { "GMT-0" , 0x03768C },
- { "GMT0" , 0x037648 },
- { "Greenwich" , 0x037714 },
- { "Hongkong" , 0x037758 },
- { "HST" , 0x03791A },
- { "Iceland" , 0x03795E },
- { "Indian/Antananarivo" , 0x037B17 },
- { "Indian/Chagos" , 0x037B8B },
- { "Indian/Christmas" , 0x037BED },
- { "Indian/Cocos" , 0x037C31 },
- { "Indian/Comoro" , 0x037C75 },
- { "Indian/Kerguelen" , 0x037CCA },
- { "Indian/Mahe" , 0x037D1F },
- { "Indian/Maldives" , 0x037D74 },
- { "Indian/Mauritius" , 0x037DC9 },
- { "Indian/Mayotte" , 0x037E3F },
- { "Indian/Reunion" , 0x037E94 },
- { "Iran" , 0x037EE9 },
- { "Israel" , 0x038157 },
- { "Jamaica" , 0x038486 },
- { "Japan" , 0x03854B },
- { "Kwajalein" , 0x0385D4 },
- { "Libya" , 0x038637 },
- { "MET" , 0x038830 },
- { "Mexico/BajaNorte" , 0x038B39 },
- { "Mexico/BajaSur" , 0x038EA2 },
- { "Mexico/General" , 0x0390E7 },
- { "MST" , 0x039345 },
- { "MST7MDT" , 0x039389 },
- { "Navajo" , 0x0396DA },
- { "NZ" , 0x039A53 },
- { "NZ-CHAT" , 0x039DD1 },
- { "Pacific/Apia" , 0x03A0B9 },
- { "Pacific/Auckland" , 0x03A255 },
- { "Pacific/Chatham" , 0x03A5E1 },
- { "Pacific/Chuuk" , 0x03A8D8 },
- { "Pacific/Easter" , 0x03A931 },
- { "Pacific/Efate" , 0x03AC8F },
- { "Pacific/Enderbury" , 0x03AD55 },
- { "Pacific/Fakaofo" , 0x03ADC3 },
- { "Pacific/Fiji" , 0x03AE14 },
- { "Pacific/Funafuti" , 0x03AFA7 },
- { "Pacific/Galapagos" , 0x03AFEB },
- { "Pacific/Gambier" , 0x03B063 },
- { "Pacific/Guadalcanal" , 0x03B0C8 },
- { "Pacific/Guam" , 0x03B11D },
- { "Pacific/Honolulu" , 0x03B173 },
- { "Pacific/Johnston" , 0x03B1EA },
- { "Pacific/Kiritimati" , 0x03B269 },
- { "Pacific/Kosrae" , 0x03B2D4 },
- { "Pacific/Kwajalein" , 0x03B331 },
- { "Pacific/Majuro" , 0x03B39D },
- { "Pacific/Marquesas" , 0x03B3FC },
- { "Pacific/Midway" , 0x03B463 },
- { "Pacific/Nauru" , 0x03B4ED },
- { "Pacific/Niue" , 0x03B565 },
- { "Pacific/Norfolk" , 0x03B5C3 },
- { "Pacific/Noumea" , 0x03B618 },
- { "Pacific/Pago_Pago" , 0x03B6A8 },
- { "Pacific/Palau" , 0x03B731 },
- { "Pacific/Pitcairn" , 0x03B775 },
- { "Pacific/Pohnpei" , 0x03B7CA },
- { "Pacific/Ponape" , 0x03B81F },
- { "Pacific/Port_Moresby" , 0x03B864 },
- { "Pacific/Rarotonga" , 0x03B8A8 },
- { "Pacific/Saipan" , 0x03B984 },
- { "Pacific/Samoa" , 0x03B9E7 },
- { "Pacific/Tahiti" , 0x03BA70 },
- { "Pacific/Tarawa" , 0x03BAD5 },
- { "Pacific/Tongatapu" , 0x03BB29 },
- { "Pacific/Truk" , 0x03BBB5 },
- { "Pacific/Wake" , 0x03BBFA },
- { "Pacific/Wallis" , 0x03BC4A },
- { "Pacific/Yap" , 0x03BC8E },
- { "Poland" , 0x03BCD3 },
- { "Portugal" , 0x03C0B4 },
- { "PRC" , 0x03C5B0 },
- { "PST8PDT" , 0x03C661 },
- { "ROC" , 0x03C9B2 },
- { "ROK" , 0x03CACA },
- { "Singapore" , 0x03CB6E },
- { "Turkey" , 0x03CC25 },
- { "UCT" , 0x03D012 },
- { "Universal" , 0x03D056 },
- { "US/Alaska" , 0x03D09A },
- { "US/Aleutian" , 0x03D403 },
- { "US/Arizona" , 0x03D769 },
- { "US/Central" , 0x03D7F7 },
- { "US/East-Indiana" , 0x03E201 },
- { "US/Eastern" , 0x03DD02 },
- { "US/Hawaii" , 0x03E46B },
- { "US/Indiana-Starke" , 0x03E4DC },
- { "US/Michigan" , 0x03E84D },
- { "US/Mountain" , 0x03EB84 },
- { "US/Pacific" , 0x03EEFD },
- { "US/Pacific-New" , 0x03F302 },
- { "US/Samoa" , 0x03F707 },
- { "UTC" , 0x03F790 },
- { "W-SU" , 0x03FA87 },
- { "WET" , 0x03F7D4 },
- { "Zulu" , 0x03FCC1 },
+ { "Africa/Ceuta" , 0x000ADA },
+ { "Africa/Conakry" , 0x000DE1 },
+ { "Africa/Dakar" , 0x000E4C },
+ { "Africa/Dar_es_Salaam" , 0x000EB2 },
+ { "Africa/Djibouti" , 0x000F1F },
+ { "Africa/Douala" , 0x000F74 },
+ { "Africa/El_Aaiun" , 0x000FC9 },
+ { "Africa/Freetown" , 0x0011F4 },
+ { "Africa/Gaborone" , 0x001303 },
+ { "Africa/Harare" , 0x001370 },
+ { "Africa/Johannesburg" , 0x0013C5 },
+ { "Africa/Juba" , 0x001433 },
+ { "Africa/Kampala" , 0x001546 },
+ { "Africa/Khartoum" , 0x0015C5 },
+ { "Africa/Kigali" , 0x0016D8 },
+ { "Africa/Kinshasa" , 0x00172D },
+ { "Africa/Lagos" , 0x001788 },
+ { "Africa/Libreville" , 0x0017DD },
+ { "Africa/Lome" , 0x001832 },
+ { "Africa/Luanda" , 0x001876 },
+ { "Africa/Lubumbashi" , 0x0018CB },
+ { "Africa/Lusaka" , 0x001926 },
+ { "Africa/Malabo" , 0x00197B },
+ { "Africa/Maputo" , 0x0019E1 },
+ { "Africa/Maseru" , 0x001A36 },
+ { "Africa/Mbabane" , 0x001A9E },
+ { "Africa/Mogadishu" , 0x001AF4 },
+ { "Africa/Monrovia" , 0x001B4F },
+ { "Africa/Nairobi" , 0x001BB5 },
+ { "Africa/Ndjamena" , 0x001C34 },
+ { "Africa/Niamey" , 0x001CA0 },
+ { "Africa/Nouakchott" , 0x001D13 },
+ { "Africa/Ouagadougou" , 0x001D7E },
+ { "Africa/Porto-Novo" , 0x001DD3 },
+ { "Africa/Sao_Tome" , 0x001E39 },
+ { "Africa/Timbuktu" , 0x001E8E },
+ { "Africa/Tripoli" , 0x001EF9 },
+ { "Africa/Tunis" , 0x002002 },
+ { "Africa/Windhoek" , 0x002114 },
+ { "America/Adak" , 0x00235B },
+ { "America/Anchorage" , 0x0026D1 },
+ { "America/Anguilla" , 0x002A45 },
+ { "America/Antigua" , 0x002A9A },
+ { "America/Araguaina" , 0x002B00 },
+ { "America/Argentina/Buenos_Aires" , 0x002C65 },
+ { "America/Argentina/Catamarca" , 0x002E13 },
+ { "America/Argentina/ComodRivadavia" , 0x002FD4 },
+ { "America/Argentina/Cordoba" , 0x00317A },
+ { "America/Argentina/Jujuy" , 0x00334F },
+ { "America/Argentina/La_Rioja" , 0x003503 },
+ { "America/Argentina/Mendoza" , 0x0036BB },
+ { "America/Argentina/Rio_Gallegos" , 0x00387B },
+ { "America/Argentina/Salta" , 0x003A30 },
+ { "America/Argentina/San_Juan" , 0x003BDC },
+ { "America/Argentina/San_Luis" , 0x003D94 },
+ { "America/Argentina/Tucuman" , 0x003F5A },
+ { "America/Argentina/Ushuaia" , 0x004116 },
+ { "America/Aruba" , 0x0042D1 },
+ { "America/Asuncion" , 0x004337 },
+ { "America/Atikokan" , 0x00461C },
+ { "America/Atka" , 0x0046F2 },
+ { "America/Bahia" , 0x004A58 },
+ { "America/Bahia_Banderas" , 0x004BEB },
+ { "America/Barbados" , 0x004E64 },
+ { "America/Belem" , 0x004EFE },
+ { "America/Belize" , 0x004FF9 },
+ { "America/Blanc-Sablon" , 0x005175 },
+ { "America/Boa_Vista" , 0x005229 },
+ { "America/Bogota" , 0x005332 },
+ { "America/Boise" , 0x00539E },
+ { "America/Buenos_Aires" , 0x005735 },
+ { "America/Cambridge_Bay" , 0x0058CE },
+ { "America/Campo_Grande" , 0x005BF6 },
+ { "America/Cancun" , 0x005EE5 },
+ { "America/Caracas" , 0x006127 },
+ { "America/Catamarca" , 0x00618E },
+ { "America/Cayenne" , 0x006334 },
+ { "America/Cayman" , 0x006396 },
+ { "America/Chicago" , 0x0063EB },
+ { "America/Chihuahua" , 0x006902 },
+ { "America/Coral_Harbour" , 0x006B6D },
+ { "America/Cordoba" , 0x006BFF },
+ { "America/Costa_Rica" , 0x006DA5 },
+ { "America/Creston" , 0x006E2F },
+ { "America/Cuiaba" , 0x006EBB },
+ { "America/Curacao" , 0x007199 },
+ { "America/Danmarkshavn" , 0x0071FF },
+ { "America/Dawson" , 0x007343 },
+ { "America/Dawson_Creek" , 0x007660 },
+ { "America/Denver" , 0x00783A },
+ { "America/Detroit" , 0x007BC0 },
+ { "America/Dominica" , 0x007F1F },
+ { "America/Edmonton" , 0x007F74 },
+ { "America/Eirunepe" , 0x00832C },
+ { "America/El_Salvador" , 0x008444 },
+ { "America/Ensenada" , 0x0084B9 },
+ { "America/Fort_Wayne" , 0x008960 },
+ { "America/Fortaleza" , 0x008822 },
+ { "America/Glace_Bay" , 0x008BCA },
+ { "America/Godthab" , 0x008F41 },
+ { "America/Goose_Bay" , 0x009205 },
+ { "America/Grand_Turk" , 0x0096C2 },
+ { "America/Grenada" , 0x009971 },
+ { "America/Guadeloupe" , 0x0099C6 },
+ { "America/Guatemala" , 0x009A1B },
+ { "America/Guayaquil" , 0x009AA4 },
+ { "America/Guyana" , 0x009B01 },
+ { "America/Halifax" , 0x009B82 },
+ { "America/Havana" , 0x00A098 },
+ { "America/Hermosillo" , 0x00A40B },
+ { "America/Indiana/Indianapolis" , 0x00A4E9 },
+ { "America/Indiana/Knox" , 0x00A77A },
+ { "America/Indiana/Marengo" , 0x00AB11 },
+ { "America/Indiana/Petersburg" , 0x00ADB7 },
+ { "America/Indiana/Tell_City" , 0x00B304 },
+ { "America/Indiana/Vevay" , 0x00B59D },
+ { "America/Indiana/Vincennes" , 0x00B7D8 },
+ { "America/Indiana/Winamac" , 0x00BA8C },
+ { "America/Indianapolis" , 0x00B09A },
+ { "America/Inuvik" , 0x00BD45 },
+ { "America/Iqaluit" , 0x00C03C },
+ { "America/Jamaica" , 0x00C35E },
+ { "America/Jujuy" , 0x00C423 },
+ { "America/Juneau" , 0x00C5CD },
+ { "America/Kentucky/Louisville" , 0x00C94B },
+ { "America/Kentucky/Monticello" , 0x00CD69 },
+ { "America/Knox_IN" , 0x00D0EE },
+ { "America/Kralendijk" , 0x00D45F },
+ { "America/La_Paz" , 0x00D4C5 },
+ { "America/Lima" , 0x00D52C },
+ { "America/Los_Angeles" , 0x00D5D4 },
+ { "America/Louisville" , 0x00D9E5 },
+ { "America/Lower_Princes" , 0x00DDDA },
+ { "America/Maceio" , 0x00DE40 },
+ { "America/Managua" , 0x00DF7A },
+ { "America/Manaus" , 0x00E02D },
+ { "America/Marigot" , 0x00E12F },
+ { "America/Martinique" , 0x00E184 },
+ { "America/Matamoros" , 0x00E1F0 },
+ { "America/Mazatlan" , 0x00E449 },
+ { "America/Mendoza" , 0x00E6B6 },
+ { "America/Menominee" , 0x00E86A },
+ { "America/Merida" , 0x00EBEB },
+ { "America/Metlakatla" , 0x00EE26 },
+ { "America/Mexico_City" , 0x00EF60 },
+ { "America/Miquelon" , 0x00F1DB },
+ { "America/Moncton" , 0x00F44D },
+ { "America/Monterrey" , 0x00F8E4 },
+ { "America/Montevideo" , 0x00FB47 },
+ { "America/Montreal" , 0x00FE59 },
+ { "America/Montserrat" , 0x010349 },
+ { "America/Nassau" , 0x01039E },
+ { "America/New_York" , 0x0106E3 },
+ { "America/Nipigon" , 0x010BEE },
+ { "America/Nome" , 0x010F3F },
+ { "America/Noronha" , 0x0112BD },
+ { "America/North_Dakota/Beulah" , 0x0113ED },
+ { "America/North_Dakota/Center" , 0x011781 },
+ { "America/North_Dakota/New_Salem" , 0x011B15 },
+ { "America/Ojinaga" , 0x011EBE },
+ { "America/Panama" , 0x01211F },
+ { "America/Pangnirtung" , 0x012174 },
+ { "America/Paramaribo" , 0x0124AA },
+ { "America/Phoenix" , 0x01253C },
+ { "America/Port-au-Prince" , 0x0125FA },
+ { "America/Port_of_Spain" , 0x01291E },
+ { "America/Porto_Acre" , 0x01281A },
+ { "America/Porto_Velho" , 0x012973 },
+ { "America/Puerto_Rico" , 0x012A69 },
+ { "America/Rainy_River" , 0x012AD4 },
+ { "America/Rankin_Inlet" , 0x012E0C },
+ { "America/Recife" , 0x0130F2 },
+ { "America/Regina" , 0x01321C },
+ { "America/Resolute" , 0x0133DA },
+ { "America/Rio_Branco" , 0x0136CB },
+ { "America/Rosario" , 0x0137D3 },
+ { "America/Santa_Isabel" , 0x013979 },
+ { "America/Santarem" , 0x013D1C },
+ { "America/Santiago" , 0x013E21 },
+ { "America/Santo_Domingo" , 0x0141CA },
+ { "America/Sao_Paulo" , 0x014290 },
+ { "America/Scoresbysund" , 0x01459F },
+ { "America/Shiprock" , 0x01488D },
+ { "America/Sitka" , 0x014C06 },
+ { "America/St_Barthelemy" , 0x014F8E },
+ { "America/St_Johns" , 0x014FE3 },
+ { "America/St_Kitts" , 0x015536 },
+ { "America/St_Lucia" , 0x01558B },
+ { "America/St_Thomas" , 0x0155E0 },
+ { "America/St_Vincent" , 0x015635 },
+ { "America/Swift_Current" , 0x01568A },
+ { "America/Tegucigalpa" , 0x0157AB },
+ { "America/Thule" , 0x01582A },
+ { "America/Thunder_Bay" , 0x015A71 },
+ { "America/Tijuana" , 0x015DBA },
+ { "America/Toronto" , 0x016153 },
+ { "America/Tortola" , 0x016673 },
+ { "America/Vancouver" , 0x0166C8 },
+ { "America/Virgin" , 0x016B05 },
+ { "America/Whitehorse" , 0x016B5A },
+ { "America/Winnipeg" , 0x016E77 },
+ { "America/Yakutat" , 0x0172B7 },
+ { "America/Yellowknife" , 0x017622 },
+ { "Antarctica/Casey" , 0x017932 },
+ { "Antarctica/Davis" , 0x0179CF },
+ { "Antarctica/DumontDUrville" , 0x017A70 },
+ { "Antarctica/Macquarie" , 0x017B02 },
+ { "Antarctica/Mawson" , 0x017D49 },
+ { "Antarctica/McMurdo" , 0x017DC5 },
+ { "Antarctica/Palmer" , 0x018170 },
+ { "Antarctica/Rothera" , 0x01848C },
+ { "Antarctica/South_Pole" , 0x018502 },
+ { "Antarctica/Syowa" , 0x018880 },
+ { "Antarctica/Vostok" , 0x0188EE },
+ { "Arctic/Longyearbyen" , 0x01895F },
+ { "Asia/Aden" , 0x018C91 },
+ { "Asia/Almaty" , 0x018CE6 },
+ { "Asia/Amman" , 0x018E65 },
+ { "Asia/Anadyr" , 0x019037 },
+ { "Asia/Aqtau" , 0x01921C },
+ { "Asia/Aqtobe" , 0x01941B },
+ { "Asia/Ashgabat" , 0x0195D3 },
+ { "Asia/Ashkhabad" , 0x0196F0 },
+ { "Asia/Baghdad" , 0x01980D },
+ { "Asia/Bahrain" , 0x019982 },
+ { "Asia/Baku" , 0x0199E8 },
+ { "Asia/Bangkok" , 0x019CD0 },
+ { "Asia/Beirut" , 0x019D25 },
+ { "Asia/Bishkek" , 0x01A032 },
+ { "Asia/Brunei" , 0x01A1DE },
+ { "Asia/Calcutta" , 0x01A240 },
+ { "Asia/Choibalsan" , 0x01A2B9 },
+ { "Asia/Chongqing" , 0x01A432 },
+ { "Asia/Chungking" , 0x01A521 },
+ { "Asia/Colombo" , 0x01A5D0 },
+ { "Asia/Dacca" , 0x01A66C },
+ { "Asia/Damascus" , 0x01A712 },
+ { "Asia/Dhaka" , 0x01AA62 },
+ { "Asia/Dili" , 0x01AB08 },
+ { "Asia/Dubai" , 0x01AB92 },
+ { "Asia/Dushanbe" , 0x01ABE7 },
+ { "Asia/Gaza" , 0x01ACEA },
+ { "Asia/Harbin" , 0x01B03D },
+ { "Asia/Hebron" , 0x01B124 },
+ { "Asia/Ho_Chi_Minh" , 0x01B480 },
+ { "Asia/Hong_Kong" , 0x01B4F8 },
+ { "Asia/Hovd" , 0x01B6BA },
+ { "Asia/Irkutsk" , 0x01B832 },
+ { "Asia/Istanbul" , 0x01BA18 },
+ { "Asia/Jakarta" , 0x01BE05 },
+ { "Asia/Jayapura" , 0x01BEAF },
+ { "Asia/Jerusalem" , 0x01BF4B },
+ { "Asia/Kabul" , 0x01C27A },
+ { "Asia/Kamchatka" , 0x01C2CB },
+ { "Asia/Karachi" , 0x01C4A7 },
+ { "Asia/Kashgar" , 0x01C55C },
+ { "Asia/Kathmandu" , 0x01C62D },
+ { "Asia/Katmandu" , 0x01C693 },
+ { "Asia/Khandyga" , 0x01C6F9 },
+ { "Asia/Kolkata" , 0x01C91E },
+ { "Asia/Krasnoyarsk" , 0x01C997 },
+ { "Asia/Kuala_Lumpur" , 0x01CB7F },
+ { "Asia/Kuching" , 0x01CC3C },
+ { "Asia/Kuwait" , 0x01CD2A },
+ { "Asia/Macao" , 0x01CD7F },
+ { "Asia/Macau" , 0x01CEBA },
+ { "Asia/Magadan" , 0x01CFF5 },
+ { "Asia/Makassar" , 0x01D1D7 },
+ { "Asia/Manila" , 0x01D29C },
+ { "Asia/Muscat" , 0x01D321 },
+ { "Asia/Nicosia" , 0x01D376 },
+ { "Asia/Novokuznetsk" , 0x01D65E },
+ { "Asia/Novosibirsk" , 0x01D860 },
+ { "Asia/Omsk" , 0x01DA4B },
+ { "Asia/Oral" , 0x01DC32 },
+ { "Asia/Phnom_Penh" , 0x01DE02 },
+ { "Asia/Pontianak" , 0x01DE7A },
+ { "Asia/Pyongyang" , 0x01DF3C },
+ { "Asia/Qatar" , 0x01DFA9 },
+ { "Asia/Qyzylorda" , 0x01E00F },
+ { "Asia/Rangoon" , 0x01E1E5 },
+ { "Asia/Riyadh" , 0x01E25D },
+ { "Asia/Saigon" , 0x01E2B2 },
+ { "Asia/Sakhalin" , 0x01E32A },
+ { "Asia/Samarkand" , 0x01E521 },
+ { "Asia/Seoul" , 0x01E657 },
+ { "Asia/Shanghai" , 0x01E6FB },
+ { "Asia/Singapore" , 0x01E7DB },
+ { "Asia/Taipei" , 0x01E892 },
+ { "Asia/Tashkent" , 0x01E9AA },
+ { "Asia/Tbilisi" , 0x01EADB },
+ { "Asia/Tehran" , 0x01EC95 },
+ { "Asia/Tel_Aviv" , 0x01EF03 },
+ { "Asia/Thimbu" , 0x01F232 },
+ { "Asia/Thimphu" , 0x01F298 },
+ { "Asia/Tokyo" , 0x01F2FE },
+ { "Asia/Ujung_Pandang" , 0x01F387 },
+ { "Asia/Ulaanbaatar" , 0x01F404 },
+ { "Asia/Ulan_Bator" , 0x01F55F },
+ { "Asia/Urumqi" , 0x01F6AC },
+ { "Asia/Ust-Nera" , 0x01F773 },
+ { "Asia/Vientiane" , 0x01F978 },
+ { "Asia/Vladivostok" , 0x01F9F0 },
+ { "Asia/Yakutsk" , 0x01FBDC },
+ { "Asia/Yekaterinburg" , 0x01FDC1 },
+ { "Asia/Yerevan" , 0x01FFCC },
+ { "Atlantic/Azores" , 0x0201CC },
+ { "Atlantic/Bermuda" , 0x0206CF },
+ { "Atlantic/Canary" , 0x0209B0 },
+ { "Atlantic/Cape_Verde" , 0x020C86 },
+ { "Atlantic/Faeroe" , 0x020CFF },
+ { "Atlantic/Faroe" , 0x020FA3 },
+ { "Atlantic/Jan_Mayen" , 0x021247 },
+ { "Atlantic/Madeira" , 0x021579 },
+ { "Atlantic/Reykjavik" , 0x021A82 },
+ { "Atlantic/South_Georgia" , 0x021C3B },
+ { "Atlantic/St_Helena" , 0x021E4D },
+ { "Atlantic/Stanley" , 0x021C7F },
+ { "Australia/ACT" , 0x021EA2 },
+ { "Australia/Adelaide" , 0x0221BF },
+ { "Australia/Brisbane" , 0x0224EB },
+ { "Australia/Broken_Hill" , 0x0225B2 },
+ { "Australia/Canberra" , 0x0228F0 },
+ { "Australia/Currie" , 0x022C0D },
+ { "Australia/Darwin" , 0x022F40 },
+ { "Australia/Eucla" , 0x022FC6 },
+ { "Australia/Hobart" , 0x02309B },
+ { "Australia/LHI" , 0x0233F9 },
+ { "Australia/Lindeman" , 0x023694 },
+ { "Australia/Lord_Howe" , 0x023775 },
+ { "Australia/Melbourne" , 0x023A20 },
+ { "Australia/North" , 0x023D45 },
+ { "Australia/NSW" , 0x023DB9 },
+ { "Australia/Perth" , 0x0240D6 },
+ { "Australia/Queensland" , 0x0241AE },
+ { "Australia/South" , 0x02425A },
+ { "Australia/Sydney" , 0x024577 },
+ { "Australia/Tasmania" , 0x0248B4 },
+ { "Australia/Victoria" , 0x024BF9 },
+ { "Australia/West" , 0x024F16 },
+ { "Australia/Yancowinna" , 0x024FCC },
+ { "Brazil/Acre" , 0x0252EE },
+ { "Brazil/DeNoronha" , 0x0253F2 },
+ { "Brazil/East" , 0x025512 },
+ { "Brazil/West" , 0x0257EF },
+ { "Canada/Atlantic" , 0x0258E7 },
+ { "Canada/Central" , 0x025DCF },
+ { "Canada/East-Saskatchewan" , 0x0266D9 },
+ { "Canada/Eastern" , 0x0261E9 },
+ { "Canada/Mountain" , 0x026862 },
+ { "Canada/Newfoundland" , 0x026BD8 },
+ { "Canada/Pacific" , 0x027103 },
+ { "Canada/Saskatchewan" , 0x02751C },
+ { "Canada/Yukon" , 0x0276A5 },
+ { "CET" , 0x0279A8 },
+ { "Chile/Continental" , 0x027CB1 },
+ { "Chile/EasterIsland" , 0x02804C },
+ { "CST6CDT" , 0x02838E },
+ { "Cuba" , 0x0286DF },
+ { "EET" , 0x028A52 },
+ { "Egypt" , 0x028D05 },
+ { "Eire" , 0x028FC8 },
+ { "EST" , 0x0294D9 },
+ { "EST5EDT" , 0x02951D },
+ { "Etc/GMT" , 0x02986E },
+ { "Etc/GMT+0" , 0x02993A },
+ { "Etc/GMT+1" , 0x0299C4 },
+ { "Etc/GMT+10" , 0x029A51 },
+ { "Etc/GMT+11" , 0x029ADF },
+ { "Etc/GMT+12" , 0x029B6D },
+ { "Etc/GMT+2" , 0x029C88 },
+ { "Etc/GMT+3" , 0x029D14 },
+ { "Etc/GMT+4" , 0x029DA0 },
+ { "Etc/GMT+5" , 0x029E2C },
+ { "Etc/GMT+6" , 0x029EB8 },
+ { "Etc/GMT+7" , 0x029F44 },
+ { "Etc/GMT+8" , 0x029FD0 },
+ { "Etc/GMT+9" , 0x02A05C },
+ { "Etc/GMT-0" , 0x0298F6 },
+ { "Etc/GMT-1" , 0x02997E },
+ { "Etc/GMT-10" , 0x029A0A },
+ { "Etc/GMT-11" , 0x029A98 },
+ { "Etc/GMT-12" , 0x029B26 },
+ { "Etc/GMT-13" , 0x029BB4 },
+ { "Etc/GMT-14" , 0x029BFB },
+ { "Etc/GMT-2" , 0x029C42 },
+ { "Etc/GMT-3" , 0x029CCE },
+ { "Etc/GMT-4" , 0x029D5A },
+ { "Etc/GMT-5" , 0x029DE6 },
+ { "Etc/GMT-6" , 0x029E72 },
+ { "Etc/GMT-7" , 0x029EFE },
+ { "Etc/GMT-8" , 0x029F8A },
+ { "Etc/GMT-9" , 0x02A016 },
+ { "Etc/GMT0" , 0x0298B2 },
+ { "Etc/Greenwich" , 0x02A0A2 },
+ { "Etc/UCT" , 0x02A0E6 },
+ { "Etc/Universal" , 0x02A12A },
+ { "Etc/UTC" , 0x02A16E },
+ { "Etc/Zulu" , 0x02A1B2 },
+ { "Europe/Amsterdam" , 0x02A1F6 },
+ { "Europe/Andorra" , 0x02A634 },
+ { "Europe/Athens" , 0x02A8B0 },
+ { "Europe/Belfast" , 0x02ABF3 },
+ { "Europe/Belgrade" , 0x02B12A },
+ { "Europe/Berlin" , 0x02B3F3 },
+ { "Europe/Bratislava" , 0x02B757 },
+ { "Europe/Brussels" , 0x02BA89 },
+ { "Europe/Bucharest" , 0x02BEC0 },
+ { "Europe/Budapest" , 0x02C1EA },
+ { "Europe/Busingen" , 0x02C55D },
+ { "Europe/Chisinau" , 0x02C814 },
+ { "Europe/Copenhagen" , 0x02CBA2 },
+ { "Europe/Dublin" , 0x02CEAC },
+ { "Europe/Gibraltar" , 0x02D3BD },
+ { "Europe/Guernsey" , 0x02D814 },
+ { "Europe/Helsinki" , 0x02DD4B },
+ { "Europe/Isle_of_Man" , 0x02E001 },
+ { "Europe/Istanbul" , 0x02E538 },
+ { "Europe/Jersey" , 0x02E925 },
+ { "Europe/Kaliningrad" , 0x02EE5C },
+ { "Europe/Kiev" , 0x02F0C2 },
+ { "Europe/Lisbon" , 0x02F3D9 },
+ { "Europe/Ljubljana" , 0x02F8DD },
+ { "Europe/London" , 0x02FBA6 },
+ { "Europe/Luxembourg" , 0x0300DD },
+ { "Europe/Madrid" , 0x030533 },
+ { "Europe/Malta" , 0x0308F9 },
+ { "Europe/Mariehamn" , 0x030CB2 },
+ { "Europe/Minsk" , 0x030F68 },
+ { "Europe/Monaco" , 0x031176 },
+ { "Europe/Moscow" , 0x0315B1 },
+ { "Europe/Nicosia" , 0x031802 },
+ { "Europe/Oslo" , 0x031AEA },
+ { "Europe/Paris" , 0x031E1C },
+ { "Europe/Podgorica" , 0x032262 },
+ { "Europe/Prague" , 0x03252B },
+ { "Europe/Riga" , 0x03285D },
+ { "Europe/Rome" , 0x032BA2 },
+ { "Europe/Samara" , 0x032F65 },
+ { "Europe/San_Marino" , 0x033198 },
+ { "Europe/Sarajevo" , 0x03355B },
+ { "Europe/Simferopol" , 0x033824 },
+ { "Europe/Skopje" , 0x033B4F },
+ { "Europe/Sofia" , 0x033E18 },
+ { "Europe/Stockholm" , 0x034120 },
+ { "Europe/Tallinn" , 0x0343CF },
+ { "Europe/Tirane" , 0x034709 },
+ { "Europe/Tiraspol" , 0x034A0F },
+ { "Europe/Uzhgorod" , 0x034D9D },
+ { "Europe/Vaduz" , 0x0350B4 },
+ { "Europe/Vatican" , 0x035363 },
+ { "Europe/Vienna" , 0x035726 },
+ { "Europe/Vilnius" , 0x035A53 },
+ { "Europe/Volgograd" , 0x035D92 },
+ { "Europe/Warsaw" , 0x035F92 },
+ { "Europe/Zagreb" , 0x036373 },
+ { "Europe/Zaporozhye" , 0x03663C },
+ { "Europe/Zurich" , 0x03697D },
+ { "Factory" , 0x036C2C },
+ { "GB" , 0x036C9D },
+ { "GB-Eire" , 0x0371D4 },
+ { "GMT" , 0x03770B },
+ { "GMT+0" , 0x0377D7 },
+ { "GMT-0" , 0x037793 },
+ { "GMT0" , 0x03774F },
+ { "Greenwich" , 0x03781B },
+ { "Hongkong" , 0x03785F },
+ { "HST" , 0x037A21 },
+ { "Iceland" , 0x037A65 },
+ { "Indian/Antananarivo" , 0x037C1E },
+ { "Indian/Chagos" , 0x037C92 },
+ { "Indian/Christmas" , 0x037CF4 },
+ { "Indian/Cocos" , 0x037D38 },
+ { "Indian/Comoro" , 0x037D7C },
+ { "Indian/Kerguelen" , 0x037DD1 },
+ { "Indian/Mahe" , 0x037E26 },
+ { "Indian/Maldives" , 0x037E7B },
+ { "Indian/Mauritius" , 0x037ED0 },
+ { "Indian/Mayotte" , 0x037F46 },
+ { "Indian/Reunion" , 0x037F9B },
+ { "Iran" , 0x037FF0 },
+ { "Israel" , 0x03825E },
+ { "Jamaica" , 0x03858D },
+ { "Japan" , 0x038652 },
+ { "Kwajalein" , 0x0386DB },
+ { "Libya" , 0x03873E },
+ { "MET" , 0x038847 },
+ { "Mexico/BajaNorte" , 0x038B50 },
+ { "Mexico/BajaSur" , 0x038EB9 },
+ { "Mexico/General" , 0x0390FE },
+ { "MST" , 0x03935C },
+ { "MST7MDT" , 0x0393A0 },
+ { "Navajo" , 0x0396F1 },
+ { "NZ" , 0x039A6A },
+ { "NZ-CHAT" , 0x039DE8 },
+ { "Pacific/Apia" , 0x03A0D0 },
+ { "Pacific/Auckland" , 0x03A26C },
+ { "Pacific/Chatham" , 0x03A5F8 },
+ { "Pacific/Chuuk" , 0x03A8EF },
+ { "Pacific/Easter" , 0x03A948 },
+ { "Pacific/Efate" , 0x03ACA6 },
+ { "Pacific/Enderbury" , 0x03AD6C },
+ { "Pacific/Fakaofo" , 0x03ADDA },
+ { "Pacific/Fiji" , 0x03AE2B },
+ { "Pacific/Funafuti" , 0x03AFBE },
+ { "Pacific/Galapagos" , 0x03B002 },
+ { "Pacific/Gambier" , 0x03B07A },
+ { "Pacific/Guadalcanal" , 0x03B0DF },
+ { "Pacific/Guam" , 0x03B134 },
+ { "Pacific/Honolulu" , 0x03B18A },
+ { "Pacific/Johnston" , 0x03B201 },
+ { "Pacific/Kiritimati" , 0x03B280 },
+ { "Pacific/Kosrae" , 0x03B2EB },
+ { "Pacific/Kwajalein" , 0x03B348 },
+ { "Pacific/Majuro" , 0x03B3B4 },
+ { "Pacific/Marquesas" , 0x03B413 },
+ { "Pacific/Midway" , 0x03B47A },
+ { "Pacific/Nauru" , 0x03B504 },
+ { "Pacific/Niue" , 0x03B57C },
+ { "Pacific/Norfolk" , 0x03B5DA },
+ { "Pacific/Noumea" , 0x03B62F },
+ { "Pacific/Pago_Pago" , 0x03B6BF },
+ { "Pacific/Palau" , 0x03B748 },
+ { "Pacific/Pitcairn" , 0x03B78C },
+ { "Pacific/Pohnpei" , 0x03B7E1 },
+ { "Pacific/Ponape" , 0x03B836 },
+ { "Pacific/Port_Moresby" , 0x03B87B },
+ { "Pacific/Rarotonga" , 0x03B8BF },
+ { "Pacific/Saipan" , 0x03B99B },
+ { "Pacific/Samoa" , 0x03B9FE },
+ { "Pacific/Tahiti" , 0x03BA87 },
+ { "Pacific/Tarawa" , 0x03BAEC },
+ { "Pacific/Tongatapu" , 0x03BB40 },
+ { "Pacific/Truk" , 0x03BBCC },
+ { "Pacific/Wake" , 0x03BC11 },
+ { "Pacific/Wallis" , 0x03BC61 },
+ { "Pacific/Yap" , 0x03BCA5 },
+ { "Poland" , 0x03BCEA },
+ { "Portugal" , 0x03C0CB },
+ { "PRC" , 0x03C5C7 },
+ { "PST8PDT" , 0x03C678 },
+ { "ROC" , 0x03C9C9 },
+ { "ROK" , 0x03CAE1 },
+ { "Singapore" , 0x03CB85 },
+ { "Turkey" , 0x03CC3C },
+ { "UCT" , 0x03D029 },
+ { "Universal" , 0x03D06D },
+ { "US/Alaska" , 0x03D0B1 },
+ { "US/Aleutian" , 0x03D41A },
+ { "US/Arizona" , 0x03D780 },
+ { "US/Central" , 0x03D80E },
+ { "US/East-Indiana" , 0x03E218 },
+ { "US/Eastern" , 0x03DD19 },
+ { "US/Hawaii" , 0x03E482 },
+ { "US/Indiana-Starke" , 0x03E4F3 },
+ { "US/Michigan" , 0x03E864 },
+ { "US/Mountain" , 0x03EB9B },
+ { "US/Pacific" , 0x03EF14 },
+ { "US/Pacific-New" , 0x03F319 },
+ { "US/Samoa" , 0x03F71E },
+ { "UTC" , 0x03F7A7 },
+ { "W-SU" , 0x03FA9E },
+ { "WET" , 0x03F7EB },
+ { "Zulu" , 0x03FCD8 },
};
/* This is a generated file, do not modify */
-const unsigned char timelib_timezone_db_data_builtin[261381] = {
+const unsigned char timelib_timezone_db_data_builtin[261404] = {
/* Africa/Abidjan */
@@ -758,7 +758,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* Africa/Casablanca */
0x50, 0x48, 0x50, 0x31, 0x01, 0x4D, 0x41, 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, 0x5F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0x51, 0xF9, 0x9C,
+0x00, 0x00, 0x00, 0x65, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0x51, 0xF9, 0x9C,
0xC6, 0xFF, 0x14, 0x80, 0xC7, 0x58, 0xAC, 0x70, 0xC7, 0xD9, 0xED, 0x80, 0xD2, 0xA1, 0x32, 0xF0,
0xDB, 0x35, 0xA4, 0x00, 0xDB, 0xEE, 0x27, 0xF0, 0xFB, 0x25, 0x72, 0x40, 0xFB, 0xC2, 0xEF, 0x70,
0x08, 0x6B, 0x84, 0x80, 0x08, 0xC6, 0x6D, 0xF0, 0x0B, 0xE8, 0x0C, 0x00, 0x0C, 0x61, 0x47, 0xF0,
@@ -767,32 +767,34 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0x4A, 0x23, 0x1A, 0x00, 0x4A, 0x8D, 0xD5, 0x70, 0x4B, 0xDC, 0xC0, 0x80, 0x4C, 0x5D, 0xE5, 0x70,
0x4D, 0x97, 0xB8, 0x80, 0x4E, 0x34, 0x8C, 0xF0, 0x4F, 0x9C, 0xA0, 0xA0, 0x50, 0x08, 0xBB, 0xA0,
0x50, 0x31, 0x9A, 0x20, 0x50, 0x67, 0xA7, 0xA0, 0x51, 0x7C, 0x82, 0xA0, 0x51, 0xD8, 0xCB, 0xA0,
-0x52, 0x05, 0x9E, 0xA0, 0x52, 0x47, 0x89, 0xA0, 0x53, 0x5C, 0x64, 0xA0, 0x53, 0xAF, 0x73, 0x20,
-0x53, 0xD7, 0x00, 0x20, 0x54, 0x27, 0x6B, 0xA0, 0x55, 0x3C, 0x46, 0xA0, 0x55, 0x82, 0x26, 0x20,
-0x55, 0xA9, 0xB3, 0x20, 0x56, 0x07, 0x4D, 0xA0, 0x57, 0x1C, 0x28, 0xA0, 0x57, 0x56, 0x2A, 0xA0,
-0x57, 0x7D, 0xB7, 0xA0, 0x57, 0xE7, 0x2F, 0xA0, 0x59, 0x05, 0x45, 0x20, 0x59, 0x28, 0xDD, 0xA0,
-0x59, 0x50, 0x6A, 0xA0, 0x59, 0xC7, 0x11, 0xA0, 0x5A, 0xE5, 0x27, 0x20, 0x5A, 0xFB, 0x90, 0xA0,
-0x5B, 0x23, 0x1D, 0xA0, 0x5B, 0xB0, 0x2E, 0x20, 0x5C, 0xC5, 0x09, 0x20, 0x5C, 0xCF, 0x95, 0x20,
-0x5C, 0xF7, 0x22, 0x20, 0x5D, 0x90, 0x10, 0x20, 0x5E, 0xC9, 0xD5, 0x20, 0x5F, 0x6F, 0xF2, 0x20,
-0x60, 0x9C, 0x88, 0x20, 0x61, 0x4F, 0xD4, 0x20, 0x62, 0x70, 0x8C, 0xA0, 0x63, 0x2F, 0xB6, 0x20,
-0x64, 0x4D, 0xCB, 0xA0, 0x65, 0x0F, 0x98, 0x20, 0x66, 0x2D, 0xAD, 0xA0, 0x66, 0xF8, 0xB4, 0xA0,
-0x68, 0x0D, 0x8F, 0xA0, 0x68, 0xD8, 0x96, 0xA0, 0x69, 0xED, 0x71, 0xA0, 0x6A, 0xB8, 0x78, 0xA0,
-0x6B, 0xCD, 0x53, 0xA0, 0x6C, 0x98, 0x5A, 0xA0, 0x6D, 0xB6, 0x70, 0x20, 0x6E, 0x78, 0x3C, 0xA0,
-0x6F, 0x96, 0x52, 0x20, 0x70, 0x61, 0x59, 0x20, 0x71, 0x76, 0x34, 0x20, 0x72, 0x41, 0x3B, 0x20,
-0x73, 0x56, 0x16, 0x20, 0x74, 0x21, 0x1D, 0x20, 0x75, 0x35, 0xF8, 0x20, 0x76, 0x00, 0xFF, 0x20,
-0x77, 0x15, 0xDA, 0x20, 0x77, 0xE0, 0xE1, 0x20, 0x78, 0xFE, 0xF6, 0xA0, 0x79, 0xC0, 0xC3, 0x20,
-0x7A, 0xDE, 0xD8, 0xA0, 0x7B, 0xA9, 0xDF, 0xA0, 0x7C, 0xBE, 0xBA, 0xA0, 0x7D, 0x89, 0xC1, 0xA0,
-0x7E, 0x9E, 0x9C, 0xA0, 0x7F, 0x69, 0xA3, 0xA0, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
-0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x52, 0x05, 0x9E, 0xA0, 0x52, 0x6C, 0x73, 0xA0, 0x53, 0x37, 0x7A, 0xA0, 0x53, 0xAF, 0x73, 0x20,
+0x53, 0xD7, 0x00, 0x20, 0x54, 0x4C, 0x55, 0xA0, 0x55, 0x17, 0x5C, 0xA0, 0x55, 0x82, 0x26, 0x20,
+0x55, 0xA9, 0xB3, 0x20, 0x56, 0x2C, 0x37, 0xA0, 0x56, 0xF7, 0x3E, 0xA0, 0x57, 0x56, 0x2A, 0xA0,
+0x57, 0x7D, 0xB7, 0xA0, 0x58, 0x15, 0x54, 0x20, 0x58, 0xD7, 0x20, 0xA0, 0x59, 0x28, 0xDD, 0xA0,
+0x59, 0x50, 0x6A, 0xA0, 0x59, 0xF5, 0x36, 0x20, 0x5A, 0xB7, 0x02, 0xA0, 0x5A, 0xFB, 0x90, 0xA0,
+0x5B, 0x23, 0x1D, 0xA0, 0x5B, 0xD5, 0x18, 0x20, 0x5C, 0xA0, 0x1F, 0x20, 0x5C, 0xCF, 0x95, 0x20,
+0x5C, 0xF7, 0x22, 0x20, 0x5D, 0xB4, 0xFA, 0x20, 0x5E, 0x80, 0x01, 0x20, 0x5E, 0xA2, 0x48, 0x20,
+0x5E, 0xC9, 0xD5, 0x20, 0x5F, 0x94, 0xDC, 0x20, 0x60, 0x5F, 0xE3, 0x20, 0x60, 0x74, 0xFB, 0x20,
+0x60, 0x9C, 0x88, 0x20, 0x61, 0x7D, 0xF8, 0xA0, 0x62, 0x3F, 0xC5, 0x20, 0x62, 0x48, 0xFF, 0xA0,
+0x62, 0x70, 0x8C, 0xA0, 0x63, 0x5D, 0xDA, 0xA0, 0x64, 0x43, 0x3F, 0xA0, 0x65, 0x3D, 0xBC, 0xA0,
+0x66, 0x15, 0xF2, 0xA0, 0x67, 0x1D, 0x9E, 0xA0, 0x67, 0xE9, 0xF7, 0x20, 0x68, 0xFD, 0x80, 0xA0,
+0x69, 0xC8, 0x87, 0xA0, 0x6A, 0xDD, 0x62, 0xA0, 0x6B, 0xA8, 0x69, 0xA0, 0x6C, 0xC6, 0x7F, 0x20,
+0x6D, 0x88, 0x4B, 0xA0, 0x6E, 0xA6, 0x61, 0x20, 0x6F, 0x68, 0x2D, 0xA0, 0x70, 0x86, 0x43, 0x20,
+0x71, 0x51, 0x4A, 0x20, 0x72, 0x66, 0x25, 0x20, 0x73, 0x31, 0x2C, 0x20, 0x74, 0x46, 0x07, 0x20,
+0x75, 0x11, 0x0E, 0x20, 0x76, 0x2F, 0x23, 0xA0, 0x76, 0xF0, 0xF0, 0x20, 0x78, 0x0F, 0x05, 0xA0,
+0x78, 0xD0, 0xD2, 0x20, 0x79, 0xEE, 0xE7, 0xA0, 0x7A, 0xB0, 0xB4, 0x20, 0x7B, 0xCE, 0xC9, 0xA0,
+0x7C, 0x99, 0xD0, 0xA0, 0x7D, 0xA8, 0x14, 0x20, 0x7E, 0x79, 0xB2, 0xA0, 0x7F, 0x7C, 0x18, 0xA0,
0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x02, 0x03, 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, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
-0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0xFF, 0xFF, 0xF8, 0xE4, 0x00, 0x00, 0x00, 0x00, 0x0E,
-0x10, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x0D, 0x4C,
-0x4D, 0x54, 0x00, 0x57, 0x45, 0x53, 0x54, 0x00, 0x57, 0x45, 0x54, 0x00, 0x43, 0x45, 0x54, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBC, 0xAC, 0xC8, 0x01, 0x07, 0x16, 0x42,
-0x00, 0x00, 0x00, 0x00,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x02, 0x01, 0x02, 0x01, 0x02, 0xFF, 0xFF, 0xF8, 0xE4, 0x00, 0x00, 0x00, 0x00, 0x0E, 0x10, 0x01,
+0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x0D, 0x4C, 0x4D, 0x54,
+0x00, 0x57, 0x45, 0x53, 0x54, 0x00, 0x57, 0x45, 0x54, 0x00, 0x43, 0x45, 0x54, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBC, 0xAC, 0xC8, 0x01, 0x07, 0x16, 0x42, 0x00, 0x00,
+0x00, 0x00,
/* Africa/Ceuta */
0x50, 0x48, 0x50, 0x31, 0x01, 0x45, 0x53, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -890,12 +892,40 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* Africa/El_Aaiun */
0x50, 0x48, 0x50, 0x31, 0x01, 0x45, 0x48, 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, 0x02, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x0C, 0xBC, 0x48, 0xF0, 0xE0,
-0x0B, 0xD1, 0xB0, 0x90, 0x01, 0x02, 0xFF, 0xFF, 0xF3, 0xA0, 0x00, 0x00, 0xFF, 0xFF, 0xF1, 0xF0,
-0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x4C, 0x4D, 0x54, 0x00, 0x57, 0x41, 0x54, 0x00,
-0x57, 0x45, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xB2, 0xC1, 0xB8, 0x00, 0xFE,
-0x84, 0x40, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x5A, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0xBC, 0x48, 0xF0, 0xE0,
+0x0B, 0xD1, 0xB0, 0x90, 0x0B, 0xE8, 0x0C, 0x00, 0x0C, 0x61, 0x47, 0xF0, 0x0D, 0xC9, 0x3F, 0x80,
+0x0E, 0x8E, 0xF2, 0x70, 0x0F, 0xD3, 0x51, 0x80, 0x10, 0x27, 0xA3, 0x70, 0x48, 0x41, 0xE6, 0x80,
+0x48, 0xBB, 0x22, 0x70, 0x4A, 0x23, 0x1A, 0x00, 0x4A, 0x8D, 0xD5, 0x70, 0x4B, 0xDC, 0xC0, 0x80,
+0x4C, 0x5D, 0xE5, 0x70, 0x4D, 0x97, 0xB8, 0x80, 0x4E, 0x34, 0x8C, 0xF0, 0x4F, 0x9C, 0xA0, 0xA0,
+0x50, 0x08, 0xBB, 0xA0, 0x50, 0x31, 0x9A, 0x20, 0x50, 0x67, 0xA7, 0xA0, 0x51, 0x7C, 0x82, 0xA0,
+0x51, 0xD8, 0xCB, 0xA0, 0x52, 0x05, 0x9E, 0xA0, 0x52, 0x6C, 0x73, 0xA0, 0x53, 0x37, 0x7A, 0xA0,
+0x53, 0xAF, 0x73, 0x20, 0x53, 0xD7, 0x00, 0x20, 0x54, 0x4C, 0x55, 0xA0, 0x55, 0x17, 0x5C, 0xA0,
+0x55, 0x82, 0x26, 0x20, 0x55, 0xA9, 0xB3, 0x20, 0x56, 0x2C, 0x37, 0xA0, 0x56, 0xF7, 0x3E, 0xA0,
+0x57, 0x56, 0x2A, 0xA0, 0x57, 0x7D, 0xB7, 0xA0, 0x58, 0x15, 0x54, 0x20, 0x58, 0xD7, 0x20, 0xA0,
+0x59, 0x28, 0xDD, 0xA0, 0x59, 0x50, 0x6A, 0xA0, 0x59, 0xF5, 0x36, 0x20, 0x5A, 0xB7, 0x02, 0xA0,
+0x5A, 0xFB, 0x90, 0xA0, 0x5B, 0x23, 0x1D, 0xA0, 0x5B, 0xD5, 0x18, 0x20, 0x5C, 0xA0, 0x1F, 0x20,
+0x5C, 0xCF, 0x95, 0x20, 0x5C, 0xF7, 0x22, 0x20, 0x5D, 0xB4, 0xFA, 0x20, 0x5E, 0x80, 0x01, 0x20,
+0x5E, 0xA2, 0x48, 0x20, 0x5E, 0xC9, 0xD5, 0x20, 0x5F, 0x94, 0xDC, 0x20, 0x60, 0x5F, 0xE3, 0x20,
+0x60, 0x74, 0xFB, 0x20, 0x60, 0x9C, 0x88, 0x20, 0x61, 0x7D, 0xF8, 0xA0, 0x62, 0x3F, 0xC5, 0x20,
+0x62, 0x48, 0xFF, 0xA0, 0x62, 0x70, 0x8C, 0xA0, 0x63, 0x5D, 0xDA, 0xA0, 0x64, 0x43, 0x3F, 0xA0,
+0x65, 0x3D, 0xBC, 0xA0, 0x66, 0x15, 0xF2, 0xA0, 0x67, 0x1D, 0x9E, 0xA0, 0x67, 0xE9, 0xF7, 0x20,
+0x68, 0xFD, 0x80, 0xA0, 0x69, 0xC8, 0x87, 0xA0, 0x6A, 0xDD, 0x62, 0xA0, 0x6B, 0xA8, 0x69, 0xA0,
+0x6C, 0xC6, 0x7F, 0x20, 0x6D, 0x88, 0x4B, 0xA0, 0x6E, 0xA6, 0x61, 0x20, 0x6F, 0x68, 0x2D, 0xA0,
+0x70, 0x86, 0x43, 0x20, 0x71, 0x51, 0x4A, 0x20, 0x72, 0x66, 0x25, 0x20, 0x73, 0x31, 0x2C, 0x20,
+0x74, 0x46, 0x07, 0x20, 0x75, 0x11, 0x0E, 0x20, 0x76, 0x2F, 0x23, 0xA0, 0x76, 0xF0, 0xF0, 0x20,
+0x78, 0x0F, 0x05, 0xA0, 0x78, 0xD0, 0xD2, 0x20, 0x79, 0xEE, 0xE7, 0xA0, 0x7A, 0xB0, 0xB4, 0x20,
+0x7B, 0xCE, 0xC9, 0xA0, 0x7C, 0x99, 0xD0, 0xA0, 0x7D, 0xA8, 0x14, 0x20, 0x7E, 0x79, 0xB2, 0xA0,
+0x7F, 0x7C, 0x18, 0xA0, 0x01, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03,
+0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03,
+0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03,
+0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03,
+0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03,
+0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0x02, 0x03, 0xFF, 0xFF,
+0xF3, 0xA0, 0x00, 0x00, 0xFF, 0xFF, 0xF1, 0xF0, 0x00, 0x04, 0x00, 0x00, 0x0E, 0x10, 0x01, 0x08,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x57, 0x41, 0x54, 0x00, 0x57, 0x45,
+0x53, 0x54, 0x00, 0x57, 0x45, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0xB2, 0xC1, 0xB8, 0x00, 0xFE, 0x84, 0x40, 0x00, 0x00, 0x00, 0x00,
/* Africa/Freetown */
0x50, 0x48, 0x50, 0x31, 0x01, 0x53, 0x4C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -1181,7 +1211,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* Africa/Tripoli */
0x50, 0x48, 0x50, 0x31, 0x01, 0x4C, 0x59, 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, 0x50, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0xA1, 0xF2, 0xC1, 0x24,
+0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0xA1, 0xF2, 0xC1, 0x24,
0xDD, 0xBB, 0xB1, 0x10, 0xDE, 0x23, 0xAD, 0x60, 0xE1, 0x78, 0xD2, 0x10, 0xE1, 0xE7, 0x65, 0xE0,
0xE5, 0x2F, 0x3F, 0x70, 0xE5, 0xA9, 0xCC, 0xE0, 0xEB, 0x4E, 0xC6, 0xF0, 0x16, 0x92, 0x42, 0x60,
0x17, 0x08, 0xF7, 0x70, 0x17, 0xFA, 0x2B, 0xE0, 0x18, 0xEA, 0x2A, 0xF0, 0x19, 0xDB, 0x5F, 0x60,
@@ -1189,24 +1219,9 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0x1E, 0x93, 0x0B, 0x70, 0x1F, 0x82, 0xEE, 0x60, 0x20, 0x70, 0x4A, 0x70, 0x21, 0x61, 0x7E, 0xE0,
0x22, 0x52, 0xCF, 0x70, 0x23, 0x44, 0x03, 0xE0, 0x24, 0x34, 0x02, 0xF0, 0x25, 0x25, 0x37, 0x60,
0x26, 0x40, 0xB7, 0xF0, 0x32, 0x4E, 0xF1, 0x60, 0x33, 0x44, 0x36, 0x70, 0x34, 0x35, 0x6A, 0xE0,
-0x50, 0x9D, 0x99, 0x00, 0x51, 0x54, 0xD9, 0x80, 0x52, 0x69, 0xB4, 0x80, 0x53, 0x34, 0xBB, 0x80,
-0x54, 0x52, 0xD1, 0x00, 0x55, 0x14, 0x9D, 0x80, 0x56, 0x32, 0xB3, 0x00, 0x56, 0xF4, 0x7F, 0x80,
-0x58, 0x12, 0x95, 0x00, 0x58, 0xDD, 0x9C, 0x00, 0x59, 0xF2, 0x77, 0x00, 0x5A, 0xBD, 0x7E, 0x00,
-0x5B, 0xD2, 0x59, 0x00, 0x5C, 0x9D, 0x60, 0x00, 0x5D, 0xB2, 0x3B, 0x00, 0x5E, 0x7D, 0x42, 0x00,
-0x5F, 0x9B, 0x57, 0x80, 0x60, 0x5D, 0x24, 0x00, 0x61, 0x7B, 0x39, 0x80, 0x62, 0x3D, 0x06, 0x00,
-0x63, 0x5B, 0x1B, 0x80, 0x64, 0x26, 0x22, 0x80, 0x65, 0x3A, 0xFD, 0x80, 0x66, 0x06, 0x04, 0x80,
-0x67, 0x1A, 0xDF, 0x80, 0x67, 0xE5, 0xE6, 0x80, 0x69, 0x03, 0xFC, 0x00, 0x69, 0xC5, 0xC8, 0x80,
-0x6A, 0xE3, 0xDE, 0x00, 0x6B, 0xA5, 0xAA, 0x80, 0x6C, 0xC3, 0xC0, 0x00, 0x6D, 0x8E, 0xC7, 0x00,
-0x6E, 0xA3, 0xA2, 0x00, 0x6F, 0x6E, 0xA9, 0x00, 0x70, 0x83, 0x84, 0x00, 0x71, 0x4E, 0x8B, 0x00,
-0x72, 0x63, 0x66, 0x00, 0x73, 0x2E, 0x6D, 0x00, 0x74, 0x4C, 0x82, 0x80, 0x75, 0x0E, 0x4F, 0x00,
-0x76, 0x2C, 0x64, 0x80, 0x76, 0xEE, 0x31, 0x00, 0x78, 0x0C, 0x46, 0x80, 0x78, 0xD7, 0x4D, 0x80,
-0x79, 0xEC, 0x28, 0x80, 0x7A, 0xB7, 0x2F, 0x80, 0x7B, 0xCC, 0x0A, 0x80, 0x7C, 0x97, 0x11, 0x80,
-0x7D, 0xB5, 0x27, 0x00, 0x7E, 0x76, 0xF3, 0x80, 0x7F, 0x95, 0x09, 0x00, 0x02, 0x01, 0x02, 0x01,
+0x50, 0x9D, 0x99, 0x00, 0x51, 0x54, 0xD9, 0x80, 0x52, 0x69, 0xB4, 0x80, 0x02, 0x01, 0x02, 0x01,
0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
-0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x03, 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, 0x00, 0x00, 0x0C, 0x5C,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x03, 0x02, 0x01, 0x03, 0x00, 0x00, 0x0C, 0x5C,
0x00, 0x00, 0x00, 0x00, 0x1C, 0x20, 0x01, 0x04, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x09, 0x00, 0x00,
0x1C, 0x20, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x43, 0x45, 0x53, 0x54, 0x00, 0x43, 0x45, 0x54,
0x00, 0x45, 0x45, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xBB, 0x87,
@@ -2944,7 +2959,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* America/Eirunepe */
0x50, 0x48, 0x50, 0x31, 0x01, 0x42, 0x52, 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, 0x20, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x88, 0x80,
+0x00, 0x00, 0x00, 0x21, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x88, 0x80,
0xB8, 0x0F, 0x66, 0x00, 0xB8, 0xFD, 0x5C, 0xC0, 0xB9, 0xF1, 0x50, 0x50, 0xBA, 0xDE, 0x90, 0x40,
0xDA, 0x38, 0xCA, 0x50, 0xDA, 0xEC, 0x16, 0x50, 0xDC, 0x19, 0xFD, 0xD0, 0xDC, 0xB9, 0x75, 0x40,
0xDD, 0xFB, 0x31, 0x50, 0xDE, 0x9B, 0xFA, 0x40, 0xDF, 0xDD, 0xB6, 0x50, 0xE0, 0x54, 0x4F, 0x40,
@@ -2952,14 +2967,14 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0xF8, 0x51, 0x48, 0x50, 0xF8, 0xC7, 0xE1, 0x40, 0xFA, 0x0A, 0xEE, 0xD0, 0xFA, 0xA9, 0x14, 0xC0,
0xFB, 0xEC, 0x22, 0x50, 0xFC, 0x8B, 0x99, 0xC0, 0x1D, 0xC9, 0xAA, 0x50, 0x1E, 0x78, 0xF3, 0xC0,
0x1F, 0xA0, 0x51, 0xD0, 0x20, 0x33, 0xEB, 0xC0, 0x21, 0x81, 0x85, 0x50, 0x22, 0x0B, 0xE4, 0xC0,
-0x2C, 0xC0, 0xD1, 0x50, 0x2D, 0x66, 0xE0, 0x40, 0x48, 0x60, 0x7F, 0x50, 0x02, 0x01, 0x02, 0x01,
+0x2C, 0xC0, 0xD1, 0x50, 0x2D, 0x66, 0xE0, 0x40, 0x48, 0x60, 0x7F, 0x50, 0x52, 0x7F, 0x04, 0xC0,
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, 0x03, 0xFF, 0xFF, 0xBE, 0x80,
-0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x01, 0x04, 0xFF, 0xFF, 0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF,
-0xC7, 0xC0, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x43, 0x53, 0x54, 0x00, 0x41, 0x43, 0x54,
-0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7F, 0x28,
-0x15, 0x00, 0xA8, 0x0C, 0xD5, 0x00, 0x00, 0x00, 0x0A, 0x57, 0x20, 0x41, 0x6D, 0x61, 0x7A, 0x6F,
-0x6E, 0x61, 0x73,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x03,
+0x02, 0xFF, 0xFF, 0xBE, 0x80, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x01, 0x04, 0xFF, 0xFF, 0xB9,
+0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x43, 0x53,
+0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
+0x00, 0x00, 0x00, 0x7F, 0x28, 0x15, 0x00, 0xA8, 0x0C, 0xD5, 0x00, 0x00, 0x00, 0x0A, 0x57, 0x20,
+0x41, 0x6D, 0x61, 0x7A, 0x6F, 0x6E, 0x61, 0x73,
/* America/El_Salvador */
0x50, 0x48, 0x50, 0x31, 0x01, 0x53, 0x56, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -5769,7 +5784,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* America/Porto_Acre */
0x50, 0x48, 0x50, 0x31, 0x00, 0x3F, 0x3F, 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, 0x1E, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
+0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
0xB8, 0x0F, 0x66, 0x00, 0xB8, 0xFD, 0x5C, 0xC0, 0xB9, 0xF1, 0x50, 0x50, 0xBA, 0xDE, 0x90, 0x40,
0xDA, 0x38, 0xCA, 0x50, 0xDA, 0xEC, 0x16, 0x50, 0xDC, 0x19, 0xFD, 0xD0, 0xDC, 0xB9, 0x75, 0x40,
0xDD, 0xFB, 0x31, 0x50, 0xDE, 0x9B, 0xFA, 0x40, 0xDF, 0xDD, 0xB6, 0x50, 0xE0, 0x54, 0x4F, 0x40,
@@ -5777,12 +5792,13 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0xF8, 0x51, 0x48, 0x50, 0xF8, 0xC7, 0xE1, 0x40, 0xFA, 0x0A, 0xEE, 0xD0, 0xFA, 0xA9, 0x14, 0xC0,
0xFB, 0xEC, 0x22, 0x50, 0xFC, 0x8B, 0x99, 0xC0, 0x1D, 0xC9, 0xAA, 0x50, 0x1E, 0x78, 0xF3, 0xC0,
0x1F, 0xA0, 0x51, 0xD0, 0x20, 0x33, 0xEB, 0xC0, 0x21, 0x81, 0x85, 0x50, 0x22, 0x0B, 0xE4, 0xC0,
-0x48, 0x60, 0x7F, 0x50, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x48, 0x60, 0x7F, 0x50, 0x52, 0x7F, 0x04, 0xC0, 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, 0x03, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x01, 0x04, 0xFF, 0xFF,
-0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x43,
-0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x89, 0x54, 0x40, 0x01, 0x12, 0xA8, 0x80, 0x00, 0x00, 0x00, 0x00,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7,
+0xC0, 0x01, 0x04, 0xFF, 0xFF, 0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C,
+0x4D, 0x54, 0x00, 0x41, 0x43, 0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x54, 0x40, 0x01, 0x12, 0xA8, 0x80,
+0x00, 0x00, 0x00, 0x00,
/* America/Port_of_Spain */
0x50, 0x48, 0x50, 0x31, 0x01, 0x54, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -6026,7 +6042,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* America/Rio_Branco */
0x50, 0x48, 0x50, 0x31, 0x01, 0x42, 0x52, 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, 0x1E, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
+0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
0xB8, 0x0F, 0x66, 0x00, 0xB8, 0xFD, 0x5C, 0xC0, 0xB9, 0xF1, 0x50, 0x50, 0xBA, 0xDE, 0x90, 0x40,
0xDA, 0x38, 0xCA, 0x50, 0xDA, 0xEC, 0x16, 0x50, 0xDC, 0x19, 0xFD, 0xD0, 0xDC, 0xB9, 0x75, 0x40,
0xDD, 0xFB, 0x31, 0x50, 0xDE, 0x9B, 0xFA, 0x40, 0xDF, 0xDD, 0xB6, 0x50, 0xE0, 0x54, 0x4F, 0x40,
@@ -6034,13 +6050,13 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0xF8, 0x51, 0x48, 0x50, 0xF8, 0xC7, 0xE1, 0x40, 0xFA, 0x0A, 0xEE, 0xD0, 0xFA, 0xA9, 0x14, 0xC0,
0xFB, 0xEC, 0x22, 0x50, 0xFC, 0x8B, 0x99, 0xC0, 0x1D, 0xC9, 0xAA, 0x50, 0x1E, 0x78, 0xF3, 0xC0,
0x1F, 0xA0, 0x51, 0xD0, 0x20, 0x33, 0xEB, 0xC0, 0x21, 0x81, 0x85, 0x50, 0x22, 0x0B, 0xE4, 0xC0,
-0x48, 0x60, 0x7F, 0x50, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x48, 0x60, 0x7F, 0x50, 0x52, 0x7F, 0x04, 0xC0, 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, 0x03, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x01, 0x04, 0xFF, 0xFF,
-0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x43,
-0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x7A, 0x1F, 0x05, 0x00, 0xAB, 0x34, 0x20, 0x00, 0x00, 0x00, 0x04, 0x41,
-0x63, 0x72, 0x65,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7,
+0xC0, 0x01, 0x04, 0xFF, 0xFF, 0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C,
+0x4D, 0x54, 0x00, 0x41, 0x43, 0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7A, 0x1F, 0x05, 0x00, 0xAB, 0x34, 0x20,
+0x00, 0x00, 0x00, 0x04, 0x41, 0x63, 0x72, 0x65,
/* America/Rosario */
0x50, 0x48, 0x50, 0x31, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -10994,7 +11010,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* Brazil/Acre */
0x50, 0x48, 0x50, 0x31, 0x00, 0x3F, 0x3F, 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, 0x1E, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
+0x00, 0x00, 0x00, 0x1F, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0x96, 0xAA, 0x86, 0x90,
0xB8, 0x0F, 0x66, 0x00, 0xB8, 0xFD, 0x5C, 0xC0, 0xB9, 0xF1, 0x50, 0x50, 0xBA, 0xDE, 0x90, 0x40,
0xDA, 0x38, 0xCA, 0x50, 0xDA, 0xEC, 0x16, 0x50, 0xDC, 0x19, 0xFD, 0xD0, 0xDC, 0xB9, 0x75, 0x40,
0xDD, 0xFB, 0x31, 0x50, 0xDE, 0x9B, 0xFA, 0x40, 0xDF, 0xDD, 0xB6, 0x50, 0xE0, 0x54, 0x4F, 0x40,
@@ -11002,12 +11018,13 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0xF8, 0x51, 0x48, 0x50, 0xF8, 0xC7, 0xE1, 0x40, 0xFA, 0x0A, 0xEE, 0xD0, 0xFA, 0xA9, 0x14, 0xC0,
0xFB, 0xEC, 0x22, 0x50, 0xFC, 0x8B, 0x99, 0xC0, 0x1D, 0xC9, 0xAA, 0x50, 0x1E, 0x78, 0xF3, 0xC0,
0x1F, 0xA0, 0x51, 0xD0, 0x20, 0x33, 0xEB, 0xC0, 0x21, 0x81, 0x85, 0x50, 0x22, 0x0B, 0xE4, 0xC0,
-0x48, 0x60, 0x7F, 0x50, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
+0x48, 0x60, 0x7F, 0x50, 0x52, 0x7F, 0x04, 0xC0, 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, 0x03, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7, 0xC0, 0x01, 0x04, 0xFF, 0xFF,
-0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x41, 0x43,
-0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
-0x00, 0x00, 0x00, 0x00, 0x89, 0x54, 0x40, 0x01, 0x12, 0xA8, 0x80, 0x00, 0x00, 0x00, 0x00,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0xFF, 0xFF, 0xC0, 0x70, 0x00, 0x00, 0xFF, 0xFF, 0xC7,
+0xC0, 0x01, 0x04, 0xFF, 0xFF, 0xB9, 0xB0, 0x00, 0x09, 0xFF, 0xFF, 0xC7, 0xC0, 0x00, 0x0D, 0x4C,
+0x4D, 0x54, 0x00, 0x41, 0x43, 0x53, 0x54, 0x00, 0x41, 0x43, 0x54, 0x00, 0x41, 0x4D, 0x54, 0x00,
+0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x54, 0x40, 0x01, 0x12, 0xA8, 0x80,
+0x00, 0x00, 0x00, 0x00,
/* Brazil/DeNoronha */
0x50, 0x48, 0x50, 0x31, 0x00, 0x3F, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
@@ -16301,7 +16318,7 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
/* Libya */
0x50, 0x48, 0x50, 0x31, 0x00, 0x3F, 0x3F, 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, 0x50, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0xA1, 0xF2, 0xC1, 0x24,
+0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x11, 0xA1, 0xF2, 0xC1, 0x24,
0xDD, 0xBB, 0xB1, 0x10, 0xDE, 0x23, 0xAD, 0x60, 0xE1, 0x78, 0xD2, 0x10, 0xE1, 0xE7, 0x65, 0xE0,
0xE5, 0x2F, 0x3F, 0x70, 0xE5, 0xA9, 0xCC, 0xE0, 0xEB, 0x4E, 0xC6, 0xF0, 0x16, 0x92, 0x42, 0x60,
0x17, 0x08, 0xF7, 0x70, 0x17, 0xFA, 0x2B, 0xE0, 0x18, 0xEA, 0x2A, 0xF0, 0x19, 0xDB, 0x5F, 0x60,
@@ -16309,24 +16326,9 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0x1E, 0x93, 0x0B, 0x70, 0x1F, 0x82, 0xEE, 0x60, 0x20, 0x70, 0x4A, 0x70, 0x21, 0x61, 0x7E, 0xE0,
0x22, 0x52, 0xCF, 0x70, 0x23, 0x44, 0x03, 0xE0, 0x24, 0x34, 0x02, 0xF0, 0x25, 0x25, 0x37, 0x60,
0x26, 0x40, 0xB7, 0xF0, 0x32, 0x4E, 0xF1, 0x60, 0x33, 0x44, 0x36, 0x70, 0x34, 0x35, 0x6A, 0xE0,
-0x50, 0x9D, 0x99, 0x00, 0x51, 0x54, 0xD9, 0x80, 0x52, 0x69, 0xB4, 0x80, 0x53, 0x34, 0xBB, 0x80,
-0x54, 0x52, 0xD1, 0x00, 0x55, 0x14, 0x9D, 0x80, 0x56, 0x32, 0xB3, 0x00, 0x56, 0xF4, 0x7F, 0x80,
-0x58, 0x12, 0x95, 0x00, 0x58, 0xDD, 0x9C, 0x00, 0x59, 0xF2, 0x77, 0x00, 0x5A, 0xBD, 0x7E, 0x00,
-0x5B, 0xD2, 0x59, 0x00, 0x5C, 0x9D, 0x60, 0x00, 0x5D, 0xB2, 0x3B, 0x00, 0x5E, 0x7D, 0x42, 0x00,
-0x5F, 0x9B, 0x57, 0x80, 0x60, 0x5D, 0x24, 0x00, 0x61, 0x7B, 0x39, 0x80, 0x62, 0x3D, 0x06, 0x00,
-0x63, 0x5B, 0x1B, 0x80, 0x64, 0x26, 0x22, 0x80, 0x65, 0x3A, 0xFD, 0x80, 0x66, 0x06, 0x04, 0x80,
-0x67, 0x1A, 0xDF, 0x80, 0x67, 0xE5, 0xE6, 0x80, 0x69, 0x03, 0xFC, 0x00, 0x69, 0xC5, 0xC8, 0x80,
-0x6A, 0xE3, 0xDE, 0x00, 0x6B, 0xA5, 0xAA, 0x80, 0x6C, 0xC3, 0xC0, 0x00, 0x6D, 0x8E, 0xC7, 0x00,
-0x6E, 0xA3, 0xA2, 0x00, 0x6F, 0x6E, 0xA9, 0x00, 0x70, 0x83, 0x84, 0x00, 0x71, 0x4E, 0x8B, 0x00,
-0x72, 0x63, 0x66, 0x00, 0x73, 0x2E, 0x6D, 0x00, 0x74, 0x4C, 0x82, 0x80, 0x75, 0x0E, 0x4F, 0x00,
-0x76, 0x2C, 0x64, 0x80, 0x76, 0xEE, 0x31, 0x00, 0x78, 0x0C, 0x46, 0x80, 0x78, 0xD7, 0x4D, 0x80,
-0x79, 0xEC, 0x28, 0x80, 0x7A, 0xB7, 0x2F, 0x80, 0x7B, 0xCC, 0x0A, 0x80, 0x7C, 0x97, 0x11, 0x80,
-0x7D, 0xB5, 0x27, 0x00, 0x7E, 0x76, 0xF3, 0x80, 0x7F, 0x95, 0x09, 0x00, 0x02, 0x01, 0x02, 0x01,
+0x50, 0x9D, 0x99, 0x00, 0x51, 0x54, 0xD9, 0x80, 0x52, 0x69, 0xB4, 0x80, 0x02, 0x01, 0x02, 0x01,
0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01, 0x02, 0x01,
-0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x03, 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, 0x00, 0x00, 0x0C, 0x5C,
+0x02, 0x01, 0x02, 0x01, 0x02, 0x03, 0x02, 0x01, 0x03, 0x02, 0x01, 0x03, 0x00, 0x00, 0x0C, 0x5C,
0x00, 0x00, 0x00, 0x00, 0x1C, 0x20, 0x01, 0x04, 0x00, 0x00, 0x0E, 0x10, 0x00, 0x09, 0x00, 0x00,
0x1C, 0x20, 0x00, 0x0D, 0x4C, 0x4D, 0x54, 0x00, 0x43, 0x45, 0x53, 0x54, 0x00, 0x43, 0x45, 0x54,
0x00, 0x45, 0x45, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x89, 0x54,
@@ -18400,4 +18402,4 @@ const unsigned char timelib_timezone_db_data_builtin[261381] = {
0x00, 0x00, 0x55, 0x54, 0x43, 0x00, 0x00, 0x00, 0x00, 0x89, 0x54, 0x40, 0x01, 0x12, 0xA8, 0x80,
0x00, 0x00, 0x00, 0x00, };
-const timelib_tzdb timezonedb_builtin = { "2013.6", 579, timezonedb_idx_builtin, timelib_timezone_db_data_builtin };
+const timelib_tzdb timezonedb_builtin = { "2013.8", 579, timezonedb_idx_builtin, timelib_timezone_db_data_builtin };
diff --git a/ext/odbc/php_odbc_includes.h b/ext/odbc/php_odbc_includes.h
index ca237c0537..c00583b16a 100644
--- a/ext/odbc/php_odbc_includes.h
+++ b/ext/odbc/php_odbc_includes.h
@@ -232,7 +232,7 @@ typedef struct odbc_connection {
} odbc_connection;
typedef struct odbc_result_value {
- char name[32];
+ char name[256];
char *value;
SQLLEN vallen;
SQLLEN coltype;
diff --git a/ext/opcache/README b/ext/opcache/README
index 6c3cc746e7..2e30d92c00 100644
--- a/ext/opcache/README
+++ b/ext/opcache/README
@@ -31,8 +31,8 @@ Quick Install
zend_extension=/...full path.../opcache.so
-NOTE: In case you are going to use Zend OPcache together with Xdebug,
-be sure that Xdebug is loaded after OPcache. "php -v" must show Xdebug
+NOTE: In case you are going to use Zend OPcache together with Xdebug or Zend Debugger,
+be sure that the debugger is loaded after OPcache. "php -v" must show the debugger
after OPcache.
- Restart PHP
@@ -80,8 +80,8 @@ opcache.max_accelerated_files (default "2000")
The maximum number of keys (scripts) in the OPcache hash table.
The number is actually the first one in the following set of prime
numbers that is bigger than the one supplied: { 223, 463, 983, 1979, 3907,
- 7963, 16229, 32531, 65407, 130987 }. Only numbers between 200 and 100000
- are allowed.
+ 7963, 16229, 32531, 65407, 130987, 262237, 524521, 1048793 }. Only numbers
+ between 200 and 1000000 are allowed.
opcache.max_wasted_percentage (default "5")
The maximum percentage of "wasted" memory until a restart is scheduled.
diff --git a/ext/opcache/zend_accelerator_module.c b/ext/opcache/zend_accelerator_module.c
index dedb7215c1..0914fb68dd 100644
--- a/ext/opcache/zend_accelerator_module.c
+++ b/ext/opcache/zend_accelerator_module.c
@@ -34,7 +34,7 @@
#define STRING_NOT_NULL(s) (NULL == (s)?"":s)
#define MIN_ACCEL_FILES 200
-#define MAX_ACCEL_FILES 100000
+#define MAX_ACCEL_FILES 1000000
#define TOKENTOSTR(X) #X
static void (*orig_file_exists)(INTERNAL_FUNCTION_PARAMETERS) = NULL;
diff --git a/ext/standard/array.c b/ext/standard/array.c
index 51972033ee..360a691d38 100644
--- a/ext/standard/array.c
+++ b/ext/standard/array.c
@@ -2222,13 +2222,14 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src, int recursive TSRMLS
case HASH_KEY_IS_STRING:
if (recursive && zend_hash_find(dest, string_key, string_key_len, (void **)&dest_entry) == SUCCESS) {
HashTable *thash = Z_TYPE_PP(dest_entry) == IS_ARRAY ? Z_ARRVAL_PP(dest_entry) : NULL;
+ zval *src_zval;
+ zval *tmp = NULL;
if ((thash && thash->nApplyCount > 1) || (*src_entry == *dest_entry && Z_ISREF_PP(dest_entry) && (Z_REFCOUNT_PP(dest_entry) % 2))) {
php_error_docref(NULL TSRMLS_CC, E_WARNING, "recursion detected");
return 0;
}
SEPARATE_ZVAL(dest_entry);
- SEPARATE_ZVAL(src_entry);
if (Z_TYPE_PP(dest_entry) == IS_NULL) {
convert_to_array_ex(dest_entry);
@@ -2236,23 +2237,34 @@ PHPAPI int php_array_merge(HashTable *dest, HashTable *src, int recursive TSRMLS
} else {
convert_to_array_ex(dest_entry);
}
- if (Z_TYPE_PP(src_entry) == IS_NULL) {
- convert_to_array_ex(src_entry);
- add_next_index_null(*src_entry);
+ if (Z_TYPE_PP(src_entry) == IS_OBJECT) {
+ ALLOC_ZVAL(src_zval);
+ INIT_PZVAL_COPY(src_zval, *src_entry);
+ zval_copy_ctor(src_zval);
+ convert_to_array(src_zval);
+ tmp = src_zval;
} else {
- convert_to_array_ex(src_entry);
+ src_zval = *src_entry;
}
- if (thash) {
- thash->nApplyCount++;
- }
- if (!php_array_merge(Z_ARRVAL_PP(dest_entry), Z_ARRVAL_PP(src_entry), recursive TSRMLS_CC)) {
+ if (Z_TYPE_P(src_zval) == IS_ARRAY) {
+ if (thash) {
+ thash->nApplyCount++;
+ }
+ if (!php_array_merge(Z_ARRVAL_PP(dest_entry), Z_ARRVAL_P(src_zval), recursive TSRMLS_CC)) {
+ if (thash) {
+ thash->nApplyCount--;
+ }
+ return 0;
+ }
if (thash) {
thash->nApplyCount--;
}
- return 0;
+ } else {
+ Z_ADDREF_PP(src_entry);
+ zend_hash_next_index_insert(Z_ARRVAL_PP(dest_entry), &src_zval, sizeof(zval *), NULL);
}
- if (thash) {
- thash->nApplyCount--;
+ if (tmp) {
+ zval_ptr_dtor(&tmp);
}
} else {
Z_ADDREF_PP(src_entry);
@@ -2356,7 +2368,6 @@ static void php_array_merge_or_replace_wrapper(INTERNAL_FUNCTION_PARAMETERS, int
array_init_size(return_value, init_size);
for (i = 0; i < argc; i++) {
- SEPARATE_ZVAL(args[i]);
if (!replace) {
php_array_merge(Z_ARRVAL_P(return_value), Z_ARRVAL_PP(args[i]), recursive TSRMLS_CC);
} else if (recursive && i > 0) { /* First array will be copied directly instead */
diff --git a/ext/zip/LICENSE_libzip b/ext/zip/LICENSE_libzip
new file mode 100644
index 0000000000..9b2fda07b1
--- /dev/null
+++ b/ext/zip/LICENSE_libzip
@@ -0,0 +1,27 @@
+Copyright (C) 1999-2008 Dieter Baron and Thomas Klausner
+The authors can be contacted at <libzip@nih.at>
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions
+are met:
+1. Redistributions of source code must retain the above copyright
+ notice, this list of conditions and the following disclaimer.
+2. Redistributions in binary form must reproduce the above copyright
+ notice, this list of conditions and the following disclaimer in
+ the documentation and/or other materials provided with the
+ distribution.
+3. The names of the authors may not be used to endorse or promote
+ products derived from this software without specific prior
+ written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE AUTHORS ``AS IS'' AND ANY EXPRESS
+OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY
+DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
+DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
+GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER
+IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
+IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/main/php_version.h b/main/php_version.h
index d9ea4aab3c..2d98a3f807 100644
--- a/main/php_version.h
+++ b/main/php_version.h
@@ -2,7 +2,7 @@
/* edit configure.in to change version number */
#define PHP_MAJOR_VERSION 5
#define PHP_MINOR_VERSION 5
-#define PHP_RELEASE_VERSION 5
+#define PHP_RELEASE_VERSION 6
#define PHP_EXTRA_VERSION "-dev"
-#define PHP_VERSION "5.5.5-dev"
-#define PHP_VERSION_ID 50505
+#define PHP_VERSION "5.5.6-dev"
+#define PHP_VERSION_ID 50506
diff --git a/sapi/fpm/fpm/fpm_sockets.h b/sapi/fpm/fpm/fpm_sockets.h
index cce5712b8c..121c016a7b 100644
--- a/sapi/fpm/fpm/fpm_sockets.h
+++ b/sapi/fpm/fpm/fpm_sockets.h
@@ -19,7 +19,7 @@
#if (__FreeBSD__) || (__OpenBSD__)
#define FPM_BACKLOG_DEFAULT -1
#else
-#define FPM_BACKLOG_DEFAULT 128
+#define FPM_BACKLOG_DEFAULT 65535
#endif
enum fpm_address_domain fpm_sockets_domain_from_address(char *addr);
diff --git a/sapi/fpm/php-fpm.conf.in b/sapi/fpm/php-fpm.conf.in
index af4f2fa325..9002a2933b 100644
--- a/sapi/fpm/php-fpm.conf.in
+++ b/sapi/fpm/php-fpm.conf.in
@@ -159,8 +159,8 @@ group = @php_fpm_group@
listen = 127.0.0.1:9000
; Set listen(2) backlog.
-; Default Value: 128 (-1 on FreeBSD and OpenBSD)
-;listen.backlog = 128
+; Default Value: 65535 (-1 on FreeBSD and OpenBSD)
+;listen.backlog = 65535
; Set permissions for unix socket, if one is used. In Linux, read/write
; permissions must be set in order to allow connections from a web server. Many