Fixed script to handle difference better (can be negative) and error messages for bad input.