update input methods for improved error handling