higher bits need to be checked for overflow not lower