Changing 'TextScanner' to throw a new 'InvalidOperationException' when no character is available for comparison