handle negative numbers as position argument