Changed faster read to handle negative numbers.