position is 32bit signed int