use int instead of void to avoid 64bit error