type long to be int32_t