better handling of Throwable's