do not free(value) before value is used