use int to hold unsigned int32