*: Major polish. Proper error handling.