use add_assoc_long_ex instead of add_assoc_long to save strlen call